当前位置: 首页 » 资讯 » 电力 » 售电 » 正文

深度文章|适用于多虚拟电厂交易的改进拜占庭容错算法共识机制

来源:《中国电力》2024年第1期引文:张书涵,艾芊,李晓露,等. 286302/07

来源:《中国电力》2024年第1期引文:张书涵, 艾芊, 李晓露, 等. 适用于多虚拟电厂交易的改进拜占庭容错算法共识机制[J]. 中国电力, 2024, 57(1): 71-81, 157.编者按 目前的电力系统趋于信息物理高度融合、多能

标签: 虚拟电厂 电力交易 VPP

来源:《中国电力》2024年第1期

引文:张书涵, 艾芊, 李晓露, 等. 适用于多虚拟电厂交易的改进拜占庭容错算法共识机制[J]. 中国电力, 2024, 57(1): 71-81, 157.

编者按

目前的电力系统趋于信息物理高度融合、多能源互联协调,出现了参与者海量、单笔小额、位置分散等特点的点对点交易,使电力交易的组织方法出现了重大变化。随着售电侧市场对社会资本开放,市场主体更加多样,比较典型的有负荷聚合商、微电网、异构能源等,在电力供需两侧灵活性提升的同时,增加了传统电力交易中运算中心的数据处理压力,对多层级的补贴政策落实、消纳责任考核等多方面带来了新的挑战。需要进一步挖掘分布式资源间的多能互补支撑潜力,通过经济激励,鼓励分布式资源积极参与系统调控。《中国电力》2024年第1期刊发了张书涵等人撰写的《适用于多虚拟电厂交易的改进拜占庭容错算法共识机制》一文。文章提出基于区块链的多虚拟电厂交易架构,制定多虚拟电厂的交易流程,通过业务主体功能差异对节点进行分类,提出差异化信用评价指标,优化拜占庭容错算法(practical byzantine fault tolerance,PBFT)流程,算例分析表明该机制能有效契合多VPP交互场景。

摘要

分布式能源投资主体的多样性,使各资源在互动过程中的信任构建更加困难,因此需要探究多虚拟电厂交互模式并构建相应信任体系。基于主侧区块链技术构建了多虚拟电厂交易模型总体架构,明确了多虚拟电厂交易流程。通过主侧锚定技术构建跨链通道,实现多虚拟电厂链上协同运行模式。针对节点维护区块链网络环境积极性不高导致的信任环境缺失和区块链性能下降的问题,基于节点功能不同提出了一种差异化信用评价指标来规范节点行为,同时利用该指标对拜占庭容错算法(practical byzantine fault tolerance,PBFT)进行改进。实验结果表明使用差异化信用评价指标改进的共识算法在所提多虚拟电厂架构下能构建信任环境并提升共识效率。

01

基于区块链的多虚拟电厂交易模型设计

1.1 多虚拟电厂交易架构

直接交易在实践中的组织方式包括双边协商、集中竞价、挂牌交易等。本节提出了基于挂牌交易的多VPP能源交易系统(multi-virtual power plant listed energy trading system,MLTS)。MLTS采用区块链架构,在多VPP业务中应用主侧链技术,可避免区块链产生数据冗余及硬分叉问题,令各侧链可根据实际情况灵活调整运行策略使各VPP独立灵活运行,同时降低主要节点的运行压力并提高系统的运行效率。如图1所示,各VPP分别维护一条侧链,其内成员有负责管控内部分布式资源并与其他VPP交互的虚拟电厂管控中心(VPP management center,VMC)、储能、光伏、工业用户和居民负荷等,侧链主要维护VPP内部成员的交易。主链由电网交易中心、各VMC和MLTS节点共同运行,主链主要维护不同VPP成员间的交易。各主体作为交易的直接参与者时,可通过VMC在MLTS内发布交易需求;系统内部分节点通过选举获得验证交易的权力并获得由MLTS系统发放的信用值补贴,实现单个VPP内的自组织、自维护、自监督以及多个VPP间分布式资源有序交易。为保证能源传输以及MLTS系统运行安全,需要电网在保证电能流转的基础上兼顾节点准入及身份审核。

