CN112907082B - 一种区块链共识算法评估优化方法 - Google Patents

一种区块链共识算法评估优化方法 Download PDF

Info

Publication number
CN112907082B
CN112907082B CN202110202743.7A CN202110202743A CN112907082B CN 112907082 B CN112907082 B CN 112907082B CN 202110202743 A CN202110202743 A CN 202110202743A CN 112907082 B CN112907082 B CN 112907082B
Authority
CN
China
Prior art keywords
consensus algorithm
consensus
block chain
request
node
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
Application number
CN202110202743.7A
Other languages
English (en)
Other versions
CN112907082A (zh
Inventor
张皓
刘晓春
熊真真
张艳霞
陈雪梅
屠盛春
黄福海
罗博航
沈翔宇
陈思捷
平健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Twenty First Energy Saving Technology Co ltd
Original Assignee
Shanghai Twenty First Energy Saving Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Twenty First Energy Saving Technology Co ltd filed Critical Shanghai Twenty First Energy Saving Technology Co ltd
Priority to CN202110202743.7A priority Critical patent/CN112907082B/zh
Publication of CN112907082A publication Critical patent/CN112907082A/zh
Application granted granted Critical
Publication of CN112907082B publication Critical patent/CN112907082B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06393Score-carding, benchmarking or key performance indicator [KPI] analysis

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Educational Administration (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Retry When Errors Occur (AREA)
  • Supply And Distribution Of Alternating Current (AREA)

Abstract

本发明涉及一种区块链共识算法评估优化方法,包括以下步骤:S1、构建包括若干普通节点、以及若干共识节点的区块链;S2、基于步骤S1构建的区块链根据应用场景加载不同的共识算法;S3、对步骤S2不同的共识算法计算效率维度指标;S4、对步骤S2不同的共识算法计算容错性维度指标;S5、对步骤S2不同的共识算法计算运行成本维度指标;S6、根据步骤S3、S4和S5获得的指标确定该应用场景下区块链的共识算法。有益效果是定量评估区块链共识算法,确定区块链共识算法和应用场景适应性。

Description

一种区块链共识算法评估优化方法
【技术领域】
本发明涉及区块链技术领域,具体涉及一种区块链共识算法评估优化方法。
【背景技术】
区块链技术中,共识算法是其中核心的一个组成部分。在计算机世界当中,共识包含两个层面,第一个层面是点的层面,即多个节点对某个数据达成一致共识;第二个层面是线的层面,即多个节点对多个数据的顺序达成一致共识。这里的节点可以是任意的计算机设备,比如pc电脑,笔记本,手机,路由器等,这里的数据可以是交易数据,状态数据等。常见的共识算法主要可以分成三大类:公链共识算法、联盟链共识算法和私链共识算法。私链共识算法即区块链这个概念还没普及时的传统分布式系统里的共识算法,比如zookeeper的zab协议,就是类paxos算法的一种,以及raft算法等,私链的适用环境一般是不考虑集群中存在作恶节点,只考虑因为系统或者网络原因导致的故障节点;联盟链共识算法中,经典的代表项目是Hyperledger组织下的Fabric项目,Fabric0.6版本使用的就是pbft算法(权威证明—拜占庭容错混合共识算法),另外还有dbft算法(委托权益证明—拜占庭容错混合共识算法),联盟链的适用环境除了需要考虑集群中存在故障节点,还需要考虑集群中存在作恶节点,对于联盟链,每个新加入的节点都是需要验证和审核的。公链共识算法比如pow算法、pos算法、dpos算法、ripple算法等,不仅需要考虑网络中存在故障节点,还需要考虑作恶节点,这一点和联盟链是类似的,和联盟链最大的区别就是,公链中的节点可以很自由的加入或者退出,不需要严格的验证和审核。
区块链的热插拔共识架构技术,在不同的应用场景,区块链用户可由多种算法中选择一种共识算法。共识算法可热升级,还能够实现自定义共识机制,可在不影响运营的情况下为共识升级,可以根据自身需求加载用户认可的共识机制,更可以在开发的单链上做个性化自定义共识机制。
为建立能源主体间的信任关系,维护协作及共享过程的可信赖性,去信任化、公开透明的区块链技术已成为能源互联网发展建设的重要基础设施之一。不同的能源区块链应用对各项性能指标的要求不尽相同。而共识算法是保持区块链自治运行的核心,决定了区块链在效率、容错性、运行成本等多维度的性能指标。因此,确定与场景需求相适应的共识算法,是研究能源区块链的应用方案的关键基础。现有研究未能以定量分析的方式客观评估不同共识算法对能源领域应用场景的适应性。这种局限性产生的原因在于:1)缺乏能源区块链共识算法定量评估体系。2)缺乏定量指标的测评工具。
本发明对区块链、尤其是能源交易场景联盟区块链共识算法评估优化作了改进。
【发明内容】
本发明的目的是,提供一种定量评估区块链共识算法,确定区块链共识算法和应用场景适应性的区块链共识算法评估优化方法。
为实现上述目的,本发明采取的技术方案是一种区块链共识算法评估优化方法,包括以下步骤:
S1、构建包括若干普通节点、以及若干共识节点的区块链;
S2、基于步骤S1构建的区块链根据应用场景加载不同的共识算法;
S3、对步骤S2不同的共识算法计算效率维度指标;
S4、对步骤S2不同的共识算法计算容错性维度指标;
S5、对步骤S2不同的共识算法计算运行成本维度指标;
S6、根据步骤S3、S4和S5获得的指标确定该应用场景下区块链的共识算法。
优选地,上述的一种区块链共识算法评估优化方法,所述的效率维度是指共识算法对请求的响应和处理时间;所述的容错性维度是指共识算法对错误情况的容忍程度与产生错误后的自我修复能力;所述的运行成本维度是指维持共识算法有效运行的代价。
优选地,上述的一种区块链共识算法评估优化方法,所述的效率维度指标包括单次请求确认时间、单次请求结果敲定时间;所述的单次请求确认时间TC指从节点发起请求到包含该请求响应结果的区块被生成的时间间隔,其计算公式为:TC=tconfirmed-trequest,式中trequest为请求发起的时间点,tconfirmed为请求确认的时间点;所述的单次请求结果敲定时间TF指从请求被确认到包含该请求响应结果的区块被敲定的时间间隔,其计算公式为:TF=tfinalized-tconfirmed,式中tfinalized为包含请求响应结果的区块敲定的时间点。
优选地,上述的一种区块链共识算法评估优化方法,所述的容错性维度指标包括离线容错性、数据恢复能力;所述的离线容错性PerT指特定共识算法在正确执行生成区块、敲定区块两个阶段的同时,能容纳离线节点的上限,其计算公式为:PerT=max(noffline/ntotal),式中noffline为不中断共识流程的离线节点数量,ntotal为节点总数;所述的数据恢复能力TR指节点存储数据被清除后,重新获取区块链上所有运行数据的能力,由数据恢复所需时间衡量,其计算公式为:TR=trecovery-tstart,式中tstart为重新启动节点的时间点;trecovery为节点重新获取区块链上所有运行数据的时间点。
优选地,上述的一种区块链共识算法评估优化方法,所述的运行成本维度指标包括计算资源消耗量、通信资源消耗量、存储资源消耗量;所述的计算资源消耗量RC指维持区块链节点终端运行并正常响应请求所需的CPU占比,其计算公式为:RC=CRexhibition+CRcontrol,式中CRexhibition为区块链节点终端展示程序的CPU占比,CRcontrol为区块链节点终端控制程序的CPU占比;所述的通信资源消耗量RN指区块链节点终端之间的通信量,其计算公式为:RN=(NRdownload+NRupload)/2,式中NRdownload为区块链节点终端的数据下载量,NRupload为区块链节点终端的数据上传量;所述的存储资源消耗量RS指保存完整区块链数据所需的字节量,其计算公式为:RS=SRtmp-SRlog,式中SRtmp为节点数据文件夹的字节数总量,SRlog为节点数据文件夹中的日志文件字节量。
优选地,上述的一种区块链共识算法评估优化方法,所述步骤S2所述的应用场景为考虑绿证流转的分布式能源交易,所述的不同共识算法包括权威证明—拜占庭容错混合共识算法、委托权益证明—拜占庭容错混合共识算法。
优选地,上述的一种区块链共识算法评估优化方法,所述步骤S1构建联盟区块链,包括参与市场交易的普通节点,以及负责组织、记录市场交易、并共同核实、监督绿证流转过程的共识节点。
优选地,上述的一种区块链共识算法评估优化方法,所述的共识节点为5至10个。
优选地,上述的一种区块链共识算法评估优化方法,所述的分布式能源交易,一次完整的交易周期包含双向拍卖阶段、P2P交易阶段、以及交割阶段三个阶段;所述的绿证流转指普通节点完成能源交割后,绿证自动从交易上家流转至交易下家名下,作为交易下家消纳可再生能源的凭证。
优选地,上述的一种区块链共识算法评估优化方法,综合对比权威证明—拜占庭容错混合共识算法、委托权益证明—拜占庭容错混合共识算法在所述分布式能源交易应用场景下效率维度、容错性维度、运行成本维度的指标数据,步骤S6确定权威证明—拜占庭容错混合共识算法作为所述分布式能源交易应用场景下的共识算法。
本发明与现有技术相比有如下有益效果:1)构建了普适、有效的共识算法定量评估方法,具体化共识算法间各性能指标差异,便于确定与应用场景需求相适应的共识算法;2)可在支持共识算法热插拔的区块链框架下,根据具体应用场景下区块链共识算法实证分析结果,设计采用不同的共识算法。
【附图说明】
图1是一种区块链共识算法评估优化方法步骤图。
图2是一种区块链共识算法评估优化方法实施例两种混合共识算法下的单次请求敲定时间曲线图。
图3是一种区块链共识算法评估优化方法实施例节点离线对PoA-BFT共识算法区块敲定时间平均值的影响曲线图。
图4是一种区块链共识算法评估优化方法实施例节点离线对DPoS-BFT共识算法区块敲定时间平均值的影响曲线图。
图5是一种区块链共识算法评估优化方法实施例两种混合共识算法的数据恢复速度曲线图。
图6是一种区块链共识算法评估优化方法实施例两种混合共识算法的通信资源消耗量曲线图。
图7是一种区块链共识算法评估优化方法实施例两种混合共识算法的存储资源消耗量曲线图。
【具体实施方式】
下面结合实施例并参照附图对本发明作进一步描述。
在本发明中,服务器是在网络上提供、管理网络资源的一个计算机或设备,终端可指各种类型的装置,包括(但不限于)无线电话、蜂窝式电话、膝上型计算机、多媒体无线装置、无线通信个人计算机(PC)卡、个人数字助理(PDA)、外部或内部调制解调器等。客户端设备,即终端可为任何经由无线信道和/或经由有线信道(例如,光纤或同轴电缆)与服务器通信的数据装置。终端可具有多种名称,例如移动台、移动装置、移动单元,移动电话、远程站、远程终端机、远程单元、用户装置、用户设备、手持式装置等。不同终端可并入一个系统中。终端可为移动的或固定的,且可分散遍及一个通信网络。
实施例1
本实施例实现一种区块链共识算法评估优化方法。
附图1是一种区块链共识算法评估优化方法步骤图,如附图1所示,本实施例一种区块链共识算法评估优化方法,包括以下步骤:
S1、构建包括若干普通节点、以及若干共识节点的区块链;
S2、基于步骤S1构建的区块链根据应用场景加载不同的共识算法;
S3、对步骤S2不同的共识算法计算效率维度指标;
S4、对步骤S2不同的共识算法计算容错性维度指标;
S5、对步骤S2不同的共识算法计算运行成本维度指标;
S6、根据步骤S3、S4和S5获得的指标确定该应用场景下区块链的共识算法。
优选地,上述的一种区块链共识算法评估优化方法,所述的效率维度是指共识算法对请求的响应和处理时间;所述的容错性维度是指共识算法对错误情况的容忍程度与产生错误后的自我修复能力;所述的运行成本维度是指维持共识算法有效运行的代价。
优选地,上述的一种区块链共识算法评估优化方法,所述的效率维度指标包括单次请求确认时间、单次请求结果敲定时间;所述的单次请求确认时间TC指从节点发起请求到包含该请求响应结果的区块被生成的时间间隔,其计算公式为:TC=tconfirmed-trequest,式中trequest为请求发起的时间点,tconfirmed为请求确认的时间点;所述的单次请求结果敲定时间TF指从请求被确认到包含该请求响应结果的区块被敲定的时间间隔,其计算公式为:TF=tfinalized-tconfirmed,式中tfinalized为包含请求响应结果的区块敲定的时间点。
优选地,上述的一种区块链共识算法评估优化方法,所述的容错性维度指标包括离线容错性、数据恢复能力;所述的离线容错性PerT指特定共识算法在正确执行生成区块、敲定区块两个阶段的同时,能容纳离线节点的上限,其计算公式为:PerT=max(noffline/ntotal),式中noffline为不中断共识流程的离线节点数量,ntotal为节点总数;所述的数据恢复能力TR指节点存储数据被清除后,重新获取区块链上所有运行数据的能力,由数据恢复所需时间衡量,其计算公式为:TR=trecovery-tstart,式中tstart为重新启动节点的时间点;trecovery为节点重新获取区块链上所有运行数据的时间点。
优选地,上述的一种区块链共识算法评估优化方法,所述的运行成本维度指标包括计算资源消耗量、通信资源消耗量、存储资源消耗量;所述的计算资源消耗量RC指维持区块链节点终端运行并正常响应请求所需的CPU占比,其计算公式为:RC=CRexhibition+CRcontrol,式中CRexhibition为区块链节点终端展示程序的CPU占比,CRcontrol为区块链节点终端控制程序的CPU占比;所述的通信资源消耗量RN指区块链节点终端之间的通信量,其计算公式为:RN=(NRdownload+NRupload)/2,式中NRdownload为区块链节点终端的数据下载量,NRupload为区块链节点终端的数据上传量;所述的存储资源消耗量RS指保存完整区块链数据所需的字节量,其计算公式为:RS=SRtmp-SRlog,式中SRtmp为节点数据文件夹的字节数总量,SRlog为节点数据文件夹中的日志文件字节量。
优选地,上述的一种区块链共识算法评估优化方法,所述步骤S2所述的应用场景为考虑绿证流转的分布式能源交易,所述的不同共识算法包括权威证明—拜占庭容错混合共识算法、委托权益证明—拜占庭容错混合共识算法。
优选地,上述的一种区块链共识算法评估优化方法,所述步骤S1构建联盟区块链,包括参与市场交易的普通节点,以及负责组织、记录市场交易、并共同核实、监督绿证流转过程的共识节点。
优选地,上述的一种区块链共识算法评估优化方法,所述的共识节点为5至10个。
优选地,上述的一种区块链共识算法评估优化方法,所述的分布式能源交易,一次完整的交易周期包含双向拍卖阶段、P2P交易阶段、以及交割阶段三个阶段;所述的绿证流转指普通节点完成能源交割后,绿证自动从交易上家流转至交易下家名下,作为交易下家消纳可再生能源的凭证。
优选地,上述的一种区块链共识算法评估优化方法,综合对比权威证明—拜占庭容错混合共识算法、委托权益证明—拜占庭容错混合共识算法在所述分布式能源交易应用场景下效率维度、容错性维度、运行成本维度的指标数据,步骤S6确定权威证明—拜占庭容错混合共识算法作为所述分布式能源交易应用场景下的共识算法。
实施例2
本实施例实现一种能源交易联盟区块链共识算法评估优化方法。本实施例在实施例1的基础上具体实现。
本实施例针对现有技术存在的不足,设计一种包含效率、容错性、运行成本三个维度的共识算法评估方法;以考虑绿证流转的分布式能源交易为例,设计应用不同共识算法的能源区块链实现方案。目前,能源区块链共识算法与应用场景适应性的定量分析方面还是空白。
本实施例涉及一种多维度的共识算法评估方法。该方法包括:设计一种包含效率、容错性、运行成本三个维度的能源区块链共识算法评估体系,提出了三个维度下各项指标的定量评估方法。
所述的效率维度是指:效率维度主要表示共识算法对请求的响应和处理时间。长时间的请求响应会使得请求结果难以及时返回,从而阻碍流程进展。例如,日内、实时电力市场要求较高的交易频率,对能源区块链共识算法的效率要求较高;而日前市场、中长期市场等无需即时响应,可以适当降低对效率的要求。
进一步地,所述的效率维度指标包括:单次请求确认时间、单次请求结果敲定时间。所述的单次请求确认时间是指:此处,请求确认的含义为请求的响应结果可被所有节点查询到。因此,单次请求确认时间TC指从节点发起请求到包含该请求响应结果的区块被生成的时间间隔,其计算公式为:
TC=tconfirmed-trequest,式中,trequest为请求发起的时间点;tconfirmed为请求确认的时间点。
所述的单次请求结果敲定时间是指:单次请求结果敲定时间TF指从请求被确认到包含该请求响应结果的区块被敲定的时间间隔,其计算公式为:
TF=tfinalized-tconfirmed,式中,tfinalized为包含请求响应结果的区块敲定的时间点。
所述的容错性维度是指:容错性维度主要表示共识算法对错误情况的容忍程度与产生错误后的自我修复能力。采用容错性较低的共识算法将增加运行流程失效的概率。例如,跨国电力交易场景中的各主体之间缺乏信任基础,因此该场景要求较高的容错率,以保证交易流程的正常运行;而电力企业内部的数据管理区块链,是由具备一定信任基础的各部门共同维护,故对容错性要求较低。
进一步地,所述的容错性维度指标包括:离线容错性、数据恢复能力。
所述的离线容错性是指:离线容错性PerT指特定共识算法在正确执行生成区块、敲定区块两个阶段的同时,能容纳离线节点的上限,其计算公式为:
PerT=max(noffline/ntotal),式中,noffline为不中断共识流程的离线节点数量;ntotal为节点总数。
所述的数据恢复能力是指:数据恢复能力TR是指节点存储数据被清除后,重新获取区块链上所有运行数据的能力,由数据恢复所需时间衡量,其计算公式为:
TR=trecovery-tstart,式中,tstart为重新启动节点客户端的时间点;trecovery为节点重新获取区块链上所有运行数据的时间点。
所述的运行成本维度是指:运行成本维度主要表示维持共识算法有效运行的代价。区块链是一种分布式网络,不同共识算法在单个节点下的运行成本差距在整个网络中会被成倍地扩大。分布式能源交易的节点规模庞大,需要选择低运行成本的共识算法,以减小区块链导致的能源消耗、提高网络的扩展上限;而电力供应链上的节点相对固定且规模较小,对运行成本的敏感性相对较低。
进一步地,所述的运行成本维度指标包括:计算资源消耗量、通信资源消耗量、存储资源消耗量。
所述的计算资源消耗量是指:计算资源消耗量RC指维持区块链节点终端运行并正常响应请求所需的CPU占比,其计算公式为:
RC=CRexhibition+CRcontrol,式中,CRexhibition为区块链节点终端展示程序的CPU占比;CRcontrol为区块链节点终端控制程序的CPU占比。
所述的通信资源消耗量是指:通信资源消耗量RN指区块链节点终端之间的通信量,其计算公式为:
RN=(NRdownload+NRupload)/2,式中,NRdownload
区块链节点终端的数据下载量;NRupload为区块链节点终端的数据上传量。
所述的存储资源消耗量是指:存储资源消耗量RS指保存完整区块链数据所需的字节量,其计算公式为:
RS=SRtmp-SRlog,式中,SRtmp为节点数据文件夹的字节数总量;SRlog为节点数据文件夹中的日志文件字节量。
本实施例还涉及一种应用不同共识算法的能源区块链实现方案。以考虑绿证流转的分布式能源交易为例,本实施例涉及一种双向拍卖及点对点(Peer to Peer,P2P)的可再生能源交易机制与以可再生能源交易记录代替绿证核发的技术方案。在区块链框架下,可再生能源发电企业与电力用户运行普通节点客户端,参与市场交易;可再生能源信息管理中心、电力交易中心与国家能源局等监管部门运行共识节点客户端,负责组织、记录市场交易,并共同核实、监督绿证流转过程。
所述的可再生能源交易机制中,一次完整的交易周期包含双向拍卖阶段、P2P交易阶段、交割阶段三个阶段。
所述的双向拍卖阶段,用于可再生能源发电企业与电力用户分别提交双向拍卖阶段的报价与交易量,并预付一定数量的保证金。报价时段结束后,买方报价高于卖方报价的部分自动成交,成交价格为买方报价与卖方报价的平均值。
所述的P2P交易阶段,用于可再生能源发电企业与电力用户查询P2P交易市场的最优报价,根据最优报价选择修改报单或者退出市场。
所述的交割阶段,用于可再生能源发电企业根据交易出清结果发电,电量通过电网配送至电力用户处;智能电表反馈交易双方的发、用电量后,区块链自动结算电力交易的费用。
所述的绿证流转阶段,用于可再生能源发电企业与电力用户完成能源交割后,若可再生能源发电企业仍剩余绿证,则绿证自动流转至电力用户名下,作为电力用户消纳可再生能源的凭证。
进一步地,所述应用的不同共识算法包括:权威证明—拜占庭容错混合共识算法、委托权益证明—拜占庭容错混合共识算法。
所述的权威证明—拜占庭容错混合共识算法是指:在生成区块阶段采用权威证明(Proof of Authority,POA),在敲定区块阶段采用拜占庭容错(Byzantine FaultTolerance,BFT)的共识算法。POA-BFT混合共识算法规定当权者(Authority)负责生成区块。Authority的选举过程为:区块链初始配置文件事先指定不可更改的验证人(Validator)集合,所有Validator按顺序当选当前区块的Authority。当Validator收到普通节点的请求时,自动转交给Authority;Authority将请求排序,生成包含该时间段内所有请求响应结果的区块。POA-BFT混合共识算法规定区块敲定的过程为:所有Validator之间进行两轮点对点通信,验证Authority生成区块的正确性;当超过2/3数量的Validator验证通过并在该区块下签名后,该区块被敲定,不可被推翻。
所述的委托权益证明—拜占庭容错混合共识算法是指:生成区块阶段采用委托权益证明(Delegated Proof of Stake,DPOS),在敲定区块阶段采用拜占庭容错(ByzantineFault Tolerance,BFT)的共识算法。DPOS-BFT混合共识算法规定只有Validator有权力生成区块。每一时段Validator的选举过程为:(1)普通节点账户为股权(Stake)账户抵押一定数量的保证金;(2)Stake账户按保证金数量当选指定规模的Validator。选举完成后,每个Validator将被分配一个插槽(slot),按规则对应不同的随机时间段;所有Validator均接收、转发普通节点的请求,并按生成区块时间,由对应slot的Validator生成区块。DPOS-BFT混合共识算法的区块敲定方式与POA-BFT混合共识算法的类似,不再赘述。
本实施例:1)构建普适、有效的共识算法定量评估方法,具体化共识算法间各性能指标差异,以便确定与场景需求相适应的共识算法;2)在支持共识算法热插拔的区块链框架下设计采用不同共识算法的应用案例,以便开展能源区块链共识算法实证分析。
实施例3
本实施例实现一种能源交易联盟区块链共识算法评估优化方法。本实施例在实施例2的基础上具体实现。
本实施例一种能源交易联盟区块链共识算法评估优化方法涉及的一种能源互联网场景下的应用优化技术,包括一种多维度的能源区块链共识算法评估方法与应用不同共识算法的能源区块链实现方案。其中,能源区块链共识算法评估方法包括效率、容错性、运行成本三个维度。进一步地,效率维度指标包括单次请求确认时间、单次请求结果敲定时间;容错性维度指标包括离线容错性、数据恢复能力;运行成本维度指标包括计算资源消耗量、通信资源消耗量、存储资源消耗量。最终,本实施例选取Substrate框架为测评工具,仿真对比了权威证明—拜占庭容错(Proof of Authority-Byzantine Fault Tolerance,PoA-BFT)、委托权益证明—拜占庭容错(Delegated Proof of Stake-Byzantine FaultTolerance,DPoS-BFT)两种共识算法在不同维度的优劣势,并结合分布式能源交易场景的具体应用需求,总结了两种共识算法在该场景下的适用性。
所述的Substrate是指:Substrate是具有智能合约开发功能的开源区块链开发平台。
本实施例中,电力系统场景设置在上海某一区域。风电机组、光伏电池板、储能装置、电动汽车、智能用户、厂区六个主体参与考虑绿证流转的分布式能源交易。假设所有主体参与双向拍卖阶段后,未修改报单参与P2P交易。
报单情况结果分别如下表所示:
成交与绿证流转结果如下表所示:
本实施例中,采用PoA-BFT混合共识算法与DPoS-BFT混合共识算法的应用案例得出了正确且相同的交易结果。该仿真验证了采用上述两种共识算法的应用案例的有效性。
本实施例在5-10个共识节点的区块链规模下,设定PoA-BFT混合共识算法与DPoS-BFT混合共识算法的期望区块生成时间为6s,得出两种混合共识算法不同指标的测试结果。
根据本实施例PoA-BFT混合共识算法与DPoS-BFT混合共识算法在5、7、10个共识节点规模下的单次请求确认时间测试结果,得到有关单次请求确认时间的结论为:(1)在5-10个共识节点的规模下,无论请求发起距上一区块生成的时延长短,PoA-BFT混合共识算法与DPoS-BFT混合共识算法基本均能保证请求在该区块生成阶段内被响应;(2)随着节点规模扩大,PoA-BFT混合共识算法的区块生成时间小幅度增加,DPoS-BFT混合共识算法的区块生成时间则相对固定。
图2是一种区块链共识算法评估优化方法实施例两种混合共识算法下的单次请求敲定时间曲线图。如附图2所示,本实施例PoA-BFT混合共识算法与DPoS-BFT混合共识算法在5-10个共识节点规模下的单次请求结果敲定时间测试结果。由附图2得到有关单次请求结果敲定时间的结论为:(1)在5-10个共识节点的规模下,DPoS-BFT混合共识算法的单次请求结果敲定时间均高于PoA-BFT混合共识算法;(2)随着共识节点规模扩大,两种混合共识算法的单次请求结果敲定时间均呈现上升趋势;(3)PoA-BFT共识算法单次请求结果敲定时间受节点规模扩大的影响程度显著高于DPoS-BFT共识算法;在10个共识的节点规模下,PoA-BFT混合共识算法的单次请求结果敲定时间已接近DPoS-BFT混合共识算法。
离线容错性的测试结果为:仿真测试显示,在5至10个共识节点的规模下,PoA-BFT混合共识算法和DPoS-BFT混合共识算法均只需要至少2个共识节点在线,就可以正常生成区块;在区块敲定阶段,PoA-BFT混合共识算法和DPoS-BFT共识算法均允许不超过1/3的共识节点数量离线。
进一步地,本实施例节点离线对共识算法的影响包括:在区块生成阶段,按PoA-BFT与DPoS-BFT的选举规则,当离线节点当选主节点时无法生成区块,区块生成时间点将顺延至下一周期。这使得区块生成时间不再固定为预先设置的6s。在一个或二个节点离线的情况下,区块生成时间可能出现6s、12s、18s三种情况,正常情况占比高,代表共识算法在区块生成阶段的容错能力高,延时情况占比高,代表共识算法在区块生成阶段的容错能力低。根据本实施例在5、8、10个共识节点规模下,分别进行50次实验统计,6s、12s、18s三种区块生成时间对应的区块数量占比测试结果,得到有关节点离线对共识算法区块生成阶段影响的结论为:(1)在较小的共识节点规模下,PoA-BFT混合共识算法在区块生成阶段的容错能力高于DPoS-BFT混合共识算法;但随着共识节点规模扩大,DPoS-BFT混合共识算法在区块生成阶段的容错能力大幅提高,在10个共识节点规模下,DPoS-BFT混合共识算法在区块生成阶段的容错能力已接近PoA-BFT混合共识算法;(2)在较低占比的离线节点扰动下,DPoS-BFT混合共识算法在区块生成阶段的容错能力高于PoA-BFT混合共识算法;但在较高占比的离线节点扰动下,DPoS-BFT混合共识算法延时产生的随机性较大,容错能力略低于PoA-BFT混合共识算法。
图3是一种区块链共识算法评估优化方法实施例节点离线对PoA-BFT共识算法区块敲定时间平均值的影响曲线图,图4是一种区块链共识算法评估优化方法实施例节点离线对DPoS-BFT共识算法区块敲定时间平均值的影响曲线图。进一步地,节点离线影响共识算法区块敲定时间平均值。如附图3、附图4所示,本实施例在区块敲定阶段,在5至10个共识节点规模存在一个或二个离线节点的情况下,两种混合共识算法的区块敲定时间平均值测试结果。由附图3、附图4得到有关节点离线对共识算法区块敲定时间平均值影响的结论为:(1)节点离线显著增加了PoA-BFT混合共识算法的区块敲定时间平均值,但随着共识节点总体规模的扩大,离线节点的影响逐渐降低;(2)节点离线对DPoS-BFT共识算法区块敲定时间平均值的影响基本是固定的,该影响不会随着共识节点总体规模的扩大而减弱;该固定影响在高占比的离线扰动时低于PoA-BFT混合共识算法,在低占比的离线扰动时高于PoA-BFT混合共识算法。
进一步地,节点离线导致区块敲定时间的上下限差值扩大,即降低了两种混合共识算法区块敲定阶段的稳定性。50次实验中,二个节点离线情况下区块敲定时间的范围如下表所示:
上表中,区块敲定时间最大值与最小值的差值越小,代表该共识算法在此情况下越稳定。由上表得到有关节点离线对共识算法区块敲定时间稳定性影响的结论为:(1)节点离线对PoA-BFT混合共识算法在区块敲定阶段的稳定性影响低于DPoS-BFT混合共识算法;(2)随着共识节点总体规模的增大,节点离线对DPoS-BFT混合共识算法在区块敲定阶段的稳定性影响愈发显著,而对PoA-BFT混合共识算法在区块敲定阶段的稳定性影响则相对固定。
图5是一种区块链共识算法评估优化方法实施例两种混合共识算法的数据恢复速度曲线图。如附图5所示,本实施例数据恢复能力的测试结果为:PoA-BFT混合共识算法与DPoS-BFT混合共识算法在区块高度为500,共识节点规模为5至10的情况下,单节点本地数据清空后的恢复时间。由附图5得出有关数据恢复能力的结论为:(1)PoA-BFT混合共识算法与DPoS-BFT混合共识算法的单节点数据恢复时间基本不受节点规模影响;(2)在5-10个共识节点的规模下,DPoS-BFT混合共识算法的单节点数据恢复时间均高于PoA-BFT混合共识算法。
图6是一种区块链共识算法评估优化方法实施例两种混合共识算法的通信资源消耗量曲线图,图7是一种区块链共识算法评估优化方法实施例两种混合共识算法的存储资源消耗量曲线图。如附图6、附图7所示,本实施例计算资源、通信资源、存储资源消耗量的测试结果为:在区块高度为500,共识节点规模为5至10的情况下,PoA-BFT混合共识算法与DPoS-BFT混合共识算法的计算资源、通信资源、存储资源消耗量。由附图6、附图7得出有关资源消耗量的结论为:(1)随着共识节点规模扩大,PoA-BFT混合共识算法与DPoS-BFT混合共识算法的资源消耗量均呈现上升趋势;(2)在5至10个共识节点的规模下,DPoS-BFT混合共识算法的计算资源、通信资源、存储资源消耗量均高于PoA-BFT混合共识算法;(3)在10个共识节点的规模下,计算资源、通信资源消耗量远远不及该测试设置电脑配置容量的20%,仍具有很大的裕度;但存储资源即使在共识节点规模不变时,也会随区块高度增加而上升,生成高度为500的区块链需大约1小时时间,已消耗约100MB的存储资源;按线性增长趋势,1TB硬盘能维持约1年的存储资源消耗;随着平台运行时间增加,可以预见,在计算、网络、存储三类资源中,存储资源或将成为最大的制约因素。
对于采用PoA-BFT混合共识算法与DPoS-BFT混合共识算法两种不同技术架构的分布式能源交易平台,仿真结果总结如下表:
说明:表中“+”代表相对占优;“-”代表相对占劣,“=”代表没有明显区分,“\”代表不受影响
由上表得出有关PoA-BFT混合共识算法与DPoS-BFT混合共识算法两种不同技术架构的分布式能源交易平台的结论为:
1)在较小的共识节点规模下,PoA-BFT混合共识算法在效率、容错性、运行成本等多个维度显著优于DPoS-BFT混合共识算法;在较大的共识节点规模下,PoA-BFT混合共识算法仅在容错性与运行成本维度仍具有显著优势。
2)PoA-BFT混合共识算法在效率与容错性维度受共识节点规模的影响显著高于DPoS-BFT混合共识算法;在10个共识节点规模下,PoA-BFT混合共识算法效率与容错性维度的各项指标已与DPoS-BFT混合共识算法十分接近;可以预见,在更大的节点规模下,DPoS-BFT混合共识算法在效率与容错性维度将优于PoA-BFT混合共识算法。
3)除运行成本维度外,在受到低占比离线节点扰动时,DPoS-BFT混合共识算法的稳定性均高于PoA-BFT混合共识算法;而受到高占比离线节点扰动时,DPoS-BFT混合共识算法产生延时的随机性不可控制,稳定性反而低于延时周期性产生的PoA-BFT混合共识算法。
本实施例仿真的分布式能源交易方案由交易中心、国家能源局、可再生能源信息管理部门等形成共识节点群,而用户仅运行普通节点参与交易。该平台部署架构属于较小的共识节点规模,短期内没有扩充共识节点的需求,且较小的共识节点规模下容易发生大占比的离线扰动。综合对比两种混合共识算法在该情况下效率、容错性、运行成本维度的指标数据,选择PoA-BFT混合共识算法作为该方案的共识算法更优。
测试结果表明,本实施例提出的共识算法评估方法,能够区别不同共识算法在多个维度上的优势和劣势,可推广至其他具体需求不同的能源区块链应用方案。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于任一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员,在不脱离本发明原理的前提下,还可以做出若干改进和补充,这些改进和补充也应视为本发明的保护范围。

Claims (3)

1.一种区块链共识算法评估优化方法,其特征在于,包括以下步骤:
S1、构建包括若干普通节点、以及若干共识节点的区块链;
S2、基于步骤S1构建的区块链根据应用场景加载不同的共识算法;
S3、对步骤S2不同的共识算法计算效率维度指标;
S4、对步骤S2不同的共识算法计算容错性维度指标;
S5、对步骤S2不同的共识算法计算运行成本维度指标;
S6、根据步骤S3、S4和S5获得的指标确定该应用场景下区块链的共识算法;
所述的效率维度是指共识算法对请求的响应和处理时间;所述的容错性维度是指共识算法对错误情况的容忍程度与产生错误后的自我修复能力;所述的运行成本维度是指维持共识算法有效运行的代价;
所述的效率维度指标包括单次请求确认时间和单次请求结果敲定时间;所述的单次请求确认时间TC指从节点发起请求到包含该请求响应结果的区块被生成的时间间隔,其计算公式为:TC=tconfirmed-trequest,式中trequest为请求发起的时间点,tconfirmed为请求确认的时间点;所述的单次请求结果敲定时间TF指从请求被确认到包含该请求响应结果的区块被敲定的时间间隔,其计算公式为:TF=tfinalized-tconfirmed,式中tfinalized为包含请求响应结果的区块敲定的时间点;
所述的容错性维度指标包括离线容错性和数据恢复能力;所述的离线容错性PerT指特定共识算法在正确执行生成区块、敲定区块两个阶段的同时,能容纳离线节点的上限,其计算公式为:PerT=max(noffline/ntotal),式中noffline为不中断共识流程的离线节点数量,ntotal为节点总数;所述的数据恢复能力TR指节点存储数据被清除后,重新获取区块链上所有运行数据的能力,由数据恢复所需时间衡量,其计算公式为:TR=trecovery-tstart,式中tstart为重新启动节点的时间点;trecovery为节点重新获取区块链上所有运行数据的时间点;
所述的运行成本维度指标包括计算资源消耗量、通信资源消耗量和存储资源消耗量;所述的计算资源消耗量RC指维持区块链节点终端运行并正常响应请求所需的CPU占比,其计算公式为:RC=CRexhibition+CRcontrol,式中CRexhibition为区块链节点终端展示程序的CPU占比,CRcontrol为区块链节点终端控制程序的CPU占比;所述的通信资源消耗量RN指区块链节点终端之间的通信量,其计算公式为:RN=(NRdownload+NRupload)/2,式中NRdownload为区块链节点终端的数据下载量,NRupload为区块链节点终端的数据上传量;所述的存储资源消耗量RS指保存完整区块链数据所需的字节量,其计算公式为:RS=SRtmp-SRlog,式中SRtmp为节点数据文件夹的字节数总量,SRlog为节点数据文件夹中的日志文件字节量;
所述步骤S2所述的应用场景为考虑绿证流转的分布式能源交易,所述的不同的共识算法包括权威证明—拜占庭容错混合共识算法和委托权益证明—拜占庭容错混合共识算法;
所述步骤S1构建联盟区块链,包括参与市场交易的普通节点,以及负责组织、记录市场交易并共同核实、监督绿证流转过程的共识节点;
所述的分布式能源交易的一次完整的交易周期包含双向拍卖阶段、P2P交易阶段以及交割阶段三个阶段;所述的绿证流转指普通节点完成能源交割后,绿证自动从交易上家流转至交易下家名下,作为交易下家消纳可再生能源的凭证。
2.根据权利要求1所述的一种区块链共识算法评估优化方法,其特征在于:所述的共识节点为5至10个。
3.根据权利要求2所述的一种区块链共识算法评估优化方法,其特征在于:综合对比权威证明—拜占庭容错混合共识算法和委托权益证明—拜占庭容错混合共识算法在所述分布式能源交易应用场景下效率维度、容错性维度和运行成本维度的指标数据,步骤S6确定权威证明—拜占庭容错混合共识算法作为所述分布式能源交易应用场景下的共识算法。
CN202110202743.7A 2021-02-23 2021-02-23 一种区块链共识算法评估优化方法 Active CN112907082B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110202743.7A CN112907082B (zh) 2021-02-23 2021-02-23 一种区块链共识算法评估优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110202743.7A CN112907082B (zh) 2021-02-23 2021-02-23 一种区块链共识算法评估优化方法

