以太坊 Gas 上限擴展:帶寬、計算與存儲分析

作者:Giulio Rebuffo 來源:Erigon 翻譯:善歐巴,金色財經

關於提高以太坊的 Gas 吞吐量的討論越來越多,主要通過提高 Gas 上限或縮短區塊生成時間來實現。支持這一主張的主要論點是,在過去四年中,運行驗證節點的硬件需求穩步下降。

此外,出現了兩種增加 Gas 上限的方案:

  • EIP-7782:通過減少以太坊協議的區塊時間

  • EIP-7783:通過“漸進增加”的機制逐步提高 Gas 上限

本文將分析在 Gas 上限翻倍的情況下,帶寬、計算和存儲需求在最壞情況下和平均情況下可能的表現。

回顧以太坊 Gas 上限的歷史

以太坊於 2015 年推出時,Gas 上限最初設置為每區塊 5,000 Gas。隨後這一限制經歷了重大變化:

  • 2016 年:Gas 上限首次提高至約 300 萬,隨後又提升至約 470 萬。

    • 在 Tangerine Whistle 硬分叉之後,特別是 EIP-150 的實施,Gas 上限增加到 550 萬。這一調整是為應對拒絕服務(DoS)攻擊,對某些 I/O 密集型操作碼重新定價的一部分。

  • 2017 年 7 月:Gas 上限提高至 670 萬,並繼續上升:

    • 2017 年 12 月:~800 萬

    • 2019 年 9 月:~1000 萬

    • 2020 年 8 月:1250 萬

    • 2021 年 4 月:1500 萬

根據 EIP-1559 的規定,還有一個最大(或“硬上限”)Gas 限制,設為目標的兩倍。這意味著一個區塊最多可以包含 3000 萬 Gas 的交易。

在過去的近四年裡,Gas 上限一直沒有進一步提高。

是否是時候重新審視 Gas 上限了?

為了回答這個問題,我們需要分析如果將 Gas 上限提高到 6000 萬,硬件需求在帶寬、計算和存儲方面的表現。

存儲

在考慮提高 Gas 上限時,存儲是以太坊網絡面臨的最大瓶頸和擔憂。原因在於以太坊狀態規模的歷史增長,以及這種增長對驗證者帶來的持續壓力。

以太坊有兩種類型的增長:

  • 狀態增長

  • 歷史增長

狀態增長

以太坊的狀態,即所有賬戶餘額、智能合約代碼和存儲的集合,隨著交易的增加和智能合約的部署不斷擴展。自以太坊成立以來,狀態規模大幅增長,特別是在網絡擁堵、交易活動增加以及去中心化金融(DeFi)和NFT興起的推動下。目前,狀態增長約為每月 2.5 GB,或每年 30 GB。

這種狀態增長可能導致以下問題:

  • 磁盤訪問時間變慢

  • 硬件要求增加

然而,截至本文撰寫時,這些問題都不是特別顯著。存儲系統之間相差幾十 GB 的訪問時間差異非常微小,因為查詢的算法複雜度通常是對數級的。此外,存儲需求也不大,因為新硬件的成本下降速度遠遠超過每年 30 GB 的狀態增長。即使增長到每年 60 GB,這一差異也不會特別顯著,硬件的技術進步依然會超前。

i6S4gAdygFcc4ofp3QmeVaT4U0MqhHhZGempykrN.png

歷史增長

雖然狀態規模增長是一個問題,但技術進步使得硬件成本大幅下降,減輕了壓力。即使 Gas 上限翻倍,硬件成本依然在持續快速下降,使得所需的硬件變得越來越便宜。

vN1bxvpC5Vj95h9PLUZhZebNknA4Fiap9Of1FeFN.png

值得注意的是,單獨的質押者很快將需要超過 2 TB 的存儲空間來運行以太坊驗證節點。這意味著他們實際上需要 4 TB 的存儲空間,因為大多數硬件都是以 2 的冪出售的。因此,以太坊完全可以利用這些額外的存儲空間,因為無論 Gas 上限是否提高,驗證者都需要購買更大容量的硬件。

