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





