EIP-1559 的基础费调节有一个几乎不被提起的前提:出块节奏稳定。协议按块比较用量与目标来决定下一块基础费涨还是跌,可一块所代表的时间并不恒定——客户端版本差异、网络状况、出块者行为都会让平均间隔围绕 12 秒抖动。2021 年 10 月提交的 EIP-4396 想把时间因素塞进公式:让基础费对一段时间内的吞吐负责,而不是对单个区块负责。它现在是 Stagnant,公式从未生效,但作为理解 1559 假设边界的一个透镜,仍然好用。
公式到底改了什么
规范沿用了 1559 论文式的伪代码语言,对基础费校验只动了一处:把父区块的目标用量从固定常数改成与出块间隔挂钩。间隔用父区块时间戳减去祖父区块时间戳测得;调整后的目标等于原始目标(Gas 上限除以弹性系数)乘以这个间隔、再整除 12 秒这个目标出块时间,同时封顶不超过 Gas 上限的百分之九十五。于是一旦上一块的实际间隔偏长,它理论上可消化的目标就更大;用量恰好等于这个调整后的目标时,基础费纹丝不动。1559 原版那条用量高于目标就涨、低于目标就跌的涨跌逻辑被原样保留,改动的只是它瞄准的那条参照线。

它想压掉的两类失真
设想一个运维事件:某主流客户端出了缺陷,平均出块间隔被拖到 15 秒。每块的容量没变,但单位时间网络真正消化的事务量掉了近四分之一。纯按块判断,只要每块用量没超目标,基础费就一路平稳——拥堵在时间口径上正在恶化,价格信号却装死。反过来,若某时期出块偏快,同样会出现每块看都不挤、秒级其实很挤的低估。4396 用目标乘以实际间隔这一项,把两个方向的失真同时压掉:它把目标从每块多少 Gas,翻译成这段真实时间里理论上应该消化多少 Gas。代价则是多了一个随环境漂移的输入项,公式的确定性略有让步。
为什么停在草案区
提案没有推进,原因不在公式对错,而在收益与风险的不对称。它触碰的是共识层校验:所有节点都要多算一次时间戳差,间隔异常大、异常小、重组后父块选取这些边界情形都要进测试矩阵,任何实现分歧都会直接分裂链。而 12 秒这个目标值本身只是客户端参数调优的经验值,把软常数固化进共识规则,日后每动一次出块参数都变成一次硬分叉级别的工程。更重要的是,1559 多年运行里这类系统性失真的真实正例很少,客户端团队更愿意把精力投向扩容主线。Stagnant 不是被否决,更像是够用即安的搁置。
给钱包侧的使用直觉
这篇旧提案对日常估费的价值,是给你一个核对直觉的坐标。现网估费永远按 EIP-1559 是什么?以太坊费用怎么由基础费和小费决定 的现行机制运转:基础费反映的是区块口径的拥挤度,你的钱包再在此基础上填出 最高费用与优先费怎么填?EIP-1559 交易两个费用字段的读法 讲的那两个字段——最高费用与优先费。当某个时段你感觉明显拥堵、钱包报价却纹丝不动时,4396 的视角提醒你:先到浏览器上看一眼近期的平均出块时间指标,如果间隔异常,报价迟钝就不奇怪,再决定是加价插队还是等下一个窗口。同理,若社区哪天重启时间感知公式,最先变的会是你感受到的费用对拥堵的反应曲线,而不是钱包里那两个输入字段的格式。
小结
为一个公式的隐含假设专门写一篇提案,本身就说明以太坊参数工程的较真程度。EIP-4396 教给普通用户的不是某个具体数值,而是一种审费姿势:任何估费工具说不堵的时候,先问它眼里的堵是按块算的还是按时间算的——这两个口径在多数日子里几乎重合,但在不常规的日子里,差的就是你的成交与落空。
发表评论
还没有评论,来说两句吧。
评论区为展示样式,提交不会被处理。