5.jpg

图1基于多链结构的多VPP交易架构

Fig.1Multi-VPP transaction architecture based on multi-chain structure

1.2 多虚拟电厂交易流程MLTS交易系统中,一轮次的交易设定有自由报价阶段、交易确认阶段、电力交割阶段和过渡阶段。其中上一轮次的过渡阶段与下一轮的自由报价阶段具有时间交叉特性。1)自由报价。MLTS支持卖方订单与买方订单2种。其中,卖方订单指卖方形成初始电价及当前时段可交易电量,买家根据自身需求与一个或多个卖方达成初步交易意向,意向订单不会锁死,但卖方可交易电量会根据当前达成意向订单而降低,同时用户需要向MLTS支付相应费用,若在本阶段撤销交易,卖方可交易电量及用户支付的相关费用将被返还。这类交易买方无法控制电价,但能保证本时段交易达成。

买方订单指买方向MLTS提交包含价格期望、电量等信息的订单,等待卖家响应自身需求,这类交易买方无法控制交易是否能在本时段完成,但能控制电价在自己的期望范围内。

由于单个VPP内交易双方及跨VPP交易双方电气距离远近不可预知,设定由买方承担过网费。用户在MLTS系统内与其他参与者交易时,系统会根据本笔订单双方信息自动生成可能产生的过网费用供客户参考。

2)交易确认。本阶段将锁定上一阶段产生的意向订单,买卖双方均不可以随意撤销交易,否则将受到相应惩罚。主节点将把当前系统内订单打包出块,并交由共识节点验证。

3)电力交割。该阶段中,共识节点验证无误后,对该区块进行数字签名,智能合约将自动把该区块上链,并按照各订单信息完成资金及能源交割。同时卖家将形成新一轮报价并改变自身可交易电量。

由于参与方的发用电量可能会与其自身预期产生偏差,引入电网对此部分偏差电量进行消纳。分布式发电方对自身超发电量无消纳能力,超发部分按照基准上网电价卖给电网;对自身少发电量无补偿能力,少发部分按照电网售电价向电网购买再供给买家,由此产生的亏损、过网费等将由卖方承担。电力用户用电量少于交易协议又无余电消纳能力,其将按照基准上网电价卖给电网,此时亏损部分为用户购电价减去电网收购价;用电量超出交易协议又无备用电能,超出部分由用户按当前电网对外售电价向电网购买,以上超支、亏损部分由用户自身承担。

4)过渡阶段。该阶段中,各参与方将根据自身用电情况确定下一时段的买卖身份,卖家将形成新一轮报价并改变自身可交易电量,买方将形成自身购电期望。

1.3 主侧成链机制及多链协同运行模式

1.3.1 主侧链成链机制

在多虚拟电厂交易中,主要存在2种情况:一是发生在VPP内部分布式资源间的交易;二是交易主体分别来自不同的VPP。2种场景下的成链流程如图2所示。

6.jpg

图2MLTS系统主侧链成链流程

Fig.2MLTS main chian and side chain formation process

1)交易方属于同一虚拟电厂时,交易双方通过VMC在系统中发布购售电信息(此处设定交易方通过VMC向系统提交申请是为了第2个场景中辨识交易双方是否来自同一VPP);在系统中达成交易意向;交易确认阶段双方确认交易,系统将交易细则返回至VMC(单个VMC可能由多个交易方通过且并不一定都成功交易,因此需要系统返回成功交易的细则,降低VMC处理压力);VMC将交易信息打包出块,交给共识节点验证;共识通过后智能合约将区块链接至该VPP本地区块链。2)交易双方分属不同虚拟电厂时,交易双方通过各自VMC向系统发布购售电信息;在系统中达成交易意向;交易确认阶段双方确认交易,系统将该笔交易打包出块,返回至所有VMC;各VMC将对区块进行验证以达成共识;共识通过后智能合约将区块链接至主链。交易双方若想查询本笔交易,需要用到跨链技术,买(卖)方通过交易凭证应先调用至侧链,通过侧链与主链的锚定通道查询到位于主链上的信息,这样是为了防止大量分散资源向系统提交查询申请,提前预留好每笔跨链交易的数据锚定关系,更加高效,也降低了系统压力。

1.3.2 多链协同运行模式

为了保留分布式资源交易自由灵活特点,同时降低主要节点运算压力,本节所提主从多链模型主要基于数据结构不同的两种区块。侧链记录虚拟电厂内部分布式资源间交易信息,当不同虚拟电厂间产生交易时,主链对此类交易进行上链存证,同时侧链协同区块与主链区块锚定,既保证链内交易和跨链交易的数据隔离,又缓解关键节点的数据存储压力。

表1给出了主链区块与协同区块的数据结构,由于侧链普通区块的工作原理与主链区块相同,不再单独列出。

表1区块数据结构Table 1Block data structure

7.png

来源:《中国电力》2024年第1期

引文:张书涵, 艾芊, 李晓露, 等. 适用于多虚拟电厂交易的改进拜占庭容错算法共识机制[J]. 中国电力, 2024, 57(1): 71-81, 157.

编者按

目前的电力系统趋于信息物理高度融合、多能源互联协调,出现了参与者海量、单笔小额、位置分散等特点的点对点交易,使电力交易的组织方法出现了重大变化。随着售电侧市场对社会资本开放,市场主体更加多样,比较典型的有负荷聚合商、微电网、异构能源等,在电力供需两侧灵活性提升的同时,增加了传统电力交易中运算中心的数据处理压力,对多层级的补贴政策落实、消纳责任考核等多方面带来了新的挑战。需要进一步挖掘分布式资源间的多能互补支撑潜力,通过经济激励,鼓励分布式资源积极参与系统调控。《中国电力》2024年第1期刊发了张书涵等人撰写的《适用于多虚拟电厂交易的改进拜占庭容错算法共识机制》一文。文章提出基于区块链的多虚拟电厂交易架构,制定多虚拟电厂的交易流程,通过业务主体功能差异对节点进行分类,提出差异化信用评价指标,优化拜占庭容错算法(practical byzantine fault tolerance,PBFT)流程,算例分析表明该机制能有效契合多VPP交互场景。

摘要

分布式能源投资主体的多样性,使各资源在互动过程中的信任构建更加困难,因此需要探究多虚拟电厂交互模式并构建相应信任体系。基于主侧区块链技术构建了多虚拟电厂交易模型总体架构,明确了多虚拟电厂交易流程。通过主侧锚定技术构建跨链通道,实现多虚拟电厂链上协同运行模式。针对节点维护区块链网络环境积极性不高导致的信任环境缺失和区块链性能下降的问题,基于节点功能不同提出了一种差异化信用评价指标来规范节点行为,同时利用该指标对拜占庭容错算法(practical byzantine fault tolerance,PBFT)进行改进。实验结果表明使用差异化信用评价指标改进的共识算法在所提多虚拟电厂架构下能构建信任环境并提升共识效率。

01

基于区块链的多虚拟电厂交易模型设计

1.1 多虚拟电厂交易架构

