以太坊 EIP-1559 天然气费用计算的权威指南:基本费用、优先费用、最高费用

当以太坊使用 EIP-1559 升级其核心 gas-fee 市场时,交易从第一价格拍卖转变为涉及基本费用和小费的混合系统。正如我们之前所介绍的,这为链上交易引入了新的复杂程度。

为了进一步澄清这一点,今天我们将解释新术语以及如何处理与 EIP-1559 交易费用相关的核心变量。

EIP-1559 事务的新术语

首先,复习一下:EIP-1559 改变了以太坊交易费用的计算方式以及这些费用的去向。Gas Price您现在必须注意三个单独的值, 而不是单数:

  • Base Fee由网络本身决定。并随后被烧毁。
  • AMax Priority Fee是可选的,由用户决定,直接支付给矿工。
  • Max Fee Per Gas这是您愿意为每单位 gas 支付的绝对最大值,以使您的交易包含在一个区块中。为了简洁明了,我们将其称为Max Fee.

包含这些新字段的事务称为Type 2```,而带有原始Gas Price字段的遗留事务仍然受支持并称为Type 0。注意:EIP-1559 不会改变Gas Limit`交易被授权消耗的最大气体量。

确定基本费用

Base Fee是由以太坊网络决定的,而不是由希望进行交易的最终用户或寻求验证交易的矿工设置的。目标是 50%的Base Fee完整块,并基于最近确认的块的内容。根据新块的填充程度,它Base Fee会自动增加或减少。

例如:

  • 如果最后一个块正好是 50% 满,Base Fee则将保持不变。
  • 如果最后一个块 100% 已满,则下一个块最多Base Fee增加12.5%。
  • 如果最后一个块超过 50% 满但不到 100% 满,Base Fee增加不到 12.5%。
  • 如果最后一个区块是 0% 满(即空),则基本费用将减少下一个区块的最大 12.5%。
  • 如果最后一个块超过 0% 满但低于 50% 满,Base Fee则将减少不到 12.5%

这种新机制旨在帮助平滑交易费用并防止突然飙升。最重要的是要记住Base Fee:它是 100% 自动的,并且可以直接从网络读取。

设置优先费用

Max Priority Fee- 通常也称为矿工小费- 是一种“可选”的额外费用,直接支付给矿工,以激励他们将您的交易包含在一个区块中。虽然在Max Priority Fee技术上是可选的,但目前大多数网络参与者估计交易通常需要至少 2.0 GWEI 小费才能成为包含的候选者。话虽如此,特定的矿池可能会选择设置替代的最低纳入标准。

对于在正常、不拥塞的网络条件下提交的“典型”交易,Max Priority Fee 需要接近 2.0 GWEI。但是,对于顺序或包含在下一个块中很重要的交易,或者当网络高度拥塞时,Max Priority Fee可能需要更高的优先级来确定您的交易。

一个有点微妙的细微差别Max Priority Fee是它代表了你愿意支付给矿工的最高小费。但是,如果Base FeeplusMax Priority Fee超过Max Fee(见下文),Max Priority Fee则会减少 以保持 的上限Max Fee。这意味着实际的小费可能需要比您的小Max Priority Fee,在这种情况下,您的交易对矿工的吸引力可能会降低。

计算最高费用

现在我们已经介绍了Base Fee和的基础知识Max Priority Fee,我们可以解决有点违反直觉的Max Fee.

Max Fee是您为确认交易而愿意为每单位 gas 支付的绝对最高金额。这就是事情可能会变得有点混乱的地方 - 鉴于在大多数情况下,您的实际交易费用将低于Max Fee您预先指定的费用。原因如下:

  • 您的交易的最低汽油价格是当前Base Fee.
  • 但是,如果Base Fee在您的交易未决期间增加了怎么办?您的交易将被低估并有陷入困境的风险。或者失败。或被丢弃。由于您可能期望的所有原因,这是不可取的。
  • 因此,对于 EIP-1559 下的可预测交易结算,目前认为最佳实践是设置Max Fee预期Base Fee. 但是多少呢?为什么?
  • 我们符合 EIP-1559 的Gas Estimator 目前使用以下简单的启发式方法来计算Max Fee任何给定Base Fee组合Max Priority Fee的推荐值:
  • Max Fee = (2 * Base Fee) + Max Priority Fee

Base Fee计算时加倍Max Fee确保您的交易将在连续六个 100% 完整块中保持可销售性。下表说明了原因。

一个说明性的例子:从可销售到不可销售的六个街区

假设您的交易是在Block 1期间提交的,此时 GWEIBase Fee为100.0 。您选择设置2.0 GWEI,因此您的计算是(2 * 100.0 + 2.0)或 202.0 GWEI。Max Priority Fee``Max Fee

