CN111553669A - 一种交易路由方法、装置及计算机可读存储介质 - Google Patents
一种交易路由方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111553669A CN111553669A CN202010351450.0A CN202010351450A CN111553669A CN 111553669 A CN111553669 A CN 111553669A CN 202010351450 A CN202010351450 A CN 202010351450A CN 111553669 A CN111553669 A CN 111553669A
- Authority
- CN
- China
- Prior art keywords
- node
- transaction
- transaction pool
- leaf
- pool
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/02—Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/48—Routing tree calculation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
- H04L45/748—Address table lookup; Address filtering using longest matching prefix
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种交易路由方法、装置及计算机可读存储介质,方法包括:共识节点在接收到交易数据时,确定交易数据对应的目标交易池,根据目标交易池的最短前缀从多个路由转发表中获取第二交易池的地址,该多个路由转发表包括多个子树中每个子树对应的路由转发表,该多个子树是以第一叶子节点为基准对字典树从根节点开始拆分得到的,第一叶子节点对应表示该共识节点的交易池,每个路由转发表用于记录对应子树中预设数量的叶子节点对应表示的交易池的地址,并向第二交易池的地址对应的共识节点发送交易数据,从而可以保证交易数据的转发过程不受单个节点上线或下线的影响,容错性强,使得交易能够被快速传递给对应的交易池。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种交易路由方法、装置及计算机可读存储介质。
背景技术
在目前的区块链网络中,节点的交易池向某个交易池发送交易的过程中,通常会经过多个节点的交易池的转发,但是如果有节点上线或者下线则很可能会影响交易的转发过程,例如第一节点的交易池向第二节点的交易池发送交易的时候需要第三节点的交易池和第四节点的交易池参与转发,即第一节点的交易池先向第三节点的交易池发送交易,第三节点的交易池再向第四节点的交易池转发交易,然后第四节点的交易池再向第二节点的交易池转发交易,但是如果第四节点下线,则交易的转发会暂时停止,只有等待第四节点重新上线后,交易才能转发到第二节点的交易池。可见,上述交易转发过程容易受单个节点上线或下线的影响,容错性较差,导致交易无法被快速地传递给对应的交易池。
发明内容
本发明实施例提供一种交易路由方法、装置及计算机可读存储介质,可以保证交易的转发过程不受单个节点上线或下线的影响,容错性强,使得交易能够被快速传递给对应的交易池。
第一方面,本发明实施例提供了一种交易路由方法,应用于区块链网络,所述区块链网络包括多个共识节点,所述多个共识节点中的每个共识节点维护各自对应的交易池,所述方法包括:
第一共识节点在接收到交易数据时,确定所述交易数据对应的目标交易池,所述第一共识节点为所述多个共识节点中的任意一个。
在所述第一共识节点的交易池不是所述目标交易池时,所述第一共识节点根据所述目标交易池的最短前缀从多个路由转发表中获取第二交易池的地址,其中,所述多个路由转发表包括字典树的多个子树中每个子树对应的路由转发表,所述字典树包括多个叶子节点,所述多个叶子节点中的每个叶子节点对应表示一个共识节点的交易池,所述第二交易池对应的叶子节点位于所述多个子树中包括所述目标交易池对应的叶子节点的子树中,所述多个子树是以第一叶子节点为基准对所述字典树从根节点开始拆分得到的,且所述每个子树均不包括所述第一叶子节点,所述第一叶子节点对应表示所述第一共识节点的交易池,所述多个路由转发表中的每个路由转发表用于记录对应子树中预设数量的叶子节点对应表示的交易池的地址。
所述第一共识节点向所述第二交易池的地址对应的共识节点发送所述交易数据。
第二方面,本发明实施例提供了一种交易路由装置,应用于区块链网络中的第一共识节点,所述区块链网络包括多个共识节点,所述第一共识节点为所述多个共识节点中的任意一个,所述多个共识节点中的每个共识节点维护各自对应的交易池,所述装置包括:
接收模块,用于接收交易数据。
确定模块,用于当所述接收模块接收到交易数据时,确定所述交易数据对应的目标交易池。
获取模块,用于在所述第一共识节点的交易池不是所述目标交易池时,根据所述目标交易池的最短前缀从多个路由转发表中获取第二交易池的地址,其中,所述多个路由转发表包括字典树的多个子树中每个子树对应的路由转发表,所述字典树包括多个叶子节点,所述多个叶子节点中的每个叶子节点对应表示一个共识节点的交易池,所述第二交易池对应的叶子节点位于所述多个子树中包括所述目标交易池对应的叶子节点的子树中,所述多个子树是以第一叶子节点为基准对所述字典树从根节点开始拆分得到的,且所述每个子树均不包括所述第一叶子节点,所述第一叶子节点对应表示所述第一共识节点的交易池,所述多个路由转发表中的每个路由转发表用于记录对应子树中预设数量的叶子节点对应表示的交易池的地址。
发送模块,用于向所述第二交易池的地址对应的共识节点发送所述交易数据。
第三方面,本发明实施例提供了一种节点设备,应用于区块链网络,所述区块链网络包括多个共识节点,所述多个共识节点中的每个共识节点对应维护一个交易池,所述节点设备包括处理器、网络接口和存储装置,所述处理器、所述网络接口和所述存储装置相互连接,其中,所述网络接口受所述处理器的控制用于收发数据,所述存储装置用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,用于执行第一方面所述的交易路由方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行,用以执行第一方面所述的交易路由方法。
本发明实施例中,共识节点在接收到交易数据时,确定交易数据对应的目标交易池,在该共识节点的交易池不是目标交易池时,该共识节点根据目标交易池的最短前缀从多个路由转发表中获取第二交易池的地址,其中,该多个路由转发表包括字典树的多个子树中每个子树对应的路由转发表,字典树包括多个叶子节点,该多个叶子节点中的每个叶子节点对应表示一个共识节点的交易池,第二交易池对应的叶子节点位于该多个子树中包括目标交易池对应的叶子节点的子树中,该多个子树是以第一叶子节点为基准对字典树从根节点开始拆分得到的,且每个子树均不包括第一叶子节点,第一叶子节点对应表示该共识节点的交易池,该多个路由转发表中的每个路由转发表用于记录对应子树中预设数量的叶子节点对应表示的交易池的地址,并向第二交易池的地址对应的共识节点发送该交易数据,从而每个交易池所在的共识节点可以有效管理区块链网络的局部节点的状态,交易数据的转发过程可以不受单个节点上线或下线的影响,容错性强,使得交易能够被快速传递给对应的交易池。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本发明实施例提供的一种交易路由系统的架构示意图;
图1b是本发明实施例提供的一种区块链的结构示意图;
图1c是本发明实施例提供的一种产生新区块的过程示意图;
图2是本发明实施例提供的一种交易路由方法的流程示意图;
图3是本发明实施例提供的另一种交易路由方法的流程示意图;
图4是本发明实施例提供的一种字典树的结构示意图;
图5是本发明实施例提供的一种拆分字典树的示意图;
图6是本发明实施例提供的一种交易路由装置的结构示意图;
图7是本发明实施例提供的一种节点设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
针对目前区块链网络在转发交易的过程中,如果有节点上线或者下线很可能会影响交易的转发,容错性较差,无法保证交易被快速、有效地传递给对应的交易池的问题,本发明实施例提供了一种交易路由方法,可以保证交易数据的转发过程不受单个节点上线或下线的影响,容错性强,使得交易能够被快速传递给对应的交易池。
请参见图1a,是本发明实施例提供的一种交易路由系统的架构示意图,该交易路由系统包括区块链网络10和终端设备11,其中:
区块链网络10是指用于进行节点与节点之间数据共享的网络,区块链网络中可以包括多个节点101。每个节点101在进行正常工作可以接收到输入信息,并基于接收到的输入信息维护区块链网络内的共享数据(即区块链)。为了保证区块链网络内的信息互通,每个节点之间可以存在信息连接,任意两个节点之间可以实现点对点(Peer To Peer,P2P)通信,具体可以通过有线通信链路或无线通信链路进行P2P通信。例如,当区块链网络中的任意节点接收到输入信息时,其他节点便根据共识算法获取该输入信息,将该输入信息作为共享数据中的数据进行存储,使得区块链网络中全部节点上存储的数据均一致。
终端设备11可以接入该区块链网络,并可以与区块链网络中的节点进行通信,例如,向节点提交交易数据,从节点查询数据,等等。其中,终端设备11具体可以是智能手机、平板电脑、笔记本电脑、台式电脑、车载智能终端等,本发明实施例不做限定。
需要说明的是,图1a中所示的节点的数目仅仅是示意性的,根据实际需要,可以部署任意数目的节点。
其中,对于区块链网络中的每个节点,均具有与其对应的节点标识,而且区块链网络中的每个节点均可以存储有区块链网络中其他节点的节点标识,以便后续根据其他节点的节点标识,将生成的区块广播至区块链网络中的其他节点。每个节点中可维护一个如下表所示的节点标识列表,将节点名称和节点标识对应存储至该节点标识列表中。其中,节点标识可为互联网协议(Internet Protocol,IP)地址以及其他任一种能够用于标识该节点的信息,表中仅以IP地址为例进行说明。
节点名称 | 节点标识 |
节点1 | 117.114.151.174 |
节点2 | 117.116.189.145 |
… | … |
节点N | 119.123.789.258 |
其中,区块链网络中的每个节点均存储一条相同的区块链。区块链由多个区块组成,参见图1b,区块链由多个区块组成,创始块中包括区块头和区块主体,区块头中存储有输入信息特征值、版本号、时间戳和难度值,区块主体中存储有输入信息;创始块的下一区块以创始块为父区块,下一区块中同样包括区块头和区块主体,区块头中存储有当前区块的输入信息特征值、父区块的区块头特征值、版本号、时间戳和难度值,并以此类推,使得区块链中每个区块中存储的区块数据均与父区块中存储的区块数据存在关联,保证了区块中输入信息的安全性。
其中,在生成区块链中的各个区块时,参见图1c,区块链所在的节点在接收到输入信息时,对输入信息进行校验,完成校验后,将输入信息存储至内存池中,并更新其用于记录输入信息的哈希树;之后,将更新时间戳更新为接收到输入信息的时间,并尝试不同的随机数,多次进行特征值计算,使得计算得到的特征值可以满足下述公式:
SHA256(SHA256(version+prev_hash+merkle_root+ntime+nbits+x))<TARGET
其中,SHA256为计算特征值所用的特征值算法;version(版本号)为区块链中相关区块协议的版本信息;prev_hash为当前区块的父区块的区块头特征值;merkle_root为输入信息的特征值;ntime为更新时间戳的更新时间;nbits为当前难度,在一段时间内为定值,并在超出固定时间段后再次进行确定;x为随机数;TARGET为特征值阈值,该特征值阈值可以根据nbits确定得到。
这样,当计算得到满足上述公式的随机数时,便可将信息对应存储,生成区块头和区块主体,得到当前区块。随后,区块链所在节点根据区块链网络中其他节点的节点标识,将新生成的区块分别发送给其所在的区块链网络中的其他节点,由其他节点对新生成的区块进行校验,并在完成校验后将新生成的区块添加至其存储的区块链中。
其中,区块链网络的节点上可以运行智能合约,智能合约是用于在满足一定条件时而执行的代码实现,开发人员可以通过编程语言定义合约逻辑,发布到区块链上(智能合约注册),根据合约条款的逻辑,调用密钥或者其他的事件触发执行,完成合约逻辑,同时还提供对智能合约升级、注销的功能。
在一些可行的实施方式中,区块链网络的某一节点101(具体可以是共识节点)在接收到交易数据时,确定交易数据对应的目标交易池,在该共识节点的交易池不是目标交易池时,该共识节点根据目标交易池的最短前缀从多个路由转发表中获取第二交易池的地址,其中,该多个路由转发表包括字典树的多个子树中每个子树对应的路由转发表,字典树包括多个叶子节点,该多个叶子节点中的每个叶子节点对应表示一个共识节点的交易池,第二交易池对应的叶子节点位于该多个子树中包括目标交易池对应的叶子节点的子树中,该多个子树是以第一叶子节点为基准对字典树从根节点开始拆分得到的,且每个子树均不包括第一叶子节点,第一叶子节点对应表示该共识节点的交易池,该多个路由转发表中的每个路由转发表用于记录对应子树中预设数量的叶子节点对应表示的交易池的地址,并向第二交易池的地址对应的共识节点发送该交易数据,从而每个交易池所在节点可以有效管理全网的局部状态,交易数据的转发过程可以不受单个节点上线下线的影响,容错性强,使得交易能够被快速传递给对应的交易池。
以下对本发明实施例的技术方案的实现细节进行详细阐述:
请参见图2,是本发明实施例基于图1a所示的交易路由系统提供的一种交易路由方法的流程示意图,本发明实施例的交易路由方法主要是从共识节点一侧进行描述的,区块链网络包括多个共识节点,该交易路由方法包括如下步骤:
201、第一共识节点在接收到交易数据时,确定所述交易数据对应的目标交易池。
其中,第一共识节点为上述多个共识节点中的任意一个。
需要说明的是,区块链网络的每个共识节点都会维护一份未确认交易的临时列表,被称为内存池或交易池。其中,交易池存储在本地内存中,并不是存储在永久性存储设备(如硬盘)里,交易池随区块链网络传入的交易数据动态填充。共识节点启动时,对应的交易池是空闲的,随着区块链网络中新的交易数据不断被接收,交易池也逐渐被填充。
具体的,第一共识节点在接收到终端设备提交的交易数据或者其他共识节点转发的交易数据时,确定需要缓存该交易数据的交易池(记为目标交易池)。
在一些可行的实施方式中,目标交易池可以是多个,意味着该交易数据需要最终发送到该目标交易池对应的多个共识节点。
在一些可行的实施方式中,该交易数据也可以是第一共识节点自身产生的数据。
在一些可行的实施方式中,交易数据中可以携带有交易池的标识,第一共识节点可以根据交易池的标识确定需要缓存该交易数据的目标交易池。
在一些可行的实施方式中,第一共识节点可以根据该交易数据的哈希值从字典树中查找需要缓存该交易数据的目标交易池,其中,该字典树包括多个叶子节点,多个叶子节点中的每个叶子节点对应表示一个共识节点的交易池。
202、在所述第一共识节点的交易池不是所述目标交易池时,所述第一共识节点根据所述目标交易池的最短前缀从多个路由转发表中获取第二交易池的地址。
其中,该多个路由转发表包括字典树的多个子树中每个子树对应的路由转发表,该多个子树是以第一叶子节点为基准对字典树从根节点开始拆分得到的,且每个子树均不包括第一叶子节点,第一叶子节点对应表示第一共识节点的交易池。每个交易池所在的共识节点可以维护区块链网络中局部共识节点的状态,可以是维护多个路由转发表,每个路由转发表用于记录对应子树中预设数量的叶子节点对应表示的交易池的地址,预设数量可以大于或等于2,即任意一个共识节点都会知晓每个子树中至少两个叶子节点对应表示的交易池的地址,该地址具体用于交易数据的转发。
具体的,第一共识节点确定出目标交易池后,如果自身维护的交易池不是该目标交易池,则第一共识节点可以获取目标交易池的最短前缀,并根据目标交易池的最短前缀从多个路由转发表中获取第二交易池的地址,其中,该第二交易池对应的叶子节点位于多个子树中包括目标交易池对应的叶子节点的子树中,或者说该第二交易池对应的叶子节点与目标交易池对应的叶子节点位于同一子树中,即需要找出字典树中与目标交易池对应的叶子节点距离较近的叶子节点对应的交易池(记为第二交易池)的地址。
其中,交易池的地址可以是互联网协议IP地址、端口号等。
在一些可行的实施方式中,字典树的结构可以如图4所示,该字典树是根据每个共识节点的交易池的最短前缀创建的,字典树包括多个叶子节点,字典树中的每个叶子节点都对应表示一个共识节点的交易池。例如,第一叶子节点对应表示的交易池的最短前缀为0011,也就是从根节点开始到达第一叶子节点的路径上的0和1按顺序排列的结果。第二叶子节点对应表示的交易池的最短前缀为1100,也就是从根节点开始到达第二叶子节点的路径上的0和1按顺序排列的结果。
在一些可行的实施方式中,第一共识节点可以对各个共识节点的标识进行哈希运算,得到每个共识节点的交易池对应的哈希值,哈希运算例如可以是sha1hash运算,则得到的哈希值是160bit的数据,再通过对比每个共识节点的交易池对应的哈希值,可以确定每个共识节点的交易池的最短前缀。
在一些可行的实施方式中,如果自身维护的交易池是该目标交易池,则第一共识节点将交易数据缓存到自身维护的交易池中。
203、所述第一共识节点向所述第二交易池的地址对应的共识节点发送所述交易数据。
具体的,第一共识节点向第二交易池的地址对应的共识节点发送该交易数据,第二交易池的地址对应的共识节点在自身维护的交易池不是目标交易池时,继续发送该交易数据,以使得该交易数据最终发送到维护目标交易池的共识节点处,由于预设数量是大于或等于2的,每一次转发过程都会由至少两个叶子节点对应表示的交易池的共识节点参与执行,使得交易数据的转发过程可以不受单个节点上线或下线的影响,可以保证交易被快速、有效地传递给对应的交易池。
本发明实施例中,共识节点在接收到交易数据时,确定交易数据对应的目标交易池,在该共识节点的交易池不是目标交易池时,该共识节点根据目标交易池的最短前缀从多个路由转发表中获取第二交易池的地址,其中,该多个路由转发表包括字典树的多个子树中每个子树对应的路由转发表,字典树包括多个叶子节点,该多个叶子节点中的每个叶子节点对应表示一个共识节点的交易池,第二交易池对应的叶子节点位于该多个子树中包括目标交易池对应的叶子节点的子树中,该多个子树是以第一叶子节点为基准对字典树从根节点开始拆分得到的,且每个子树均不包括第一叶子节点,第一叶子节点对应表示该共识节点的交易池,该多个路由转发表中的每个路由转发表用于记录对应子树中预设数量的叶子节点对应表示的交易池的地址,并向第二交易池的地址对应的共识节点发送该交易数据,从而交易数据的转发过程可以不受单个节点上线下线的影响,容错性强,使得交易能够被快速传递给对应的交易池。
请参见图3,是本发明实施例基于图1a所示的交易路由系统提供的另一种交易路由方法的流程示意图,本发明实施例的交易路由方法主要是从共识节点一侧进行描述的,区块链网络包括多个共识节点,该交易路由方法包括如下步骤:
301、第一共识节点对字典树进行拆分,得到不包括第一叶子节点的多个子树。
其中,第一叶子节点在字典树中对应表示所述第一共识节点的交易池,第一共识节点为上述多个共识节点中的任意一个。
具体的,第一共识节点可以从根节点开始以第一叶子节点为基准对字典树进行拆分,得到第一子树和第二子树,第二子树包括第一叶子节点,也就是说先将字典树一分为二(即第一子树和第二子树),第一共识节点的交易池对应的叶子节点在第二子树。然后第一共识节点以第一叶子节点为基准再对第二子树进行拆分,得到多个第三子树,然后判断是否需要继续对第三子树继续拆分,如果该多个第三子树中不存在包括第一叶子节点的第三子树,则意味着已经拆分到第一叶子节点,第一叶子节点单独对应一个子树,此时可以停止拆分,并将第一子树和该多个第三子树作为对字典树进行拆分得到的多个子树;如果该多个第三子树中存在包括第一叶子节点的第三子树,则意味着尚未拆分到第一叶子节点,第一叶子节点还没有单独对应一个子树,需要继续拆分,并对包括第一叶子节点的第三子树进行拆分,得到不包括第一叶子节点的第四子树,并将第一子树、该多个第三子树中不包括第一叶子节点的第三子树和第四子树作为对字典树进行拆分得到的多个子树。可以理解,多个子树的数量不限定于上述子树,在一些实施例中,第一共识节点可以从根节点开始以第一叶子节点为基准对字典树进行逐层拆分,将字典树中每层子树中包括了第一叶子节点的子树进行拆分,直到拆分到第一叶子节点为止,在拆分过程中得到了不包括第一叶子节点的多个子树,并且为该多个子树建立对应的路由转发表。在这些实施例中,多个子树的数量可以是不限定的。
举例来说,字典树的拆分规则即是:从字典树的根节点开始,分别以自己(叶子节点)对应的交易池为视角(即基准),把不包含自己的那个子树拆分出来。然后在剩下的子树再拆分不包含自己的下一层子树。以此类推,直到最后只剩下自己。如图5所示,是以第一叶子节点的视角为例得到的字典树拆分结果,第一叶子节点的最短前缀为0011,则先从根节点开始把不包含自己的那个子树拆分出来,字典树中最短前缀首位为1的分支,即第一子树;接下来是字典树中最短前缀前两位为01的分支,即第二子树;以此类推,最后将字典树拆分成不包括自己的第一子树、第二子树、第三子树、第四子树。
302、针对所述多个子树中的任一子树,所述第一共识节点从所述任一子树包括的叶子节点中确定出预设数量的叶子节点。
303、所述第一共识节点根据所述预设数量的叶子节点对应表示的交易池的地址生成所述任一子树对应的路由转发表,以得到所述多个子树对应的多个路由转发表。
具体的,在以第一共识节点对应的叶子节点的视角完成子树拆分后,第一共识节点可以从每个子树中随机确定出预设数量的叶子节点,并记录每个子树里面的预设数量的叶子节点对应表示的交易池的地址。对于某个叶子节点而言,如果以它自己为视角拆分得到了n个子树,那么它就需要维护n个路由表。
在一些可行的实施方式中,针对每个子树,第一共识节点可以获取每个子树中各个叶子节点对应表示的交易池所在的共识节点的在线状态(在线或离线),根据在线状态确定出当前在线的共识节点,将当前在线的共识节点对应的叶子节点作为上述预设数量的叶子节点,或者也可以从将当前在线的共识节点对应的叶子节点中随机选择出预设数量的叶子节点,以保证交易数据转发的顺利进行。
进一步的,第一共识节点还可以周期性的获取每个子树中各个叶子节点对应表示的交易池所在的共识节点的在线状态,并对上述预设数量的叶子节点进行动态更新,以保证参与交易数据转发的共识节点都是在线的,有利用交易数据转发的快速进行。
以预设数量=2为例,即每个叶子节点在完成子树拆分后,要记录每个子树里面的2个叶子节点对应表示的交易池的地址,得到的路由关系如图5所示:每个路由表里记录的是一个子树里面黑色箭头所指的2个叶子节点对应表示的交易池的地址,当然,如果存在子树只包括1个叶子节点,则对应的路由表只记录该叶子节点对应表示的交易池的地址。由此可知,第一叶子节点(对应第一共识节点)需要维护4个路由表,第一子树对应的路由表记录的是字典树中1110和101这2个叶子节点对应表示的交易池的地址,第二子树对应的路由表记录的是字典树中01101和01010这2个叶子节点对应表示的交易池的地址,第三子树对应的路由表记录的是字典树中000这1个叶子节点对应表示的交易池的地址,第四子树对应的路由表记录的是字典树中00100和00101这2个叶子节点对应表示的交易池的地址。
304、所述第一共识节点在接收到交易数据时,确定所述交易数据对应的目标交易池。
具体的,第一共识节点在接收到交易数据时,可以通过sha1 hash算法得到交易数据的哈希值,然后从字典树中查找哈希值对应的第二叶子节点,并将第二叶子节点对应表示的交易池作为目标交易池,第二叶子节点包括至少一个叶子节点。
在一些可行的实施方式中,第一共识节点可以获取交易数据的哈希值的前缀,然后从字典树的根节点开始,根据哈希值的前缀逐个查找字典树的各个子树,直到第一子树包括的叶子节点的数量小于或等于预设数量阈值,然后将第一子树包括的叶子节点作为哈希值对应的第二叶子节点。
具体的,哈希值的前缀可以为二进制序列,从字典树的根节点开始,按照二进制序列中0和1的排列顺序从对应的子树分支下逐个查找各个子树,直到第一子树包括的叶子节点的数量小于或等于预设数量阈值,然后将第一子树包括的叶子节点作为哈希值对应的第二叶子节点。
举例来说,结合图4,假设交易数据的哈希值为100……,预设数量阈值为2,第一共识节点可以按照1、0、0的顺序查询字典树,从根节点开始,先找到1对应的子树,包括的叶子节点个数为8个,则继续查找10对应的子树,有3个叶子节点(101、1000和1001),继续在该字树中查找100,100对应的字树包括2个叶子节点,意味着找出匹配的子树(即第一子树),即可停止查找,并且匹配的子树包括1000和1001两个叶子节点,从而可以将1000和1001这两个叶子节点对应维护的两个交易池作为该交易数据对应的目标交易池。
305、所述第一共识节点获取所述目标交易池的最短前缀,并根据所述目标交易池的最短前缀从所述多个路由转发表中确定出目标路由转发表。
306、所述第一共识节点从所述目标路由转发表中获取第二交易池的地址,并向所述第二交易池的地址对应的共识节点发送所述交易数据。
具体的,第一共识节点可以获取目标交易池的最短前缀,并根据目标交易池的最短前缀从多个路由转发表中确定出目标路由转发表,然后从目标路由转发表中获取第二交易池的地址,第二交易池的地址包括目标路由转发表中至少一个交易池的地址,并确定该至少一个交易池的地址中各个交易池的地址对应的共识节点,向各个交易池的地址对应的共识节点发送该交易数据,各个交易池的地址对应的共识节点在自身维护的交易池不是目标交易池时,继续发送该交易数据,以使得该交易数据最终发送到维护目标交易池的共识节点处。
举例来说,结合图5,如果第一共识节点(对应图5中的第一叶子节点)对应的交易池收到了交易数据,且确定出该交易数据对应的目标交易池的最短前缀为1001,则第一共识节点的交易池查询维护的多个路由转发表(即上述4个路由表),根据目标交易池的最短前缀1001确定第一子树对应的路由表(即目标路由表),查询第一子树对应的路由表记录的字典树中1110和101这2个叶子节点对应表示的交易池的地址,根据地址分别向这两个交易池的地址对应的共识节点转发该交易数据,然后叶子节点101对应的共识节点查询自己维护的路由表(包括1001和1000),将该交易数据最终转发到维护最短前缀1001对应表示的交易池的共识节点处。
在一些可行的实施方式中,如果第一共识节点检测到路由转发表中某个共识节点下线,则可以查询下线的共识节点对应的叶子节点所在子树,从该子树中随机选择一个在线的叶子节点对应表示的共识节点来代替下线的共识节点,并更新路由转发表中的交易池地址,从而如果有节点下线,也可以及时检测并更新路由转发表,进一步保证了交易数据的转发过程可以不受单个节点上线或下线的影响。
本发明实施例中,共识节点可以对字典树进行拆分,得到不包括自身对应的叶子节点的多个子树,针对多个子树中的任一子树,第一共识节点从中确定出预设数量的叶子节点,并根据该预设数量的叶子节点对应表示的交易池的地址生成任一子树对应的路由转发表,以得到多个子树对应的多个路由转发表,在接收到交易数据时,确定交易数据对应的目标交易池,然后获取字典树的多个子树对应的多个路由转发表,可以根据目标交易池的最短前缀从多个路由转发表中确定出目标路由转发表,进而从目标路由转发表中获取第二交易池的地址,并向第二交易池的地址对应的共识节点发送该交易数据,通过对字典树拆分并生成多个路由转发表使得每个交易池所在的共识节点可以有效管理全网的局部(即各个子树中至少两个叶子节点对应表示的交易池)状态,从而交易数据的转发过程可以不受单个节点上线下线的影响,容错性强,使得交易能够被快速传递给对应的交易池。
请参见图6,是本发明实施例的一种交易路由装置的结构示意图,本发明实施例的所述交易路由装置应用于区块链网络中的第一共识节点,所述区块链网络包括多个共识节点,所述第一共识节点为所述多个共识节点中的任意一个,所述多个共识节点中的每个共识节点维护各自对应的交易池,所述装置包括:
接收模块601,用于接收交易数据。
确定模块602,用于当所述接收模块接收到交易数据时,确定所述交易数据对应的目标交易池。
获取模块603,用于在所述第一共识节点的交易池不是所述目标交易池时,根据所述目标交易池的最短前缀从多个路由转发表中获取第二交易池的地址,其中,所述多个路由转发表包括字典树的多个子树中每个子树对应的路由转发表,所述字典树包括多个叶子节点,所述多个叶子节点中的每个叶子节点对应表示一个共识节点的交易池,所述第二交易池对应的叶子节点位于所述多个子树中包括所述目标交易池对应的叶子节点的子树中,所述多个子树是以第一叶子节点为基准对所述字典树从根节点开始拆分得到的,且所述每个子树均不包括所述第一叶子节点,所述第一叶子节点对应表示所述第一共识节点的交易池,所述多个路由转发表中的每个路由转发表用于记录对应子树中预设数量的叶子节点对应表示的交易池的地址。
发送模块604,用于向所述第二交易池的地址对应的共识节点发送所述交易数据。
可选的,所述获取模块603,具体用于:
获取所述目标交易池的最短前缀。
根据所述目标交易池的最短前缀从所述多个路由转发表中确定出目标路由转发表。
从所述目标路由转发表中获取第二交易池的地址。
可选的,所述第二交易池的地址包括所述目标路由转发表中至少一个交易池的地址,所述发送模块604,具体用于:
确定所述至少一个交易池的地址中各个交易池的地址对应的共识节点。
向所述各个交易池的地址对应的共识节点发送所述交易数据。
可选的,所述装置还包括拆分模块605,其中:
所述拆分模块605,用于对字典树进行拆分,得到不包括第一叶子节点的多个子树,所述第一叶子节点对应表示第一共识节点的交易池。
所述确定模块602,还用于针对所述多个子树中的任一子树,从所述任一子树包括的叶子节点中确定出预设数量的叶子节点。
所述获取模块603,还用于根据所述预设数量的叶子节点对应表示的交易池的地址生成所述任一子树对应的路由转发表,以得到所述多个子树对应的多个路由转发表。
可选的,所述拆分模块605,具体用于:
从字典树的根节点开始以第一叶子节点为基准对所述字典树进行逐层拆分,所述第一叶子节点对应表示所述第一共识节点的交易池。
确定在拆分过程中得到的每层子树是否包括所述第一叶子节点,并对包括所述第一叶子节点的子树继续进行拆分,直到拆分到所述第一叶子节点时停止拆分。
获取停止拆分时得到的不包括所述第一叶子节点的多个子树。
可选的,所述确定模块602,具体用于:
在接收到交易数据时,获取所述交易数据的哈希值。
从字典树中查找所述哈希值对应的第二叶子节点,并将所述第二叶子节点对应表示的交易池作为目标交易池,所述第二叶子节点包括至少一个叶子节点。
可选的,所述地址包括互联网协议IP地址和端口号中的一种或两种。
可选的,所述预设数量大于或等于2。
需要说明的是,本发明实施例的交易路由装置的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
请参见图7,是本发明实施例的一种节点设备的结构示意图,本发明实施例的所述节点设备包括供电模块等结构,并包括处理器701、存储装置702以及网络接口703。所述处理器701、存储装置702以及网络接口703之间可以交互数据。
所述存储装置702可以包括易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储装置702也可以包括非易失性存储器(non-volatilememory),例如快闪存储器(flash memory),固态硬盘(solid-state drive,SSD)等;所述存储装置702还可以包括上述种类的存储器的组合。
所述处理器701可以是中央处理器701(central processing unit,CPU)。在一个实施例中,所述处理器701还可以是图形处理器701(Graphics Processing Unit,GPU)。所述处理器701也可以是由CPU和GPU的组合。在一个实施例中,所述存储装置702用于存储程序指令。所述处理器701可以调用所述程序指令,执行如下操作:
当通过所述网络接口703接收到交易数据时,确定所述交易数据对应的目标交易池。
在第一共识节点的交易池不是所述目标交易池时,根据所述目标交易池的最短前缀从多个路由转发表中获取第二交易池的地址,其中,所述多个路由转发表包括字典树的多个子树中每个子树对应的路由转发表,所述字典树包括多个叶子节点,所述多个叶子节点中的每个叶子节点对应表示一个共识节点的交易池,所述第二交易池对应的叶子节点位于所述多个子树中包括所述目标交易池对应的叶子节点的子树中,所述多个子树是以第一叶子节点为基准对所述字典树从根节点开始拆分得到的,且所述每个子树均不包括所述第一叶子节点,所述第一叶子节点对应表示所述第一共识节点的交易池,所述多个路由转发表中的每个路由转发表用于记录对应子树中预设数量的叶子节点对应表示的交易池的地址。
通过所述网络接口703向所述第二交易池的地址对应的共识节点发送所述交易数据。
可选的,所述处理器701,具体用于:
获取所述目标交易池的最短前缀。
根据所述目标交易池的最短前缀从所述多个路由转发表中确定出目标路由转发表。
从所述目标路由转发表中获取第二交易池的地址。
可选的,所述第二交易池的地址包括所述目标路由转发表中至少一个交易池的地址,所述处理器701,具体用于:
确定所述至少一个交易池的地址中各个交易池的地址对应的共识节点。
向所述各个交易池的地址对应的共识节点发送所述交易数据。
可选的,所述处理器701,还用于对字典树进行拆分,得到不包括第一叶子节点的多个子树,所述第一叶子节点对应表示第一共识节点的交易池。
所述处理器701,还用于针对所述多个子树中的任一子树,从所述任一子树包括的叶子节点中确定出预设数量的叶子节点。
所述处理器701,还用于根据所述预设数量的叶子节点对应表示的交易池的地址生成所述任一子树对应的路由转发表,以得到所述多个子树对应的多个路由转发表。
可选的,所述处理器701,具体用于:
从字典树的根节点开始以第一叶子节点为基准对所述字典树进行逐层拆分,所述第一叶子节点对应表示所述第一共识节点的交易池。
确定在拆分过程中得到的每层子树是否包括所述第一叶子节点,并对包括所述第一叶子节点的子树继续进行拆分,直到拆分到所述第一叶子节点时停止拆分。
获取停止拆分时得到的不包括所述第一叶子节点的多个子树。
可选的,所述处理器701,具体用于:
在接收到交易数据时,获取所述交易数据的哈希值。
从字典树中查找所述哈希值对应的第二叶子节点,并将所述第二叶子节点对应表示的交易池作为目标交易池,所述第二叶子节点包括至少一个叶子节点。
可选的,所述地址包括互联网协议IP地址和端口号中的一种或两种。
可选的,所述预设数量大于或等于2。
具体实现中,本发明实施例中所描述的处理器701、存储装置702以及网络接口703可执行本发明实施例图2或图3提供的一种交易路由方法的相关实施例中所描述的实现方式,也可执行本发明实施例图6提供的一种交易路由装置的相关实施例中所描述的实现方式,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可能可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本发明各个实施例上述方法的全部或部分步骤。其中,而前述的存储介质可包括:U盘、移动硬盘、磁碟、光盘、只读存储器(英文:Read-Only Memory,缩写:ROM)或者随机存取存储器(英文:Random Access Memory,缩写:RAM)等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种交易路由方法,其特征在于,应用于区块链网络,所述区块链网络包括多个共识节点,所述多个共识节点中的每个共识节点维护各自对应的交易池,所述方法包括:
第一共识节点在接收到交易数据时,确定所述交易数据对应的目标交易池,所述第一共识节点为所述多个共识节点中的任意一个;
在所述第一共识节点的交易池不是所述目标交易池时,所述第一共识节点根据所述目标交易池的最短前缀从多个路由转发表中获取第二交易池的地址,其中,所述多个路由转发表包括字典树的多个子树中每个子树对应的路由转发表,所述字典树包括多个叶子节点,所述多个叶子节点中的每个叶子节点对应表示一个共识节点的交易池,所述第二交易池对应的叶子节点位于所述多个子树中包括所述目标交易池对应的叶子节点的子树中,所述多个子树是以第一叶子节点为基准对所述字典树从根节点开始拆分得到的,且所述每个子树均不包括所述第一叶子节点,所述第一叶子节点对应表示所述第一共识节点的交易池,所述多个路由转发表中的每个路由转发表用于记录对应子树中预设数量的叶子节点对应表示的交易池的地址;
所述第一共识节点向所述第二交易池的地址对应的共识节点发送所述交易数据。
2.根据权利要求1所述的方法,其特征在于,所述第一共识节点根据所述目标交易池的最短前缀从多个路由转发表中获取第二交易池的地址,包括:
所述第一共识节点获取所述目标交易池的最短前缀;
所述第一共识节点根据所述目标交易池的最短前缀从所述多个路由转发表中确定出目标路由转发表;
所述第一共识节点从所述目标路由转发表中获取第二交易池的地址。
3.根据权利要求2所述的方法,其特征在于,所述第二交易池的地址包括所述目标路由转发表中至少一个交易池的地址,所述第一共识节点向所述第二交易池的地址对应的共识节点发送所述交易数据,包括:
所述第一共识节点确定所述至少一个交易池的地址中各个交易池的地址对应的共识节点;
所述第一共识节点向所述各个交易池的地址对应的共识节点发送所述交易数据。
4.根据权利要求1~3中任一项所述的方法,其特征在于,所述第一共识节点在接收到交易数据时,确定所述交易数据对应的目标交易池之前,所述方法还包括:
所述第一共识节点对字典树进行拆分,得到不包括第一叶子节点的多个子树,所述第一叶子节点对应表示所述第一共识节点的交易池;
针对所述多个子树中的任一子树,所述第一共识节点从所述任一子树包括的叶子节点中确定出预设数量的叶子节点;
所述第一共识节点根据所述预设数量的叶子节点对应表示的交易池的地址生成所述任一子树对应的路由转发表,以得到所述多个子树对应的多个路由转发表。
5.根据权利要求4所述的方法,其特征在于,所述第一共识节点对字典树进行拆分,得到不包括第一叶子节点的多个子树,所述第一叶子节点对应表示所述第一共识节点的交易池,包括:
所述第一共识节点从字典树的根节点开始以第一叶子节点为基准对所述字典树进行逐层拆分,所述第一叶子节点对应表示所述第一共识节点的交易池;
所述第一共识节点确定在拆分过程中得到的每层子树是否包括所述第一叶子节点,并对包括所述第一叶子节点的子树继续进行拆分,直到拆分到所述第一叶子节点时停止拆分;
所述第一共识节点获取停止拆分时得到的不包括所述第一叶子节点的多个子树。
6.根据权利要求1所述的方法,其特征在于,所述第一共识节点在接收到交易数据时,确定所述交易数据对应的目标交易池,包括:
所述第一共识节点在接收到交易数据时,获取所述交易数据的哈希值;
所述第一共识节点从字典树中查找所述哈希值对应的第二叶子节点,并将所述第二叶子节点对应表示的交易池作为目标交易池,所述第二叶子节点包括至少一个叶子节点。
7.根据权利要求1所述的方法,其特征在于,所述地址包括互联网协议IP地址和端口号中的一种或两种。
8.根据权利要求1所述的方法,其特征在于,所述预设数量大于或等于2。
9.一种交易路由装置,其特征在于,应用于区块链网络中的第一共识节点,所述区块链网络包括多个共识节点,所述第一共识节点为所述多个共识节点中的任意一个,所述多个共识节点中的每个共识节点维护各自对应的交易池,所述装置包括:
接收模块,用于接收交易数据;
确定模块,用于当所述接收模块接收到交易数据时,确定所述交易数据对应的目标交易池;
获取模块,用于在所述第一共识节点的交易池不是所述目标交易池时,根据所述目标交易池的最短前缀从多个路由转发表中获取第二交易池的地址,其中,所述多个路由转发表包括字典树的多个子树中每个子树对应的路由转发表,所述字典树包括多个叶子节点,所述多个叶子节点中的每个叶子节点对应表示一个共识节点的交易池,所述第二交易池对应的叶子节点位于所述多个子树中包括所述目标交易池对应的叶子节点的子树中,所述多个子树是以第一叶子节点为基准对所述字典树从根节点开始拆分得到的,且所述每个子树均不包括所述第一叶子节点,所述第一叶子节点对应表示所述第一共识节点的交易池,所述多个路由转发表中的每个路由转发表用于记录对应子树中预设数量的叶子节点对应表示的交易池的地址;
发送模块,用于向所述第二交易池的地址对应的共识节点发送所述交易数据。
10.一种计算机可读存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行,用以执行如权利要求1-8任一项所述的交易路由方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010351450.0A CN111553669B (zh) | 2020-04-28 | 2020-04-28 | 一种交易路由方法、装置及计算机可读存储介质 |
PCT/CN2021/090446 WO2021218984A1 (zh) | 2020-04-28 | 2021-04-28 | 一种数据路由方法和相关装置 |
US17/740,974 US20220272038A1 (en) | 2020-04-28 | 2022-05-10 | Data routing method and related apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010351450.0A CN111553669B (zh) | 2020-04-28 | 2020-04-28 | 一种交易路由方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111553669A true CN111553669A (zh) | 2020-08-18 |
CN111553669B CN111553669B (zh) | 2021-09-10 |
Family
ID=72002616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010351450.0A Active CN111553669B (zh) | 2020-04-28 | 2020-04-28 | 一种交易路由方法、装置及计算机可读存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220272038A1 (zh) |
CN (1) | CN111553669B (zh) |
WO (1) | WO2021218984A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021218984A1 (zh) * | 2020-04-28 | 2021-11-04 | 腾讯科技(深圳)有限公司 | 一种数据路由方法和相关装置 |
WO2024207765A1 (zh) * | 2023-04-03 | 2024-10-10 | 蚂蚁区块链科技(上海)有限公司 | 区块链系统中的交易提议方法、共识节点和区块链系统 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115567444B (zh) * | 2022-09-23 | 2024-02-27 | 北京香哈网络股份有限公司 | 一种控制器路由地址查找调用方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107358420A (zh) * | 2017-06-09 | 2017-11-17 | 北京博晨技术有限公司 | 用于实现热点账户的区块链系统以及实现热点账户的方法 |
CN109255713A (zh) * | 2018-11-12 | 2019-01-22 | 裴若含 | 一种区块链网络中某一时间段内记账权的获取方法 |
US20190102842A1 (en) * | 2017-09-29 | 2019-04-04 | Oracle Financial Services Software Limited | Computerized transaction management module for blockchain networks |
CN110035009A (zh) * | 2018-01-12 | 2019-07-19 | 丛林网络公司 | 分组转发路径元素的节点表示 |
CN110049087A (zh) * | 2018-12-28 | 2019-07-23 | 阿里巴巴集团控股有限公司 | 一种联盟链的可信度验证方法、系统、装置及设备 |
US20190289068A1 (en) * | 2017-06-07 | 2019-09-19 | Zhongan Information Technology Service Co., Ltd. | Method, apparatus and system for realizing communication between blockchains |
CN110602239A (zh) * | 2019-09-20 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种区块链信息存储方法及相关设备 |
CN110800008A (zh) * | 2019-03-04 | 2020-02-14 | 阿里巴巴集团控股有限公司 | 构建区块链世界状态默克尔帕特里夏字典树子树 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2560327B1 (en) * | 2010-04-12 | 2014-06-04 | Huawei Technologies Co., Ltd. | Routing table establishment method and device |
CN106713273B (zh) * | 2016-11-23 | 2019-08-09 | 中国空间技术研究院 | 一种基于字典树剪枝搜索的协议关键字识别方法 |
CN109409889B (zh) * | 2018-11-13 | 2021-11-12 | 杭州秘猿科技有限公司 | 一种区块链中的区块确定方法、装置及电子设备 |
US11222011B2 (en) * | 2019-06-28 | 2022-01-11 | Advanced New Technologies Co., Ltd. | Blockchain-based transaction processing |
CN111183420B (zh) * | 2019-09-12 | 2023-06-30 | 创新先进技术有限公司 | 日志结构存储系统 |
CN110602148B (zh) * | 2019-10-10 | 2021-07-06 | 深圳前海微众银行股份有限公司 | 一种区块的状态树的生成和链上数据验证的方法及装置 |
CN111553669B (zh) * | 2020-04-28 | 2021-09-10 | 腾讯科技(深圳)有限公司 | 一种交易路由方法、装置及计算机可读存储介质 |
-
2020
- 2020-04-28 CN CN202010351450.0A patent/CN111553669B/zh active Active
-
2021
- 2021-04-28 WO PCT/CN2021/090446 patent/WO2021218984A1/zh active Application Filing
-
2022
- 2022-05-10 US US17/740,974 patent/US20220272038A1/en active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190289068A1 (en) * | 2017-06-07 | 2019-09-19 | Zhongan Information Technology Service Co., Ltd. | Method, apparatus and system for realizing communication between blockchains |
CN107358420A (zh) * | 2017-06-09 | 2017-11-17 | 北京博晨技术有限公司 | 用于实现热点账户的区块链系统以及实现热点账户的方法 |
US20190102842A1 (en) * | 2017-09-29 | 2019-04-04 | Oracle Financial Services Software Limited | Computerized transaction management module for blockchain networks |
CN110035009A (zh) * | 2018-01-12 | 2019-07-19 | 丛林网络公司 | 分组转发路径元素的节点表示 |
CN109255713A (zh) * | 2018-11-12 | 2019-01-22 | 裴若含 | 一种区块链网络中某一时间段内记账权的获取方法 |
CN110049087A (zh) * | 2018-12-28 | 2019-07-23 | 阿里巴巴集团控股有限公司 | 一种联盟链的可信度验证方法、系统、装置及设备 |
CN110800008A (zh) * | 2019-03-04 | 2020-02-14 | 阿里巴巴集团控股有限公司 | 构建区块链世界状态默克尔帕特里夏字典树子树 |
CN110602239A (zh) * | 2019-09-20 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种区块链信息存储方法及相关设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021218984A1 (zh) * | 2020-04-28 | 2021-11-04 | 腾讯科技(深圳)有限公司 | 一种数据路由方法和相关装置 |
WO2024207765A1 (zh) * | 2023-04-03 | 2024-10-10 | 蚂蚁区块链科技(上海)有限公司 | 区块链系统中的交易提议方法、共识节点和区块链系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111553669B (zh) | 2021-09-10 |
US20220272038A1 (en) | 2022-08-25 |
WO2021218984A1 (zh) | 2021-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111553669B (zh) | 一种交易路由方法、装置及计算机可读存储介质 | |
CN111553670B (zh) | 一种交易处理方法、装置及计算机可读存储介质 | |
JP5016063B2 (ja) | 整合性のとれた耐障害性分散ハッシュテーブル(dht)オーバレイネットワーク | |
US10628382B2 (en) | Teleporting content over network using hash matches | |
US20170270119A1 (en) | Systems and methods for distributed storage of data across multiple hash tables | |
CN111460458B (zh) | 一种数据处理方法、相关装置及计算机可存储介质 | |
CN110597887B (zh) | 一种基于区块链网络的数据管理方法、装置及存储介质 | |
CN111338806B (zh) | 一种业务控制方法及装置 | |
US20160127237A1 (en) | System and method for reduced forwarding information storage | |
CN110597922B (zh) | 数据处理方法、装置、终端及存储介质 | |
CN110880147B (zh) | 一种交易处理方法、相关设备及计算机存储介质 | |
CN110636113A (zh) | 区块链的拜占庭容错共识方法、系统、设备和存储介质 | |
CN111339130A (zh) | 一种数据查询方法、相关设备及可读存储介质 | |
CN103369002A (zh) | 一种资源下载的方法及系统 | |
CN109525678A (zh) | 区块链网络系统以及相应的节点设备发现方法 | |
US20170300553A1 (en) | System and methodology for propagating modifications in key-value pairs across a cluster of computers | |
CN116760762B (zh) | 去中心化的自组网方法和装置 | |
CN112187743B (zh) | 一种基于ip地址最长前缀的网络策略匹配方法及系统 | |
CN111352938B (zh) | 数据处理方法、计算机设备及存储介质 | |
WO2023160040A1 (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN104702508A (zh) | 表项动态更新方法及系统 | |
JP6233846B2 (ja) | 可変長ノンスの生成 | |
WO2019214071A1 (zh) | 区块链上用户通信方法、装置、终端设备及存储介质 | |
CN112817980B (zh) | 一种数据索引处理方法、装置、设备及存储介质 | |
US20140029621A1 (en) | Method for learning media access control address, network device, and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40027377 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |