Aptos新框架Shoal:Bullshark延遲優化40%-80%

robot
摘要生成中

Shoal框架:優化Aptos上的Bullshark延遲

Aptos實驗室近期解決了DAG BFT中兩個關鍵問題,大幅降低了延遲,並首次在確定性實際協議中消除了對超時的需求。總體上,Bullshark的延遲在無故障情況下改進了40%,在故障情況下改進了80%。

Shoal是一個通過流水線和領導者信譽來增強基於Narwhal的共識協議的框架。流水線通過每輪引入一個錨點來減少DAG排序延遲,領導者信譽則通過確保錨點與最快的驗證節點相關聯來進一步改善延遲。此外,領導者信譽使Shoal可以利用異步DAG構建來在所有場景中消除超時。

萬字詳解Shoal框架:如何減少Aptos上的Bullshark延遲?

Shoal的核心技術非常簡單,主要是按順序依次運行底層協議的多個實例。以Bullshark爲例,就相當於一羣"鯊魚"在接力賽跑。

在追求區塊鏈網路高性能的過程中,早期主要關注降低通信復雜度,但這並未帶來顯著的吞吐量提升。近期的突破源於認識到數據傳播是基於領導者協議的主要瓶頸,可以從並行化中受益。Narwhal系統將數據傳播與核心共識邏輯分離,實現了16萬TPS的吞吐量。

然而,基於領導者的共識協議如Hotstuff/Jolteon無法充分利用Narwhal的吞吐量潛力。因此,Aptos決定在Narwhal DAG之上部署Bullshark,一種零通信開銷的共識協議。但Bullshark的DAG結構帶來了50%的延遲代價。

萬字詳解Shoal框架:如何減少Aptos上的Bullshark延遲?

Shoal框架通過流水線和領導者信譽機制大幅降低了Bullshark的延遲。流水線允許每輪都有一個錨點,將DAG中所有非錨點頂點的延遲減少到三輪。領導者信譽機制則傾向於選擇快速的領導者。

萬字詳解Shoal框架:如何減少Aptos上的Bullshark延遲?

Shoal的核心思路是按順序組合多個Bullshark實例。它利用所有驗證者都同意第一個有序錨點的特性,將第一個有序錨點作爲實例的切換點,並用錨點的因果歷史計算領導者信譽。

這種方法不僅實現了流水線,還自然地結合了領導者信譽機制。在對第r輪錨點排序後,驗證者只需根據該錨點的因果歷史,從第r+1輪開始計算新的領導者映射,並使用更新後的錨點選擇函數執行新的Bullshark實例。

萬字詳解Shoal框架:如何減少Aptos上的Bullshark延遲?

Shoal還消除了對超時的需求。它利用DAG構建提供的"時鍾"來估計網路速度,只要有足夠的誠實驗證者繼續向DAG添加頂點,回合就會持續推進。領導者信譽機制進一步確保了選擇快速驗證節點作爲領導者,使系統能在所有現實場景中以網路速度運行。

萬字詳解Shoal框架:如何減少Aptos上的Bullshark延遲?

Shoal提供了一種稱爲"普遍響應"的屬性,即使在領導者失敗或網路異步的情況下,也能以網路速度持續運行。這相比Hotstuff等協議的"樂觀響應"屬性有顯著優勢。

萬字詳解Shoal框架:如何減少Aptos上的Bullshark延遲?

評估結果表明,Shoal顯著改善了Bullshark的延遲。在無故障情況下,Shoal結合流水線和領導者信譽實現了最佳延遲。在有故障情況下,領導者信譽機制通過降低失敗驗證者被選爲領導者的可能性,使Shoal的延遲比基線Bullshark低65%。

萬字詳解Shoal框架:如何減少Aptos上的Bullshark延遲?

萬字詳解Shoal框架:如何減少Aptos上的Bullshark延遲?

萬字詳解Shoal框架:如何減少Aptos上的Bullshark延遲?

萬字詳解Shoal框架:如何減少Aptos上的Bullshark延遲?

總的來說,Shoal框架通過簡單而高效的方法,成功解決了DAG-BFT中的關鍵延遲問題,爲Aptos等區塊鏈系統的性能優化提供了新的思路。

查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 3
  • 分享
留言
0/400
AltcoinOraclevip
· 5小時前
令人着迷。我的专有指标预测了这个确切的延迟优化系数......唱多的背离已确认
查看原文回復0
午夜快照猎人vip
· 5小時前
硬核得令人迷惑 咋就整出这么多了
回復0
SerNgmivip
· 5小時前
信誉机制不错啊 感觉有戏
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)