当前位置: 首页 > 专利查询>内蒙古大学专利>正文

一种区块链仿真实验方法以及实验系统技术方案

技术编号:38703998 阅读:12 留言:0更新日期:2023-09-08 14:44
本发明专利技术提供了一种区块链仿真实验方法以及实验系统,所述区块链仿真实验方法包括:根据用户的需求分为单流程仿真实验方法、分布式仿真实验方法以及全流程仿真实验方法;其中,所述单流程仿真实验方法包括:通过控制节点/区块操作交互模块触发仿真的进行;所述分布式仿真实验方法包括:由分布在不同设备上的Agent协同执行,通过一个控制者传入配置参数和调用仿真开关控制器来控制分布式仿真操作的开始与结束;所述全流程仿真实验方法包括:一次性读取所有仿真事务并通过优化的离散仿真事务调度算法来进行持续性的仿真事务调度。本发明专利技术的仿真实验方法能够让仿真的对象及结果更加全面。果更加全面。

【技术实现步骤摘要】
一种区块链仿真实验方法以及实验系统


[0001]本专利技术涉及区块链虚拟仿真领域,具体而言,涉及一种区块链仿真实验方法以及实验系统。

技术介绍

[0002]当前,区块链技术作为新一代信息技术的重要组成部分,解决了网络空间的信任和安全问题,推动互联网从传递信息向传递价值变革,重构信息产业体系。区近年来区块链技术被广泛应用于金融经济、健康医疗、物联网、供应链等诸多领域,引起了越来越多人的关注。在此背景下,针对区块链各个应用方向的实验需求也越来越多。
[0003]现有的区块链仿真实验工具主要分为以下几种模型构建,如附图1所示。
[0004]离散事件模型是一个动态模拟过程的模型。由事件驱动,事件的发生是离散且随机的(即系统状态变量(state)的取值是依时间轴离散且随机分布的),事件是网络模型状态的变化或者某种决策。只有模型状态变化,模拟机才进行仿真,状态不发生变化的时间段,不进行仿真。
[0005]基于Agent(代理、自治体)的模型是离散事件模型衍生和变化,着重研究离散仿真系统中的Agent行为以及众多个体行为所导致的系统整体特征变化。Agent具有自治性,可以感知系统环境的变化以及系统中其他个体的行为,以所获得的信息进行决策并做出反应。个体具有记忆和思维的能力,依据既定的规则进行决策,还可以调整自身的行为以实现对系统的自适应程度。对于复杂的基于代理的仿真系统而言,当众多个体遵从既定规则进行活动时,系统会产生涌现性,即系统表现出个体所不具备的特征。
[0006]虚拟化模型类型主要分为三个,完全虚拟化、部分虚拟化和操作系统虚拟化。三种虚拟化的差别主要在于是否修改操作系统与操作方式,而操作系统虚拟化是当前仿真系统的主要使用仿真模型。操作系统层虚拟化是指通过划分一个宿主操作系统的特定部分,产生一个个隔离的操作执行环境。操作系统层的虚拟化是操作系统内核直接提供的虚拟化,虚拟出的操作系统之间共享底层宿主操作系统内核和底层的硬件资源。
[0007]现有技术中主要存在的问题有:
[0008]1、传统区块链仿真工具大多数只应用于区块链科研工作者,且大多数为非可视化的仿真工具,导致仿真器的应用受众范围小、可用性低。
[0009]2、传统区块链仿真工具均基于单一模型(上述三种模型之一)构建,仿真模型的扩展性与可伸缩性低,仿真模型的调度机制效率低。
[0010]3、离散事件模型的事务驱动机制不适用于区块链技术架构,基于Agent模型与虚拟化模型无有效的仿真时间控制机制。且这三种模型的仿真流程可控性低,不适用于区块链技术仿真。
[0011]4、上述三种模型的仿真数据相较于对象模型(区块链)准确率低,数据移植难度高。
[0012]有鉴于此,特提出本专利技术。

技术实现思路