直接交易在实践中的组织方式包括双边协商、集中竞价、挂牌交易等。本节提出了基于挂牌交易的多VPP能源交易系统(multi-virtual power plant listed energy trading system,MLTS)。MLTS采用区块链架构,在多VPP业务中应用主侧链技术,可避免区块链产生数据冗余及硬分叉问题,令各侧链可根据实际情况灵活调整运行策略使各VPP独立灵活运行,同时降低主要节点的运行压力并提高系统的运行效率。如图1所示,各VPP分别维护一条侧链,其内成员有负责管控内部分布式资源并与其他VPP交互的虚拟电厂管控中心(VPP management center,VMC)、储能、光伏、工业用户和居民负荷等,侧链主要维护VPP内部成员的交易。主链由电网交易中心、各VMC和MLTS节点共同运行,主链主要维护不同VPP成员间的交易。各主体作为交易的直接参与者时,可通过VMC在MLTS内发布交易需求;系统内部分节点通过选举获得验证交易的权力并获得由MLTS系统发放的信用值补贴,实现单个VPP内的自组织、自维护、自监督以及多个VPP间分布式资源有序交易。为保证能源传输以及MLTS系统运行安全,需要电网在保证电能流转的基础上兼顾节点准入及身份审核。

5.jpg

图1基于多链结构的多VPP交易架构

Fig.1Multi-VPP transaction architecture based on multi-chain structure

1.2 多虚拟电厂交易流程MLTS交易系统中,一轮次的交易设定有自由报价阶段、交易确认阶段、电力交割阶段和过渡阶段。其中上一轮次的过渡阶段与下一轮的自由报价阶段具有时间交叉特性。1)自由报价。MLTS支持卖方订单与买方订单2种。其中,卖方订单指卖方形成初始电价及当前时段可交易电量,买家根据自身需求与一个或多个卖方达成初步交易意向,意向订单不会锁死,但卖方可交易电量会根据当前达成意向订单而降低,同时用户需要向MLTS支付相应费用,若在本阶段撤销交易,卖方可交易电量及用户支付的相关费用将被返还。这类交易买方无法控制电价,但能保证本时段交易达成。

买方订单指买方向MLTS提交包含价格期望、电量等信息的订单,等待卖家响应自身需求,这类交易买方无法控制交易是否能在本时段完成,但能控制电价在自己的期望范围内。

由于单个VPP内交易双方及跨VPP交易双方电气距离远近不可预知,设定由买方承担过网费。用户在MLTS系统内与其他参与者交易时,系统会根据本笔订单双方信息自动生成可能产生的过网费用供客户参考。

2)交易确认。本阶段将锁定上一阶段产生的意向订单,买卖双方均不可以随意撤销交易,否则将受到相应惩罚。主节点将把当前系统内订单打包出块,并交由共识节点验证。

3)电力交割。该阶段中,共识节点验证无误后,对该区块进行数字签名,智能合约将自动把该区块上链,并按照各订单信息完成资金及能源交割。同时卖家将形成新一轮报价并改变自身可交易电量。

由于参与方的发用电量可能会与其自身预期产生偏差,引入电网对此部分偏差电量进行消纳。分布式发电方对自身超发电量无消纳能力,超发部分按照基准上网电价卖给电网;对自身少发电量无补偿能力,少发部分按照电网售电价向电网购买再供给买家,由此产生的亏损、过网费等将由卖方承担。电力用户用电量少于交易协议又无余电消纳能力,其将按照基准上网电价卖给电网,此时亏损部分为用户购电价减去电网收购价;用电量超出交易协议又无备用电能,超出部分由用户按当前电网对外售电价向电网购买,以上超支、亏损部分由用户自身承担。

4)过渡阶段。该阶段中,各参与方将根据自身用电情况确定下一时段的买卖身份,卖家将形成新一轮报价并改变自身可交易电量,买方将形成自身购电期望。

1.3 主侧成链机制及多链协同运行模式

1.3.1 主侧链成链机制

在多虚拟电厂交易中,主要存在2种情况:一是发生在VPP内部分布式资源间的交易;二是交易主体分别来自不同的VPP。2种场景下的成链流程如图2所示。

6.jpg

图2MLTS系统主侧链成链流程

Fig.2MLTS main chian and side chain formation process

