首页 > 编程知识 正文

拜占庭容错问题,实用拜占庭容错机制

时间:2023-05-03 15:33:25 阅读:159772 作者:3199

拜占庭容错机制(BFT )基于拜占庭将军问题,确保一致性主要分为这三个阶段。 准备(pre-prepare )、准备(prepare )、确认(commit )。 如下图所示,c是发送请求侧,0123是服务器侧,3是瘫痪的服务器侧。 具体步骤如下:1. Request :请求方c向任意节点发送请求,这里是0 2. Pre-Prepare :服务器端0接收c的请求并进行广播,扩展到123 3. Prepare:123并接收2 3因停机而无法播放4. Commit:0123节点在Prepare阶段收到一定数量以上的相同请求时,进入Commit阶段,播放Commit请求5.Reply:0123节点在comit阶段收到一定数量以上的请求

得到数据最终数据a1111b1111c111d11111d11111

当N=4 F=1时:

得到数据最终数据a1101b1011c10111d0111

当N=4 F=2时:

得到数据最终数据a100nab101NAC001NAD01NAD0110na

因此,拜占庭容错可以容纳约1/3的错误节点误差,IBM编制的Hyperledger使用该算法作为共识算法。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。