深度探索區塊鏈/基於Gossip的P2P數據分發(4)

一。概述

背書節點模擬執行簽名的結果會通過排序服務(Ording service)廣播給全部的節點。網絡

它提供的是一種原子廣播服務(Atomic Broadcast),即在邏輯上全部節點接收到的消息順序是相同的,相同序號都是相同的內容。性能

排序服務廣播的信息包括:區塊鏈

【1】。更新的狀態信息3d

【2】。帳本信息。。。blog

這些信息須要廣播給全部節點。排序

若排序服務的全部節點都保持直接鏈接,在節點較多,數據量較大狀況下容易造成單節點故障或成爲性能瓶頸。ip

由超級帳本節點組成的區塊鏈網絡自己就是一種去中心化的網絡,利用P2P實現數據廣播是顯而易見的作法。同步

最覺見的方法是--洪泛(Flooding)it

【1】洪泛是節點在接收到數據包之後,直接轉發給全部的鄰居節點,直到全部的節點都接收到了數據包或數據包的跳數(Hop count)超過必定的限制。ast

【2】洪泛優勢:

      節點覆蓋率高:若在一個源節點 & 目標節點間存在一條路徑,洪泛就能經過廣播以最快速度找到這條路徑。

      很好冗餘度:在不穩定的網絡中提升網絡健壯性(Robustness)

【3】洪泛缺點:

     低效 & 廣播風暴

超級帳本採用Gossip的協議實現P2P數據分發,與洪泛的廣播策略不一樣:

【1】節點在接收到數據包後,不直接轉發給鄰居節點,而是會計算一下機率,根據計算結果判斷是否須要進行轉發。

【2】轉發機率設置爲:

   A。固定值的純Gossip(Pure Gossip)

   B。盲Gossip(Blind Gossping)

   C。固定機率Gossip(Fixed probablility Gossip)

轉發機率還可根據其餘一些信息動態計算,如:節點的度(Degree),全局拓撲結構等。

在超級帳本實現中,採用的是隨機的選擇k(默認值爲3)個節點進行轉發,若鄰居節點的數據尚未須要轉發的節點數量多,就所有轉發。

二。超級帳本中的Gossip協議

三。成員認證及身份管理

四。節點啓動及成員管理

五。主節點選舉過程

六。基於反熵的狀態同步

 

七。數據傳播過程

八。多通道的支持

九。消息的驗證策略

 

十。消息的多路分用及分區

      

十一。和Gossip相關的配置參數

本章小結:

相關文章
相關標籤/搜索