CN107330786B - 一种基于权重的区块链网络节点通信方法 - Google Patents
一种基于权重的区块链网络节点通信方法 Download PDFInfo
- Publication number
- CN107330786B CN107330786B CN201710358802.3A CN201710358802A CN107330786B CN 107330786 B CN107330786 B CN 107330786B CN 201710358802 A CN201710358802 A CN 201710358802A CN 107330786 B CN107330786 B CN 107330786B
- Authority
- CN
- China
- Prior art keywords
- node
- group
- nodes
- transit
- consensus
- 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
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1854—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with non-centralised forwarding system, e.g. chaincast
Abstract
本发明公开了一种基于权重的区块链网络节点通信方法,其利用节点分组信息,选取有效节点进行通信,将通信过程的全网广播优化成全网局部广播,节点分组内局部广播的模式,同时根据分组和节点有选择的选取节点,用于验证和确认,加速通信过程。本发明方法利用网络中节点位置生成权重,能够提高交易时通信的实时性,增强区块链交易技术平台的处理能力。
Description
技术领域
本发明属于区块链技术领域,具体涉及一种基于权重的区块链网络节点通信方法。
背景技术
在区块链网络中,作为保存数据副本的服务器节点可担任不同角色,如发出、验证、接收和通知等;网络系统中任意两个节点通过相互发送、接收、处理、返回数据的模式形态以实现节点通信。
在常规技术方案下,区块链交易启动后,发布和记录交易时,会采用全网广播的模式进行账本复制,然后通过共识机制达成共识后予以交易确认,随后根据时间指纹信息,线性的追加在交易记录中。此种情况下,在全网广播、达成共识的过程,将会产生O(n2)的时间复杂度,尤其是随着区块链规模的变大后,多种不同类型的硬件设备对数据的处理能力和速度会逐渐出现较大差异化,如此复杂度将不堪重负,严重降低交易的实时性(即节点或节点分组对数据请求和响应的时间效率)。
发明内容
鉴于上述,本发明提供了一种基于权重的区块链网络节点通信方法,能够解决全网广播、验证和确认实时性差的问题,利用节点和节点分组的信息优化通信过程。
一种基于权重的区块链网络节点通信方法,包括如下步骤:
(1)根据逻辑以及物理关系对区块链网络中的所有节点进行分类,得到n个节点分组,并为每个节点分组分配一个全局唯一的分组指纹Gid,n为大于1的自然数;
(2)对于任一节点分组,通过相应算法从该分组内选取出一个节点作为中转节点,并设定最小共识达成比例T且50%<T≤100%;
(3)当网络中的任一节点a进行交易通信时,其通过所在分组内的中转节点a1主动发起交易,中转节点a1先将交易数据在组内进行广播,然后再广播给其他分组内的中转节点;
(4)对于其他任一分组内的中转节点b1,其收到交易数据后根据最小共识达成比例T随机从组内选取部分节点进行数据拷贝以及数据验证过程,这些节点若验证成功后则向中转节点b1进行反馈;若中转节点b1收到组内超过TGb个节点返回的共识响应,则将本组的分组指纹Gid以及共识达成结果发送给中转节点a1,然后再对组内未参与共识的节点进行数据拷贝;Gb为中转节点b1所在分组内的节点数量;
(5)若中转节点a1收到包括其自身在内超过Tn个中转节点返回的共识响应,则使节点a完成交易处理,即交易完成。
进一步地,所述节点分组内的各个节点无主从和状态区分,可直接相互通信;节点分组之间则通过中转节点进行通信。
进一步地,所述中转节点a1在广播交易数据的同时,还将最小共识达成比例T发送给其他分组内的中转节点。
进一步地,所述中转节点a1将交易数据在组内进行广播,使组内其他所有节点进行数据拷贝以及数据验证过程,这些节点若验证成功后则向中转节点a1进行反馈,若中转节点a1收到组内超过TGa个节点返回的共识响应,则中转节点a1所在分组达成共识;Ga为中转节点a1所在分组内的节点数量。
进一步地,如果节点在未完成数据拷贝时发起数据查询操作且命中其本身,此时引入一个重定向机制,将该节点指向数据拷贝的源节点,防止节点查询失败或造成不一致情况;如出现异常造成不一致,组内将根据多数派协定修正为同一结果。
本发明利用实际区块链中节点的网络逻辑和物理拓扑结构,构建了一种新的区块链节点通信方法,该方法的核心思想是利用节点分组信息,选取有效节点进行通信,将通信过程的全网广播优化成全网局部广播,节点分组内局部广播的模式,同时根据分组和节点有选择的选取节点,用于验证和确认,加速通信过程。
本发明由于非一次性全局广播同步,全局一致性需要一个异步同步过程,故在同步时间内,查询记录信息可能需要增加一个二次查询过程,但是在技术方案整体上,二次查询过程不会对整体方案带来太多效率损失。因此,本发明方法利用网络中节点位置生成权重,能够提高交易时通信的实时性,增强区块链交易技术平台的处理能力。
附图说明
图1为区块链网络中的节点分组示意图。
图2为节点分组内的节点连接结构示意图。
图3为区块链网络中节点的交易通信流程示意图。
具体实施方式
为了更为具体地描述本发明,下面结合附图及具体实施方式对本发明的技术方案进行详细说明。
如图1所示,整个区块链网络包含节点分组An~Zn,节点分组An通过网络与节点分组Bn、Cn、Dn……Xn连接,并能相互通信。如图2所示,节点分组内各个节点构成对等网络结构,无主从和状态区分,本实施方式中节点可被视作虚拟机实例。
根据原有通信方式,如果从节点分组An中选取节点a1主动发起交易,则通信方式是由节点a1向组内广播,然后分组An再分别广播给Bn、Cn、Dn……Xn,各个分组内的节点接收到广播后,各自对数据进行克隆副本后进行验证和确认处理,节点a1则等待自己分组内所有节点和所有其他的节点分组内节点完成验证和确认处理后,接收到响应,完成自己的交易处理。
在本发明基于权重的区块链网络节点通信方法中,我们引入最小共识达成比例T(50%<T≤100%)。易知,在实际共识率R>T时,继续等待节点返回共识响应对改变结果是无意义的,故我们可以在不影响结果的情况下,放弃部分过程以达到优化的目的。
为了遍于区分分组信息,我们给每个节点分组定义全局唯一分组指纹Gid,分组内节点数量Gc。
如图3所示,当进行交易通信时,An中选取节点a1发起交易,在发送交易数据的同时,发送最小共识达成比例T,并对Bn、Cn、Dn……Xn等节点分组进行全局广播,每个节点分组与a1采用同样的算法选出b1、c1、d1……x1节点,该节点根据Gc数量,参考T的比例,随机选取该分组的部分节点进行副本克隆和验证和确认过程,完成后将结果返回给a1,再对未参与达成共识的节点进行复制数据副本。a1在接受结果后,根据Gc总量和汇报节点总量,当汇报节点总量占比大于T比例时,结合超时配置,可以迅速拿到结果。
如果在未完成数据副本复制时,存在节点发起查询操作命中本身,此时引入一个重定向机制,将选取到的本身节点指向复制副本的源节点,防止节点查询失败或者造成不一致,如出现异常造成不一致,组内将根据多数派,协定修正为同一结果。
上述对实施例的描述是为便于本技术领域的普通技术人员能理解和应用本发明。熟悉本领域技术的人员显然可以容易地对上述实施例做出各种修改,并把在此说明的一般原理应用到其他实施例中而不必经过创造性的劳动。因此,本发明不限于上述实施例,本领域技术人员根据本发明的揭示,对于本发明做出的改进和修改都应该在本发明的保护范围之内。
Claims (5)
1.一种基于权重的区块链网络节点通信方法,包括如下步骤:
(1)根据逻辑以及物理关系对区块链网络中的所有节点进行分类,得到n个节点分组,并为每个节点分组分配一个全局唯一的分组指纹Gid,n为大于1的自然数;
(2)对于任一节点分组,通过相应算法从该分组内选取出一个节点作为中转节点,并设定最小共识达成比例T且50%<T≤100%;
(3)当网络中的任一节点a进行交易通信时,其通过所在分组内的中转节点a1主动发起交易,中转节点a1先将交易数据在组内进行广播,然后再广播给其他分组内的中转节点;
(4)对于其他任一分组内的中转节点b1,其收到交易数据后根据最小共识达成比例T随机从组内选取部分节点进行数据拷贝以及数据验证过程,这些节点若验证成功后则向中转节点b1进行反馈;若中转节点b1收到组内超过TGb个节点返回的共识响应,则将本组的分组指纹Gid以及共识达成结果发送给中转节点a1,然后再对组内未参与共识的节点进行数据拷贝;Gb为中转节点b1所在分组内的节点数量;
(5)若中转节点a1收到包括其自身在内超过Tn个中转节点返回的共识响应,则使节点a完成交易处理,即交易完成。
2.根据权利要求1所述的区块链网络节点通信方法,其特征在于:所述n个节点分组内的各个节点无主从和状态区分,可直接相互通信;节点分组之间则通过中转节点进行通信。
3.根据权利要求1所述的区块链网络节点通信方法,其特征在于:所述中转节点a1在广播交易数据的同时,还将最小共识达成比例T发送给其他分组内的中转节点。
4.根据权利要求1所述的区块链网络节点通信方法,其特征在于:所述中转节点a1将交易数据在组内进行广播,使组内其他所有节点进行数据拷贝以及数据验证过程,这些节点若验证成功后则向中转节点a1进行反馈,若中转节点a1收到组内超过TGa个节点返回的共识响应,则中转节点a1所在分组达成共识;Ga为中转节点a1所在分组内的节点数量。
5.根据权利要求1所述的区块链网络节点通信方法,其特征在于:如果节点在未完成数据拷贝时发起数据查询操作且命中其本身,此时引入一个重定向机制,将该节点指向数据拷贝的源节点,防止节点查询失败或造成不一致情况;如出现异常造成不一致,组内将根据多数派协定修正为同一结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710358802.3A CN107330786B (zh) | 2017-05-19 | 2017-05-19 | 一种基于权重的区块链网络节点通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710358802.3A CN107330786B (zh) | 2017-05-19 | 2017-05-19 | 一种基于权重的区块链网络节点通信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107330786A CN107330786A (zh) | 2017-11-07 |
CN107330786B true CN107330786B (zh) | 2020-06-26 |
Family
ID=60193745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710358802.3A Active CN107330786B (zh) | 2017-05-19 | 2017-05-19 | 一种基于权重的区块链网络节点通信方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107330786B (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107977340A (zh) * | 2017-12-27 | 2018-05-01 | 邵美 | 一种区块链交易网络节点的重要性排序方法 |
CN108183906B (zh) * | 2017-12-29 | 2021-03-16 | 泰康保险集团股份有限公司 | 时间银行管理方法、服务器、终端、存储介质及电子设备 |
CN110213304B (zh) * | 2018-02-28 | 2021-11-30 | 成都高新信息技术研究院 | 一种区块链网络互联方法与系统 |
CN108305056B (zh) * | 2018-03-27 | 2023-11-10 | 北京蓝亚盒子科技有限公司 | 基于区块链的数据处理方法、装置及区块链节点网络 |
CN108776929A (zh) * | 2018-04-02 | 2018-11-09 | 成都云创智融科技有限公司 | 基于区块链数据库的账单处理方法、系统和可读存储介质 |
CN108648081B (zh) * | 2018-05-07 | 2020-08-18 | 北京柏链基石科技有限公司 | 一种基于区块链的交易处理方法、装置和电子设备 |
CN108616596B (zh) * | 2018-05-09 | 2020-12-25 | 南京邮电大学 | 基于动态授权和网络环境感知的区块链自适应共识方法 |
CN108900321A (zh) * | 2018-06-06 | 2018-11-27 | 广州链块科技有限公司 | 一种区块链分区间进行实时原子交易的方法 |
CN108989410B (zh) * | 2018-07-04 | 2020-10-30 | 清华大学 | 一种提高区块链吞吐效率的方法 |
CN109302311B (zh) * | 2018-09-04 | 2020-08-14 | 北京邮电大学 | 实现网络态势感知的区块链网络、感知方法及电子设备 |
CN109377364A (zh) * | 2018-09-27 | 2019-02-22 | 中国联合网络通信集团有限公司 | 一种建组方法和装置、交易方法和系统 |
CN111092925B (zh) * | 2018-10-23 | 2022-08-05 | 中国移动通信有限公司研究院 | 一种区块链扩容处理方法、装置及设备 |
CN109788042A (zh) * | 2018-12-28 | 2019-05-21 | 贵州蓝石科技有限公司 | 一种基于分组的区块链网络节点通信方法 |
CN109903162B (zh) * | 2019-03-01 | 2021-05-04 | 山东大学 | 一种加速区块链MCMC随机选择的ReRAM及其工作方法 |
CN111431802B (zh) * | 2020-03-25 | 2022-09-16 | 中国工商银行股份有限公司 | 区块链节点通信优化系统及方法 |
CN111698084B (zh) * | 2020-06-04 | 2021-02-05 | 电子科技大学 | 一种基于区块链的隐匿通信方法 |
CN111444193B (zh) * | 2020-06-12 | 2020-09-25 | 支付宝(杭州)信息技术有限公司 | 一种块链式账本中的权重分配方法、装置及设备 |
CN114584577B (zh) * | 2022-03-08 | 2023-12-19 | 昆明理工大学 | 一种处理数据的区块链分片异步共识方法及系统 |
CN114726879B (zh) * | 2022-03-29 | 2024-02-27 | 北京流通宝数据科技服务有限公司 | 一种基于区块链分流验证交易信息的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101483670A (zh) * | 2009-02-25 | 2009-07-15 | 南京邮电大学 | 基于分布式哈希表的区域化对等计算数据一致性维护方法 |
CN105183544A (zh) * | 2015-09-17 | 2015-12-23 | 中国科学院计算技术研究所 | 一种非阻塞式容错的分布式事务提交方法及系统 |
CN106452785A (zh) * | 2016-09-29 | 2017-02-22 | 财付通支付科技有限公司 | 区块链网络、分支节点及区块链网络应用方法 |
CN106656974A (zh) * | 2016-10-17 | 2017-05-10 | 江苏通付盾科技有限公司 | 区块链的分组共识方法及系统 |
CN106682984A (zh) * | 2016-10-27 | 2017-05-17 | 上海亿账通区块链科技有限公司 | 基于区块链的交易事务处理方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7403980B2 (en) * | 2000-11-08 | 2008-07-22 | Sri International | Methods and apparatus for scalable, distributed management of virtual private networks |
US9250972B2 (en) * | 2006-06-19 | 2016-02-02 | International Business Machines Corporation | Orchestrated peer-to-peer server provisioning |
-
2017
- 2017-05-19 CN CN201710358802.3A patent/CN107330786B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101483670A (zh) * | 2009-02-25 | 2009-07-15 | 南京邮电大学 | 基于分布式哈希表的区域化对等计算数据一致性维护方法 |
CN105183544A (zh) * | 2015-09-17 | 2015-12-23 | 中国科学院计算技术研究所 | 一种非阻塞式容错的分布式事务提交方法及系统 |
CN106452785A (zh) * | 2016-09-29 | 2017-02-22 | 财付通支付科技有限公司 | 区块链网络、分支节点及区块链网络应用方法 |
CN106656974A (zh) * | 2016-10-17 | 2017-05-10 | 江苏通付盾科技有限公司 | 区块链的分组共识方法及系统 |
CN106682984A (zh) * | 2016-10-27 | 2017-05-17 | 上海亿账通区块链科技有限公司 | 基于区块链的交易事务处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107330786A (zh) | 2017-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107330786B (zh) | 一种基于权重的区块链网络节点通信方法 | |
CN110727731B (zh) | 区块链网络中加入节点的方法和区块链系统 | |
AU2019203861B2 (en) | System and method for ending view change protocol | |
CN110754070B (zh) | 最近交易在区块链网络上的快速传播 | |
CN109544334B (zh) | 一种网络可扩展性区块链实现方法 | |
KR102170347B1 (ko) | 뷰 변경 프로토콜을 종료하기 위한 시스템 및 방법 | |
CN110866751A (zh) | 区块链平行链的维护方法及区块链平行链 | |
CN108876618A (zh) | 一种交换区块链系统及相应的通用区块链互操作方法和网络 | |
CN103795754B (zh) | 多系统间的数据同步方法和系统 | |
WO2014101044A1 (zh) | 分布式存储系统中的分区平衡方法、装置及服务器 | |
JPWO2004063928A1 (ja) | データベース負荷軽減システムおよび負荷軽減プログラム | |
CN114050904B (zh) | 一种基于两层级领导节点分片结构的共识系统及方法 | |
WO2022206431A1 (zh) | 查询Fabric区块链账本数据的方法和装置 | |
WO2020042937A1 (zh) | 区块链平行链的维护方法及区块链平行链 | |
JP4036661B2 (ja) | 複製データ管理方法、ノード、プログラム、記録媒体 | |
CN112184454B (zh) | 一种区块链共识方法、装置、系统及存储介质 | |
CN112019380A (zh) | 一种基于权益激励的结合Raft和PBFT算法的区块链共识方法 | |
CN114499874B (zh) | 一种应用于工业互联网的拜占庭容错共识优化方法 | |
CN116260826A (zh) | 一种供应链溯源中拜占庭容错共识方法及系统 | |
Huang et al. | Design and analysis of a distributed consensus protocol for real-time blockchain systems | |
AU2019101575A4 (en) | System and method for ending view change protocol | |
RU2695976C1 (ru) | Способ масштабирования обработки данных в распределенной системе | |
WO2023043762A2 (en) | Collaborative transaction notarization in a byzantine computing environment | |
ZANG et al. | Online Shuffling with Task Duplication in Cloud | |
CN112150286A (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 |