1)交易方属于同一虚拟电厂时,交易双方通过VMC在系统中发布购售电信息(此处设定交易方通过VMC向系统提交申请是为了第2个场景中辨识交易双方是否来自同一VPP);在系统中达成交易意向;交易确认阶段双方确认交易,系统将交易细则返回至VMC(单个VMC可能由多个交易方通过且并不一定都成功交易,因此需要系统返回成功交易的细则,降低VMC处理压力);VMC将交易信息打包出块,交给共识节点验证;共识通过后智能合约将区块链接至该VPP本地区块链。2)交易双方分属不同虚拟电厂时,交易双方通过各自VMC向系统发布购售电信息;在系统中达成交易意向;交易确认阶段双方确认交易,系统将该笔交易打包出块,返回至所有VMC;各VMC将对区块进行验证以达成共识;共识通过后智能合约将区块链接至主链。交易双方若想查询本笔交易,需要用到跨链技术,买(卖)方通过交易凭证应先调用至侧链,通过侧链与主链的锚定通道查询到位于主链上的信息,这样是为了防止大量分散资源向系统提交查询申请,提前预留好每笔跨链交易的数据锚定关系,更加高效,也降低了系统压力。

1.3.2 多链协同运行模式

为了保留分布式资源交易自由灵活特点,同时降低主要节点运算压力,本节所提主从多链模型主要基于数据结构不同的两种区块。侧链记录虚拟电厂内部分布式资源间交易信息,当不同虚拟电厂间产生交易时,主链对此类交易进行上链存证,同时侧链协同区块与主链区块锚定,既保证链内交易和跨链交易的数据隔离,又缓解关键节点的数据存储压力。

表1给出了主链区块与协同区块的数据结构,由于侧链普通区块的工作原理与主链区块相同,不再单独列出。

表1区块数据结构Table 1Block data structure

7.png


主链与各从链区块间通过在各区块头存储哈希值实现锚定。所提锚定结构如图3所示。

8.jpg

图3MLTS系统多链协同运行数据跨链原理

Fig.3The cross-chain principle of MLTS multi-chain collaborative operation data

主链通过在系统所有VMC上运行,实现了从链协同区块锚定的功能。在此基础上,它能够实现VPP内外交易的划分,同时维护跨链交易信息,所有与其他VPP交易的用户均可以通过本地VMC的协同区块查询到与之锚定的主链记录所交易信息的区块。从2种区块的数据结构出发,在该系统下的主侧链交互过程中,当某一笔跨链交易的相关方确认交易时,系统将交易信息打包,在新生成的主链区块的区块头中存储生成的Merkel_Root,同时系统将区块交由所有VMC共识时,交易双方所属的VMC在共识之外还会生成协同区块,为了方便信息溯源及审查,协同区块会在区块头的Index与Type字段中存储侧链标识以及主链区块所属位置。VMC生成协同区块后向系统发起广播,系统在接收广播后会以在主链区块头中存储新生成协同区块的Index、Hash与Type三个字段生成的Merkel_Root的形式实现信息的跨链锚定,当交易方通过各自VMC查询本笔交易时,VMC将通过锚定标识找到位于主链的区块,实现后期对交易信息的查证与维护。

02

基于差异化信用评价指标的共识算法

采用PBFT共识的系统具有较好的容错能力,在一个有3n+1节点的系统中,其中最多有n个恶意节点。PBFT将节点类型划分为主节点和副本节点,主节点发出的请求需经过请求、预准备、准备、承诺、答复5个阶段才能共识成功。虽然PBFT共识算法能提高系统容错能力并且不存在算力竞争问题,但分布式网络节点众多,通信复杂度将伴随节点的增多而快速上升。本章首先通过各主体业务功能将节点类型细分为4种,然后明确4种节点每轮次的信用值计算方法,通过该信用机制解决节点积极性低的问题,最后利用该信用值机制优化节点共识流程,提高共识效率。

