区块链与网络系统、数据接收与发送方法及设备技术方案

技术编号:26482213 阅读:42 留言:0更新日期:2020-11-25 19:28
本申请实施例提供一种区块链与网络系统、数据接收与发送方法及设备。在本申请实施例中,对节点设备中的网络接口设备进行功能扩展,将应用层的一些数据处理卸载到网络接口设备中,借助网络接口设备处于数据传输通道上的优势和其硬件优势,由网络接口设备在数据传输中利用其内部的硬件模块对数据实现应用层的数据处理,一方面有利于减少节点设备进行这些数据处理所需的内存拷贝等操作,节约CPU资源,另一方面可提升网络通信效率,进而提高节点设备所在系统的吞吐量和可扩展性。

【技术实现步骤摘要】
区块链与网络系统、数据接收与发送方法及设备
本申请涉及区块链
,尤其涉及一种区块链与网络系统、数据接收与发送方法及设备。
技术介绍
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。主流的区块链架构可划分为网络层,数据层,共识层,激励层,合约层和应用层。其中,网络层是一个点对点(P2P)网络,因此节点间的共识过程是一个通信密集型过程,共识节点要向其它所有节点广播共识消息,并接收从其它所有节点发来的共识消息。随着共识节点规模扩大,共识过程存在大量的计算任务,对发出的共识消息要进行加密、安全通信等处理,对接收的共识消息要进行加解密、验证等处理。当节点不能及时处理大规模高并发的共识消息时,共识过程延长,会降低区块链系统的交易处理速度,限制区块链系统的TPS和规模的可扩展性。
技术实现思路
本申请的多个方面提供一种区块链与网络系统、数据接收与发送方法及设备,用以提高共识消息的处理效率,减少共识过程的耗时,提高区块链系统的交易处理速度,提高区块链系统的吞吐量和规模的可扩展性。本申请本文档来自技高网...

【技术保护点】
1.一种网络系统,其特征在于,包括:多个节点设备;每个节点设备包含网络接口设备,并通过其包含的网络接口设备向其它节点设备传输数据;/n每个网络接口设备作为数据传输通道上的硬件设备,用于根据其所属节点设备提供的指示应用层的数据处理的命令,利用其内部的硬件模块对其所属节点设备要传输的数据进行应用层的数据处理,并将处理后的数据进行网络传输协议的封装后发送出去。/n

【技术特征摘要】
1.一种网络系统,其特征在于,包括:多个节点设备;每个节点设备包含网络接口设备,并通过其包含的网络接口设备向其它节点设备传输数据;
每个网络接口设备作为数据传输通道上的硬件设备,用于根据其所属节点设备提供的指示应用层的数据处理的命令,利用其内部的硬件模块对其所属节点设备要传输的数据进行应用层的数据处理,并将处理后的数据进行网络传输协议的封装后发送出去。


2.根据权利要求1所述的系统,其特征在于,每个网络接口设备包括以下硬件模块:接口模块、应用处理模块和传输模块;
所述接口模块,用于获取其所属节点设备要传输的第一数据和第一处理命令,所述第一处理命令指示数据发送方向上至少一种应用层的数据处理;
所述应用处理模块,用于根据所述第一处理命令,对所述第一数据进行数据发送方向上至少一种应用层的数据处理;
所述传输模块,用于对所述应用处理模块处理后的第一数据进行网络传输封装,并将封装后的第一数据发送出去。


3.根据权利要求2所述的系统,其特征在于,
所述传输模块还用于:接收发往其所属节点设备的第二数据,并对所述第二数据进行网络传输协议的解封装;
所述应用处理模块还用于:根据其所属节点设备预先提供的第二处理命令,对所述传输模块解封装后的第二数据进行数据接收方向上至少一种应用层的数据处理;所述第二处理命令指示数据接收方向上至少一种应用层的数据处理;
所述接口模块还用于:将所述应用处理模块处理后的第二数据发送给其所属节点设备。


