PBFT(拜占庭容错)
来源:互联网 发布:广东11选5遗漏360数据 编辑:程序博客网 时间:2024/06/11 22:59
PBFT(拜占庭容错)
基于拜占庭将军问题,一致性的确保主要分为这三个阶段:预准备(pre-prepare)、准备(prepare)和确认(commit)。流程如下图所示:
其中C为发送请求端,0123为服务端,3为宕机的服务端,具体步骤如下:
1. Request:请求端C发送请求到任意一节点,这里是0
2. Pre-Prepare:服务端0收到C的请求后进行广播,扩散至123
3. Prepare:123,收到后记录并再次广播,1->023,2->013,3因为宕机无法广播
4. Commit:0123节点在Prepare阶段,若收到超过一定数量的相同请求,则进入Commit阶段,广播Commit请求
5.Reply:0123节点在Commit阶段,若收到超过一定数量的相同请求,则对C进行反馈
根据上述流程,在 N ≥ 3F + 1 的情況下一致性是可能解決,N为总计算机数,F为有问题的计算机总数。
由此可以看出,拜占庭容错能够容纳将近1/3的错误节点误差,IBM创建的Hyperledger就是使用了该算法作为共识算法。
阅读全文
0 0
- PBFT(拜占庭容错)
- 超级账本PBFT(拜占庭容错)算法详解
- 超级账本PBFT(拜占庭容错)算法详解
- 超级账本PBFT(拜占庭容错)算法详解
- 区块链共识算法 PBFT(拜占庭容错)、PAXOS、RAFT简述
- 区块链核心技术:拜占庭共识算法之PBFT
- 区块链核心技术:拜占庭共识算法之PBFT全面理解
- 拜占庭
- 从Paxos到拜占庭容错,兼谈区块链的共识协议
- PBFT算法
- 容错
- 容错
- 拜占庭问题
- 拜占庭问题
- 拜占庭问题
- 拜占庭故障
- PBFT算法协议介绍
- 拜占庭将军问题
- IMPROVING THE DISPLAY OF WIND PATTERNS AND OCEAN CURRENTS
- LeetCode-97-Interleaving String DP 记忆化搜索
- jQuery bind(绑定事件)前别忘了unbind(移除事件)
- vlc库下载
- Java实现——根据先序遍历和中序遍历,确定二叉树
- PBFT(拜占庭容错)
- hibernate与spring整合
- 指针和一维数组关系
- hive安装配置
- t.xml文件中的Activity属性android:name必须和工程src目录下的相关类名保持一致
- 用自己的数据完成“分类”
- 什么是MyBatis
- 内存移动:memmove原理模拟实现
- 决策树算法之ID3