2.1 差异化信用评价指标

侧链运行在单个VPP中,主要由VPP内VMC和众多分布式资源共同维护,主链则主要由电网节点和各VMC共同维护,在多链协同运行模式中,系统内成员在主侧链中由于可能担任不同的节点而具有不同的业务功能,若不设计合理的节点管理方案,将会出现主侧链锚定混乱,节点交互阻塞和信息安全等问题。本节基于节点功能及在主侧链担任角色的不同设计差异化信用评价指标,进而优化PBFT共识过程,通过对节点赋予不同职能,实现节点互管理功能。

2.1.1 节点分类

根据节点在系统内的业务功能对节点类型进行划分(见表2)。

表2 节点分类及功能Table 2Node classification and function

9.png

主节点:对普通节点间形成的交易合约进行数字签名验证,打包当前时段的交易,形成区块,并附上主节点的数字签名,交由共识节点审核。共识节点:对于侧链网络,其总节点数一般不超过100个,共识节点数一般设定为总节点数的10%,最少为2个;对于主链网络,其共识节点在VMC中选出,数量应为系统内VPP数量的60%,共识节点不允许离线,共识节点间将采用改进的PBFT共识算法,对主节点、普通节点的数字签名进行共识,一旦共识通过,智能合约将按照各交易合约自动进行资金和能源交割。交易完成后,该区块将由智能合约自动执行上链。监督节点:监督节点不允许离线,其将以特殊的节点参与交易全过程。监督节点有权对交易进行审查,但发起信息审核需要预付信誉值。若对方无问题,则本笔信誉值扣除给对方,并赔付对方相应的通信费及误工费等费用;若对方存在问题,扣除对方相应数量信誉值,并产生相应罚款,获得罚款收益。同时,时刻保持对投诉事件的监听,在处理投诉事件时,投诉发起人承担上述风险。普通节点:由电网交易中心确认是否具备准入资格,可随时上下线,但一旦参与某时段交易,除非确认订单或取消订单,否则不可以离线。

2.1.2 各类节点信用值计算

本小节分别对主节点、共识节点、普通节点和监督节点进行每轮次信用值计算,具体计算流程如图4所示。

10.jpg

图4DCE-PBFT算法共识流程及节点功能示意

Fig.4DCE-PBFT algorithm consensus process and node function diagram

基于所提交易系统及信用机制,DCE-PBFT算法共识流程如下。1)本轮交易开始前所有节点将自动更新信誉度,系统将自动判断共识节点是否替换;2)节点间通过VMC在系统内确认交易后使用私钥加密提交至主节点,同时生成信用评价;3)主侧链主节点分别打包当前时段交易并区分侧链交易及跨链交易,签名后广播至共识节点,同时生成信用评价;4)共识节点使用公钥解密打包文件核对交易信息,经过共识后,共识节点集群中的节点判断这一时间段内的所有交易是否合法并确认区块合法性,生成信用评价,并将交易信息同步至节点本地账本;5)智能合约将共识节点生成的区块自动执行侧链上链及主链上链;6)各节点同步链上数据至各自本地分布式账本,同时根据各步骤生成的信誉度实现节点信用评价自动更新准备下一轮次交易。

DCE-PBFT算法根据多虚拟电厂交易系统的特点将全网全节点广播改为主节点向共识节点发送消息进行验证,取消了全网全节点广播,同时通过控制共识节点数量减少了共识流程对网络资源的占用,无疑大大减少了所消耗的网络带宽,提高了共识流程效率。

03

算例分析

3.1 基本设置

