Filecoin gas費計算方式和Gas費高漲的解決方案分別是什麼?官方和社區一直在努力解決問題,一切都朝著更好方向前進!
在Filecoin區塊鏈瀏覽器中,點擊並進入gas那一欄目,可以看得到gas基礎費率走勢圖,24小時的gas數據其實就是gas費用消耗明細的展示。
在了解Filecoin gas費用計算方式前,先要了解Filecoin封裝。
Filecoin封裝
封裝,指按Filecoin的規定格式把數據進行灌裝,經歷P1P2C1C2四個打包灌裝數據的過程。這四個過程,分別對應的四個單詞就是precommit1,precommit2,commit1,commit2。翻譯成中文,分別是:預封裝一階段,,封裝一階段,封裝二階段。
預封裝一階段precommit1,簡稱P1
這是文件分割的階段,文件都要進行切片,最大不能超過256K,需要大量的耗費CPU,所以,Filecoin的礦機,都是選擇比較擅長這事的AMD的CPU。
預封裝二階段precommit2,簡稱P2
這是把分割的數據碎片做好文件名和一些信息的記錄的階段。就是通常所說的動態哈希列表DHT的形成過程,以後要找文件,全憑這個動態哈希列表DHT。
因為這個過程需要生成默克爾蘇merkle,所以主要是GPU在工作,也就是需要顯卡資源。這個階段不僅耗時,而且對gas的需求也比較大。V|ipfs7758
封裝一階段commit1,簡稱C1
這是給分割的文件碎片貼標籤的階段。這個階段是不上鏈的,並且大概只需要耗費十幾秒鐘,因此,C1階段的GAS需求可以忽略不計。
封裝二階段commit2,簡稱C2
這是做零知識證明階段,就是在礦工不知道存儲的內容的情況下,也能證明礦工已經保存了這個文件,是為了將來提交時空證明而準備的,做時空證明是為獲得區塊獎勵準備的。
這個階段一般需要大量的並行計算,也是最為耗gas費的,預計佔了總體所耗費gas的三分之二。
這四個階段,是從P1階段的數據分片、封裝,需要AMD CPU耗時4個小時。到P2階段的生成動文件信息表也叫態哈希列表DHT,一般幾十分鐘幹完,P2階段完成以後,就要發消息上鏈。然後就進入C1和C2階段,C1階段貼標籤預計十幾秒鐘,C2是做零知識證明,預計一個小時。
Filecoin Gas費計算方式
gas費用的消耗主要分為兩大部分:增長算力所消耗的gas和維持算力所需要消耗的gas。
01、增長算力消耗的gas
增長算力所消耗的gas,主要在集中在P2和C2階段,即PreCommitSector和ProveCommitSector。
Filecoin作為一個存儲類型的公鏈,所以Filecoin的基本單位是扇區Sector ,1TB的有效算力由32個32GB的扇區組成,即32X32G=1024G。
因此,增長1TB的有效算力需要消耗的gas費用的公式為:PreCommitSector與ProveCommitSector平均手續費之和,乘以32個扇區,即(0.2185+0.08)X 32=9.552 FIL
02、維持算力消耗的gas
除了增長算力可以獲得FIL區塊獎勵,保持算力,並且按要求提供證明,同樣能獲得FIL區塊獎勵 .每TB有效算力提交時空證明,參與區塊獎勵時產生的gas費用公式為:32/2349X1.5194=0.0206FIL (32是因為1TB有32個扇區,2349是因為一個時空證明消息中含有2349個扇區,如下圖1.5194為SubmitWindowedPoSt的平均手續費)。
由上可知,新增有效算力是最為消耗gas環節。V|ipfs7758
Gas費用高的解決方案
面對並不合理的gas費用,Filecoin官方在努力解決問題。
2020年12月16日 ,Filecoin官方在slack頻道發布最新公告稱,將發布Lotus v1.3.0 測試版本,並希望在實現批准之後不久,發布v1.3.0正式版本。WindowPoSt將不再燃燒Gas費了。為實現降低全網Gas費消耗,本次升級是官方強制12月22日前完成升級。
本次升級包含了FIP-9提案,該提案主要內容在於免除成功執行SubmitWindowedPoSt的基礎費用baseFee。即礦工發送「 SubmitWindowedPoSt」消息,並且消息成功執行,系統將會退還礦工所消耗的gas費用。在一定程度上降低Window PoSt擁塞,降低Filecoin礦工提交時空證明的成本。
目前仍屬於「草擬」階段的幾個方案"FIPS42、FIPS49、FIPS50",有望從更深層次上降低Window PoSt的長期成本,以及減少鏈的長期擁堵,只是因為這幾大方案需要較大工作量的開發和測試,所以,需要一定的時間。Filecoin官方和社區都在努力進一步解決問題,一切都在朝著更好的方向改進和發展,每一次改進,都離Filecoin的目標更近一步。