Gas費現狀以及FIP-10影響

北京時間3月4日,Filecoin spec-actor v3 的升級生效,伴隨的是Lotus v1。5。0的強制性全網升級及其附帶的FIP-10生效。FIP-10提案主要是針對SubmitWindowedPoSt證明進行Gas費最佳化,最開始方案有兩種:提供快速通道或者批次驗證,最終確認快速通道。FIP-10透過快速通道來提高鏈的利用率,減少SubmitWindowedPoSt證明所有的鏈上證明步驟,透過激勵以及懲罰手段來監督時空證明。

因為目前全網所有礦工未全部更新Lotus v1。5。0,

很難實際預測真實的發生場景。不過初步觀察可以分析,目前SubmitWindowedPoSt一天消耗不超過1000 FIL、資訊條數3萬多條(佔全網資訊3%左右),直觀表現對全網影響降低Gas費可能不會很大。

真實情況需要進一步結合全網實際情況,不過根據市場需求,即便是降低了Gas Fee,每日會湧出新的算力增長,可能會很快覆蓋該部分資訊量。

總得來說以上只是初步分析,具體結果需要等全網更新完才能有結論,這次我們先回顧一下目前Gas費的消耗,深入解讀Gas現狀。

一、全網Gas費懲罰:Filecoin網路迭代的試錯成本,未來可能會進一步擴大

根據2月8日資料統計,當時全網規模2。377EiB,在銷燬近1700多萬FIL中,其中有約11萬FIL(不超過全網燃燒的1%)超額燃燒。在1185名礦工當中,全網規模前一百名懲罰佔比92。7%,絕大多數都是大礦工懲罰所致,主要原因有以下:

Gas費現狀以及FIP-10影響

礦工算力與累計懲罰數量對比

Filecoin網路早期變動導致的懲罰行為。

Filecoin從太空競賽至今,Louts版本從v0。5。0迭代至今v1。5。0升級超過20次,FIP提案超過10個。Filecoin網路在逐步成熟,而這個過程中,早期礦工也伴隨著網路的不穩定支出對應的懲罰。

早期礦工的小步試錯懲罰。

礦工在不同的版本中會一直尋求最優的解決方案,主要針對懲罰為:算力下跌和打包不該打包訂單的三倍懲罰,礦工在尋求最優解的過程中需要支付嘗試成本。

小礦工的運維不穩定懲罰。

在目前階段,大礦工具備條件和經驗尋找到最為適合的Gas調控演算法;而小礦工會因為運維經驗或者技術不足,難以快速找到解決方案,從而導致懲罰,甚至出現一批小礦工的累計懲罰甚至大於大礦工的累計懲罰(圖中紅框部分:左邊小礦工累計懲罰>右邊大礦工累計懲罰)。

以上懲罰主要歸咎於Filecoin網路的不穩定以及礦工的試錯成本導致,不過隨著網路趨於穩定,累計懲罰增減緩慢,只有新進場的礦工重蹈覆轍,習慣懲罰規則。

不過該部分隨著FIP-10生效後,SubmitWindowedPoSt無需上線即時證明,因為“僥倖心理”的影響,可能會有出現一類新的懲罰現象(發現故障扇區最低罰款為20FIL),會進一步擴大懲罰累計。

二、Gas主要費用組成(基礎燃燒和ProveCommit):FIP提案最佳化和調整減少無謂損失

截至2月8日,Filecoin全網基礎燃燒、超額燃燒以及礦工小費累計共980萬枚FIL,其中基礎燃燒佔比95。03%、超額燃燒佔比4。76%和礦工小費佔比0。21%,大部分佔比主要為基礎燃燒。

Gas費現狀以及FIP-10影響

Filecoin總燃燒費用縱向組成

從橫向對比,Filecoin主要燃燒分為PreCommit、ProveCommit和SubmitWindowedPoSt,其中ProveCommit在該三者佔比中,佔比最高為69。49%。

Gas費現狀以及FIP-10影響

Filecoin總燃燒費用橫向組成,

總結以上橫縱相對,可知Filecoin的主要消耗為基礎燃燒,而基礎以ProveCommit為主要消耗,所以目前礦工在針對FIP-13的批次ProveCommit聚合提交上鍊以及根據Gas Fee來調整係數來減少整體基礎燃燒的體量。

其中ProveCommit取決於Filecoin網路增速,即短期內全網算力增速平均每個小時1PiB增長,目前網路較為擁堵,短期難以驟降,只能針對一些無謂消耗來進行最佳化,如ProveCommit中的失敗資訊(佔ProveCommit約2%)以及超額燃燒(佔ProveCommit約2%),主要的解決方式參考如下:

失敗率主要是資訊積壓所致,從而導致過多過期資訊上鍊,其中提高資訊Gas費來提高推送利用率是一個方向;

超額燃燒主要是GasLimit/GasUsed引數,既能夠保證資訊被順利接受又能減少過多的燃燒。

三、超額燃燒:SubmitWindowedPoSt比ProveCommit更值得關注

2月8日資料顯示,即便超額燃燒佔所有燃燒佔比不超過5%,但是FIP-10在提案尚未生效期間,仍有很多問題值得分析和解決,如SubmitWindowedPoSt總體燃燒比PreCommitSector少近20%以上,但針對在超額燃燒比重卻約是PreCommitSector的3倍左右,所以針對SubmitWindowedPoSt的超額燃燒在FIP-10之前是值得探究解決的問題。

Gas費現狀以及FIP-10影響

超額燃燒對比

針對SubmitWindowedPoSt超額燃燒解決思路,目前ForcePool已實現SubmitWindowedPoSt為0的超額燃燒。

四、Gas費的重要影響因子以及解決思路

總的來說,Gas費過高或者超過平均水平的主要有:Gas Used過高、GasLimit/GasUsed引數調整不合理、GasFeeCap閥門式的引數調整、節點扇區大小、失敗率和懲罰。

Gas Used過高:控制叢集體量及算力增長產量效果較為明顯,以降低超額燃燒和基礎燃燒。

Gas Used高昂主要為大礦工的Gas Used普遍會比小礦工高,替換小叢集算力增長是一種改變方式。除此之外,節點嚴格控制增速以及節點資料資訊適當“瘦身”。

GasLimit/GasUsed引數調整為最優值。

針對超額燃燒設定GasLimit/GasUsed為合理引數,主要是避免過高地設定GasLimit,讓GasLimit接近GasUsed,即可減少或者避免超額燃燒,針對該部分可針對以下規則調整。

Gas費現狀以及FIP-10影響

GasFeeCap閥門式的引數調整。

不同的礦工對於其成本會有一定的把控,可針對其成本的核算來設定GasFeeCap閥門,根據實際的BaseFee情況來決定是否做算力增長。

節點扇區大小:32/64GiB扇區做算力增長。

根據Base Fee的浮動,來採取64GiB扇區與32GiB扇區產量配置來解決或緩解Gas問題,以動態調控Gas及封裝速度。

失敗率:降低失敗傳送次數。

失敗率主要是因為資訊失敗傳送而無謂損耗,權衡失敗損耗以及過高使用燃燒費用成為關鍵,取決於如何設定GasFeeCap。

懲罰:三倍懲罰不該打包訂單以及SubmitWindowedPoSt鏈下證明懲罰仍然值得關注。

針對算力懲罰已經寬鬆了,礦工可在有效時間內恢復;三倍懲罰不該打包訂單經過訂單篩選打包即可;而對於SubmitWindowedPoSt鏈下證明懲罰最低為20FIL值得礦工時刻保證扇區的故障以及修復。