为验证提出的交易模式的有效性,本节在实验室环境下模拟多VPP电力交易场景进行仿真测试。实验室主机配置为Intel(R) Core(TM) i5-6300 HQ CPU @ 2.30 GHz,16 GB RAM,Windows10操作系统。选取4个虚拟电厂进行交互模拟,各虚拟电厂因其产消属性的互补性产生交互,如表3所示。假设VPP1、VPP2聚合有综合负荷、电动汽车充电站和光伏电站等不确定性资源,对外呈现为消费特性;VPP3聚合有传统火电机组、工业用户及普通居民负荷,具有一定的对外出力能力;VPP4聚合有传统火电机组、热电联产机组、大型储能及综合负荷,具有很强的对外出力能力,其中居民负荷及工业负荷视为确定性负荷,电动汽车充电站等视为不确定性负荷。

表3 虚拟电厂聚合资源设置Table 3Virtual power plant aggregate resource settings

14.png

3.2 交易性能测试

3.2.1 交易时间分析

本设计中普通节点从发送交易请求到主节点打包交易的时间相对固定,因此尽管MLTS交易时间定义为从普通节点发起交易请求开始到共识节点达成共识且区块上链结束所需时间,但主要受共识及上链流程的影响,可表示为

15.png

为考察主侧链随共识节点数量变化时的交易时间的变化情况,在不同共识节点数量下对主侧链分别进行交易模拟,本实验考虑在每个节点数量下随机分配主侧链交易场景,将参与共识节点数由10个开始并以10的步长递增至100个,在各节点数量下多次模拟并取实验均值作为该情境下系统的交易时间,实验结果如图5所示。

16.jpg

图5DCE-PBFT及PBFT算法主侧链交易时间对比

Fig.5Comparison of mainchain and sidechain trading time between DCE-PBFT and PBFT algorithms

由图5可看出,相同节点数量下,系统采用PBFT共识的系统交易时间总是大于采用DCE-PBFT的系统交易时间,同时,由于侧链交易流程比主链的复杂,采用PBFT共识的系统随着节点的增加,主侧链交易时间差距进一步拉大,而采用DCE-PBFT共识的系统并不存在此问题。这是因为采用DCE-PBFT共识的系统交易流程更符合点对点交易的特点,其将全网全节点广播改为主节点向共识节点广播,取消了全网全节点广播。除此之外,当节点数量大于30个时,通信复杂程度进一步增加,但由于系统设计中控制了共识节点数量从而减少了共识通信复杂度,采用DCE-PBFT共识的系统交易时间的增长趋势相较于采用PBFT的系统更平缓,其在面对节点增长情况时稳定性也要优于采用PBFT共识的系统。综上所述,PBFT在交易时间方面的表现要弱于DCE-PBFT算法。

3.2.2 交易效率分析

在共识节点数量由10个开始,以10的步长递增至100个时,根据系统内设定的共识节点不超过系统总节点的10%,则系统总节点数将从100个开始,以100的步长递增至1000个,交易事件数为保留分布式资源交易的自由发散特性,考虑将50%的普通节点记为n1,任意两节点交易后不再对外交易;另外50%的普通节点记为n2,该类节点对外进行2次交易后不再对外交易,则交易事件数可由确定,将各节点数量下的交易事件随机分布于主链交易与侧链交易场景下并进行多次重复实验,取平均值作为每种节点数量下系统单位时间能够完成交易的最高数量——交易吞吐量(transaction throughputs,TPS)来衡量交易效率,实验结果如图6所示。

17.jpg

图6采用DCE-PBFT及PBFT的系统交易吞吐量对比

Fig.6Comparison of system transaction throughputs between DCE-PBFT and PBFT consensus algorithms

由实验结果可以看出,采用PBFT与DCE-PBFT共识的系统交易吞吐量在共识节点数大约位于50个之前都与节点数量成正相关,之后随着采用PBFT的系统交易吞吐量达到峰值,此时共识节点再增加则会影响系统性能,其表现为交易吞吐量的下降,而采用DCE-PBFT的系统随着节点数量的增加其交易性能进一步提升,在共识节点数量约为80个才缓慢达到峰值,并且之后随着节点的增加其吞吐量的下降速度较采用PBFT共识的系统更缓慢。相比于采用PBFT共识的系统,在面对共识节点相同的场景时,采用DCE-PBFT系统的交易吞吐量始终比采用PBFT系统的高,因此,DCE-PBFT共识的交易效率性能优于PBFT共识。

