摘要

应用于联盟链的实用拜占庭容错(PBFT)共识算法存在共识节点选择和多节点共识效率较差的问题,为此,提出一种多层次实用拜占庭优化共识算法MS-PBFT。根据节点所属机构的不同对节点进行分组,并将各组内的节点划分为主网层和次网层。引入一种积分机制,根据各节点自身的性能以及在系统中的表现为其赋予初始积分和信誉值,以监督节点在共识过程中的行为,根据初始积分与信誉值对节点进行分类,使其加入不同的层次中。改进上层节点和主节点的选取方式并增加一种弹劾机制,及时更换掉线或存在恶意行为的领导节点,从而保证节点的可靠性同时提高共识效率。通过先在次网层达成局部共识进而在主网层实现全局共识的方式,降低节点的通信复杂度。实验结果表明,与DGPBFT、PBFT、RAFT算法相比,MS-PBFT算法可以提高数据吞吐量并降低共识时延,利用所提节点选举机制,节点的共识成功率可以达到98.6%,且共识效率比PBFT算法平均提高33%。

全文