以太坊EIP-1559 Gas費用計算指南:在Gas異動下確保順利交易

註:原文來自Blocknative,以下為全文編譯。

以太坊EIP-1559 Gas費用計算指南:在Gas異動下確保順利交易

當以太坊用EIP-1559升級了核心Gas費用市場后,交易從第一價格拍賣轉變成了涉及基本費用和小費的混合系統。正如我們之前所介紹的,這為鏈上交易引入了新的複雜度。

為了進一步澄清這一點,我們將解釋新的術語以及如何處理與EIP-1559交易費用相關的核心變量。

EIP-1559交易的新術語

首先,複習一下:EIP-1559改變了以太坊交易費用的計算方式以及這些費用的去向。現在必須注意三個獨立的值,而不是一個單一的Gas價格。

  • 基本費用(Base Fee),這是由網絡本身決定的,隨後被銷毀。
  • 最高優先費(Max Priority Fee),這是可選的,由用戶決定,並直接支付給礦工。
  • 每單位Gas的最高費用(Max Fee Per Gas),這是你願意支付每單位Gas費用的最高絕對值,以使你的交易納入到區塊中。為了簡潔明了,我們將它稱為最高費用。

包括這些新字段的交易被稱為類型2,而帶有原始Gas價格字段的傳統交易仍被支持,被稱為類型0。注意:EIP-1559並沒有對"Gas限額"(即交易被授權消耗的最高Gas量)帶來變化。

基本費用的確定

基本費用由以太坊網絡決定,而不是由尋求交易的終端用戶或尋求驗證交易的礦工設定。基本費用的目標是使區塊完整度在50%,並基於最近確認的區塊內容。根據新區塊的完整程度,基本費用會自動增加或減少。

比如:

  • 如果上一個區塊完整度正好是50%,那麼基本費用將保持不變。
  • 如果上一個區塊是完整區塊(100%),那麼下一個區塊的基本費用將增加最多12.5%。
  • 如果上一個區塊完整度超過50%,但不到100%,那麼基本費用將增加12.5%以下。
  • 如果上一個區塊是空白區塊(0%),那麼下一個區塊的基本費用將減少最多12.5%。
  • 如果上一個區塊完整度超過0%,但低於50%,那麼基本費用將減少12.5%以下。

這個新機制是為了幫助平滑交易費用,防止Gas費用突然飆升。談到基本費用,最重要的是要記住:它是100%自動的,可直接從網絡上讀取。

設置優先費

最高優先費–通常也被稱為礦工小費–是一種 "可選的"額外費用,直接支付給礦工,以激勵他們將你的交易納入區塊。雖然最高優先費在技術上是可選的,但目前大多數網絡參與者估計,交易一般需要至少2.0 GWEI的小費才能被納入。儘管如此,特定的礦池可能會選擇設置替代的最低納入標準。

對於在正常、不擁擠的網絡條件下提交的"典型"交易,最高優先費需要接近2.0 GWEI。但是,對於順序或包含在下一個區塊中很重要的交易,或者當網絡高度擁堵時,可能需要更高的最高優先費來優先處理你的交易。

最高優先費的一個微妙差別是,它代表了你願意支付給礦工的最高小費。然而,如果基本費用加上最高優先費用超過了最高費用(見下文),最高優先費將被減少,以滿足最高費用的上限。這意味着實際小費可能需要小於你的最高優先費,在這種情況下,你的交易對礦工的吸引力可能會降低。

計算最高費用

在介紹了基本費用和最高優先費用的基本情況后,來了解一下最高費用這個有點反直覺的概念吧。

最高費用是你願意為每單位Gas支付的絕對最高金額,以使你的交易得到確認。在這裡,事情可能會變得有點混亂–因為在大多數情況下,你的實際交易費用將低於你預先指定的最高費用。以下是原因闡述:

  • 你交易的最低Gas價格是當前的基本費用。
  • 然而,如果在你交易尚未完成時,基準費用增加了呢?那麼,你的交易就有可能被卡住,或失敗或被放棄。
  • 因此,為了在EIP-1559下實現可預測的交易結算,目前認為最好的做法是設置一個預期基本費用增加的最高費用。但應該增加多少?理由又是什麼?
  • 我們符合EIP-1559標準的Gas估算器目前使用以下簡單的啟髮式方法來計算任何給定的基本費用和最高優先費用組合的推薦最高費用。最高費用 = (2 * 基本費用) + 最高優先費用

