成長值第 1️⃣ 1️⃣ 期夏季抽獎大狂歡火熱進行中!
立即抽獎,iPhone16 Pro Max和精美週邊等你拿!
👉 https://www.gate.com/activities/pointprize?now_period=11
🎁 100%中獎,在動態完成發帖、點讚、評論、社群發言等成長值任務
抽取iPhone16 Pro Max 512G、Gate品牌衛衣、速乾運動套裝、人氣代幣、合約體驗券等超多好禮!
集齊兩片碎片輕鬆兌週邊,福利抱回家!
截止於6月4日 24:00 UTC+8,快來試試手氣!
更多: https://www.gate.com/announcements/article/45185
解讀 Sei 新白皮書:Giga 升級引入哪些技術創新?
Sei 在 Giga 升級中引入包括非同步執行、多提議者共識、交易並行處理和儲存優化等機制。本文源自 Pavel Paramonov, Hazeflow 創辦人 所著文章,由 Felix, PANews 整理、編譯及撰稿。 (前情提要:$SEI 單月狂飆 70%!啟動 SIP-3 提案:轉型純 EVM,瞄準每秒 10 萬交易 ) (背景補充:MetaMask 五月將支援 Solana 網路「首跨足非 EVM 鏈」小狐狸錢包走出以太坊舒適圈 ) Sei 釋出了新白皮書,其中介紹了最新的 Giga 升級。大多數讀者覺得 17 頁的深度技術內容難以閱讀。因此,本文將解釋此次更新的內容以及如何在不同層面提升區塊鏈效能。 1. 關於非同步執行的區塊生成 Giga 的主要思想和基礎如下: 「如果我們的交易列表有序以及區塊鏈的初始狀態一致,並且所有誠實的節點都按照相同的順序處理這些交易,那麼節點們將會達到相同的最終狀態。」 在這種情況下,結果僅取決於初始狀態和交易順序。這意味著共識只需就區塊內交易的順序達成一致,每個節點都可以獨立計算最終狀態。 在這種模型中,將共識與執行分離,允許區塊非同步執行。 一旦區塊最終確定,節點就會對其進行處理,並在後續區塊中提交其狀態。 然後通過狀態共識驗證該區塊,以確保所有節點都計算出了正確的最終狀態。 這裡的一個重要細節是,執行與共識(生成)是並行進行的。節點在執行一個區塊的計算時,也會接收其他區塊。 因此,區塊實際上是按照總順序(而不是並行)執行的,而區塊生成過程本身確實與共識並行發生。但是,對於任何給定的區塊,這些過程都是完全非同步的。 顯然,同時對同一個區塊進行共識和執行似乎是不可能的。因此,在執行區塊 n 時,節點會接收區塊 n+1 以進行下一步。 如果共識出現偏差(例如網路中有三分之一的節點惡意行事),鏈就會暫停,這與標準的 BFT 協議類似。 區塊內執行失敗的交易不會使該區塊無效,只是保持失敗狀態,因為區塊生成和執行是分開的,並且當前區塊的最終狀態會在後續區塊中提交。 2 多提議者模型如何實現以及 Autobahn 是什麼? 該共識協議本身被稱為「Autobahn」(就像不限速的德國高速公路一樣)。Autobahn 將資料可用性和交易排序分離開來,其背後有一個有趣的模型。 就像任何一條高速公路的車道一樣,存在多條車道,每個節點都有自己的通道。節點使用這些通道來提出有關交易排序的提案。提案只是交易的有序集合。 Autobahn 有時會執行「tipcut」操作,即聚合多個提案以最終確定交易的順序。 正如之前所說,每個驗證者都有自己的通道來提議交易批次。 當一個節點收到有效的提議時,會發送投票來確認該提議已收到。 提案收集到投票後,會形成一個可用性證明(PoA),確保資料已被網路中至少一個誠實節點接收。 Tipcut 的發生時間以毫秒為單位,最終來自 Autobahn 的多個提案會被「cut.」。 提議者有動力等待發布區塊並在可能的情況下發布單個區塊,但每個區塊的執行時間限制(類似於 Gas 限制)會稍微改變這種動態。 一條通道上的一個提議通常相當於一個區塊,這意味著當 Tipcut 發生時,多個區塊會被同時切斷。 此後,該 slot 的領導者將 Tipcut 傳送給其他節點以完成排序。節點實際上在對單個 Tipcut 進行投票的同時,就已經在準備下一個 Tipcut 了。 錯過批次的節點可以從 PoA 中列出的驗證者那裡非同步獲取:這就是需要資料可用性的本質原因。 在同步條件下,如果領導者正確,Autobahn 會在兩輪通訊中完成提議確認。如果領導者出現故障,該機制會選舉出新的領導者以保持程式。 下一個 tip-cut 提議實際上可以在當前 tip-cut 的提交階段開始,從而減少延遲,因為執行與生成並行進行。 實際上,整個模型是一個多提議者模型,其中許多節點可以同時為其區塊排序提出提案。每個驗證者都提議自己的區塊,並接收網路擁有這些區塊的證明(PoA),這有助於提高網路的吞吐量和整體效率。 3 並行執行及其適用情況 正如之前提到的,區塊執行過程與共識是並行發生的,儘管區塊本身實際上是按順序執行的。您可能會想這是否構成真正的並行執行。 答案既是肯定的,也是否定的。 雖然區塊是按順序執行,但區塊內的交易確實可以並行執行。如果交易不修改(寫入)相同的狀態,並且一個交易的結果不影響另一個交易,那麼它們就可以並行執行。 簡而言之,它們的執行路徑不應該相互依賴。Giga 沒有記憶體池,交易會立即被節點包含。 Giga 假定大多數交易之間不存在衝突,並在多個處理器核心上同時處理這些交易。 每筆交易的更改會暫時儲存在一個私有緩衝區中,不會立即應用到區塊鏈上。 處理完成後,系統會檢查該交易是否與之前的交易存在衝突。 如果存在衝突,該交易將被重新處理。如果沒有衝突,其更改將被應用於區塊鏈並最終確定。 也可能存在高頻衝突的情況,在這種情況下,系統會切換為一次處理一個事務,以確保事務能夠推進。 簡單來說,並行執行將事務分配到多個核心上,使那些沒有衝突的事務能夠同時執行。 4. 儲存問題與優化 由於交易量很大,資料需要既安全又易於訪問,因此其儲存方式應與傳統區塊鏈儲存略有不同。Giga 以簡單的鍵值(key-value)格式儲存資料,這是一種相對扁平的結構,有助於減少資料更改時所需的多次更新或檢查。 此外,Giga 還採用分層儲存方式:近期資料保留在 SSD(高速)上,而較少使用的資料則遷移到速度較慢、更具成本效益的儲存系統中。 如果某個節點崩潰,它可以回放日誌以恢復正確的狀態,並將更新應用於 RocksDB(一種專用資料庫)以組織資料。 該儲存系統採用了一種加密累加器(Cryptographic Accumulator),能夠證明資料的正確性而無需進行繁重的計算。累加器以批處理的方式進行更新,使得驗證者和輕節點能夠迅速就區塊鏈的當前狀態達成一致。 5. 成為多提議者 EVM L1 區塊...