Publications (2)

Publication Number Publication Date
CN112907082A CN112907082A (zh) 2021-06-04
CN112907082B true CN112907082B (zh) 2024-04-09

Family

ID=76124573

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110202743.7A Active CN112907082B (zh) 2021-02-23 2021-02-23 一种区块链共识算法评估优化方法

Country Status (1)

Country Link
CN (1) CN112907082B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114143021B (zh) * 2021-09-27 2022-12-06 电子科技大学 一种基于区块链的新闻信息信用积分系统
CN114296831A (zh) * 2021-12-30 2022-04-08 迅鳐成都科技有限公司 区块链共识算法动态加载方法、装置、系统及存储介质
CN114463009B (zh) * 2022-04-13 2022-06-28 成都理工大学 一种用于提高大规模能源节点交易安全性的方法
CN115994363A (zh) * 2023-03-24 2023-04-21 北京邮电大学 基于多维度安全检测的区块链安全性评估方法及装置
CN117336296B (zh) * 2023-12-01 2024-03-26 太极计算机股份有限公司 一种集群共识的智能选择方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110365695A (zh) * 2019-07-24 2019-10-22 中国工商银行股份有限公司 可切换共识算法的区块链数据交互方法及装置
CN110430087A (zh) * 2019-09-16 2019-11-08 上海保险交易所股份有限公司 区块链热升级的架构设计与实现
CN111882385A (zh) * 2020-07-10 2020-11-03 浙江中新电力工程建设有限公司自动化分公司 一种基于弱中心化联盟区块链的电力市场交易及评估方法
CN112068900A (zh) * 2020-09-09 2020-12-11 上海万向区块链股份公司 Bft共识算法热插拔切换系统
CN112104685A (zh) * 2020-03-18 2020-12-18 上海魔橙网络科技有限公司 一种基于区块链的联盟链底层系统
CN112330015A (zh) * 2020-11-03 2021-02-05 上海腾天节能技术有限公司 一种基于区块链的共享储能联合市场交易系统及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200344111A1 (en) * 2020-05-14 2020-10-29 Rani Malhotra System and method for obtaining consensus in a distributed ledger network

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110365695A (zh) * 2019-07-24 2019-10-22 中国工商银行股份有限公司 可切换共识算法的区块链数据交互方法及装置
CN110430087A (zh) * 2019-09-16 2019-11-08 上海保险交易所股份有限公司 区块链热升级的架构设计与实现
CN112104685A (zh) * 2020-03-18 2020-12-18 上海魔橙网络科技有限公司 一种基于区块链的联盟链底层系统
CN111882385A (zh) * 2020-07-10 2020-11-03 浙江中新电力工程建设有限公司自动化分公司 一种基于弱中心化联盟区块链的电力市场交易及评估方法
CN112068900A (zh) * 2020-09-09 2020-12-11 上海万向区块链股份公司 Bft共识算法热插拔切换系统
CN112330015A (zh) * 2020-11-03 2021-02-05 上海腾天节能技术有限公司 一种基于区块链的共享储能联合市场交易系统及方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Hyperledger fabric:a distributed operating system for permissioned blockchains;Androulaki E et al.;《Proceedings of the Thirteenth EuroSys Conference》;全文 *
区块链共识算法对比研究;陆歌皓 等;《计算机科学》;第47卷(第S1期);正文第332-339页 *
基于区块链的绿色证书交易平台:概念与实践;蔡元纪 等;《电力系统自行化》;第44卷(第15期);正文第1-9页 *

