CN113422709B - 一种适合区块链交易验证的数据传输方法 - Google Patents
一种适合区块链交易验证的数据传输方法 Download PDFInfo
- Publication number
- CN113422709B CN113422709B CN202110681272.2A CN202110681272A CN113422709B CN 113422709 B CN113422709 B CN 113422709B CN 202110681272 A CN202110681272 A CN 202110681272A CN 113422709 B CN113422709 B CN 113422709B
- Authority
- CN
- China
- Prior art keywords
- communication
- node
- tree
- verification
- data transmission
- 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
Classifications
-
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Environmental & Geological Engineering (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种适合区块链交易验证的数据传输方法,包括以下步骤:根据区块链应用的实际需求,估算出区块链网络的通信影响因子,并制定并发通信规则;再根据通信规模和节点通信能力估算出通信树深度调节参考值集;然后最大程度地权衡节点通信能力和通信权值对通信效率的影响,构造出适合区块链交易验证的通信树传输路径,并以交易验证传输延时的最小值为目标,通过动态调整通信树深度调节参考值,获取到最优的区块链数据传输路径;最后存储最优传输路径,为后续区块数据的传输提供路由决策支持;本发明所提供的数据传输方法具有高效性,不仅适用于区块链交易验证数据传输,对于分布式应用中的数据传输也同样适用。
Description
技术领域
本发明属于区块链技术领域,具体涉及一种适合区块链交易验证的数据传输方法。
背景技术
近几年来,区块链技术在数字货币、金融证券、资产管理、交易支付领域突显出广阔的应用前景。然而,作为区块链技术典型应用的比特币系统,目前全网业务处理能力只有每秒8笔,而且10分钟才能做一次交易清算,一个新的区块要等待后续6个区块的建立才可以最终建立。显然区块链技术无法承载每秒上万次的互联网级别应用。区块链的系统吞吐量低,业务处理实时性差,区块数据查询效率低是区块链技术瓶颈和制约实施落地的最主要因素。通过比特币交易流程分析,无论在区块链中采用哪种共识机制,都涉及传输确认信息和区块链数据。一个新区块的产生及建立必须得到大多数节点的验证和确认。区块和交互信息在所有节点之间的传输是耗时的过程,文献报道传输延时是导致区块链交易时间长的主要原因之一。因此,区块链中数据传输的效率严重影响着区块链业务处理能力和区块链可用性。区块链采用P2P网络结构,目前记账节点通过洪泛(Flooding)思想将区块和状态交互更新信息转发给区块链其他节点进行交易的验证,例如在最广泛使用的Gossip协议,节点随机选择若干个节点进行数据传输,这种方式容易引起网络风暴和信息冗余传输,导致信息传输不同步,整体传输效率低。
发明内容
为了解决上述问题,本发明的目的在于提供一种适合区块链交易验证的数据传输方法,具有缩短区块链交易时间,提高区块链吞吐量的优点。
为了实现上述目的,本发明采用的技术方案为:
一种适合区块链交易验证的数据传输方法,包括以下步骤:
步骤1:在区块链网络中,针对一次区块链交易验证过程,节点按照区块链规定的共识算法选出一个记账节点v0,剩余节点作为验证节点集合V={v1,…,vi…,vn},传输的区块数据为Block;
步骤2:根据节点自身性能特性,计算节点vi的通信连接数l(vi),根据节点之间的互联情况,从逻辑意义上,计算任意两节点vi和vj的通信权值w(vi,vj);
步骤3:根据节点通信能力的异构性并结合并发通信的优点,制定多连接并发通信规则;
步骤4:根据区块链网络规模和节点通信连接数分布情况,根据经验估算出通信树深度调节参考值集γ,(γi∈γ,0<i<m);m为参考值总个数;参考值集γ选值范围在2、3、4;
步骤5:根据评估的通信影响因子和多连接并发通信规则,构造适合区块链交易验证的通信树传输路径;
步骤6:根据步骤5所得到的通信树,先收集处于叶节点的验证节点集VLeaf,对于任意一个叶验证节点vi∈VLeaf,计算其所在通信支路的通信延时,记作最后一个叶验证节点收到区块数据所用的传输延时为/> 为该通信树对应区块数据传输延时;
步骤7:通过设置不同的通信树深度调节参考值根据步骤5和步骤6计算区块数据传输延时/>将区块数据传输延时/>的最小值作为目标函数,获取最优的通信树深度调节参考值γ*,记账节点v0存储该调节参考值对应的通信树结构,即为最优传输路径;如果该节点在接下来的算力竞争中获得记账权,可参照该最优传输路径组织节点按照该树形结构进行区块数据传输。
所述步骤3具体为:记账节点v0作为通信树的根节点,任意两节点的通信主体任务是Block,因此除路由控制信息外通信主体任务是相同的;对于任意一个验证节点vi,当收到区块数据后,无间歇地并发地以自身最大通信连接数向未收到区块数据的l(vi)个验证节点通信,直至所有验证节点都收到区块数据。
所述步骤5构造适合区块链交易验证的通信树传输路径,包括下列步骤:
步骤5.1:将通信规模为N的区块链网络抽象为G=(V,E,W,L),VT=VTmp={v0},定义通信树存储结构TreeNode;
步骤5.2:对于任意一个通信树中的节点vi∈VTmp,其中vi≠v0采用孩子兄弟二叉树方法构建二叉树;节点vi在二叉通信树中的深度记做Deepth(vi);
先构造节点vi的右兄弟节点;首先计算节点vi通信父节点求一个验证节点/>如果Depth(vi)≤γi,/>必须满足/>否则,/>必须满足将/>作为节点vi的右兄弟节点加入通信树中VT,更新通信树结构体类型TreeNode;
再构造节点vi的左孩子节点集;求l(vi)个验证节点如果Depth(vi)≤γi,将未加入通信树的任意验证节点vi求/>按照从大到小的顺序依次选择l(vi)个节点/>否则从未加入通信树的验证节点集合中依次选择与vi相连的权值最小的l(vi)个节点/>将节点集/>加入通信树VT中,更新通信树结构体类型TreeNode;
步骤5.3:判断通信树中验证节点个数是否小于N,如果小于N,继续步骤5.2,否则结束。
本发明可用于区块链交易验证数据传输路径规划,也适用于具有分布式数据传输需求的网络数据群发。首先定义区块链网络结构,选出记账节点和验证节点集,评估节点通信连接数和节点之间的通信权值。然后根据评估的通信影响因子和多连接并发通信规则,构造多连接并发通信树,依据该树形结构,计算区块数据传输延时,然后通过设置不同的通信树深度调节参考值,将区块数据传输延时最小值作为目标函数,获得最优的通信树深度调节参考值,该深度调节参考值对应的通信树结构,即可为区块链交易验证的数据传输提供路径决策依据。
附图说明
图1为本发明的适合区块链交易验证的数据传输方法流程图。
图2为本发明的基于通信树深度调节的寻优路径构造算法流程图。
图3为本发明l(vi)恒定情况下通信树深度。
图4为本发明的通信树传输路径构造算法流程图。
具体实施方式
以下结合附图对本发明的实施作详细说明。
参照图1,一种适合区块链交易验证的数据传输方法,包括以下步骤:
步骤1:在区块链网络中,针对一次区块链交易验证过程,节点按照区块链规定的共识算法选出一个记账节点v0,剩余节点作为验证节点集合V={v1,…,vi…,vn}。传输的区块数据为Block。根据区块链交易验证的需求,构建区块链交易验证网络。
步骤2:根据节点自身特性和网络互连特性,计算节点vi的通信连接数l(vi),并计算任意两节点vi和vj的通信权值w(vi,vj)。
步骤2.1:根据节点自身的硬件配置,评估出节点vi在同一时刻可与其他节点传输数据的最大个数,即节点vi的通信连接数l(vi)。通常l(vi)∈{0,1,2,3}。
步骤2.2:根据区块链节点互联特性,区块链网络节点具有良好的拓扑感知能力,节点经过多次区块链交易交叉验证后,可获得其他节点的位置信息及其拓扑信息。区块链网络可知道任意两节点vi和vj的平均传输延时,即节点间通信权值,记作w(vi,vj)。
步骤3:根据节点通信能力的异构性,并结合并发通信的优点,制定多链接并发通信规则。记账节点v0作为通信树的根节点,任意两节点的通信主体任务是区块数据,因此除路由控制信息外通信主体任务是相同的。对于任意一个验证节点vi,当收到区块数据后,无间歇地并发地以自身最大通信连接数向未收到区块数据的l(vi)个验证节点通信,直至所有验证节点都收到区块数据。
步骤4:参照图2,根据区块链网络规模和节点通信连接数分布情况,参考表1和图3给出的通信树深度参考值,估算出通信树深度调节参考值集γ,(γi∈γ,0<i<m)。
表1通信树深度参考值及深度调节参考值取值范围
步骤5:对于任意信树深度调节参考值γi,根据评估的通信影响因子和多连接并发通信规则,构造适合区块链交易验证的通信树传输路径。
适合区块链交易验证的通信树传输路径构造,如示意图4所示:
步骤5.1:将区块链网络抽象为G=(V,E,W,L),VT=VTmp={v0},定义通信树存储结构,通信树存储结构如表2所示。采用孩子兄弟二叉树表示通信树,定义通信树存储结构,用结构体类型TreeNode表示多连接通信树节点存储信息,结构体类型TreeNode成员列表包括节点编号、节点右兄弟、节点的右兄弟权值、节点的左孩子集,节点的左孩子权值集及节点的父节点。初始化通信树结构体类型TreeNode。TreeNode[v0].Node=v0。
表2通信树结构体类型TreeNode成员列表
步骤5.2:对于任意一个通信树中的节点vi∈VTmp,其中vi≠v0采用孩子兄弟二叉树方法构建二叉树。节点vi在二叉通信树中的深度记做Deepth(vi)。
先构造节点vi的右兄弟节点。首先计算节点vi通信父节点求一个验证节点/>如果Depth(vi)≤γi,/>必须满足/>否则,/>必须满足将/>作为节点vi的右兄弟节点加入通信树中VT,更新通信树结构体类型TreeNode。TreeNode[vi].Node=vi;/>
再构造节点vi的左孩子节点集。求l(vi)个验证节点如果Depth(vi)≤γi,将未加入通信树的任意验证节点vi求/>按照从大到小的顺序依次选择l(vi)个节点/>否则从未加入通信树的验证节点集合中依次选择与vi相连的权值最小的l(vi)个节点/>将节点集/>加入通信树加入通信树中VT,更新通信树结构体类型TreeNode。依次遍历中的节点,/>
步骤5.3:判断通信树中验证节点个数是否小于N,如果小于N,继续步骤5.2,否则结束。
步骤6:根据步骤5所得到的通信树,先收集处于叶节点的验证节点集VLeaf,对于任意一个叶验证节点vi∈VLeaf,计算其所在的通信支路的通信延时记作再计算区块数据传输延时/>即最后一个叶验证节点收到区块数据所用的传输延时。
步骤7:通过设置不同的通信树深度调节参考值γi,根据步骤5和步骤6计算区块数据传输延时将区块数据传输延时/>的最小值作为目标函数,获得最优的通信树深度调节参考值γ*,记账节点v0存储该调节参考值对应的通信树结构,即为最优传输路径。如果该节点在接下来的算力竞争中获得记账权,可参照该树形结构组织节点进行区块数据传输,从而为区块数据的传输提供路由决策支持。
本发明在区块链网络节点通信能力、节点间通信权值已知的条件下,通过引入通信树深度调节参考值,兼顾节点通信能力和节点间通信代价对通信效率的影响,设计出适合区块链网络数据传输的通信算法。通过该方法部署区块链网络节点进行区块数据传输,以达到缩短区块数据传输延时,提升区块链业务吞吐量的目的。
Claims (3)
1.一种适合区块链交易验证的数据传输方法,其特征在于,包括以下步骤:
步骤1:在区块链网络中,针对一次区块链交易验证过程,节点按照区块链规定的共识算法选出一个记账节点v0,剩余节点作为验证节点集合V={v1,…,vi…,vn},传输的区块数据为Block;
步骤2:根据节点自身性能特性,计算节点vi的通信连接数l(vi),根据节点之间的互联情况,从逻辑意义上,计算任意两节点vi和vj的通信权值w(vi,vj);
步骤3:根据节点通信能力的异构性并结合并发通信的优点,制定多连接并发通信规则;
步骤4:根据区块链网络规模和节点通信连接数分布情况,根据经验估算出通信树深度调节参考值集γ,(γi∈γ,0<i<m);m为参考值总个数,参考值集γ,选值范围在2、3、4;
步骤5:根据评估的通信影响因子和多连接并发通信规则,构造适合区块链交易验证的通信树传输路径;
步骤6:根据步骤5所得到的通信树,先收集处于叶节点的验证节点集VLeaf,对于任意一个叶验证节点vi∈VLeaf,计算其所在通信支路的通信延时,记作最后一个叶验证节点收到区块数据所用的传输延时为/> 为该通信树对应区块数据传输延时;
步骤7:通过设置不同的通信树深度调节参考值γi,根据步骤5和步骤6计算区块数据传输延时将区块数据传输延时/>的最小值作为目标函数,获取最优的通信树深度调节参考值γ*,记账节点v0存储该调节参考值对应的通信树结构,即为最优传输路径;如果该节点在接下来的算力竞争中获得记账权,可参照该最优传输路径组织节点按照该树形结构进行区块数据传输。
2.根据权利要求1所述的一种适合区块链交易验证的数据传输方法,其特征在于,所述步骤3具体为:记账节点v0作为通信树的根节点,任意两节点的通信主体任务是Block,因此除路由控制信息外通信主体任务是相同的;对于任意一个验证节点vi,当收到区块数据后,无间歇地并发地以自身最大通信连接数向未收到区块数据的l(vi)个验证节点通信,直至所有验证节点都收到区块数据。
3.根据权利要求1所述的一种适合区块链交易验证的数据传输方法,其特征在于,所述步骤5构造适合区块链交易验证的通信树传输路径,包括下列步骤:
步骤5.1:将通信规模为N的区块链网络抽象为G=(V,E,W,L),定义通信树存储结构TreeNode;
步骤5.2:对于任意一个通信树中的节点其中vi≠v0采用孩子兄弟二叉树方法构建二叉树;节点vi在二叉通信树中的深度记做Deepth(vi);
先构造节点vi的右兄弟节点;首先计算节点vi通信父节点求一个验证节点如果Depth(vi)≤γi,/>必须满足/>否则,/>必须满足将/>作为节点vi的右兄弟节点加入通信树中VT,更新通信树结构体类型TreeNode;
再构造节点vi的左孩子节点集;求l(vi)个验证节点如果Depth(vi)≤γi,将未加入通信树的任意验证节点vi求/>按照从大到小的顺序依次选择l(vi)个节点/>否则从未加入通信树的验证节点集合中依次选择与vi相连的权值最小的l(vi)个节点/>将节点集/>加入通信树VT中,更新通信树结构体类型TreeNode;
步骤5.3:判断通信树中验证节点个数是否小于N,如果小于N,继续步骤5.2,否则结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110681272.2A CN113422709B (zh) | 2021-06-18 | 2021-06-18 | 一种适合区块链交易验证的数据传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110681272.2A CN113422709B (zh) | 2021-06-18 | 2021-06-18 | 一种适合区块链交易验证的数据传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113422709A CN113422709A (zh) | 2021-09-21 |
CN113422709B true CN113422709B (zh) | 2023-10-10 |
Family
ID=77789368
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110681272.2A Active CN113422709B (zh) | 2021-06-18 | 2021-06-18 | 一种适合区块链交易验证的数据传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113422709B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112381552A (zh) * | 2020-11-19 | 2021-02-19 | 华南理工大学 | 一种基于层级区块链的供应链溯源方法及应用 |
CN112819433A (zh) * | 2021-02-01 | 2021-05-18 | 北京工业大学 | 一种用于协同政务区块链的共识方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108805569A (zh) * | 2018-05-29 | 2018-11-13 | 阿里巴巴集团控股有限公司 | 基于区块链的交易处理方法及装置、电子设备 |
CN110020543B (zh) * | 2018-12-21 | 2020-09-15 | 阿里巴巴集团控股有限公司 | 一种基于区块链的数据处理方法和装置 |
CN112883114A (zh) * | 2021-02-24 | 2021-06-01 | 中国工商银行股份有限公司 | 应用于区块链的交易处理方法和装置 |
-
2021
- 2021-06-18 CN CN202110681272.2A patent/CN113422709B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112381552A (zh) * | 2020-11-19 | 2021-02-19 | 华南理工大学 | 一种基于层级区块链的供应链溯源方法及应用 |
CN112819433A (zh) * | 2021-02-01 | 2021-05-18 | 北京工业大学 | 一种用于协同政务区块链的共识方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113422709A (zh) | 2021-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Di Stasi et al. | Routing payments on the lightning network | |
CN104301305B (zh) | 信息中心网络下兴趣包转发的方法和转发终端 | |
CN110992177B (zh) | 基于链外通道路由评价机制的区块链通量提高方法及系统 | |
CN101013955A (zh) | 用于业务量矩阵估计的快速模拟退火 | |
CN113472671B (zh) | 组播路由的确定方法、装置和计算机可读存储介质 | |
Asheralieva et al. | Throughput-efficient lagrange coded private blockchain for secured IoT systems | |
Li et al. | Network topology optimization via deep reinforcement learning | |
Fabregat et al. | Multi-objective optimization scheme for multicast flows: a survey, a model and a MOEA solution | |
CN114677218A (zh) | 一种基于支付结的链下交易方法 | |
Qiu et al. | A distributed and privacy-aware high-throughput transaction scheduling approach for scaling blockchain | |
CN113422709B (zh) | 一种适合区块链交易验证的数据传输方法 | |
CN113365229A (zh) | 一种多联盟链共识算法的网络时延优化方法 | |
Mighan et al. | On block delivery time in Ethereum network | |
Mercan et al. | Improving sustainability of cryptocurrency payment networks for iot applications | |
Sivaraman et al. | The effect of network topology on credit network throughput | |
CN114710321B (zh) | 一种提高低时延匿名通信系统匿名性的方法 | |
Sahoo et al. | Ethereum compatible faster atomic payment splitting network | |
Kim et al. | On the coding-link cost tradeoff in multicast network coding | |
CN113285832B (zh) | 基于nsga-ii的电力多模态网络资源优化分配方法 | |
JP7103522B2 (ja) | 信頼性推定システム及び信頼性推定方法 | |
CN116109416B (zh) | 一种基于区块链的碳交易支付通道路由选择方法及装置 | |
Yussof et al. | Finding multi-constrained path using genetic algorithm | |
Khojasteh et al. | A survey and taxonomy of blockchain-based payment channel networks | |
Li et al. | Compass: A Penalty-based Routing with High Success Ratio in Payment Channel Networks | |
Sivaraman | High-efficiency cryptocurrency routing in payment channel networks |
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 |