轉發原標題'我們終於準備好增加gas上限了嗎?'
圍繞著增加以太坊 gas 通過量的可能性,無論是通過提高 gas 上限還是減少時隙時間,都有越來越多的討論。支持這一立場的關鍵論點是,過去四年來,運行驗證者所需的硬件要求已經穩步降低。
此外,出現了兩種增加Gas上限的方法:
在這篇文章中,我將分析如果gas上限加倍,可能的最壞情況和平均情況在頻寬、計算和存儲需求方面的影響。
當以太坊在2015年推出時,gas上限最初設置為每個區塊的 gas 數量為 5,000隨著時間的推移,這個上限發生了重大變化:
– 在Tangerine Whistle硬分叉之后,特別是在EIP-150的實施之後,gas上限增加到550萬。這一調整是作為對拒絕服務(DoS)攻擊作出回應而對某些I/O密集的操作碼進行重新定價的一部分。
– 2017年7月,gas上限提高至670萬,並繼續增加:
- 2017年12月:約8百萬
– 2019年9月:約1000萬
- 2020年8月:1250萬
– 2021 年 4 月:1500 萬
在 EIP-1559 下,還有一個最大(或“硬上限”)的 gas 上限,設定為目標的兩倍。這意味著一個區塊可以包含高達 3000 萬 gas 的交易。
近四年來,氣體限制根本沒有增加。
為了回答這個問題,我們需要分析硬體需求的三個方面:帶寬、計算和存儲,如果今天將gas上限提高到6000萬。
在考慮增加gas限制時,存儲是以太坊網路最大的瓶頸和擔憂。其原因在於乙太坊在狀態大小方面的歷史增長以及這給驗證者帶來的持續壓力。
以太坊中有兩種“增長”類型:
州增長
歷史增長
以太坊的狀態——所有帳戶餘額、智能合約代碼和存儲的集合——隨著更多交易的處理和智能合約的部署而不斷擴大。自其成立以來,狀態的大小已經顯著增長,其中有時因為網絡擁塞、交易活動增加以及去中心化金融(DeFi)和NFT的崛起而出現加速增長的時期。目前,狀態增長大約是每月2.5 GB,或每年30 GB。
這種狀態的增長可能會導致以下問題:
– 較慢的磁碟存取時間
– 增加的硬體需求
然而,截至撰寫本文時,這兩個問題都不是特別重要。事實上,由於查詢的演演演算法複雜性(通常是對數),存儲系統之間的訪問時間差異僅相差幾十 GB 可以忽略不計。存儲需求也微不足道,因為新硬體的成本正在以遠遠超過每年30 GB的相對較小的狀態大小增長的速度下降。即使提高到 60 GB/年,差異也可能不會突出,無論如何仍會被硬體的技術進步所超越。
國家規模的這種增長仍然遠遠超過技術進步。即使氣體限制翻倍,硬體成本也會繼續呈指數級下降,隨著時間的推移,所需的硬體更便宜。
然而,值得注意的是,不久的將來,獨立參與者需要超過 2TB 的儲存空間來運行以太坊的驗證器。這實際上將需要 4TB 的儲存空間,因為大多數硬體是二的冪次方銷售。矛盾的是,這意味著以太坊可以好好利用額外的儲存空間,因為驗證器已經需要投資於更高容量的硬體,無論是否增加 gas 上限。
注意:沒有關於存儲的平均值與最壞情況分析,因為長時間(數周和數月)持續操作塊是一項非常昂貴的工作。
為了證明我的主張,儲存成本一直以指數速度下降,我們可以看一下過去四年每GB SSD的價格波動(以美元計算):
對不起,圖片品質不佳,但我從參考資料中取得的圖片就是這樣的。
似乎每兩年,一GB的SSD成本趨向於減半。
如果將其與存儲和狀態增長相比,差異微乎其微。以太坊的當前增長是線性的,而硬件成本則往往呈指數級下降。
我找到了一张更具说明性的圖表,關於這個趨勢與儲存成本,但它來自一篇Reddit的帖子,而不是來自一篇真正的科學出版物(雖然結果是一致的)。
以太坊的帶寬平均情況大約為2MB/s;然而,大部分數字來自於談論區塊和聚合。當要增加gas上限時,唯一需要考慮的是區塊大小。
目前,記錄的最大區塊大小為270 KB,且Deneb後的當前區塊大小為75 KB。如果我們將其加倍,這個變化將相當於歷史最大值和當前平均值的0.5-2倍增加,這將相當於節點帶寬(入站和出站)的約2-5%增加。所以,對於平均情況來說,這不是一個重大的變化。事實上,額外的三個blob將更加惡化。
最壞的情況計算為 1.7MB,這將變為 3.4MB(峰值所需的 +50% 頻寬)。這不是那麼多,但仍然很重要。我認為這不是很多的原因是,這樣的 DoS 將非常昂貴,並且峰值將是當前平均需求的 +50%,這已經被考慮在內。正如我所說,為許多連續的塊填充價值 1500 萬氣體的塊是非常昂貴的。因此,即使攻擊者可能會啟動幾個塊的 DoS,他們也必須花費大量資金這樣做。此外,他們將不得不與其他交易競爭才能進入區塊,這使得這更加昂貴。
无论如何,不论对于数字的意见如何,增加calldata成本将完全解决这个问题,所以我对此并不担心。此外,如果通过EIP-7783提高gas上限,这些风险是微不足道且可控的。
計算和區塊時間從一開始就不是問題,但我們開始了。
塊計算的平均情況通常為 <1 秒,即使對於磁碟損壞的慢速機器也是如此。這裡沒有什麼可爭論的——平均而言,這從來都不是瓶頸。
最壞的情況似乎不清楚,取決於客戶。在與一些客戶團隊交談后,似乎共識是唯一的問題是某些操作碼不能很好地擴展(例如MODEXP)。
但是,這裡的任何 DoS 向量都可以通過重新定價來修復,如果使用 EIP-7783 完成氣體限制增加,那麼這些風險可以忽略不計。
總體而言,存儲增長似乎不是增加gas限制的瓶頸,因為存儲等硬體易於升級。但是,頻寬構成了更大的威脅,因為它更難擴展。幸運的是,使用 EIP-7783,可以有效降低與頻寬和潛在計算增加相關的風險。儘管如此,重新定價調用數據成本以確保額外的安全性可能是明智的(儘管在我看來,不太可能是必要的)。
依我個人之見,如果逐步增加 EIP-7783 導入,目前可以將 Gas 上限增加 33%,甚至在今天將其翻倍。
我認為現在通過 EIP-7782 這樣做還為時過早,因為它會對 DVT 和 SSF 造成懲罰。但是,一旦弄清楚了這些 - 肯定會減少插槽時間。
轉發原標題'我們終於準備好增加gas上限了嗎?'
圍繞著增加以太坊 gas 通過量的可能性,無論是通過提高 gas 上限還是減少時隙時間,都有越來越多的討論。支持這一立場的關鍵論點是,過去四年來,運行驗證者所需的硬件要求已經穩步降低。
此外,出現了兩種增加Gas上限的方法:
在這篇文章中,我將分析如果gas上限加倍,可能的最壞情況和平均情況在頻寬、計算和存儲需求方面的影響。
當以太坊在2015年推出時,gas上限最初設置為每個區塊的 gas 數量為 5,000隨著時間的推移,這個上限發生了重大變化:
– 在Tangerine Whistle硬分叉之后,特別是在EIP-150的實施之後,gas上限增加到550萬。這一調整是作為對拒絕服務(DoS)攻擊作出回應而對某些I/O密集的操作碼進行重新定價的一部分。
– 2017年7月,gas上限提高至670萬,並繼續增加:
- 2017年12月:約8百萬
– 2019年9月:約1000萬
- 2020年8月:1250萬
– 2021 年 4 月:1500 萬
在 EIP-1559 下,還有一個最大(或“硬上限”)的 gas 上限,設定為目標的兩倍。這意味著一個區塊可以包含高達 3000 萬 gas 的交易。
近四年來,氣體限制根本沒有增加。
為了回答這個問題,我們需要分析硬體需求的三個方面:帶寬、計算和存儲,如果今天將gas上限提高到6000萬。
在考慮增加gas限制時,存儲是以太坊網路最大的瓶頸和擔憂。其原因在於乙太坊在狀態大小方面的歷史增長以及這給驗證者帶來的持續壓力。
以太坊中有兩種“增長”類型:
州增長
歷史增長
以太坊的狀態——所有帳戶餘額、智能合約代碼和存儲的集合——隨著更多交易的處理和智能合約的部署而不斷擴大。自其成立以來,狀態的大小已經顯著增長,其中有時因為網絡擁塞、交易活動增加以及去中心化金融(DeFi)和NFT的崛起而出現加速增長的時期。目前,狀態增長大約是每月2.5 GB,或每年30 GB。
這種狀態的增長可能會導致以下問題:
– 較慢的磁碟存取時間
– 增加的硬體需求
然而,截至撰寫本文時,這兩個問題都不是特別重要。事實上,由於查詢的演演演算法複雜性(通常是對數),存儲系統之間的訪問時間差異僅相差幾十 GB 可以忽略不計。存儲需求也微不足道,因為新硬體的成本正在以遠遠超過每年30 GB的相對較小的狀態大小增長的速度下降。即使提高到 60 GB/年,差異也可能不會突出,無論如何仍會被硬體的技術進步所超越。
國家規模的這種增長仍然遠遠超過技術進步。即使氣體限制翻倍,硬體成本也會繼續呈指數級下降,隨著時間的推移,所需的硬體更便宜。
然而,值得注意的是,不久的將來,獨立參與者需要超過 2TB 的儲存空間來運行以太坊的驗證器。這實際上將需要 4TB 的儲存空間,因為大多數硬體是二的冪次方銷售。矛盾的是,這意味著以太坊可以好好利用額外的儲存空間,因為驗證器已經需要投資於更高容量的硬體,無論是否增加 gas 上限。
注意:沒有關於存儲的平均值與最壞情況分析,因為長時間(數周和數月)持續操作塊是一項非常昂貴的工作。
為了證明我的主張,儲存成本一直以指數速度下降,我們可以看一下過去四年每GB SSD的價格波動(以美元計算):
對不起,圖片品質不佳,但我從參考資料中取得的圖片就是這樣的。
似乎每兩年,一GB的SSD成本趨向於減半。
如果將其與存儲和狀態增長相比,差異微乎其微。以太坊的當前增長是線性的,而硬件成本則往往呈指數級下降。
我找到了一张更具说明性的圖表,關於這個趨勢與儲存成本,但它來自一篇Reddit的帖子,而不是來自一篇真正的科學出版物(雖然結果是一致的)。
以太坊的帶寬平均情況大約為2MB/s;然而,大部分數字來自於談論區塊和聚合。當要增加gas上限時,唯一需要考慮的是區塊大小。
目前,記錄的最大區塊大小為270 KB,且Deneb後的當前區塊大小為75 KB。如果我們將其加倍,這個變化將相當於歷史最大值和當前平均值的0.5-2倍增加,這將相當於節點帶寬(入站和出站)的約2-5%增加。所以,對於平均情況來說,這不是一個重大的變化。事實上,額外的三個blob將更加惡化。
最壞的情況計算為 1.7MB,這將變為 3.4MB(峰值所需的 +50% 頻寬)。這不是那麼多,但仍然很重要。我認為這不是很多的原因是,這樣的 DoS 將非常昂貴,並且峰值將是當前平均需求的 +50%,這已經被考慮在內。正如我所說,為許多連續的塊填充價值 1500 萬氣體的塊是非常昂貴的。因此,即使攻擊者可能會啟動幾個塊的 DoS,他們也必須花費大量資金這樣做。此外,他們將不得不與其他交易競爭才能進入區塊,這使得這更加昂貴。
无论如何,不论对于数字的意见如何,增加calldata成本将完全解决这个问题,所以我对此并不担心。此外,如果通过EIP-7783提高gas上限,这些风险是微不足道且可控的。
計算和區塊時間從一開始就不是問題,但我們開始了。
塊計算的平均情況通常為 <1 秒,即使對於磁碟損壞的慢速機器也是如此。這裡沒有什麼可爭論的——平均而言,這從來都不是瓶頸。
最壞的情況似乎不清楚,取決於客戶。在與一些客戶團隊交談后,似乎共識是唯一的問題是某些操作碼不能很好地擴展(例如MODEXP)。
但是,這裡的任何 DoS 向量都可以通過重新定價來修復,如果使用 EIP-7783 完成氣體限制增加,那麼這些風險可以忽略不計。
總體而言,存儲增長似乎不是增加gas限制的瓶頸,因為存儲等硬體易於升級。但是,頻寬構成了更大的威脅,因為它更難擴展。幸運的是,使用 EIP-7783,可以有效降低與頻寬和潛在計算增加相關的風險。儘管如此,重新定價調用數據成本以確保額外的安全性可能是明智的(儘管在我看來,不太可能是必要的)。
依我個人之見,如果逐步增加 EIP-7783 導入,目前可以將 Gas 上限增加 33%,甚至在今天將其翻倍。
我認為現在通過 EIP-7782 這樣做還為時過早,因為它會對 DVT 和 SSF 造成懲罰。但是,一旦弄清楚了這些 - 肯定會減少插槽時間。