[0013]有鉴于此,本专利技术公开了一种基于离散事件的多模型区块链仿真实验方法以及实验系统,该仿真实验方法主要由三个仿真流程模块构成(单流程仿真、分布式仿真、全流程仿真),单流程流程仿真模块可单向转换为分布式仿真,分布式仿真与全流程仿真可相互转转换。此仿真方式能够让仿真的对象及结果更加全面,使用也更加灵活,控制更加方便。
[0014]具体地,本专利技术是通过以下技术方案实现的:
[0015]第一方面,本专利技术公开了一种区块链仿真实验方法,包括如下步骤:
[0016]根据用户的需求分为单流程仿真实验方法、分布式仿真实验方法以及全流程仿真实验方法;
[0017]其中,所述单流程仿真实验方法包括:通过控制节点/区块操作交互模块触发仿真的进行;
[0018]所述分布式仿真实验方法包括:由分布在不同设备上的Agent协同执行,通过一个控制者传入配置参数和调用仿真开关控制器来控制分布式仿真操作的开始与结束;
[0019]所述全流程仿真实验方法包括:一次性读取所有仿真事务并通过优化的离散仿真事务调度算法来进行持续性的仿真事务调度。
[0020]第二方面,本专利技术公开了一种区块链仿真实验系统,包括:
[0021]单流程仿真实验模块:用于通过控制节点/区块操作交互模块触发仿真的进行;
[0022]分布式仿真实验模块:用于由分布在不同设备上的Agent协同执行,通过一个控制者传入配置参数和调用仿真开关控制器来控制分布式仿真操作的开始与结束;
[0023]全流程仿真实验模块:用于一次性读取所有仿真事务并通过优化的离散仿真事务调度算法来进行持续性的仿真事务调度。
[0024]第三方面,本专利技术公开了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如第一方面所述区块链仿真实验方法的步骤。
[0025]第四方面,本专利技术公开了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述区块链仿真实验方法的步骤。
[0026]本专利技术的区块链仿真实验方法以及实验系统具有如下优点:
[0027]1.本专利技术提出基于离散事件的多模型区块链虚拟仿真实验方法,仿真实验方法主要由三个仿真流程模块构成(单流程仿真、分布式仿真、全流程仿真),单流程流程仿真模块可单向转换为分布式仿真,分布式仿真与全流程仿真可相互转转换。此仿真仿真能够让仿真的对象及结果更加全面。
[0028]2.本专利技术的方案属于一套灵活系统部署的架构,可直接发布至web端,支持多用户并发仿真。也可自行部署至目标机器以支持高量级的区块链虚拟仿真。
[0029]3.使用灵活,可以应用于不同场景、人群。例如:支持不同场景下的仿真,也支持区块链技术初学者、科研工作者和对区块链感兴趣的人员等不同的人群能够根据自己的需求进行区块链仿真。
[0030]4.本专利技术提出一种基于用户行为驱动的单流程仿真架构,通过将区块链技术架构实现流程拆分开来进行仿真,以提升研究者在仿真过程中用户的交互行为(缩放、过滤、关联、记录、提取、按需要提供细节以及概览等),让仿真者更加深入参与到仿真流程当中。
[0031]5.本专利技术采用一种基于DCPS数据同步模型、改进的PTP时钟同步算法的区块链分布式仿真时间与事务控制机制。
[0032]6.提出了一种新的事务分层架构,通过事务分层让仿真模型的驱动架构更加适配区块链技术架构。
[0033]7.本专利技术还提出了一种可灵活使用的通用仿真模块,此模块是仿真事务产生通用架构,能够通过区块链架构建模构建不同的区块链仿真对象模型,同时能够根据不同的仿真量级需求来对仿真模块进行灵活部署。
附图说明
[0034]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0035]图1为现有技术的区块链仿真实验工具结构图;
[0036]图2为本专利技术实施例的区块链仿真实验系统架构图;
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种区块链仿真实验方法,其特征在于,根据用户的需求分为单流程仿真实验方法、分布式仿真实验方法以及全流程仿真实验方法;其中,所述单流程仿真实验方法包括:通过控制节点/区块操作交互模块触发仿真的进行;所述分布式仿真实验方法包括:由分布在不同设备上的Agent协同执行,通过一个控制者传入配置参数和调用仿真开关控制器来控制分布式仿真操作的开始与结束;所述全流程仿真实验方法包括:一次性读取所有仿真事务并通过优化的离散仿真事务调度算法来进行持续性的仿真事务调度。2.根据权利要求1所述的区块链仿真实验方法,其特征在于,所述分布式仿真操作的具体方法包括:调用同步控制器来订阅同步更新全局事务空间的仿真事务同步流程,事务更新完毕后开始向仿真通用模块请求仿真事务构建,构建的事务被分布式进程控制器通过算法调度划分为一系列逻辑进程,逻辑进程在系统底层集中服务器上执行并通过交互与可视化配置器分发给Agent。3.根据权利要求2所述的区块链仿真实验方法,其特征在于,所述仿真事务同步流程的操作方法包括:订阅以及发布的过程;其中所述订阅的过程包括:a)数据订阅请求:Agent的独立数据空间处于活跃状态,当发生相关仿真数据活动时,Agent会向全局数据空间发起仿真数据订阅请求;b)数据通道开放:全局数据空间在接收到数据订阅请求之后,识别Agent的订阅权限,确定拥有订阅权限之后向Agent开放数据通道;c)数据包更新:Agent收到数据通道开通消息后,开始进行相关仿真事d)订阅成功:仿真事务数据订阅成功后,Agent会根据接收到的数据版本给独立的数据空间打上相应版本标识;所述发布的过程包括:a)数据发布请求:Agent产生了新的仿真事务数据,会向全局数据空间发送事务发布请求;b)数据通道开放:全局数据空间在接收到数据发布请求之后,识别Agent的发布权限,确定拥有发布权限之后向Agent开放数据通道;c)数据包同步:全局数据空间识别Agent仿真事务数据版本标识差,根据版本标识差向Agent发送对应的事务数据来进行同步;d)发布数据:仿真事务数据同步完成后,向全局数据空间发布最新的仿真事务数据;e)发布成功:仿真事务数据发布成功后,全局数据空间会向Agent发送发布成功消息并携带新的数据版本标识,Agent会根据接收到的数据版本标识给独立的数据空间打上相应标识。4.根据权利要求3所述的区块链仿真实验方法,其特征在于,订阅同步发起的过程中会触发时间同步流程,所述时间同步流程的操作方法包括:Agent向仿真控制者发送加入仿真请求,控制者收到请求确定发送启动应答消息;控制者向Agent发送仿真启动命令请求时钟同步,并记录发送时间TC1,INV消息内包含发送时间TC1以及控制者可信标识;
Agent收到控制者的启动命令,Agent验证INV消息内容,验证通过后启动本节点的虚拟时钟,计算虚拟时钟的偏移值的公式为:上述公式中的校准结果是从时钟调整Agent虚拟时钟的offset+TC1;Agent对控制者的请求发送首次应答,并发送应答REC消息,应答消息中加入自己的时间戳TA
11
、接收的时间戳TC1以及Agent可信标识;控制者收到Agent的REC消息后,控制者记录接收时间TC
21
,并立即向Agent发送LINK消息,通知Agent两者通信已经成功建立,LINK消息携带内容包含时间戳TA
11
、TC1、TC
21
;Agent接收到控制者LINK消息,下载相关时间戳数据之后,向控制者发送GETDATA请求,以获取最终的时间数据,请求内包含当前发送的时间戳TA
12
以及LINK消息内的时间戳TA
11
、TC1、TC
21
;控制者收到Agent的GETDATA消息后,记录接收时间TC
22
,并根据接收消息的时间戳计算精确的网络时延,并将计算得到的时延作为虚拟时间块消息校准命令发送给Agent;Agent收到控制者的虚拟时间块消息后,通过向后调整来校准它的时钟,并清除此前其他消息的缓存。5.根据权利要求1所述的...

【专利技术属性】
技术研发人员:崔波
申请(专利权)人:内蒙古大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1