在計算最高費用時,將基本費用翻倍,可確保您的交易在連續六個100%完整的區塊內保持可被納入。以下是相關例子。

說明性例子:在六個區塊中,從處理到不被處理

假設你的交易是在第1區塊提交的,當時的基本費用是100.0 GWEI。你選擇設置2.0 GWEI的最高優先費用,所以你的最高費用計算為2 * 100.0 + 2.0,即202.0 GWEI。

但是,就在你提交你的交易時,出現了一個高調的NFT空投,網絡需求激增。突然間,每個區塊都成了完整區塊–而不是上面討論的50%–所以基本費用按每個區塊最高12.5%的比例增加。

因此:

以太坊EIP-1559 Gas費用計算指南:在Gas異動下確保順利交易

正如你所看到的,需要連續6個100%的完整區塊后才能使基本費用翻倍–在這個例子中,從100.0 GWEI到202.7 GWEI。

實際上,通過這種方式設置你的最高費用,你的交易就得到了"保護",避免在基準費用快速上升的情況下變得價格過低,從而無法被處理。

但是,如果基本費用沒有如此快速增長呢?你將被收取低於你指定的最高費用。可參考上表。

  • 請記住,您的交易是在第1塊期間提交的,當時基本費用是100.0 GWEI。您選擇了2.0 GWEI的最高優先費,所以您的最高費用計算為202.0 GWEI。
  • 您的交易在第4區間被確認,此時基本費用為142.2 GWEI。
  • 您的交易費用由確認時的基本費用加上您的最高優先費用的價格決定。因此,你將為這筆交易支付144.2 GWEI/Gas。
  • 這比你指定的最高費用少了57.6 GWEI/Gas。那麼,這57.6 GWEI/Gas實際上是"節省"下來的,將留在你的錢包里。
  • 值得注意的是,你的最高費用並沒有從你的錢包中"提取",然後部分被"退還"。相反,最高費用是"最高授權費用"的門檻。
  • 如果你的交易在第6區塊之前都沒有被確認,那麼在第7區塊期間,它將變得不可處理–它不再是一個候選者,因為它的最高費用202.0 GWEI剛好低於了新的基礎費用202.7 GWEI。

最後,在上述情況下,如果你在計算最高費用時沒有包括2倍的安全係數,而是將最高費用設定為最低的102.0 GWEI,會出現怎樣的情況?

  • 你的交易在第一區間是可以處理的,因為你的最高費用仍然高於100.0 GWEI的基礎費用。
  • 然而,到了第二區塊,你的最高費用就低於了新的基礎費用112.5 GWEI。
  • 這時,你的交易將保持待定狀態,直到基本費用下降並低於最高費用102.0 GWEI。
  • 或者,當網絡高度擁堵時,你的交易可能會被完全放棄。

這就是為什麼最高費用是反直覺的:

  • 大多數時候–可能是絕大多數時候–你支付的交易費會比你的最高費用少。
  • 但有時,特別是在網絡高度擁堵的時期,你將被收取最高費用。
  • 如果你選擇碰運氣,將你的最高費用設置得與當前的基本費用太接近,那麼你就有可能使你的交易失敗,且不再有資格被納入區塊。

為了實現可預測的交易結算性能,我們建議在最高費用計算中加入健康的安全係數。

MetaMask中的EIP-1559

默認情況下,MetaMask的10.0.0版本會自動設置交易的最高優先費用。您可以用"編輯 "按鈕修改這些費用,可以選擇低(確認速度最慢)、中或高(確認速度最快)費用。

以太坊EIP-1559 Gas費用計算指南:在Gas異動下確保順利交易

此外,要手動指定交易的Gas限額、最高優先費和最高費用。具體請選擇高級選項並下拉設置。

以太坊EIP-1559 Gas費用計算指南:在Gas異動下確保順利交易

本文鏈接:https://www.8btc.com/article/6679082

轉載請註明文章出處

(0)
上一篇 2021-08-30 14:37
下一篇 2021-08-30 15:36

相关推荐