平均 gas 費用一度超過以太坊主網,奧德賽活動暴露出 Arbitrum 哪些問題?
作者:餅乾,鏈捕手
北京時間 6 月 29 日晚,在 Arbitrum 奧德賽(Odyssey)活動第二階段啟動的第一天,由於鏈上的繁重負載導致高於正常的 gas 費用,Arbitrum 宣布暫停奧德賽活動。
據 L2 Fees 資料,在這一天,Arbitrum 網絡進行每筆交易的平均 gas 費用最高時飆升超過 9 美元,高於同期以太坊主網的 gas 費兩倍。
Arbitrum 作為最受歡迎的以太坊二層擴展網絡之一,其最主要的目標是大幅降低 gas 費用以提升用戶體驗,但出現這樣的事情無疑令人啼笑皆非。那么,Arbitrum 網絡究竟發生了什麼?
事件回顧
事件首先要 Arbitrum 的奧德賽活動說起,此前 Arbitrum 宣布推出為期 8 週的 Arbitrum 生態項目探索活動,激勵玩家參與生態項目交互,包括跨鏈橋、 DeFi 、NFT 和遊戲等,第一週活動集中在跨鏈橋上,大部分交易都是從其它鏈發起並直接到账,僅部分跨鏈橋需要手動 withdraw,因此並未引起 Arbitrum 網絡異常。
奧德賽的第二週活動包括固定利率借貸協議 Yield Protocol 和去中心化交易平台 GMX 的體驗任務,這些協議的操作則相對繁雜,其中 GMX 平台的任務要求用戶完成 3 次交互,然而高昂的 gas 費讓用戶感到不適,並促使用戶在各種途徑尋找其中原因。
據 GMX 社區成員反映,GMX 在前一天最小的交易費用為 0.0006 ETH,當前卻設置為 0.005 ETH(setMinExecutionFee = 0.005ETH)。該費用不屬於 gas 費,而是用於啟動和關閉 GMX 交互合約時的費用。在大量用戶發現此原因並強烈反對之後,GMX 將費用下調至 0.002 ETH。
不過需要注意的是,在此期間 Arbitrum 上絕大多數應用 gas 費並沒有明顯提升。以 Uniswap 為例,以太坊主網費用為 0.005 ETH ,Arbitrum 上 gas 費用是其一半------0.0025 ETH(2.75 美元);此外,Arbiscan 資料顯示,Arbitrum 絕大多數鏈上事務交易費用為 0.002 ETH~0.003 ETH(3 美元以下)之間,也沒有達到 6 美元以上。
也就是說,Arbitrum 高昂的 gas 費用主要是被 GMX 平均出來的,"二層網絡 gas 費大幅高於以太坊主網"更多地是一種假象。同時,這些資料似乎將矛頭指向 GMX,有人甚至指責 GMX 暗自調高費用大賺一筆。
而對於調整參數的原因,GMX 在 Discord 頻道上回應,用戶在 GMX 上開倉和平倉的過程涉及兩部分交易,分別為發送請求開倉/平倉、keeper 執行請求,這些交易的成本取決於當前 Arbitrum 的 Gas 價格。在過去幾個小時裡,由於與 Odyssey 相關的鏈上活動大幅增加,Arbitrum 的 Gas 價格出現了飆升,但發送請求開倉/平倉的手續費用只用於執行交易;而 keeper 執行請求的手續費用,GMX 沒有也不會從此類費用中賺取任何收益。
在 GMX 官方解釋之後,整個 Arbitrum 網絡的 gas 費仍然居高不下。Arbitrum 於晚上11點左右宣布由於鏈上的繁重負載導致高於正常的 gas 費用,因此決定暫停奧德賽活動並部署 Nitro 增加其容量並降低交易成本,以便 Arbitrum 內的所有社區和項目繼續擁有最佳體驗。但沒有公布明確的 Nitro 上線的具體日期。
Arbitrum 網絡擁堵的真正原因
以太坊上的 POW 機制讓用戶飽受網絡擁堵的困擾,在大規模的交易或者轉帳時期極易發生網絡擁堵,用戶必須支付高於平常的gas費用才能打動礦工幫忙處理交易。
然而,Layer 2 也有相似的競價機制。據 GoPlus Security 對 Arbitrum Gas 費飆升的分析,Layer 2 的費用分兩部分,一部分是 L1 資料提交費,理論上是用戶越多,均攤到每個用戶的費用越便宜;另一部分是 Layer 2 本身 Sequencer 的運行費用,則是人越多越貴。
因此,造成 Arbitrum 網絡 gas 費過高的真正原因是奧德賽活動太火爆,超出了 Arbitrum 網絡預設的承受能力。目前 Arbitrum 網絡中負責處理交易的節點(Sequencer)有每秒 120,000 arbgas 的帶寬限制。arbgas 是用於計算(computationa)和儲存(storage)交易資料的計量單位,大量的用戶湧入將 computational gas 拉升最高超過 1000 倍,使得每筆交易的 computational gas 占用過多的帶寬,在節點數量不變的情況下,整個網絡處理交易的能力大幅下降。
同時,每筆交易中 arbgas 的定價由節點全權定義,理論上節點可以將 arbgas 下調至 0 以保持 Layer 2 低手續費的性能,但是如此操作會導致節點來不及處理大量交易事件,最終結果仍然是網絡擁堵。在這種情況下,Arbitrum 最好的應急方案是暫停奧德賽活動,而根本的解決方案是啟動 Nitro 以擴大網絡帶寬。
據了解,Arbitrum Nitro 基於 WASM 技術構建並且將以太坊客戶端 Geth 的核心編譯到 Arbitrum 中,還提供了跨鏈通信以及新的批處理和壓縮系統,因此與 EVM 更兼容且比當前的技術快一個數量級。官方團隊預計 Arbitrum Nitro 運行後第 2 層執行速度將提高 20 至 50 倍,成本會大幅下降。
GoPlus Security 還表示,所有的 Layer2 網絡都會存在這個問題。GoPlus Security 給出的解決方案是,優化計費模型和降低 Computational 的實際成本。
Layer2 的故事如何繼續講下去
Layer2 擴容主要方向是 Rollup,即在二層網絡上把多筆交易打包起來,然後作為一個整體提交到主網進行驗證結算以提升交易速度。Arbitrum 等 Rollup 四大天王被市場寄予厚望,但 Optimism 和 Arbitrum 網絡相繼遭遇重大問題,這反映出 Layer 2 仍然處於非常早期的階段,隨著用戶的湧入,各種 bug 的出現可能會成為常態化事件。
此前在 6 月初,Optimism 開放空投代幣 OP 的領取,然而大規模用戶造成的高負載導致主網和遠程調用(RPC)出現嚴重延遲等現象,Optimism 通過部署 10 名工程師來維護公共端點正常運行,同時將 Optimism 的容量增加一倍來緩解網絡延遲的狀態。事後Optimism 反思大大低估了空投會產生的流量,需要將公共端點的容量提高 7 倍,而得到的教訓還包括定期執行負載測試、用過度供應取代drop、要求合作夥伴提前擴大容量、優先考慮並發批量提交等等。
還有 StarkNet v0.9.0 版本升級,導致之前的錢包地址將作廢,測試網的所有早期項目參與者面臨白名單不可用、活動歷史記錄丟失、資產轉移繁瑣等問題。
儘管多個 Layer2 協議都提出了進一步提升性能的解決方案,但其開發速度能夠滿足賽應用的快速增長的需求?目前,已經有頭部應用選擇探索其它公鏈。6 月 22 日,衍生品龍頭協議 dYdX 宣布將之後的 v4 版本作為基於 Cosmos SDK 和 Tendermint 共識的獨立區塊鏈推出。其原因是 Stark 技術開發周期長、L2 方案 Node Operator 網絡完全去中心化還需要很長時間。
Layer 2 需要做好充足的準備以迎接用戶的到來,不能每次都低估了用戶的參與程度和高估了網絡性能。Cinneamhain Ventures 合夥人 Adam Cochran 個人社交平台發表了觀點:Layer2 不是萬能的,對於 Arbitrum,他們的 Nitro 已在批處理和壓縮方面做出了巨大的提升。