3.3 信用值更新验证

DCE-PBFT共识在进行交易之前,首先根据节点信用值更新情况确定本轮共识节点,同时为保证各节点在规定时间内正确动作,设置了监督节点问责流程,并通过信用机制来提升节点参与系统运行的规范性。

根据DCE-PBFT信用机制设计,信用大小作为共识节点的选择依据并且影响节点间交互,因此节点将主动维护自身信用值,节点信用评价指标是否合理对于系统稳定性影响重大。对上述实验涵盖的4种节点类型的100个节点进行了20轮的信用增长分析,设置各节点动作特性(见表4),其中P1—P5为4个侧链主节点和1个主链主节点,P6—P89为普通节点,随机分布于4个VPP内,P90—P99为共识节点,平均分布于5条区块链上,P100为系统监督节点,各类型节点在模拟交易中遵循其动作概率,正确或错误动作都将根据图4在对应步骤中更新信用值参数。从4种类型的节点中各取一个典型节点,其信用值更新情况如图7所示。

表4节点动作特性Table 4Node action characteristics

图7节点多轮信用值增长分析

Fig.7Node multi-round credit value growth analysis

实验结果表明,随着轮次数递增,每轮节点所能获得的信用值平均在[0.65, 0.90]之间,节点每轮信用值增长比较稳定。第4轮中,主节点出现误打包区块行为,信用值基本无增长;在第7轮中,普通节点恶意动作被共识节点发现,共识节点的信用值出现小幅增长,而普通节点本轮无信用收益,且其交易完成度参数T降低,对后续信用增长速度产生影响;第12轮中共识节点出现离线行为,由于共识性能对系统影响重大,惩罚较重,其损失信用值平均分配给了系统内的其他共识节点、被该共识节点影响的普通节点和监督节点,可以通过监督节点第11~12轮的小幅度阶跃看出共识节点恶意动作对其他节点信用值的影响;在第16轮,监督节点对普通节点发起问责,成功发现普通节点恶意动作,可以看出普通节点损失了较多信用值且后续信用值增长速度进一步变缓,而监督节点信用值迎来更大幅度的阶跃,鉴于监督节点的特殊性,其信用增长仅在外部节点影响下才会有小幅阶跃,其余场景下增速均缓慢。该信用值模型设计在不同的节点动作模式下均能有效激励节点正确动作,证明了差异化信用评价机制的有效性。

04

结语

随着点对点交易灵活性的不断增加,多VPP厂间互动更加频繁。本文提出了基于区块链的多VPP交易系统架构,该架构融合了电力交易、多链协同和跨链锚定等技术,实现了多VPP间有效互动,并基于此架构设计了差异化信用评价指标改进共识算法以适应多链系统,提高系统运行效率。在实验环境中得出了所设计的DCE-PBFT算法较PBFT共识缩短了交易时间,提高了共识效率,且信用增长稳定。未来对多VPP交易在主侧链智能定价、智能合约及数字签名认证技术等方面仍然值得进一步探讨研究。

免责声明:本网转载合作媒体、机构或其他网站的公开信息,并不意味着赞同其观点或证实其内容的真实性,信息仅供参考,不作为交易和服务的根据。转载文章版权归原作者所有,如有侵权或其它问题请及时告之,本网将及时修改或删除。凡以任何方式登录本网站或直接、间接使用本网站资料者,视为自愿接受本网站声明的约束。联系电话 021-51376502,谢谢。

热门推荐

青海2023年年度发用电负荷总体情况

来源:《中国电力》2024年第1期引文:张书涵,艾芊,李晓露,等. 02/07 23:31

合作伙伴