存儲成本變化

為了證明存儲成本在以指數速率下降,我們可以查看過去四年 1 GB SSD 的美元價格波動情況。數據顯示,每兩年 1 GB SSD 的成本大約減半。

8RIreRxHlLSLtZeTBFfjQEQgUsG4by6ry4iXMhCn.png

將這一趨勢與存儲和狀態增長進行比較,差異非常小。目前以太坊的增長是線性的,而硬件成本的下降則是指數級的。這一趨勢進一步證明,提高 Gas 上限對硬件需求的影響相對較小。

ny3PFtahmdApwQ9U0WHhMIOF340IAP730oOfXpa1.png

帶寬

以太坊的平均帶寬需求大約為 2MB/s;不過,這個數字主要來自信標鏈(CL)的數據傳播和聚合。當討論提高 Gas 上限時,唯一需要關注的就是區塊大小。

KJ4kaSPEKiVeQNPbhF84RQJTl14zCxPr3KmZJHoe.png

目前,記錄的最大區塊大小為 270 KB,Deneb 升級後的當前區塊大小為 75 KB。如果將其翻倍,這一變化相當於增加 0.5-2 個數據塊(blob),與歷史最大值和當前平均值相比,相當於節點帶寬(輸入和輸出)增加了約 2-5%。因此,在平均情況下,這並不是顯著的變化。事實上,增加 3 個 blob 的影響會更大。

最壞情況:Gas 上限翻倍

最壞情況下,區塊大小被計算為 1.7MB,翻倍後為 3.4MB(帶寬需求增加 50%)。這雖然不算多,但仍然是個值得注意的增幅。我認為這個增幅並不算多的原因在於,這樣的拒絕服務(DoS)攻擊成本相當高,而帶寬的增加相當於當前平均需求的 50%,這是已在考慮範圍內的。此外,連續多個區塊都填滿 1500 萬 Gas 是非常昂貴的。因此,即使攻擊者有可能在幾個區塊內發起 DoS 攻擊,他們也需要花費大量資金。此外,他們還必須與其他交易競爭區塊空間,這進一步增加了攻擊成本。

無論如何,不管對這些數字的看法如何,提高 calldata 成本可以完全解決這個問題,所以我對此並不擔心。此外,如果通過 EIP-7783 增加 Gas 上限,這些風險是可忽略且可控的。

計算

計算和區塊時間從來不是問題所在,但讓我們來看一下。

平均情況

區塊計算的平均時間通常小於 1 秒,即使對於配置較差的機器也是如此。總的來說,這從未是瓶頸。

最壞情況

最壞情況目前尚不清楚,且取決於客戶端。與一些客戶端團隊溝通後,大家的共識是,唯一的問題是某些操作碼(如 MODEXP)擴展性不好。

然而,這裡的任何 DoS 攻擊向量都可以通過重新定價來解決,而且如果通過 EIP-7783 提高 Gas 上限,那麼這些風險是可以忽略的。

結論

總體而言,存儲增長並不是提高 Gas 上限的瓶頸,因為存儲硬件容易升級。然而,帶寬問題是一個更大的威脅,因為帶寬擴展難度更大。幸運的是,通過 EIP-7783,可以有效緩解與帶寬和潛在計算增加相關的風險。儘管如此,重新定價 calldata 成本以確保額外的安全性可能是明智的選擇(儘管我個人認為這並不是必要的)。

就我個人而言,我認為目前可以在 EIP-7783 的漸進增加機制下,將 Gas 上限提高 33%,甚至翻倍。

通過 EIP-7782 提升上限可能為時尚早,因為這對分佈式驗證(DVT)和 SSF 會帶來不利影響。然而,一旦這些問題得到解決,縮短區塊生成時間無疑是未來的趨勢。

來源
免責聲明:以上內容僅為作者觀點,不代表Followin的任何立場,不構成與Followin相關的任何投資建議。
喜歡
收藏
評論