4.根据权利要求3所述的系统,其特征在于,所述应用处理模块依次包括:签名认证单元、安全协议单元和广播加速单元;
所述签名认证单元,用于在所述第一处理命令指示数字签名处理的情况下,对所述接口模块传输来的第一数据进行数字签名,并将数字签名后的第一数据传输给所述安全协议单元;或者,在所述第二处理命令指示签名验证处理的情况下,对所述安全协议单元传输来的第二数据进行签名验证,并将通过签名验证的第二数据传输给所述接口模块;
所述安全协议单元,用于在所述第一处理命令指示传输层加密处理的情况下,根据传输层使用的安全协议对所述签名认证单元传输来的第一数据进行传输层的加密处理,并将加密处理后的第一数据传输给所述广播加速单元;或者,在所述第二处理命令指示传输层解密处理的情况下,根据传输层使用的安全协议对所述传输模块传输来的第二数据进行传输层的解密处理;
所述广播加速单元,用于在所述第一处理命令指示广播加速处理的情况下,根据所述多个节点设备的信息,为所述安全协议单元传输来的第一数据生成广播所需的多个传输层协议头,以供所述传输模块根据所述多个传输层协议头将所述安全协议单元传输来的第一数据广播出去。


5.根据权利要求4所述的系统,其特征在于,
所述签名认证单元还用于:在所述第一处理命令未指示数字签名处理的情况下,直接将所述接口模块传输来的第一数据传输给所述安全协议单元;或者,在所述第二处理命令未指示签名验证处理的情况下,直接将所述安全协议单元传输来的第二数据传输给所述接口模块;
所述安全协议单元还用于:在所述第一处理命令未指示传输层加密处理的情况下,直接将所述签名认证单元传输来的第一数据传输给所述广播加速单元;或者,在所述第二处理命令未指示传输层解密处理的情况下,直接将所述传输模块传输来的第二数据传输给所述签名认证单元;
所述广播加速单元还用于:在所述第一处理命令未指示广播加速处理的情况下,直接将所述安全协议单元传输来的第一数据传输给所述传输模块。


6.根据权利要求4所述的系统,其特征在于,所述应用处理模块还包括:
加解密单元,用于为所述签名认证单元和/或所述安全协议单元提供的哈希计算和加解密计算。


7.根据权利要求4所述的系统,其特征在于,所述应用处理模块还包括:
配置单元,用于接收其所属节点设备通过所述接口模块发送的配置信息,为所述签名认证单元、所述安全协议单元和/或所述广播加速单元提供相应配置信息;
其中,所述配置信息包括以下至少一种:哈希算法、数字签名算法、传输层使用的安全协议、加密算法、各节点设备的信息以及所述第二处理命令。


8.根据权利要求3所述的系统,其特征在于,所述传输模块包括:传输协议单元和MAC接口单元;
所述传输协议单元,用于对所述应用处理模块处理后的第一数据进行传输层的封装,并将封装后的第一数据传输给所述MAC接口单元;或者,对所述MAC接口单元传输来的第二数据进行传输层的解封装,并将解封装后的第二数据传输给所述应用处理模块;
所述MAC接口单元,用于对所述传输协议单元传输来的第一数据进行数据链路层的封装,并将封装后的第一数据发送出去;或者,接收所述第二数据,对所述第二数据进行数据链路层的解封装,并将解封装后的第二数据传输给所述传输协议单元。


9.根据权利要求1-8所述的系统,其特征在于,每个网络接口设备采用FPGA或ASIC实现。


10.根据权利要求1-8任一项所述的系统,其特征在于,所述网络接口设备为网卡。


11.一种区块链系统,其特征在于,包括:多个区块链节点;每个区块链节点包含网络接口设备,并通过其包含的网络接口设备向其它区块链节点广播共识消息;
每个网络接口设备作为共识消息传输通道上的硬件设备,用于根据其所属区块链节点提供的数据处理命令,利用其内部的硬件模块对其所属区块链节点要广播的共识消息进行共识过程中的数据处理,并将处理后的共识消息进行网络传输协议的封装后发送出去。


12.根据权利要求11所述的区块链系统,其特征在于,所述共识过程中的数据处理包括安全加密处理和/或广播通信加速处理。


13.根据权利要求11或12所述的系统,其特征在于,所述网络接口设备为网卡。


14.一种网络接口设备,其特征在于,至少包括以下硬件模块:接口模块、应用处理模块和传输模块;
所述接口模块,用于获取其所属节点设备要传输的第一数据和第一处理命令,所述第一处理命令指示数据发送方向上至少一种应用层的数据处理;
所述应用处理模块,用于根据所述第一处理命令,对所述第一数据进行数据发送方向上至少一种应用层的数据处理;
所述传...

【专利技术属性】
技术研发人员:刘小丽曹政高山渊
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

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

1