Also Published As

Publication number Publication date
CN112907082A (zh) 2021-06-04

Similar Documents

Publication Publication Date Title
CN112907082B (zh) 一种区块链共识算法评估优化方法
Zia et al. Microgrid transactive energy: Review, architectures, distributed ledger technologies, and market analysis
US11983782B2 (en) Method, device, storage medium and program product for carbon trading
He et al. Joint operation mechanism of distributed photovoltaic power generation market and carbon market based on cross-chain trading technology
Baran et al. A transaction assessment method for allocation of transmission services
CN113438084B (zh) 一种基于r-pbft共识算法和时间戳的绿电溯源方法及系统
CN111178682A (zh) 一种基于区块链技术的需求响应管理平台的控制方法
Tang et al. Improved PBFT algorithm for high-frequency trading scenarios of alliance blockchain
Wang et al. Adaptive bidding strategy for real-time energy management in multi-energy market enhanced by blockchain
Saxena et al. Blockchain based transactive energy systems for voltage regulation in active distribution networks
CN113379485B (zh) 基于哈希算法与二次报价的需求响应竞价交易方法及系统
Dinesha et al. Conceptualization of blockchain enabled interconnected smart microgrids
CN115115451A (zh) 一种面向大宗商品交易监管的区块链服务管理系统
CN114519640A (zh) 基于联盟链的跨国电力交易方法
Song et al. Reliable reputation review and secure energy transaction of microgrid community based on hybrid blockchain
Csercsik et al. Efficiency and stability in electrical power transmission networks: A partition function form approach
Ullah et al. Smart grid block-chain (BC) conceptual framework: Bi-directional models for renewable energy district and utility
US20220405844A1 (en) Method and system for peer-to-peer electricity trading based on double-layer blockchain
Amirifard et al. Employment of Blockchain Technology in the Field of Renewable Energy
CN114529376A (zh) 能源兑换数据处理方法、装置、计算机设备和存储介质
Yu et al. Blockchain in Smart Grids: A Review of Recent Developments
Feng et al. Transnational power‐transaction model considering transaction costs under the support of consortium blockchain
CN116416027B (zh) 微电网能源交易方法和系统
Yang et al. Electricity Trading Model Based on Chaincode and Multi-stage Hybrid Auction
Mitra et al. Centra: City-scale energy transaction application for the smart grid

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