一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

消息传输方法及装置与流程

2022-03-09 01:46:20 来源:中国专利 TAG:


1.本说明书一个或多个实施例涉及区块链技术领域,尤其涉及一种消息传输方法及装置。


背景技术:

2.区块链技术(也被称之为,分布式账本技术)是一种去中心化的分布式数据库技术,具有去中心化、公开透明、不可篡改、可信任等多种特点,适用于诸多对数据可靠性具有高需求的应用场景中。


技术实现要素:

3.本说明书提出一种区块链数据传输方法,应用于区块链网络中的第一区块链节点;其中,所述第一区块链节点与区块链中继通信网络中的第一中继节点之间,以及所述区块链网络中的第二区块链节点与所述区块链中继通信网络中的第二中继节点之间均具有多个数据传输通道;所述方法包括:
4.获取待传输给所述第二区块链节点的区块链数据;
5.从与所述第一中继节点之间的所述多个数据传输通道中确定用于传输所述区块链数据的第一数据传输通道;
6.通过所述第一数据传输通道将所述区块链数据传输至所述第一中继节点,以使所述第一中继节点通过所述区块链中继通信网络的传输通道,将所述区块链数据传输给所述第二中继节点,由所述第二中继节点继续从与所述第二区块链节点之间的所述多个数据传输通道中确定用于传输所述区块链数据的第二数据传输通道,并通过所述第二数据传输通道将所述区块链数据传输至所述第二区块链节点。
7.本说明书还提出一种区块链数据传输方法,应用于区块链中继通信网络中的第一中继节点;其中,所述第一中继节点与区块链网络中的第一区块链节点之间,以及所述区块链中继通信网络中的第二中继节点与所述区块链网络中的第二区块链节点之间均具有多个数据传输通道;所述方法包括:
8.接收所述第一区块链节点通过与所述第一区块链节点之间的多个数据传输通道中的第一数据传输通道发送的待传输给所述第二区块链节点的区块链数据;其中,所述第一数据传输通道为所述第一区块链节点从与所述第一中继节点之间的所述多个数据传输通道中确定出的用于传输所述区块链数据的数据传输通道;
9.通过所述区块链中继通信网络的传输通道,将所述区块链数据传输给所述第二中继节点,以由所述第二中继节点继续从与所述第二区块链节点之间的所述多个数据传输通道中确定用于传输所述区块链数据的第二数据传输通道,并通过所述第二数据传输通道将所述区块链数据传输至所述第二区块链节点。
10.本说明书还提出一种区块链数据传输装置,应用于区块链网络中的第一区块链节点;其中,所述第一区块链节点与区块链中继通信网络中的第一中继节点之间,以及所述区
块链网络中的第二区块链节点与所述区块链中继通信网络中的第二中继节点之间均具有多个数据传输通道;所述装置包括:
11.获取模块,获取待传输给所述第二区块链节点的区块链数据;
12.确定模块,从与所述第一中继节点之间的所述多个数据传输通道中确定用于传输所述区块链数据的第一数据传输通道;
13.第一传输模块,通过所述第一数据传输通道将所述区块链数据传输至所述第一中继节点,以使所述第一中继节点通过所述区块链中继通信网络的传输通道,将所述区块链数据传输给所述第二中继节点,由所述第二中继节点继续从与所述第二区块链节点之间的所述多个数据传输通道中确定用于传输所述区块链数据的第二数据传输通道,并通过所述第二数据传输通道将所述区块链数据传输至所述第二区块链节点。
14.本说明书还提出一种区块链数据传输装置,应用于区块链中继通信网络中的第一中继节点;其中,所述第一中继节点与区块链网络中的第一区块链节点之间,以及所述区块链中继通信网络中的第二中继节点与所述区块链网络中的第二区块链节点之间均具有多个数据传输通道;所述装置包括:
15.接收模块,接收所述第一区块链节点通过与所述第一区块链节点之间的多个数据传输通道中的第一数据传输通道发送的待传输给所述第二区块链节点的区块链数据;其中,所述第一数据传输通道为所述第一区块链节点从与所述第一中继节点之间的所述多个数据传输通道中确定出的用于传输所述区块链数据的数据传输通道;
16.第二传输模块,通过所述区块链中继通信网络的传输通道,将所述区块链数据传输给所述第二中继节点,以由所述第二中继节点继续从与所述第二区块链节点之间的所述多个数据传输通道中确定用于传输所述区块链数据的第二数据传输通道,并通过所述第二数据传输通道将所述区块链数据传输至所述第二区块链节点。
17.本说明书还提出一种区块链网络,包括:
18.第一区块链节点,与区块链中继通信网络中的第一中继节点之间具有多个数据传输通道,用于获取待传输给第二区块链节点的区块链数据,从与所述第一中继节点之间的所述多个数据传输通道中确定用于传输所述区块链数据的第一数据传输通道,并通过所述第一数据传输通道将所述区块链数据传输至所述第一中继节点,以使所述第一中继节点通过所述区块链中继通信网络的传输通道,将所述区块链数据传输给所述第二中继节点;
19.第二区块链节点,与区块链中继通信网络中的第二中继节点之间具有多个数据传输通道,用于通过与区块链中继通信网络中的第二中继节点之间的多个数据传输通道中的第二数据传输通道,接收所述第二中继节点传输的所述区块链数据;其中,所述第二数据传输通道为所述第二中继节点从与所述第二区块链节点之间的所述多个数据传输通道中确定出的用于传输所述区块链数据的数据传输通道。
20.本说明书还提出一种区块链中继通信网络,包括:
21.第一中继节点,与区块链网络中的第一区块链节点之间具有多个数据传输通道,用于通过与所述第一区块链节点之间的多个数据传输通道中的第一数据传输通道,接收所述第一区块链节点传输的待传输给所述区块链网络中的第二区块链节点的区块链数据,并通过所述区块链中继通信网络的传输通道,将所述区块链数据传输给第二中继节点;
22.第二中继节点,与所述第二区块链节点之间具有多个数据传输通道,用于从与所
述第二区块链节点之间的所述多个数据传输通道中确定用于传输所述区块链数据的第二数据传输通道,并通过所述第二数据传输通道将所述区块链数据传输至所述第二区块链节点。
23.本说明书还提出一种区块链数据传输系统,包括区块链网络和区块链中继通信网络;所述区块链网络中的第一区块链节点与所述区块链中继通信网络中的第一中继节点之间,以及所述区块链网络中的第二区块链节点与所述区块链中继通信网络中的第二中继节点之间均具有多个数据传输通道;其中:
24.所述第一区块链节点,获取待传输给所述第二区块链节点的区块链数据;从与所述第一中继节点之间的所述多个数据传输通道中确定用于传输所述区块链数据的第一数据传输通道,并通过所述第一数据传输通道将所述区块链数据传输至所述第一中继节点;
25.所述第一中继节点,通过所述区块链中继通信网络的传输通道,将所述区块链数据传输给所述第二中继节点;
26.所述第二中继节点,继续从与所述第二区块链节点之间的所述多个数据传输通道中确定用于传输所述区块链数据的第二数据传输通道,并通过所述第二数据传输通道将所述区块链数据传输至所述第二区块链节点;
27.所述第二区块链节点,用于通过所述第二数据传输通道接收所述第二中继节点传输的所述区块链数据。
28.在以上技术方案中,由于区块链网络中的区块链节点与区块链中继通信网络中的中继节点之间可以保持多个数据传输通道,并且在区块链网络中的区块链节点之间在传输区块链数据时,可以通过不同的数据传输通道传输不同的区块链数据;因此,当某一数据传输通道遇到网络比较差的情况,并不会对其它数据传输通道传输的区块链数据造成影响,进而使得区块链平台仍然能够提供持续稳定的服务,可以避免通过同一数据传输通道传输多种区块链数据时,在遇到网络比较差的情况,导致整个区块链平台无法提供持续稳定的服务的问题。
附图说明
29.图1是一示例性实施例提供的一种区块链节点与区块链中继通信网络的交互示意图。
30.图2是一示例性实施例提供的另一种区块链节点与区块链中继通信网络的交互示意图。
31.图3是一示例性实施例提供的一种区块链数据传输方法的流程图。
32.图4是一示例性实施例提供的一种电子设备的结构示意图。
33.图5是一示例性实施例提供的一种区块链数据传输装置的框图。
34.图6是一示例性实施例提供的另一种区块链数据传输装置的框图。
具体实施方式
35.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相
反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
36.需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
37.区块链中继通信网络,是一种采用中继技术创建的骨干中继通信网络。该骨干中继通信网络,可以提升区块链网络中的区块链节点之间的数据传输的稳定性和实时性,实现区块链网络中的区块链节点之间的高速、安全互连。
38.其中,在实际应用中,区块链中继通信网络,具体可以适用于各种类型的区块链网络,包括公有链、私有链和联盟链等。
39.譬如,应用于公有链的区块链中继通信网络主要包括falcon、fast bitcoin relay network(fbrn)、fast internet bitcoin relay engine(fibre)等,而应用于联盟链的区块链中继通信网络主要包括bloxroute、blockchain transmission network(btn)等。
40.区块链网络中的区块链节点之间,可以分别与区块链中继通信网络中的中继节点建立连接来实现互联,并通过区块链中继通信网络中的中继节点提供的专用的数据传输通道来传输区块链数据。
41.请参见图1,图1是一示例性实施例提供的一种区块链节点与区块链中继通信网络的交互示意图。
42.如图1所示,区块链中继通信网络可以包含中继节点11、中继节点12、中继节点13和中继节点14等若干中继节点。区块链网络中的区块链节点,可以通过区块链网络所支持的通信协议,与区块链中继通信网络中的中继节点建立连接,并基于该连接与该中继节点进行数据通信。
43.需要说明的是,区块链中继通信网络中的中继节点,具体可以是一台物理设备以外,也可以是一台逻辑设备。例如,在一个例子中,上述区块链中继通信网络具体可以是一个基于云处理平台搭建的骨干通信网络,而在这种情况下,上述中继节点具体可以是针对云处理平台上的云处理资源进行虚拟化,创建的虚拟设备。
44.其中,在实际应用中,区块链节点具体可以通过一个网关与区块链中继通信网络中的中继节点相连,并通过该网关与该中继节点进行通信。
45.以图1示出的中继节点11为例,该中继节点11可以通过网关101与区块链网络中的区块链节点21相连。类似地,图1示出的其他中继节点,也可以与区块链网络中的其他区块链节点相连。
46.网关101具体用于协助节点区块链21接入区块链中继通信网络,该网关101在逻辑上相当于区块链网络中的一个区块链节点,但该网关101本身并不会参与区块链共识,也不会对区块链网络中的共识等过程产生影响。
47.在实际应用中,网关101本质上可以是一个区块链节点21接入区块链中继通信网络的适配程序,该适配程序可以部署在区块链节点21上,也可以部署在中继节点11上,当然
也可以部署在独立于中继节点11和区块链节点21的另一设备中,本说明书并不对此进行限制。
48.在区块链网络中,具体可以包含若干区块链节点、区块链节点之间需要实现诸如共识、交易传输、区块同步等通信操作。在相关技术中,各个区块链节点之间直接采用p2p(peer to peer,点对点)技术进行通信,以传输诸如交易数据、区块数据,共识数据等,但由于各种网络因素导致通信时延高、稳定性差,无法满足应用需求。
49.因此,类似于上述的区块链节点21,每个区块链节点都可以分别接入区块链中继通信网络中的中继节点,这样区块链节点之间就可以利用区块链中继通信网络提供的专用的数据传输通道来传输诸如交易数据、区块数据,共识数据等。
50.由于区块链中继通信网络,是面向区块链网络中的各个区块链节点提供实时传输的骨干中继通信网络,各个中继节点之间能够提供高qos保障、优质带宽的专用数据传输通道,因而由区块链中继通信网络接管区块链节点之间通信的中间链路,能够降低通信时延、提高稳定性,从而显著提升区块链节点之间的通信质量。
51.在实际应用中,区块链网络中的节点设备之间需要传输的区块链数据,通常包括三部分数据:
52.一部分是交易数据,另一部分是共识数据。这两部分是保证区块链平台能够正常运行的基础数据。例如,交易数据和共识数据如果无法在区块链节点之间进行正常传输,将直接影响到区块链网络中针对交易数据的正常的共识过程。
53.第三部分是区块数据,这一部分数据主要是用于在区块链节点之间进行数据同步。例如,当区块链网络新加入了一个区块链节点,则该新加入的区块链节点需要从已经加入区块链网络的区块链节点处,同步最新的区块数据。
54.请继续参见图1,区块链网络中的节点设备之间,在通过区块链中继通信网络提供的专用的数据传输通道,来传输这三部分数据时,通常是通过同一个数据传输通道来进行传输的。
55.通过同一个数据传输通道来传输以上描述的三部分数据时,如果遇到网络比较差的情况,比如丢包率较高或者延迟较大的情况,数据量比较大的区块链数据在传输过程中可能会存在发送失败或者发送超时的问题,进而可能导致后续的区块链数据无法按时发送到目标区块链节点,最终导致区块链平台无法提供持续稳定的服务。
56.例如,对于以上描述的三部分数据中的区块数据,相较于交易数据和共识数据,通常具有比较大的数据量。在这种情况下,如果在通过同一数据传输通道传输上述三部分数据时优先传输区块数据,则一旦遇到网络比较差的情况,造成区块数据发送失败或者发送超时,就会由于区块数据长时间“占据”数据传输通道造成整条数据传输通道出现“堵塞”,进而影响后续的交易数据和共识数据的传输。而交易数据和共识数据是保证区块链平台能够正常运行的基础数据,这两部分数据的传输受到影响,将直接影响到区块链平台的正常运行。
57.由此可见,在采用同一数据传输通道传输以上三部分区块链数据的场景下,如果遇到网络比较差的情况,可能会直接导致整个区块链平台无法提供持续稳定的服务。
58.有鉴于此,本说明书提出一种在区块链节点之间通过区块链中继通信网络进行数据传输的场景下,利用不同的数据通道来分别传输不同的区块链数据的技术方案。
59.在实现时,可以将区块链网络中的区块链节点与区块链中继通信网络中的中继节点之间的数据传输通道,由一条拆分成多条。
60.以区块链网络中的第一区块链节点需要向第二区块链节点传输区块链数据为例,在这种情况下,第一区块链节点与区块链中继通信网络中的第一中继节点之间,以及区块链网络中的第二区块链节点与区块链中继通信网络中的第二中继节点之间均可以保持多个数据传输通道。
61.当第一区块链节点在向第二区块链节点传输区块链数据时,可以从与第一中继节点之间的多个数据传输通道中确定用于传输该区块链数据的第一数据传输通道,再通过该第一数据传输通道将该区块链数据传输至第一中继节点。
62.第一中继节点在收到上述区块链数据时,可以进一步通过区块链中继通信网络的传输通道,将该区块链数据传输给第二中继节点。第二中继节点在收到上述区块链数据后,可以执行与第一区块链节点相同的动作,继续从与第二区块链节点之间的所述多个数据传输通道中,确定用于传输该区块链数据的第二数据传输通道,再通过该第二数据传输通道将该区块链数据传输至第二区块链节点,以完成针对该区块链数据的数据传输。
63.在以上技术方案中,由于区块链网络中的区块链节点与区块链中继通信网络中的中继节点之间可以保持多个数据传输通道,并且在区块链网络中的区块链节点之间在传输区块链数据时,可以通过不同的数据传输通道传输不同的区块链数据;因此,当某一数据传输通道遇到网络比较差的情况,并不会对其它数据传输通道传输的区块链数据造成影响,进而使得区块链平台仍然能够提供持续稳定的服务,可以避免通过同一数据传输通道传输多种区块链数据时,在遇到网络比较差的情况,导致整个区块链平台无法提供持续稳定的服务的问题。
64.以下将结合具体的实施例对本说明书的技术方案进行详细的描述。
65.请参见图2,图2是一示例性实施例提供的另一种区块链节点与区块链中继通信网络的交互示意图。
66.如图2所示,区块链中继通信网络可以包含中继节点11、中继节点12、中继节点13等若干中继节点。区块链节点21也可以通过一个网关(图2中未示出)与区块链中继通信网络中的中继节点11相连。相应的,区块链节点22也可以通过一个网关与区块链中继通信网络中的中继节点13相连。
67.区块链节点21和区块链节点22之间,可以通过区块链中继通信网络提供的专用的数据传输通道来传输诸如交易数据、区块数据,共识数据等。
68.其中,区块链节点21与中继节点11之间,可以建立多个数据传输通道。相应的,区块链节点22与中继节点11之间,也可以建立多个数据传输通道。
69.如图2所示,在示出的一种实施方式中,区块链节点21与中继节点11之间,以及区块链节点22与中继节点11之间,可以建立用于传输区块数据的数据传输通道31和用于传输交易数据和共识数据的数据传输通道32。也即,将数据量较大的区块链数据通过一条与交易数据和共识数据完全不同的数据传输通道进行数据传输。
70.需要说明的是,在图2中仅以区块链节点与中继节点之间保持用于传输区块数据的数据传输通道31和用于传输交易数据和共识数据的数据传输通道32等两条数据传输通道为例,在实际应用中,对于区块数据、交易数据和共识数据三种区块链数据,具体也可以
通过三条不同的数据通道来进行传输,在本说明书中不进行特别限定。
71.对于区块链中继通信网络中的中继节点之间的数据传输通道,通常为区块链中继通信网络提供的内部传输通道。
72.其中,区块链中继通信网络提供的内部传输通道,通常为高qos保障、优质带宽的专用数据传输通道,在实际应用中,区块链中继通信网络提供的内部传输通道的数量,通过可以根据区块链中继通信网络所能提供的网络传输资源来确定,可以为一条,也可以为多条。
73.在示出的一种实施方式中,为了使区块链中继通信网络提供的内部传输通道的数量,能够与区块链节点和中继节点之间的数据传输通道的数量相适配,对于区块链中继通信网络中的中继节点之间,具体也可以创建多条内部传输通道。
74.例如,如图2所示,对于区块链中继通信网络中的节点设备之间,具体也可以创建一条用于传输区块数据的第一数据传输通道,和一条用于传输交易数据和共识数据的第二数据传输通道。
75.图3是一示例性实施例提供的一种区块链数据传输方法的流程图。如图3所示,该方法应用于区块链网络中作为数据传输方的第一区块链节点和作为数据接收方的第二区块链节点。其中,为了便于描述,以下实施例中将以上述第一区块链节点为图2中示出的区块链节点21,上述第二区块链节点为图2中示出的区块链节点22为例来进行说明。上述第一区块链节点和上述第二区块链节点互相配合,执行以下步骤:
76.步骤302,第一区块链节点获取待传输给所述第二区块链节点的区块链数据;
77.在实际应用中,第一区块链节点与第二区块链节点之间通过区块链中继通信网络传输的区块链数据,通常可以包括对实时性、传输质量要求比较高的区块链数据。
78.例如,在示出的一种实施方式中,第一区块链节点与第二区块链节点之间通过区块链中继通信网络传输的区块链数据,通常可以包括区块(block)数据、交易(transaction)数据、和共识数据三类。
79.其中,交易数据通常是指区块链客户端发起的需要在区块链网络中的节点设备之间进行传输,由区块链网络中的区块链节点进行共识处理的交易。共识数据通常是指区块链网络中的区块链节点在对交易进行共识处理的过程中,各个区块链节点之间交互的与共识相关的数据;例如,上述共识数据可以包括共识过程中对交易的共识验证的结果、各个区块链节点对交易的共识结果,各个区块链节点之间交互的与共识相关的共识消息,等等。上述区块数据,通常持久化存储在区块链节点共同维护的区块链账本中,用于在区块链节点之间进行数据同步。例如,当区块链网络新加入了一个区块链节点,则该新加入的区块链节点需要从已经加入区块链网络的区块链节点处,同步最新的区块数据。
80.需要说明的是,对于一些对实时性、传输质量要求并不高的区块链数据,可以不通过上述区块链中继通信网络来进行传输,而是通过其它方式来进行传输;比如,可以采用区块链之间的通信连接来进行传输。
81.在实际应用中,第一区块链节点在需要向第二区块链节点传输区块链数据时,可以先获取待传输给第二区块链节点的区块链数据,再将获取到的区块链数据发送至上述区块链中继通信网络,由上述区块链中继通信网络将这些区块链数据发送至第二区块链节点。
82.在一个例子中,第一区块链节点待传输给第二区块链节点的区块链数据,具体可以是接入第一区块链节点的区块链客户端提交的区块链数据。在这种情况下,第一区块链节点可以从上述区块链客户端处获取待传输给上述第二区块链节点的区块链数据。
83.例如,区块链客户端提交的区块链数据通常可以是交易数据。第一区块链节点在获取到上述区块链客户端提交的交易数据后,可以将该交易数据通过上述区块链中继通信网络,传输给区块链网络中其它参与共识的区块链节点,对该交易数据进行共识处理。
84.在另一个例子中,第一区块链节点待传输给第二区块链节点的区块链数据,具体也可以是由其它区块链节点传输给第一区块链节点的区块链数据。在这种情况下,第一区块链节点可以从其它区块链节点处获取待传输给上述第二区块链节点的区块链数据。
85.例如,由其它区块链节点传输给第一区块链节点的区块链数据,通常可以是在共识过程中由其它区块链节点通过上述区块链中继通信网络传输给该第一区块链节点的共识数据。第一区块链节点在获取到由其它区块链节点传输的共识数据后,可以将该共识数据通过上述区块链中继通信网络继续传输给区块链网络中其它参与共识的区块链节点,以将该共识数据在整个区块链网络中的各个区块链节点之间的传播扩散。
86.在第三个例子中,第一区块链节点待传输给第二区块链节点的区块链数据,具体也可以是持久化存储在本地维护的区块链账本中的区块链数据。在这种情况下,第一区块链节点可以从本地维护的区块链账本中来获取待传输给上述第二区块链节点的区块链数据。
87.例如,持久化存储在本地维护的区块链账本中的区块链数据,通常可以是区块数据。当第一区块链节点在收到其它新加入的区块链节点发送的区块同步请求,可以从本地维护的区块链账本中读取待同步的区块数据,再将该区块数据通过上述区块链中继通信网络传输给上述新加入的区块链节点,以完成区块数据的同步。
88.步骤304,第一区块链节点从与所述区块链中继通信网络中的第一中继节点之间的多个数据传输通道中确定用于传输所述区块链数据的第一数据传输通道;
89.请参见图2,上述第一中继节点可以是图2中示出的中继节点11。上述第一区块链节点可以与上述第一中继节点之间保持多个数据传输通道。
90.其中,该多个数据传输通道具体可以是区块链节点所支持的通信协议,与中继节点之间建立的用于传输区块链数据的专用数据连接。例如,在一个例子中,上述通信协议具体可以是ssl协议,该数据连接具体可以是ssl连接。
91.需要说明的是,上述第一区块链节点与区块链中继通信网络中的第一中继节点之间保持多个数据传输通道,具体可以是第一区块链节点与上述第一中继节点之间预先建立的数据传输通道,也可以是在第一区块链节点需要向第二区块链节点传输区块链数据时,实时创建的数据传输通道,在本说明书中不进行特别限定。
92.第一区块链节点在获取到待传输给第二区块链节点的区块链数据之后,可以从上述多个数据传输通道中确定一条用于传输该区块链数据的第一数据传输通道。
93.其中,需要说明的是,从上述多个数据数据通道中确定一条用于传输该区块链数据的第一数据传输通道的方式,不进行具体的限定,可以基于数据类型、数据大小来确定,也可以通过其它方式来确定。
94.在示出的一种实施方式中,上述多个数据传输通道可以分别对应不同的数据类
型。在这种情况下,第一区块链节点可以先确定待传输的上述区块链数据的数据类型,再将上述多个数据传输通道中与该区块链数据的数据类型对应的数据传输通道,确定为用于传输该区块链数据的第一数据传输通道。
95.例如,如图2所示,可以按照数据类型,将第一区块链节点与第二区块链节点之间的多条数据传输通道,划分为用于传输区块数据的数据传输通道31和用于传输交易数据和共识数据的数据传输通道32。也即,数据传输通道31对应的数据类型为区块数据,数据传输通道32对应的数据类型为交易数据和共识数据。
96.其中,需要说明的是,由于交易数据和共识数据通常都是和区块链网络中的共识处理过程相关的数据,并且交易数据和共识数据也都是数据量较小的数据,因此将交易数据和共识数据通过同一条数据传输通道传输,能够最大程度的节约传输资源。当然,在实际应用中,也可以按照数据类型,将第一区块链节点与第二区块链节点之间的多条数据传输通道,划分为分别用于传输区块数据、交易数据以及共识数据的三条不同的数据传输通道,在本说明书中不进行特别的限定。
97.在示出的另一种实施方式中,上述多个数据传输通道也可以分别对应不同的阈值区间。其中,该阈值区间具体用于表征数据传输通道能够传输的区块链数据的数据大小范围。也即,该阈值区间具体描述的是数据传输通道能够传输的数据量。
98.在这种情况下,第一区块链节点可以先确定待传输的上述区块链数据的数据大小,再将上述区块链数据的数据大小和与上述多个数据传输通道对应的阈值区间分别进行匹配;如果该区块链数据的数据大小命中任一数据传输通道对应的阈值区间,则将该数据传输通道确定为用于传输该区块链数据的第一数据传输通道。
99.需要说明的是,与上述多个数据传输通道分别对应的阈值区间的具体数值大小,在实际应用中,可以基于实际传输的区块链数据的数据量来灵活的配置。
100.例如,在实现时,可以对需要传输的区块数据、交易数据和共识数据的数据大小进行分析,得到能够表征区块数据、交易数据和共识数据的数据大小范围的数值区间,然后再根据该数值区间来为各条数据传输通道配置对应的阈值区间。
101.步骤306,通过所述第一数据传输通道将所述区块链数据传输至所述第一中继节点,以使所述第一中继节点通过所述区块链中继通信网络的传输通道,将所述区块链数据传输给所述第二中继节点,由所述第二中继节点继续从与所述第二区块链节点之间的所述多个数据传输通道中确定用于传输所述区块链数据的第二数据传输通道,并通过所述第二数据传输通道将所述区块链数据传输至所述第二区块链节点。
102.请参见图2,上述第二中继节点具体可以是图2中示出的中继节点13。上述第二区块链节点也可以与上述第二中继节点之间保持多个数据传输通道。
103.第一区块链节点从上述多个数据传输通道中,为待传输给第二区块链节点的区块链数据,确定出一条用于传输该区块链数据的第一数据传输通道之后,可以通过该第一数据传输通道将该区块链数据传输给上述第一中继节点。
104.其中,需要说明的是,第一区块链节点具体可以将该区块链数据按照上述区块链中继通信网络所支持的数据传输格式,打包成适宜在上述区块链中继通信网络中进行传输的数据包之后,再通过上述第一数据传输通道将该数据包传输给上述第一中继节点。而该数据包的具体形式,在本说明书中不进行特别限定。
105.例如,在一个例子中,上述数据包具体可以是消息(message)。第一区块链节点具体可以将该区块链数据按照上述区块链中继通信网络所支持的数据传输格式,打包成适宜在上述区块链中继通信网络中进行传输的消息之后,再通过上述第一数据传输通道将该消息传输给上述第一中继节点。
106.第一中继节点在收到上述第一区块链节点通过上述第一数据传输通道传输的区块链数据之后,可以将该区块链数据通过上述区块链中继通信网络的内部传输通道继续传输给上述第二中继节点。
107.需要说明的是,上述内部传输通道,是指上述区块链中继通信网络中,用于连通上述第一中继节点和上述第二中继节点的传输通道。其中,该内部传输通道可以是上述第一中继节点和上述第二中继节点之间直连的传输通道,也可以是通过另一中继节点作为上述第一中继节点和上述第二中继节点之间的中间节点而形成的非直连的传输通道。
108.当上述内部传输通道为上述第一中继节点和上述第二中继节点之间直连的传输通道时,上述第一中继节点可以基于与上述第二中继节点之间的传输通道,直接将上述区块链数据传输给上述第二中继节点。而如果上述内部传输通道是通过另一中继节点作为上述第一中继节点和上述第二中继节点之间的中间节点而形成的非直连的传输通道,则上述第一中继节点可以基于与上述另一中继节点之间的传输通道,将上述区块链数据传输给上述另一中继节点,再由该另一中继节点基于与上述第二中继节点之间的传输通道,继续将将上述区块链数据传输给上述第二中继节点。
109.例如,图2中示出的中继节点11和中继节点13之间的内部传输通道,就是中继节点11通过另一中继节点12作为中间节点,与中继节点13形成的非直连的传输通道。在这种情况下,中继节点11可以先把上述区块链数据传输给中继节点12,再由上述中继节点12继续将该区块链数据传输给中继节点13。
110.其中,需要说明的是,为了适配区块链节点与上述区块链中继通信网络中的中继节点之间的多个数据传输通道,上述区块链中继通信网络中的内部传输通道,具体也可以包括多个内部数据传输通道。
111.在示出的一种实施方式中,上述内部传输通道包括的多个内部数据传输通道,具体可以与上述第一区块链节点和上述第一中继节点之间的多个数据传输通道,以及与上述第二区块链节点和上述第二中继节点之间的多个数据传输通道一一对应。
112.例如,图2中示出的上述区块链中继通信网络中的内部传输通道,可以与区块链节点21和中继节点11之间,以及中继节点13和区块链节点22之间的数据传输通道一一对应,也包括一条用于传输区块数据的数据传输通道31和用于传输交易数据和共识数据的数据传输通道32。
113.在这种情况下,第一中继节点在通过区块链中继通信网络的内部传输通道,将上述区块链数据传输给第二中继节点时,具体可以通过所述区块链中继通信网络的内部传输通道中与第一数据传输通道对应的内部传输通道,将该区块链数据传输给第二中继节点。
114.在示出的另一种实施方式中,上述内部传输通道包括的多个内部数据传输通道,具体也可以分别对应不同的数据类型。在这种情况下,第一中继节点在通过区块链中继通信网络的内部传输通道,将上述区块链数据传输给第二中继节点时,也可以先确定待传输的上述区块链数据的数据类型,再通过上述多个内部数据传输通道中与该区块链数据的数
据类型对应的数据传输通道,将该区块链数据传输给上述第二中继节点。
115.在示出的另一种实施方式中,上述内部传输通道包括的多个内部数据传输通道,具体也可以分别对应不同的阈值区间。其中,该阈值区间具体也可以用于表征数据传输通道能够传输的区块链数据的数据大小范围。
116.在这种情况下,第一中继节点在通过区块链中继通信网络的内部传输通道,将上述区块链数据传输给第二中继节点时,也可可以先确定待传输的上述区块链数据的数据大小,再将上述区块链数据的数据大小和与上述多个内部数据传输通道对应的阈值区间分别进行匹配;如果该区块链数据的数据大小命中任一内部数据传输通道对应的阈值区间,则通过该内部数据传输通道将上述区块链数据传输给第二中继节点。
117.而第二中继节点收到第一中继节点通过内部传输通道传输的区块链数据之后,也可以从与上述第二区块链节点之间的上述多个数据传输通道中,确定一条用于传输该区块链数据的第二数据传输通道,再通过该第二数据传输通道将该区块链数据传输给上述第二区块链节点。
118.其中,第二中继节点从与上述第二区块链节点之间的上述多个数据传输通道中,确定出一条用于传输该区块链数据的第二数据传输通道的具体方式,可以与上述第一区块链节点从与上述第一中继节点之间的多条数据传输通道中,确定出一条用于传输该区块链数据的第一数据传输通道的方式完全相同,在本说明书中不再赘述。
119.例如,第二中继节点在从与上述第二区块链节点之间的上述多个数据传输通道中,确定出一条用于传输该区块链数据的第二数据传输通道时,具体也可以按照该区块链数据的数据类型或者数据大小,从上述多个数据传输通道中确定出一条上述第二数据传输通道。
120.当第二区块链节点收到第一区块链节点通过上述区块链中继通信网络传输的区块链数据之后,如果第二区块链节点也需要通过上述区块链中继通信网络继续向区块链网络中的其它的区块链节点传输区块链数据,此时第二区块链节点也可以按照以上描述的数据传输方式,继续与其它的区块链节点进行数据传输,在本说明书中不再赘述。
121.请继续参见图2,在一示例性实施例中本说明书还提供一种区块链网络,包括区块链节点21和区块链节点22。
122.其中,区块链节点21,可以与区块链中继通信网络中的中继节点11之间具有多个数据传输通道,用于获取待传输给区块链节点22的区块链数据,从与中继节点11之间的多个数据传输通道中确定用于传输该区块链数据的第一数据传输通道,并通过该第一数据传输通道将该区块链数据传输至中继节点11,以使中继节点11通过区块链中继通信网络的传输通道,继续将该区块链数据传输给中继节点13;
123.区块链节点22,与区块链中继通信网络中的中继节点13之间具有多个数据传输通道,用于通过与区块链中继通信网络中的中继节点13之间的多个数据传输通道中的第二数据传输通道,接收中继节点13传输的区块链数据;其中,该第二数据传输通道为中继节点13从与区块链节点22之间的多个数据传输通道中确定出的用于传输该区块链数据的数据传输通道。
124.以上描述的区块链节点21和区块链节点22的具体功能,与之前实施例描述的第一区块链节点和第二区块链节点分别对应,在实施例中不再进行赘述。
125.请继续参见图2,在一示例性实施例中本说明书还提供一种区块链中继通信网络,包括中继节点11和中继节点13。
126.其中,中继节点11,与区块链网络中的区块链节点21之间具有多个数据传输通道,用于通过与区块链节点21之间的多个数据传输通道中的第一数据传输通道,接收区块链节点21传输的待传输给区块链网络中的区块链节点22的区块链数据,并通过该区块链中继通信网络的传输通道,将该区块链数据传输给中继节点13;
127.中继节点13,与区块链节点22之间具有多个数据传输通道,用于从与区块链节点22之间的多个数据传输通道中确定用于传输该区块链数据的第二数据传输通道,并通过该第二数据传输通道将该区块链数据传输至区块链节点22。
128.以上描述的中继节点11和中继节点13的具体功能,与之前实施例描述的第一中继节点和第二中继节点分别对应,在实施例中不再进行赘述。
129.请继续参见图2,在一示例性实施例中本说明书还提供一种区块链数据传输系统,包括区块链节点21、中继节点11、中继节点13以及区块链节点22。
130.其中,区块链节点21,获取待传输给区块链节点22的区块链数据;从与中继节点22之间的多个数据传输通道中确定用于传输该区块链数据的第一数据传输通道,并通过该第一数据传输通道将所述区块链数据传输至中继节点11;
131.中继节点11,通过区块链中继通信网络的传输通道,将该区块链数据传输给中继节点13。例如,图2中示出的为中继节点11通过中继节点12作为中转,将区块链数据传输给中继节点13。
132.中继节点13,继续从与区块链节点22之间的多个数据传输通道中确定用于传输该区块链数据的第二数据传输通道,并通过该第二数据传输通道将该区块链数据传输至区块链节点22。
133.区块链节点22,用于通过上述第二数据传输通道接收中继节点13传输的区块链数据。
134.以上描述的区块链节点21和区块链节点22的具体功能,与之前实施例描述的第一区块链节点和第二区块链节点分别对应,在实施例中不再进行赘述。
135.以上描述的中继节点11和中继节点13的具体功能,与之前实施例描述的第一中继节点和第二中继节点分别对应,在实施例中也不再进行赘述。
136.与上述方法实施例相对应,本说明书还提供了一种消息传输装置的实施例。
137.图4是一示例性实施例提供的一种电子设备的示意结构图。请参考图4,在硬件层面,该电子设备包括处理器402、内部总线404、网络接口406、内存408以及非易失性存储器410,当然还可能包括其他业务所需要的硬件。处理器402从非易失性存储器410中读取对应的计算机程序到内存408中然后运行,在逻辑层面上形成区块链数据传输装置。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
138.请参考图5,在一软件实施方式中,该区块链数据传输装置可以应用于区块链网络中的第一区块链节点;其中,所述第一区块链节点与区块链中继通信网络中的第一中继节点之间,以及所述区块链网络中的第二区块链节点与所述区块链中继通信网络中的第二中
继节点之间均具有多个数据传输通道;可以包括:
139.获取模块51,获取待传输给所述第二区块链节点的区块链数据;
140.确定模块52,从与所述第一中继节点之间的所述多个数据传输通道中确定用于传输所述区块链数据的第一数据传输通道;
141.第一传输模块53,通过所述第一数据传输通道将所述区块链数据传输至所述第一中继节点,以使所述第一中继节点通过所述区块链中继通信网络的传输通道,将所述区块链数据传输给所述第二中继节点,由所述第二中继节点继续从与所述第二区块链节点之间的所述多个数据传输通道中确定用于传输所述区块链数据的第二数据传输通道,并通过所述第二数据传输通道将所述区块链数据传输至所述第二区块链节点。
142.可选的,所述多个数据传输通道分别对应不同的数据类型;
143.所述确定模块52:
144.确定所述区块链数据的数据类型;
145.将与所述第一中继节点之间的所述多个数据传输通道中,与所述区块链数据的数据类型对应的数据传输通道,确定为用于传输所述区块链数据的第一数据传输通道。
146.可选的,所述多个数据传输通道分别对应不同的阈值区间;所述阈值区间表征所述数据传输通道能够传输的区块链数据的数据大小范围;
147.所述确定模块52:
148.确定所述区块链数据的数据大小;
149.将所述区块链数据的数据大小和与所述第一中继节点之间的所述多个数据传输通道对应的阈值区间分别进行匹配;
150.如果所述区块链数据的数据大小命中任一数据传输通道对应的阈值区间,则将该数据传输通道确定为用于传输所述区块链数据的第一数据传输通道。
151.可选的,所述区块链数据包括:区块数据、交易数据和共识数据;所述多个数据传输通道包括用于传输区块数据的第一数据传输通道,以及用于传输交易数据和共识数据的第二数据传输通道。
152.请参考图6,在另一软件实施方式中,该区块链数据传输装置可以用于区块链中继通信网络中的第一中继节点;其中,所述第一中继节点与区块链网络中的第一区块链节点之间,以及所述区块链中继通信网络中的第二中继节点与所述区块链网络中的第二区块链节点之间均具有多个数据传输通道;可以包括:
153.接收模块61,接收所述第一区块链节点通过与所述第一区块链节点之间的多个数据传输通道中的第一数据传输通道发送的待传输给所述第二区块链节点的区块链数据;其中,所述第一数据传输通道为所述第一区块链节点从与所述第一中继节点之间的所述多个数据传输通道中确定出的用于传输所述区块链数据的数据传输通道;
154.第二传输模块62,通过所述区块链中继通信网络的传输通道,将所述区块链数据传输给所述第二中继节点,以由所述第二中继节点继续从与所述第二区块链节点之间的所述多个数据传输通道中确定用于传输所述区块链数据的第二数据传输通道,并通过所述第二数据传输通道将所述区块链数据传输至所述第二区块链节点。
155.可选的,所述区块链中继通信网络中的传输通道,包括多个数据传输通道;其中,所述传输通道包括的多个数据传输通道,与所述第一区块链节点和所述第一中继节点之间
的多个数据传输通道,以及与所述第二区块链节点和所述第二中继节点之间的多个数据传输通道一一对应;
156.所述第二传输模块62:
157.通过所述区块链中继通信网络的传输通道中与所述第一数据传输通道对应的传输通道,将所述区块链数据传输给所述第二中继节点。
158.可选的,所述区块链中继通信网络中的传输通道,包括多个数据传输通道;其中,所述传输通道包括的多个数据传输通道,分别对应不同的数据类型;
159.所述第二传输模块62:
160.确定所述区块链数据的数据类型;
161.通过所述区块链中继通信网络的传输通道中,与所述区块链数据的数据类型对应的数据传输通道,将所述区块链数据传输给所述第二中继节点。
162.可选的,所述区块链中继通信网络中的传输通道,包括多个数据传输通道;其中,所述传输通道包括的多个数据传输通道,分别对应不同的阈值区间;所述阈值区间表征所述传输通道传输的区块链数据的数据大小范围;
163.所述第二传输模块62:
164.确定所述区块链数据的数据大小;
165.将所述区块链数据的数据大小和与所述传输通道包括的多个数据传输通道对应的阈值区间分别进行匹配;
166.如果所述区块链数据的数据大小命中一数据传输通道对应的阈值区间,则通过该传输通道,将所述区块链数据传输给所述第二中继节点。
167.可选的,所述区块链数据包括:区块数据、交易数据和共识数据;所述多个数据传输通道包括用于传输区块数据的第一数据传输通道,以及用于传输交易数据和共识数据的第二数据传输通道。
168.上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
169.在一个典型的配置中,计算机包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
170.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
171.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的
存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
172.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
173.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
174.在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
175.应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
176.以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献