摘要
针对现有的拜占庭容错共识算法在弱网络环境下因丢包导致共识效率低、通信开销大的问题,文中提出基于拜占庭容错算法(Practical Byzantine Fault Tolerance,PBFT)的基本思想,其采用一种基于信息交互的实用拜占庭容错优化算法(Interactive Practical Byzantine Fault Tolerance,IPBFT)。IPBFT算法在Prepare阶段增加Pre-prepare消息,优化某节点在Pre-prepare阶段丢包无法接收到该阶段消息以至于后续的共识不可再参与的情况。同时在Commit阶段的消息中增加Pre-prepare和Prepare消息,解决了某节点持续未能接收到多个消息而导致该轮共识无法进行的问题。在Prepare阶段和Commit阶段的消息传递过程中增加其他节点的应答消息,使当前节点可直接处理各种消息,不需从其他节点上获取,有效防止重复丢包的现象。实验结果证明,IPBFT在弱网络环境下的平均交易时延从277 ms降低到216 ms,平均吞吐量从271 TPS提高到345 TPS。
Aiming at the problems of low consensus efficiency and high communication overhead caused by packet loss in the existing Byzantine fault⁃tolerant consensus algorithm in a weak network environment.This paper proposes the basic idea based on Byzantine Fault Tolerance(Practical Byzantine Fault Tolerance,PBFT),which adopts a practical Byzantine Fault Tolerance Optimization(Interactive Practical Byzantine Fault Tolerance,IPBFT)algorithm based on information interaction.The IPBFT algorithm optimizes the situation that a node loses packets in the Pre⁃prepare stage and cannot receive the message in this stage by adding a Pre⁃prepare message in the Prepare stage,so that the subsequent consensus cannot participate anymore;at the same time,it adds Pre⁃prepare to the message in the Commit stage and Prepare message,to solve the problem that the current round of consensus cannot be carried out due to the fact that a node continues to fail to receive multiple messages.Various messages can be processed directly without needing to be obtained from other nodes,effectively preventing repeated packet loss.The experimental results show that the average transaction delay of IPBFT is reduced from 277 ms to 216 ms in weak network environment,and the average throughput is increased from 271 TPS to 345 TPS.
作者
刘泽坤
王峰
LIU Zekun;WANG Feng(Institute of Information and Computer,Taiyuan University of Technology,Taiyuan 030600,China)
出处
《电子设计工程》
2023年第11期30-35,40,共7页
Electronic Design Engineering
关键词
弱网络
区块链
共识算法
拜占庭容错算法
信息交互
weak network
blockchain
consensusalgorithm
Byzantine faulttolerantalgorithm
information interaction