[发明专利]一种区块链系统的测试系统和方法有效
申请号: | 201711320172.7 | 申请日: | 2017-12-12 |
公开(公告)号: | CN108170590B | 公开(公告)日: | 2021-08-24 |
发明(设计)人: | 齐竹云;雷凯;陈辰 | 申请(专利权)人: | 北京大学深圳研究生院 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;H04L12/26 |
代理公司: | 深圳鼎合诚知识产权代理有限公司 44281 | 代理人: | 郭燕 |
地址: | 518055 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种区块链系统的测试系统和方法,引入容器技术,每个区块链容器可以运行功能完整的区块链应用程序,每台物理计算机可以被配置并运行若干个区块链容器,容器间网络拓扑可根据测试方案设置,为测试结果真实性提供有效保障,有效降低成本并简化配置过程。 | ||
搜索关键词: | 一种 区块 系统 测试 方法 | ||
任务总控模块,用于提供区块链协议参数、节点间虚拟网络拓扑参数、区块链系统测试的策略以及资源分配的方案;
若干个网络设备容器,用于实现虚拟网络设备的运行;
若干个区块链容器,用于实现区块链节点的运行;
任务分控模块,运行于一台物理计算机中,用于根据任务总控模块提供的参数、策略以及方案,控制该台物理计算机中各网络设备容器、各区块链容器的运行,其中每一台物理计算机被配置一个所述任务分控模块。
2.如权利要求1所述的测试系统,其特征在于,所述区块链系统测试的策略至少包括参与节点的运行逻辑和任务结束条件中的一者;所述资源分配的方案至少包括节点间的计算资源的分配、网络带宽资源的分配、磁盘IO资源的分配中的一者。3.如权利要求1或2所述的测试系统,其特征在于,所述任务分控模块包括:总控任务解析子模块,用于获取任务总控模块提供的参数、策略和方案,并根据任务总控模块提供的参数,向网络设备容器和区块链容器下达指令,使网络设备容器和区块链容器形成预期的网络拓扑;
日志统计子模块,用于观测区块链系统的运行状态,并反馈至所述任务总控模块;
网络设备容器控制子模块,用于根据获取的策略和方案控制网络设备容器的运行逻辑以及调整网络设备容器之间的资源分配;
区块链容器控制子模块,用于根据获取的策略和方案控制区块链容器的运行逻辑以及调整区块链容器之间的资源分配。
4.如权利要求1所述的测试系统,其特征在于,还包括容器执行引擎,用于根据任务分控模块的指示,在物理计算机中对网络设备容器和区块链容器进行初始化,以及限制网络设备容器和区块链容器的资源。5.如权利要求1所述的测试系统,其特征在于,所述网络设备容器包括:网络设备核心程序,用于实现虚拟网络设备的基本功能;
网络配置子模块,用于定义网络设备容器的配置信息,所述配置信息至少包括网络拓扑、网络带宽、网络延迟、网络丢包和协议栈中的一者;
第一运行逻辑控制子模块,用于切换网络设备容器的网络运行逻辑,所述网络运行逻辑至少包括网络设备正常运行的逻辑、网络设备临时宕机的逻辑和网络设备存在恶意行为的逻辑中的一者;
第一远程调用子模块,用于根据任务分控模块下达的指令,控制网络配置子模块的配置信息和第一运行逻辑控制子模块的切换。
6.如权利要求1所述的测试系统,其特征在于,所述区块链容器包括:区块链系统核心程序,用于实现区块链系统的基本功能;
第二运行逻辑控制子模块,用于切换区块链容器的节点运行逻辑,所述节点运行逻辑至少包括区块链节点正常运行的逻辑、区块链节点临时宕机的逻辑和区块链节点存在恶意行为的逻辑中的一者;
第二远程调用子模块,用于根据任务分控模块下达的指令,控制第二运行逻辑控制子模块的切换;
日志输出子模块,用于将区块链系统核心程序的状态日志输出;所述日志输出子模块将状态日志输出到物理计算机上的数据卷,以供所述任务分控模块调用和分析。
7.如权利要求1所述的测试系统,其特征在于,还包括镜像仓库,用于存储区块链镜像以及网络设备镜像;其中所述区块链镜像用于启动所述区块链容器,所述网络设备镜像用于启动所述网络设备容器。8.一种区块链系统的测试方法,其特征在于,包括:当使用多台物理计算机时,设置集群内局域网络路由,当使用一台物理计算机时,则省略设置集群内局域网络路由的步骤;
建立镜像仓库,镜像仓库存储构建的区块链应用程序镜像以及网络设备镜像;
配置任务总控逻辑,至少包括区块链协议参数、节点间虚拟网络拓扑参数、区块链系统测试的策略以及资源分配的方案;
将任务总控逻辑下发至各物理计算机;
根据下发的任务总控逻辑、区块链应用程序镜像以及网络设备镜像,初始化并控制各物理计算机的网络设备容器和区块链容器;
区块链容器输出日志到物理计算机的数据卷,以供读取和反馈;
根据下发的任务总控逻辑切换区块链容器和网络设备容器的运行逻辑;
观测区块链系统运行状态。
9.如权利要求8所述的测试方法,其特征在于,在切换区块链容器和网络设备容器的运行逻辑之前,先等待区块链容器形成稳定的分布式网络,当区块链容器形成稳定的分布式网络后,再根据下发的任务总控逻辑切换区块链容器和网络设备容器的运行逻辑。10.一种计算机可读存储介质,其特征在于,包括程序,所述程序能够被处理器执行以实现如权利要求8或9所述的方法。该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学深圳研究生院,未经北京大学深圳研究生院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201711320172.7/,转载请声明来源钻瓜专利网。
- 上一篇:网络平台基础数据质量算法的保障方法
- 下一篇:一种测试仪自动化实现方法和装置