Batch PBFT建功,BM再度稱讚BOS側鏈的技術方案!

今日午間,BM在EOS電報群進行互動。針對社區成員提到的“BOS LIB加速解決方案:Batch PBFT”,BM稱讚BOSCore在解決LIB的共識機制上使用的Batch PBFT是一個很好的解決方案。

Batch PBFT建功,BM再度稱讚BOS側鏈的技術方案!

BM在電報群內的回覆截圖

值得一提的是,這是繼此前BM肯定BOSCore開發的IBC跨鏈轉賬功能之後,又一次對BOSCore側鏈的技術方案表示認可。

那麼,受到BM稱讚的Batch PBFT方案,是一個什麼樣方案呢?

我們先從EOSIO說起。

眾所周知,EOSIO採用的是基於流水線的拜占庭容錯機制 (Pipelined Byzantine Fault Tolerance),對於一個Block需要經過Propose、Pre-Commit、Commit、Finalize幾個步驟,最後不可更改的塊範圍由Last Irreversible Block (LIB) 標明。按超級節點的出塊規則,即便是優化後的方案,在EOSIO上一筆交易基本上需要約3分鐘 (理論最低為325個出塊時間,即162.5秒) 才能進入LIB。

Batch PBFT建功,BM再度稱讚BOS側鏈的技術方案!

從技術角度看,在EOSIO採用的DPOS BFT共識算法中,所有塊同步後的確認信息都只有輪到該節點出塊的時候才會被廣播出去,因此,在交易確認上就會產生較長的時間。

舉個例子,在BP1出塊(所出塊為BLKn),BP1~BP21輪流出塊的情況下,BP2~BP21會陸續收到並驗證BLKn,但所有BP只能等到自己出塊的時候才能發出對BLKn的確認信息。這就客觀上造成交易需要較長的確認時間。

因此,綜合來看,EOSIO使用的Pipelined BFT共識機制雖然相比BTC、ETH等其他數字通證的交易可靠時間有很大提高,但是對於很多應用場景來說還是有很大限制。比如支付場景,由於不能立即確定該筆交易最後是否成功,需要等待一段的時間才可完成商品的交易,這就形成了很多的限制。

Batch PBFT建功,BM再度稱讚BOS側鏈的技術方案!

因此,正因為看到EOSIO共識機制的不足之處,BOSCore側鏈提出並採用了改進優化型的PBFT (Practical Byzantine Fault Tolerance)共識機制,該機制可以實現BP之間實時地對當前正在生產的區塊進行確認,從而使整個系統最終達到接近實時的共識速度,客觀上縮短了一筆交易變成不可更改狀態的時間。

同時,在保證實現拜占庭容錯的前提下,BOSCore針對LIB的加速,提出了採用批量共識(Batch PBFT)替換PBFT的方案,對每個塊進行共識的要求,通過一次廣播多個塊的相關信息,以此來逼近實時BFT的理想狀態並減輕網絡負載。


也就是說,通過Batch PBFT的實施,實現一次廣播多個塊的相關信息,讓BP之間實時地對當前正在生產的區塊進行確認,使得整個BOSCore系統最終達到接近實時的共識速度。

Batch PBFT建功,BM再度稱讚BOS側鏈的技術方案!

Pipeline BFT與Batch PBFT的突出特徵對比

Batch PBFT方案能夠進一步緩解EOS主網LIB過久的問題,使確認交易不可逆的時間從現在的幾分鐘縮短到幾秒,使區塊鏈技術在某些實際場景中的應用特別是零售支付擁有更多的可能。目前,Batch PBFT方案已展開公開測試,按此前官方消息,預計會在今年第二季度上線。屆時,若能實現IBC的同步升級,區塊進LIB的時間將能縮短到3秒,並且BOSCore到EOS的跨鏈時間也將縮短到15秒以內。

BOSCore是一條EOS的側鏈,致力於dApp生態的打造。其主網已於2019年1月17日正式啟動。相對於EOS主鏈,BOSCore的資源價格低廉,降低了dApp的啟動門檻;同時在生態激勵方面,BOSCore準備了1億BOS的生態基金,助力dApp的開發和落地。

輔助閱讀:

BOS LIB加速解決方案:Batch PBFT地址:

https://github.com/boscore/Documentation/blob/master/LIB/BOS_Batch_PBFT_I.md


分享到:


相關文章: