2f+1=正常節點
3f + 1=總節點
PBFT演算法的核心理論是n>=3f+1
n是系統中的總節點數,f是允許出現故障的節點數,換句話說,如果這個系統允許出現f個故障,那么這個系統必須包括n個節點,才能解決故障,
PBFT容忍無效或者惡意節點數:f,為了保障整個系統可以正常運轉,需要有2f+1個正常節點,系統的總節點數為:|R| = 3f + 1,也就是說,PBFT演算法可以容忍小于1/3個無效或者惡意節點,
只要有不少于(2*f+1)個非惡意節點正常作業,該系統就能達成一致性,如:7個節點的系統中允許2個節點出現拜占庭錯誤,
注: n是節點的總數 f是出問題的節點數
如下圖所示:
我們通過殺掉節點的行程來模擬問題節點

總共7個節點出現一個問題節點

交易正常

總共7個節點出現2個問題節點

交易正常

總共7個節點出現3個問題節點(殺了3個節點,結果全部顯示例外,應該是webase的bug)

交易出現問題

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/104060.html
標籤:其他
上一篇:Matter Labs CEO Alex Gluhowski:Zero-Knowledge Proofs 和加速去中心化加密技術的大規模應用
