fabric網路節點的組成如下圖:
客戶端必須連線到某乙個peer節點或者排序服務節點才可以與區塊鏈網路通訊。
peer節點主要負責通過執行鏈碼(chaincode)實現對賬本的讀寫操作。
所有的peer節點都是記賬節點(committer),負責維護狀態資料和賬本的副本。
部分peer節點根據背書策略的設定會執行交易並對結果進行簽名背書,充當了背書節點(endorser)的角色。背書節點是動態的角色,每個鏈碼在例項化的時候都會設定背書策略,指定哪些節點對交易背書後才是有效的。只有在應用程式向節點發起交易背書請求的時候該peer節點才是背書節點,否則它就是普通的記賬節點。
乙個組織(其實是成員)在乙個通道上可以有多個peer節點,這時候為了提高通訊效率,需要選舉出來乙個主節點(leader peer)作為代表和排序服務節點通訊,負責從排序服務節點處獲取最新的區塊並在組織內部同步。
節點可以同時是背書節點和記賬節點,也可以同時是背書節點、主節點和記賬節點。
排序服務節點接收包含背書簽名的交易,對未打包的交易進行排序生成區塊,並廣播給peer節點
乙個區塊鏈網路中,只能有一組排序服務,這個排序服務是由多個排序節點組成的。
排序服務啟動的時候需要乙個整個網路的創世區塊,該創世區塊中包含了排序節點資訊、聯盟組織資訊、共識演算法型別、區塊配置資訊及訪問控制策略。同時在排序服務啟動時會建立系統通道,系統通道在網路中有且只有乙個,系統通道對應儲存了系統賬本,其中的有網路排序服務的定義、聯盟成員的定義,以及其他初始配置引數,系統通道主要作用就是建立其他通道。
ca節點是可選的,它主要作為證書頒發機構,也可以用其他成熟的第三方ca頒發證書。
注意區分:區塊鏈網路與通道
乙個區塊鏈網路可以有多個通道,其中系統通道只能有乙個。
乙個通道對應乙個賬本,也對應乙個鏈。不同通道的賬本和智慧型合約、策略都是隔離的。
Hyperledger Fabric網路手工執行
在之前的文章我們已經介紹了快速在本地執行fabric,以及介紹了fabric的模型和工具 linux環境下搭建hyperledger fabric 附流程 本次我們會手工執行fabric的工具,手動搭建乙個fabric網路,來鞏固和熟悉fabirc。在開始搭建之前我們需要先提一下fabric的身份認...
網路節點通訊方式
一 網路通訊節點方式 客戶 伺服器模式 c s 客戶伺服器方式所描述的是程序間服務與被服務的關係。客戶是服務的請求方,伺服器是服務的提供方 單個伺服器程序方式 多個伺服器程序方式 對等連線方式 簡稱p2p,是指兩個主機在通訊時,不區分哪乙個時服務的請求方還是服務的提供方,只要兩個主機都執行了對等連線...
docker單節點網路模式
1.bridge模式 docker容器預設使用bridge模式的網路 docker container run itd name peng bridge network bridge centos bash 啟動乙個容器宿主機會增加乙個veth docker container exec it pe...