把gas上限从爬楼梯改成开阀门:EIP-7783 与 EIP-7790 的受控扩容剧本 图 1
把gas上限从爬楼梯改成开阀门:EIP-7783 与 EIP-7790 的受控扩容剧本 · 图 1

以太坊每个区块能装多少计算,由区块头的 gas limit 字段决定,而这个数字的真实来源是验证者的默认投票:主流客户端各自带一个目标值,提议区块的验证者用脚投票,规则层只允许相邻区块之间上下浮动千分之一零二十四。于是每次「把上限从三千万抬一抬」都要重演同一套流程:客户端作者先发版,验证者群体慢慢跟,监控指标盯几周,社区在论坛里吵一轮硬件要求。EIP-7783 想把这套手工流程换成一台装了刹车的自动机器,姊妹提案 EIP-7790 则把旋钮刻度直接填好。两份都是信息类提案、由 Giulio Rebuffo 参与起草,2024 年 10 月先后提交,官方状态均为停滞。

一条带封顶的爬升曲线

主提案给了三种可选的曲线家族。线性版最直白:给一个起始块号、一个起始上限、一个每块增量、一个封顶,客户端对任意块号算出目标上限——未到起点用初始值,过了起点按「初始值加增量乘以经过块数」爬坡,撞到封顶就停住不再升。阶梯版把连续爬坡改成每过一段冷却块跳一格,好处是每一步都足够大、能被指标干净地观察到,社区有时间评估后再继续。指数版则按翻倍周期几何增长,适合从当前量级向目标量级的大跨度冲刺。三种都遵守同一条纪律:算出来的只是提议者瞄准的目标,协议层那套千分之一点零二的步进规则纹丝不动,共识不需要为曲线本身硬分叉——提案明确写了无需硬分叉,改的只是客户端默认行为。

把gas上限从爬楼梯改成开阀门:EIP-7783 与 EIP-7790 的受控扩容剧本 图 2
把gas上限从爬楼梯改成开阀门:EIP-7783 与 EIP-7790 的受控扩容剧本 · 图 2

参数版:每块六gas 的慢坡

参数提案选的是线性版,四个数字都填了实值:起始块取 21792420(作者标注这大约对应 2024 年 2 月 7 日,一个足够靠后的未来块,给讨论留时间),初始上限三千万gas,每块加六gas,封顶六千万gas。按每十二秒一块粗算,多出的三千万额度摊成每块六gas 大约要五百万个区块,约合两年出头走完——用极慢的坡度换「任何时刻网络感受到的变化都小到不需要恐慌」的平稳。文档里还有一处容易被略过的诚实声明:整套机制不做协议级强制,提议者依旧可以偏离曲线;刹车分两层,一层是封顶这个自动终点,另一层是社区共识——任何时候验证者群体可以改回固定值或换参数。

为什么停在停滞

把「要不要扩容」从一次性表决变成默认流淌的进程,动的是治理习惯而不只是参数:手工节奏给了社区每步审查的机会,自动曲线把审查推迟到「出问题再刹车」。反对声音围绕两点:其一,gas 上限从来不是孤立的旋钮,它和状态增长速率、验证者硬件门槛、客户端多样性互相咬合,单独给它装自动档会让其他变量措手不及;其二,信息类提案没有实现锚点,三选一给了实现者自由,也给了「先等等看别人怎么写」的理由。后来围绕扩容节奏的讨论转向了别的框架——例如把上限成长表写死进配置的提案、给状态增长单独定价的方案——7783 与 7790 就此淡出,但它们留下的问题一字没变:一条链的带宽,该由谁、以多快的速度、在谁的注视下长大。

快速问答

问:验证者能拒绝执行这条曲线吗? 答:能。曲线只存在于客户端默认值里,提议者投别的数字在协议上完全合法,这也是「无需硬分叉」这句话说到的代价。

问:这和把上限一步抬到一亿的区别是什么? 答:那是结果导向的悬崖式表态,硬件与费率会被瞬间重定价;爬升曲线押注的是每一步的可观测与可逆。

风险提示:本文讨论协议扩容机制提案,不构成投资建议;网络参数现状请以当期客户端默认值为准。