CN112600699B - 基于区块链跨链交互的动态覆盖网络拓扑构建方法及装置 - Google Patents
基于区块链跨链交互的动态覆盖网络拓扑构建方法及装置 Download PDFInfo
- Publication number
- CN112600699B CN112600699B CN202011421191.0A CN202011421191A CN112600699B CN 112600699 B CN112600699 B CN 112600699B CN 202011421191 A CN202011421191 A CN 202011421191A CN 112600699 B CN112600699 B CN 112600699B
- Authority
- CN
- China
- Prior art keywords
- node
- chain
- nodes
- cross
- gateway
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- 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/12—Shortest path evaluation
- H04L45/123—Evaluation of link metrics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- 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/02—Topology update or discovery
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种基于区块链跨链交互的动态覆盖网络拓扑构建方法及装置,所述方法至少包括:从至少一个跨链交互节点中选取至少一个网关节点和至少一个普通节点;基于聚类算法对所述普通节点进行分簇;基于网关节点构建跨链交互节点间的结构化网络拓扑以及跨链连接;基于由广度优先生成的树算法对普通节点簇进行拓扑构建。本发明提供的动态网络拓扑构建方法充分考虑了节点间的网络延迟,实现了节点间数据的高速传输。本发明设计的结构化网络拓扑适应节点数目的增加,不同区块链***的网关节点、普通节点可以动态地加入并建立连接,在不同的区块链上形成一个自治化的网络拓扑,具有较高的可扩展性和鲁棒性。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于区块链跨链交互的动态覆盖网络拓扑构建方法及装置。
背景技术
随着区块链技术的不断发展,各种区块链平台层出不穷。然而由于设计上的独立性缺陷,不同区块链之间无法直接交互,导致不同的区块链形成了一个个价值孤岛,极大地限制了区块链技术进一步应用与发展。
为了实现不同区块链之间价值的流通,需要将各个相互独立的区块链网络连接起来进行价值的交互。因此,跨链技术应运而生,逐渐地成为了当前的研究热点。目前主流的跨链交互技术包括:公证人机制、侧链/中继、哈希锁定和分布式密钥控制,这些跨链交互技术主要关注于如何进行跨链事务的处理与验证,但在如何优化跨链网络与通信方面没有过多的设计。跨链网络在跨链交互过程中则扮演了非常重要的角色,负责联通不同的链并传输信息,是影响跨链共识、跨链事务处理效率的重要因素之一。
在网络拓扑结构方面,目前的跨链方案主要采用随机网络拓扑和星型网络拓扑两种拓扑结构。在随机网络拓扑(非结构化网络拓扑)中,不同的区块链通过接入一个中继网络从而与其它区块链***进行网络交互,中继网络中的节点是随机进行连接的。在星型网络拓扑中,区块链***需要连接到一个中心化的区块链平台,由该中心化的平台处理不同区块链间的交互请求。这两种网络拓扑结构并没有充分考虑节点间连接的网络延迟,网络中存在着大量高延迟连接,极大地影响了网络传输效率,直接导致了低效的跨链交互。在路由协议方面,基于上述两种不同的网络拓扑结构,泛洪路由以及中心化路由算法分别被采用。这两种不同的路由算法均面临着可扩展性的问题:由于随机网络拓扑中不存在中心化的节点,节点需要进行泛洪操作才能获取网络中其他节点以及网络连接的相关信息,当网络中节点数目很大的情况下,会大量消耗网络资源,进而影响正常的跨链交互;星型网络拓扑虽然解决了这个问题,但是中心化的节点会成为跨链交互的瓶颈所在,中心化节点的性能决定了跨链请求的处理效率。此外,中心化节点的引入不仅违背了区块链***去中心化的设计理念,还降低了***的安全性。
例如,专利文献CN109951467A公开了一种基于区块链的数据交互***、方法和设备;所述***包括至少两个数据交互对象和N个合约地址,其中N为自然数;所述至少两个数据交互对象和所述N个合约地址共同构成树形拓扑结构,所述至少两个数据交互对象中的每一个作为末端节点,所述N个合约地址中的每一个作为非末端节点的连接节点;其中,至少两个数据交互对象之间约定了N个数据交互协议,N个合约地址与N个数据交互协议一一对应;区块链合约转换模块,用于对所述数据交互协议进行智能解析,转换为N个区块链智能合约;所述数据交互***基于N个所述区块链智能合约,进行所述至少两个数据交互对象之间的数据分配。整个合约的架构可支持任意级别的数据交互协议嵌套,达到可插拔的效果。但是,该发明也无法解决现有技术的缺陷。
因此,跨链交互在网络通信方面主要存在两个问题:一是不同链所采用的网络拓扑和通信协议可能不同,直接通信困难;二是现有工作采用的网络拓扑结构和路由机制带来的网络时延较高且可扩展性差,并不能很好地满足跨链交互的需求。
此外,一方面由于对本领域技术人员的理解存在差异;另一方面由于发明人做出本发明时研究了大量文献和专利,但篇幅所限并未详细罗列所有的细节与内容,然而这绝非本发明不具备这些现有技术的特征,相反本发明已经具备现有技术的所有特征,而且申请人保留在背景技术中增加相关现有技术之权利。
发明内容
针对现有技术之不足,本发明提供一种基于区块链跨链交互的动态覆盖网络拓扑构建方法,其特征在于,所述方法至少包括:
从至少一个跨链交互节点中选取至少一个网关节点和至少一个普通节点;
基于聚类算法对所述普通节点进行分簇;
基于网关节点构建跨链交互节点间的结构化网络拓扑以及跨链连接;
基于由广度优先生成的树算法对普通节点簇进行拓扑构建。
本发明通过对网关节点和普通节点的区分和选取,构建的动态网络拓扑构建方法充分考虑了节点间的网络延迟,确保了节点间数据的高速传输。进一步的,本发明设计的结构化网络拓扑可以很好地适应节点数目的增加,不同区块链***的网关节点、普通节点可以动态地加入并建立连接,在不同的区块链上形成一个自治化的网络拓扑,具有较高的可扩展性和鲁棒性。
优选的,选取至少一个所述网关节点的方法包括:
基于历史交易信息的信任度和/或在线时长选择网关节点;
在确定网关节点后,剩余的跨链交互节点为普通节点。
优选的,所述网关节点的选取方式为:
选取在历史交易中具有较高信任度的节点,和/或在线时间较长节点作为网关节点。
优选的,基于聚类算法对所述普通节点进行分簇的方法包括:
在对节点赋予相应的坐标的情况下,基于节点的实际网络延迟调整节点的具体坐标;
基于Meanshift聚类算法对普通节点进行聚簇。
优选的,所述Meanshift聚类算法在每次迭代运行的过程中重新计算均值向量,其中,均值向量的计算公式为:
优选的,Sh的定义为:
Sh(n)={y:(y-ni)T(y-ni)<h2},
其中,y表示满足条件的节点,T表示转置符号,h表示带宽的大小。
本发明通过网络坐标***和聚类算法的结合,使得网络节点之间的网络延迟可以用坐标间的距离准确地表示,为聚类算法的计算提供了便捷的测量依据。本发明通过使用聚类算法对普通节点进行聚类的方式,使得每个簇内的普通节点之间的网络延迟保持在一个较低区间内,进而实现普通节点间的低延迟通信。
优选的,基于由广度优先生成的树算法对普通节点簇进行拓扑构建的方法包括:
基于广度优先生成的树算法随机选取根节点建立网络拓扑;
所述根节点将簇内普通节点的跨链网络请求信息转发至网关节点进行处理。
本发明采用广度优先生成树算法对普通节点进行连接以形成簇内网络拓扑。生成树的根节点为簇首节点,簇首节点需要测量到本链网关节点的网络延迟,以便选取最小的网关节点进行连接。簇首节点负责簇内所有普通节点与网关节点的通信,即转发跨链请求到达网关节点进行处理。通过跨链交互,将跨链消息快速精确地发送到目标链上的对应节点。
本发明提供一种基于区块链跨链交互的动态覆盖网络拓扑构建装置,其特征在于,所述装置至少包括拓扑构建模块,所述拓扑构建模块按照以下方法运行:
从至少一个跨链交互节点中选取至少一个网关节点和至少一个普通节点;
基于聚类算法对所述普通节点进行分簇;
基于网关节点构建跨链交互节点间的结构化网络拓扑以及跨链连接;
基于由广度优先生成的树算法对普通节点簇进行拓扑构建。
优选的,所述装置还包括路由计算模块,所述路由计算模块执行的路由算法为:
获取节点维护的路由表;
将当前节点的地址与接收到的请求消息中的目标地址进行比对,判断是否一致;若一致,说明已到达目标节点,路由过程结束;
若当前节点的地址与接收到的请求消息中的目标地址不一致,查看路由表是否包含的目标地址;若如果路由表中有目标地址,则直接进行转发;
若路由表中没有地址,判断节点链号与目标链号是否一致;若链号一致,则将消息发送到离链号最近的网关节点进行进一步处理;
若节点链号与目标链号不一致,则将消息发送到网关节点进行处理。本发明的路由算法,使得信息能够迅速准确地将跨链请求从原链节点转发到目标链的对应节点,从而完成跨链交互。
本发明提供一种基于区块链跨链交互的网络拓扑的信息转发方法,其特征在于,所述信息转发方法包括:
在网络拓扑构建完成后,获取节点维护的路由表;
将当前节点的地址与接收到的请求消息中的目标地址进行比对,判断是否一致;若一致,说明已到达目标节点,路由过程结束;
若当前节点的地址与接收到的请求消息中的目标地址不一致,查看路由表是否包含的目标地址;若如果路由表中有目标地址,则直接进行转发;
若路由表中没有地址,判断节点链号与目标链号是否一致;若链号一致,则将消息发送到离链号最近的网关节点进行进一步处理;
若节点链号与目标链号不一致,则将消息发送到网关节点进行处理;
其中,网络拓扑构建的方法为:
基于选取的网关节点构建跨链交互节点间的结构化网络拓扑以及跨链连接;
在基于由广度优先生成的树算法对选取的普通节点簇进行拓扑构建。
本发明的路由算法,克服了泛洪路由的资源消耗量大和中心化路由存在瓶颈的缺陷问题,提供了一种基于当前信息自身含有的地址特征来选择性地选取相关节点,从而快速准确地将跨链请求转发到目标链的新算法。
附图说明
图1是本发明的网络拓扑结构构建的方法步骤的逻辑示意图;
图2是本发明的链内的网络拓扑结构示意图;
图3是本发明的区块链跨链交互的网络拓扑结构示意图;
图4是本发明的网络路由算法的流程示意图。
具体实施方式
下面结合附图进行详细说明。
针对现有技术不足,本发明提出了一种基于区块链跨链交互的动态覆盖网络拓扑构建方法及装置,旨在降低跨链网络中的网络延迟,提供高效的跨链交互。
实施例1
本发明的基于区块链跨链交互的动态覆盖网络拓扑构建方法,如图1所示。基于区块链跨链交互的动态覆盖网络拓扑构建方法,其步骤包括:
S1:开始。
S2:从运行具有统一网络规范的至少一个跨链交互节点中选取至少一个网关节点和至少一个普通节点;
S3:基于聚类算法对所述普通节点进行分簇;
S4:基于网关节点构建跨链交互节点间的结构化网络拓扑以及跨链连接;
S5:基于由广度优先生成的树算法对普通节点簇进行拓扑构建。
S6:结束。
具体地,从运行具有统一网络规范的至少一个跨链交互节点中选取至少一个网关节点和至少一个普通节点的具体方式如下所述。
由于不同区块链***网络层的设计不尽相同,区块链间无法直接进行通信,故需要在原有区块链节点上进行第二层的扩展,即在每个节点上运行一个具有统一网络规范的跨链交互节点,才能实现跨链通信。本发明通过在现有不同区块链的节点上运行统一的跨链交互节点,由跨链交互节点负责不同区块链间的跨链请求并与各区块链进行数据交换,进而实现区块链之间的相互通信。
参照因特网中的不同自治***(AS)的交互设计思想,由网关服务器负责不同自治***间的通信。因此,本发明将跨链交互中的网络节点选择并分成两类:网关节点和普通节点。
其中,网关节点用于处理本链的外部跨链请求,而且与其它区块链的网关节点建立跨链网络连接,从而实现跨链交互。普通节点用于将区块链内部的跨链请求准确地传送到网关节点进行处理,与本链上的网关节点及其它的普通节点建立网络连接,但其本身无法处理跨链请求。
选取跨链交互节点中的至少一个网关节点和至少一个普通节点的具体方式为:基于历史交易信息的信任度和/或在线时长选择网关节点。在确定网关节点后,剩余的跨链交互节点为普通节点。
由于跨链交互的特殊性,网关节点的选择尤其重要。由于网关节点用于连接外部区块链网络,网关节点的网络行为应该尽可能的稳定,才能保证跨链网络传输的可靠性。因此,本发明选取在历史交易中具有较高信任度的节点,或者是在线时间较长节点作为网关节点。具有较高信任度或在线时间较长的节点在网络中的行为比较稳定,出现离线或者是作恶的几率比较小,可以很大程度上保证跨链传输的稳定性。
本发明在选取网关节点和普通节点之后,需要对普通节点进行聚类操作,将网络上临近的节点聚集在一起,以提供低延迟的网络传输。基于聚类算法对所述普通节点进行分簇的步骤至少包括:
对网络中的网关节点和普通节点赋予对应的坐标;
在每次迭代运行的过程中重新计算均值向量。
具体地,本发明例采用Vivaldi网络坐标***赋予网络中的节点相应的坐标。Vivaldi网络坐标***会根据节点的实际网络延迟调整节点的具体坐标,使得节点在坐标***中的距离可以准确的反映节点之间的网络延迟,方便聚类算法对处在相邻区域内的网络节点进行聚簇。
本实施例采用Meanshift聚类算法来对普通节点进行聚簇,与其它聚类算法对比,Meanshift算法完全根据样本在数据中的分布进行聚簇,无需提前指定具体的簇的个数,而且对离群点具有较强的鲁棒性。Meanshift算法在每次迭代运行的过程中,需要重新计算均值向量。其中,均值向量的计算公式如下:
Sh(n)={y:(y-ni)T(y-ni)<h2}。
其中,高斯核函数的带宽h即为球面区域的半径h,这两个数值是相等的。带宽h的大小决定了每个簇中普通节点数量的多少,带宽越大,簇中的节点数量越多,簇的数量就越少;反之,带宽越小,簇中的节点数量越少,簇的数量就越多。因此,在实际计算的过程中,需要根据实际情况,合理地设置带宽大小,以确保每个簇具有合适的节点数量。
对普通节点的聚簇完成后,需要在所有节点间建立网络连接,形成特定的网络拓扑结构,如图2~图3所示。基于网关节点构建跨链交互节点间的结构化网络拓扑以及跨链连接的步骤至少包括:
处于同一链条上的网关节点基于结构化网络拓扑进行与周边网关节点之间的网络连接;
网关节点基于其与外链网络节点之间的网络延迟信息选取延迟时间最小的至少两个外链网关节点建立跨链网络连接。
具体地,对于处在同一条链上的网关节点,每个网关节点采用结构化的网络拓扑——Chord来维护与其它网关节点的网络连接。此外,每个网关节点测量到外链上的网关节点的网络延迟,选取延迟最小的两个外链网关节点建立跨链网络连接。
如图2所示,对于A链上的上的第一普通节点簇A1和第二普通节点簇A2,按照结构化网络拓扑进行与周边网关节点之间的网络连接。
如图3所示,第一网关连接拓扑C1属于A链。第二网关连接拓扑C2属于B链。A链和B链之间实现跨链连接。即A链中的一个网关节点与B链中的一个网关节点实现跨链连接,形成跨链交互连接拓扑C3。
优选的,基于由广度优先生成的树算法对普通节点簇进行拓扑构建的方法包括:
基于广度优先生成树算法从普通节点网络簇随机选取根节点并建立网络拓扑;
根节点基于路由算法将普通节点的跨链网络请求转发到目标链的网关节点。
基于广度优先生成树算法从普通节点网络簇随机选取根节点并建立网络拓扑的具体步骤如下所述。
采用广度优先生成树算法从每个普通节点网络簇随机选取一个根节点进行网络拓扑建立。根节点用于负责将簇内普通节点的跨链网络请求转发至网关节点进行处理,因此需要根节点与本链的网关节点建立连接。根节点会测量到本链网络节点的网络时延,然后连接到网络时延最小的网关节点。此外,考虑到节点随着时间的推移是动态变化的,例如动态加入或动态离开,本实施例还能够维护网络连接,保证网络的正常运行。
网关节点不断地收集其他外链网关的信息,一旦跨链连接中断,它将连接到其他可用的外链网关节点。当内部网关节点发生动态变化时,Chord协议能够提供连接维护机制。当有新的普通节点加入网络时,Chord协议会根据Meanshift聚类算法找到最近的节点簇并加入;当有普通节点离开节点簇时,根据广度优先生成树算法,簇内的连接将被重构。由此可见,本实施例采用的动态网络拓扑构建方法具有较高的可扩展性和鲁棒性。
根节点基于路由算法将普通节点的跨链网络请求转发到目标链的网关节点的具体步骤如下所述。
在建立网络拓扑结构之后,根节点需要准确地将跨链网络请求转发至目标链的对应节点,因此根节点需要提供路由转发的功能。现有的跨链路由算法主要分为两类:泛洪路由和中心化路由。泛洪路由指的是,节点向所有的邻居节点发送消息,不断询问到达目标节点的路径,邻居节点也会向其的邻居节点进行广播,直至找到目标节点。泛洪路由会消耗大量的网络资源用以查找路由路径,效率较低。中心化路由是由一个中心化的路由器来负责所有的请求的路由,节点直接将请求发送到中心化的节点,由中心化的节点来进行转发。中心化路由较之泛洪路由,其效率更高,但中心化路由节点的引入违背了区块链网络中去中心化的思想,中心化路由的能力也决定的整个***的路由效率,有可能成为整个路由过程中的瓶颈。基于构建的网络拓扑结构,本发明提出了一种新型的路由算法,可以快速准确地将跨链网络请求转发到目标链的对应节点。
在路由转发的过程中,需要明确各个节点的身份,因此本发明还提供一种层次化的命名方法,用以标记各个节点。其中,节点的标识由三个部分组成,分别为“链号-网关号-节点编号”。同一条区块链上的节点具有相同的链号,网关节点的节点编号为0,而簇首节点的节点编号为1。
如图4所示为路由算法的具体流程。理由算法的步骤包括:
S21:获取节点维护的路由表。
S22:将当前节点的地址与接收到的请求消息中的目标地址进行比对,判断是否一致。若一致,说明已到达目标节点,路由过程结束。
S23:若当前节点的地址与接收到的请求消息中的目标地址不一致,查看路由表是否包含的目标地址。若如果路由表中有目标地址,则直接进行转发。
S24:若路由表中没有地址,判断节点链号与目标链号是否一致。若链号一致,则说明可以到达目标链,需要将消息发送到离链号最近的网关节点进行进一步处理。
S25:若节点链号与目标链号不一致,则说明消息还在原链上,需要发送到网关节点进行处理。其中,根据网络拓扑结构,普通节点需要先将消息转发给簇首节点,然后再由簇首节点转发给网关节点。
S26:若上述判断条件均不满足,则证明当前的节点缺乏对应网关节点的信息,需要向它了解的所有网关节点发送请求,让邻居网关节点进行进一步处理。处理后路由行程结束。
本发明的路由算法可以迅速准确地将跨链请求从原链节点转发到目标链的对应节点,从而完成跨链交互。
实施例2
本实施例是对实施例1的进一步阐述,重复的内容不再赘述。
本发明还提供一种基于区块链跨链交互的动态覆盖网络拓扑构建装置,也可以是一种基于区块链跨链交互的动态覆盖网络的装置。
本发明的装置至少包括拓扑构建模块和路由计算模块。拓扑构建模块为执行将节点进行拓扑构建的程序的服务器、计算机、单片机、专用集成芯片中的一种或几种。
路由计算模块基于构建成的网络节点进行路由计算。路由计算模块可以是执行路由计算程序的服务器、计算机、单片机、专用集成芯片中的一种或几种。
具体地,拓扑构建模块在运行状态执行的程序包括:
S1:开始。
S2:从运行具有统一网络规范的至少一个跨链交互节点中选取至少一个网关节点和至少一个普通节点;
S3:基于聚类算法对所述普通节点进行分簇;
S4:基于网关节点构建跨链交互节点间的结构化网络拓扑以及跨链连接;
S5:基于由广度优先生成的树算法对普通节点簇进行拓扑构建。
S6:结束。
本发明提供的动态网络拓扑构建模块充分考虑了节点间的网络延迟,确保了节点间数据的高速传输。进一步的,本发明设计的结构化网络拓扑可以很好地适应节点数目的增加,不同区块链***的网关节点、普通节点可以动态地加入并建立连接,在不同的区块链上形成一个自治化的网络拓扑,具有较高的可扩展性和鲁棒性。
路由计算模块在运行状态执行的程序包括:
S21:获取节点维护的路由表。
S22:将当前节点的地址与接收到的请求消息中的目标地址进行比对,判断是否一致。若一致,说明已到达目标节点,路由过程结束。
S23:若当前节点的地址与接收到的请求消息中的目标地址不一致,查看路由表是否包含的目标地址。
S231:若如果路由表中有目标地址,则直接进行转发。
S24:若路由表中没有地址,判断节点链号与目标链号是否一致。
S241:若链号一致,则说明可以到达目标链,需要将消息发送到离链号最近的网关节点进行进一步处理。
S25:若节点链号与目标链号不一致,则说明消息还在原链上,需要发送到网关节点进行处理。其中,根据网络拓扑结构,信息先发送至普通节点。
S251:普通节点需要先将消息转发给簇首节点,然后再由簇首节点转发给网关节点。
S26:若上述判断条件均不满足,则证明当前的节点缺乏对应网关节点的信息。
S261:网关节点需要向它了解的邻居网关节点发送请求。
S27:网关节点向所有的网关节点进行进一步处理。处理后路由行程结束。
本发明的路由计算模块执行的路由算法可以迅速准确地将跨链请求从原链节点转发到目标链的对应节点,从而完成跨链交互。
需要注意的是,上述具体实施例是示例性的,本领域技术人员可以在本发明公开内容的启发下想出各种解决方案,而这些解决方案也都属于本发明的公开范围并落入本发明的保护范围之内。本领域技术人员应该明白,本发明说明书及其附图均为说明性而并非构成对权利要求的限制。本发明的保护范围由权利要求及其等同物限定。
本发明说明书包含多项发明构思,申请人保留根据每项发明构思提出分案申请的权利。本发明说明书包含多项发明构思,诸如“优选地”、“根据一个优选实施方式”或“可选地”均表示相应段落公开了一个独立的构思,申请人保留根据每项发明构思提出分案申请的权利。
Claims (9)
1.一种基于区块链跨链交互的动态覆盖网络拓扑构建方法,其特征在于,所述方法至少包括:
从至少一个跨链交互节点中选取至少一个网关节点和至少一个普通节点;
基于聚类算法对所述普通节点进行分簇;
基于网关节点构建跨链交互节点间的结构化网络拓扑以及跨链连接;
基于由广度优先生成的树算法对普通节点簇进行拓扑构建;
基于由广度优先生成的树算法对普通节点簇进行拓扑构建的方法包括:
基于广度优先生成的树算法随机选取根节点建立网络拓扑;
所述根节点将簇内普通节点的跨链网络请求信息转发至网关节点进行处理。
2.根据权利要求1所述的基于区块链跨链交互的动态覆盖网络拓扑构建方法,其特征在于,选取至少一个所述网关节点的方法包括:
基于历史交易信息的信任度和/或在线时长选择网关节点;
在确定网关节点后,剩余的跨链交互节点为普通节点。
3.根据权利要求2所述的基于区块链跨链交互的动态覆盖网络拓扑构建方法,其特征在于,基于聚类算法对所述普通节点进行分簇的方法包括:
在对节点赋予相应的坐标的情况下,基于节点的实际网络延迟调整节点的具体坐标;
基于Meanshift聚类算法对普通节点进行聚簇。
5.根据权利要求4所述的基于区块链跨链交互的动态覆盖网络拓扑构建方法,其特征在于,Sh的定义为:
Sh(n)={y:(y-ni)T(y-ni)<h2},
其中,y表示满足条件的节点,T表示转置符号,h表示带宽的大小。
6.根据权利要求5所述的基于区块链跨链交互的动态覆盖网络拓扑构建方法,其特征在于,所述网关节点的选取方式为:
选取在历史交易中具有较高信任度的节点,和/或在线时间较长节点作为网关节点。
7.一种基于区块链跨链交互的动态覆盖网络拓扑构建装置,其特征在于,所述装置至少包括拓扑构建模块,所述拓扑构建模块按照以下方法运行:
从至少一个跨链交互节点中选取至少一个网关节点和至少一个普通节点;
基于聚类算法对所述普通节点进行分簇;
基于网关节点构建跨链交互节点间的结构化网络拓扑以及跨链连接;
基于由广度优先生成的树算法对普通节点簇进行拓扑构建;
基于由广度优先生成的树算法对普通节点簇进行拓扑构建的方法包括:
基于广度优先生成的树算法随机选取根节点建立网络拓扑;
所述根节点将簇内普通节点的跨链网络请求信息转发至网关节点进行处理。
8.根据权利要求7所述的基于区块链跨链交互的动态覆盖网络拓扑构建装置,其特征在于,所述装置还包括路由计算模块,所述路由计算模块执行的路由算法为:
获取节点维护的路由表;
将当前节点的地址与接收到的请求消息中的目标地址进行比对,判断是否一致;若一致,说明已到达目标节点,路由过程结束;
若当前节点的地址与接收到的请求消息中的目标地址不一致,查看路由表是否包含目标地址;若路由表中有目标地址,则直接进行转发;
若路由表中没有地址,判断节点链号与目标链号是否一致;若链号一致,则将消息发送到离链号最近的网关节点进行进一步处理;
若节点链号与目标链号不一致,则将消息发送到网关节点进行处理。
9.一种基于区块链跨链交互的网络拓扑的信息转发方法,其特征在于,所述信息转发方法包括:
在网络拓扑构建完成后,获取节点维护的路由表;
将当前节点的地址与接收到的请求消息中的目标地址进行比对,判断是否一致;若一致,说明已到达目标节点,路由过程结束;
若当前节点的地址与接收到的请求消息中的目标地址不一致,查看路由表是否包含目标地址;若路由表中有目标地址,则直接进行转发;
若路由表中没有地址,判断节点链号与目标链号是否一致;若链号一致,则将消息发送到离链号最近的网关节点进行进一步处理;
若节点链号与目标链号不一致,则将消息发送到网关节点进行处理;
其中,网络拓扑构建的方法为:
基于选取的网关节点构建跨链交互节点间的结构化网络拓扑以及跨链连接;
在基于由广度优先生成的树算法对选取的普通节点簇进行拓扑构建;
基于由广度优先生成的树算法对普通节点簇进行拓扑构建的方法包括:
基于广度优先生成的树算法随机选取根节点建立网络拓扑;
所述根节点将簇内普通节点的跨链网络请求信息转发至网关节点进行处理。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011421191.0A CN112600699B (zh) | 2020-12-07 | 2020-12-07 | 基于区块链跨链交互的动态覆盖网络拓扑构建方法及装置 |
US17/249,838 US11792105B2 (en) | 2020-12-07 | 2021-03-16 | Method of building a dynamic overlay network topology based on cross-chain interaction between blockchains and device therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011421191.0A CN112600699B (zh) | 2020-12-07 | 2020-12-07 | 基于区块链跨链交互的动态覆盖网络拓扑构建方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112600699A CN112600699A (zh) | 2021-04-02 |
CN112600699B true CN112600699B (zh) | 2022-04-01 |
Family
ID=75188761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011421191.0A Active CN112600699B (zh) | 2020-12-07 | 2020-12-07 | 基于区块链跨链交互的动态覆盖网络拓扑构建方法及装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11792105B2 (zh) |
CN (1) | CN112600699B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114285755B (zh) * | 2021-12-31 | 2024-06-28 | 支付宝(杭州)信息技术有限公司 | 一种跨子网交互方法、装置、电子设备和存储介质 |
CN115314391B (zh) * | 2022-08-06 | 2024-04-26 | 北京工业大学 | 一种区块链网络拓扑动态建立和数据传输优化方法 |
CN115883577B (zh) * | 2022-11-24 | 2024-04-19 | 北京工业大学 | 一种区块链网络分簇及数据传输方法 |
CN117499017B (zh) * | 2023-12-31 | 2024-03-22 | 湖南天河国云科技有限公司 | 区块链网络传输方法、***及存储介质和终端设备 |
CN117687578B (zh) * | 2024-02-01 | 2024-04-16 | 南京信息工程大学 | 区块链中基于动态分簇的区块协同存储方法、介质及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108900585A (zh) * | 2018-06-15 | 2018-11-27 | 浙江华信区块链科技服务有限公司 | 跨链事务一致性实现方法 |
CN110266655A (zh) * | 2019-05-30 | 2019-09-20 | 中国工商银行股份有限公司 | 一种基于区块链的跨链互联方法、设备以及*** |
CN110519085A (zh) * | 2019-08-07 | 2019-11-29 | 中国联合网络通信集团有限公司 | 一种配置更改方法及区块链平台 |
CN111770017A (zh) * | 2020-06-22 | 2020-10-13 | 国网冀北电力有限公司电力科学研究院 | 基于可信区块链的配电物联网分簇管理***及方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070110024A1 (en) * | 2005-11-14 | 2007-05-17 | Cisco Technology, Inc. | System and method for spanning tree cross routes |
US8089866B2 (en) * | 2009-10-16 | 2012-01-03 | Ciena Corporation | Spanning tree flooding backbone systems and methods for link state routed networks |
US20190172026A1 (en) * | 2017-12-02 | 2019-06-06 | Alchemy Limited LLC | Cross blockchain secure transactions |
-
2020
- 2020-12-07 CN CN202011421191.0A patent/CN112600699B/zh active Active
-
2021
- 2021-03-16 US US17/249,838 patent/US11792105B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108900585A (zh) * | 2018-06-15 | 2018-11-27 | 浙江华信区块链科技服务有限公司 | 跨链事务一致性实现方法 |
CN110266655A (zh) * | 2019-05-30 | 2019-09-20 | 中国工商银行股份有限公司 | 一种基于区块链的跨链互联方法、设备以及*** |
CN110519085A (zh) * | 2019-08-07 | 2019-11-29 | 中国联合网络通信集团有限公司 | 一种配置更改方法及区块链平台 |
CN111770017A (zh) * | 2020-06-22 | 2020-10-13 | 国网冀北电力有限公司电力科学研究院 | 基于可信区块链的配电物联网分簇管理***及方法 |
Also Published As
Publication number | Publication date |
---|---|
US11792105B2 (en) | 2023-10-17 |
CN112600699A (zh) | 2021-04-02 |
US20220182308A1 (en) | 2022-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112600699B (zh) | 基于区块链跨链交互的动态覆盖网络拓扑构建方法及装置 | |
Li et al. | Adaptive transmission optimization in SDN-based industrial Internet of Things with edge computing | |
Barolli et al. | A QoS routing method for ad-hoc networks based on genetic algorithm | |
CN112104558B (zh) | 区块链分发网络的实现方法、***、终端及介质 | |
WO2023024219A1 (zh) | 云边协同网络中时延和频谱占用联合优化方法及*** | |
Chen et al. | A machine-learning based time constrained resource allocation scheme for vehicular fog computing | |
US20110280129A1 (en) | System of Path Computation Element Protocol Support for Large-Scale Concurrent Path Computation | |
CN113742046A (zh) | 流量疏导的云边计算网络计算资源均衡调度方法及*** | |
CN103001892B (zh) | 基于云计算的网络资源分配方法及*** | |
CN105472484B (zh) | 一种电力骨干光传输网波道均衡路由波长分配方法 | |
CN101729385A (zh) | 一种路径计算及建立方法、装置和*** | |
CN111538570A (zh) | 一种面向节能和QoS保障的VNF部署方法及装置 | |
CN113645146B (zh) | 基于新流密度的软件定义网络控制器负载均衡方法及*** | |
CN116261119A (zh) | 一种车载环境下智能协同任务计算和按需资源分配方法 | |
CN114513449A (zh) | 一种域内路由选择优化方法及*** | |
Zhu et al. | Efficient hybrid multicast approach in wireless data center network | |
Baek et al. | Floadnet: Load balancing in fog networks with cooperative multiagent using actor–critic method | |
CN106105282B (zh) | 利用链路缓冲区状态进行流量工程的***和方法 | |
CN1787475B (zh) | 接入网络***及移动内部网络中继设备的方法 | |
CN114390489B (zh) | 一种端到端网络切片的服务化部署方法 | |
CN114116211B (zh) | 面向移动边缘计算的业务流量分流优化方法与*** | |
CN110458293B (zh) | 一种优化网络延迟的分布式admm机器学习方法 | |
Li et al. | PARS-SR: A scalable flow forwarding scheme based on Segment Routing for massive giant connections in 5G networks | |
Wang et al. | A Q-Learning based Routing Optimization Model in a Software Defined Network | |
CN110213149A (zh) | 一种基于节点熵的虚拟网络映射算法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |