HyperLedger Fabric --共识
What machine faults?
• Crash faults (CFT): A machine simply stops execution and halts容错故障节点,不能容错恶意节点
Paxos, RAFT, Zookeeper AB,…
• Non-crash (a.k.a. ByzanUne) faults (BFT)
CFT和BFT是用于解决“因为节点接到指令的顺序不一样而产生的结果不一样”这个问题的共识算法
BFT不能解决:1.非确定性值引起的差异 2.特别慢的节点会影响算法效率 3.增加新节点很困难
Many other things burden the implementation (it is not simple as it might look)
• Non-deterministic value 不确定性值
• Leader election 选举Leader节点
• State transfer (new, slow Party) 状态转换
• Reconfiguration 重新配置
Ordering Services
Different configuration options for the ordering service
include:
– SOLO
• Single node for development
– Kafka / Zookeeper
• 1:n nodes providing Crash Fault Tolerance(CFT,碰撞容错)
• Odd number of nodes recommended(奇数节点)
– SBFT
• 1:n nodes providing Byzantine Fault Tolerance