但是,就在您提交交易时,会发生引人注目的NFT 下降和网络需求激增。突然间,每个区块都 100% 满了——而不是上面讨论的 50% 的目标——所以基本费用每个区块最多增加 12.5%。

因此:

堵塞 基本费用 % 满的 增加基本费用 *指定*优先费用 *指定*的最高费用 *确认*后支付的汽油价格 气体“保存”
1 100.0 格威 100% 12.5% 2.0 202.0 102.0 100.0
2 112.5 格威 100% 12.5% 2.0 202.0 114.5 87.5
3 126.6 格威 100% 12.5% 2.0 202.0 128.6 73.4
4 142.4 格威 100% 12.5% 2.0 202.0 144.4 57.6
5 160.2 格威 100% 12.5% 2.0 202.0 162.2 39.8
6 180.2 格威 100% 12.5% 2.0 202.0 182.2 19.8
7 202.7 格威 - - 2.0 202.0 不合格 -0.7

正如你所看到的,它需要六个连续的 100% 完整块Base Fee才能翻倍——在这种情况下,从100.0 GWEI 到202.7 GWEI。

实际上,通过Max Fee以这种方式设置您的交易,您的交易将受到“保护”,不会在可能的最快速升级的情况下被低估并因此无法销售Base Fee

但是,如果基本费用没有如此迅速地增长呢?您将被收取低于您指定的最高费用的费用。要了解原因,请参阅上表:

  • 请记住,您的交易是在Block 1期间提交的,当时GWEIBase Fee是100.0 GWEI。您选择将 a 设置Max Priority Fee为2.0 GWEI,因此您的Max Fee计算结果为202.0 GWEI。
  • 您的交易是Confirmed在第 4 块期间进行的,当时Base Fee是142.2 GWEI。
  • 您的交易费用由Base Fee确认时的价格加上您的Max Priority Fee. 因此,您将为每笔交易支付144.2 GWEI。
  • 这比您指定的每气体57.6 GWEI 。每 gas 57.6 GWEI被有效地“节省”了,并将保留在您的钱包中。 Max Fee
  • 值得注意的是,Max Fee您的钱包并没有“取款”,然后一部分被“退还”。相反,假设Max Fee是“最大授权费用”阈值。
  • 如果您的交易在第 6 块之前没有得到确认,它将在第 7 块期间变得无法销售——并且不再是包含的候选者,因为它Max Fee的202.0 GWEI 略低于新Base Fee的202.7 GWEI。

最后,在上面的场景中,如果您在Max Fee计算中包含 2x 安全系数并将其设置为102.0 GWEIMax Fee的最小值,该怎么办?

  • 由于您的交易仍然高于100.0 GWEI ,因此您的交易在第 1 块期间将是可交易的。Max Fee``Base Fee
  • 但是,到第 2 块时,您的交易将被低估,因为它Max Fee低于新Base Fee的112.5 GWEI。
  • 您的交易将一直Pending持续到Base Fee下跌并低于其Max Fee102.0 GWEI。
  • 或者,如果网络高度拥塞,您的交易可能会被完全丢弃。

这就是为什么Max Fee违反直觉的原因:

  • 大多数时候——可能是绝大多数时候——你支付的交易费用比你的Max Fee.
  • 有时,特别是在网络高度拥塞期间,您需要支付Max Fee.
  • 如果您掷骰子并将您的值设置Max Fee得太接近当前Base Fee值,您将面临交易被低估的风险,因此不再符合纳入条件。

为了可预测的交易结算性能,我们建议在您的Max Fee计算中加入一个健康的安全因素。

MetaMask 中的 EIP-1559

默认情况下,MetaMask 10.0.0 版本会自动设置您交易的 Max Priority Fee. 您可以使用 EDIT 按钮覆盖这些费用,这将允许您选择低(确认最慢)、中或高(确认最快)费用:

要手动指定交易的Gas LimitMax Priority FeeMax Fee,请选择“高级选项”下拉菜单。

Blocknative 帮助您自信地设置 EIP-1559 交易费用

Blocknative 可以为您提供帮助。我们的Gas EstimatorGas Extension(由我们行业领先的Gas Platform API提供支持)完全支持 EIP-1559。Gas Platform 会检查每笔未决的以太坊交易,以帮助您准确估算交易费用以包含在下一个区块中。

请继续关注我们在整个产品组合中扩展和完善对 EIP-1559 的支持的更新,包括改进如何最好地计算您的Max Fee.

您还希望我们介绍 EIP-1559 的其他方面吗?还是这篇文章缺少什么?如果您有任何问题、疑虑或建议,请加入 我们的 Discord 社区。

全部评论(0)