以太坊基金会已确认即将到来的Fusaka硬分叉将引入协议级别的上限,限制单个交易可消耗的gas量,正式编码为EIP-7825。上限设定为2²⁴ gas—16,777,216单位—这标志着以太坊首次实施与区块gas限制不同的每笔交易限制。该变更已在Holesky和Sepolia上生效,并将在Fusaka激活时在主网上线。
在10月21日发布的帖子中,Toni Wahrstätter直接阐述了理由:"从即将到来的Fusaka硬分叉开始,EIP-7825引入了每笔交易2²⁴(≈16.78百万gas)的gas限制上限。"基金会的说明强调,虽然上限限制了单个交易,但它不会改变区块gas限制;相反,它旨在减轻拒绝服务攻击向量,防止单个超大调用独占整个区块,并在网络准备并行执行时提高区块打包可预测性。
EIP-7825在交易级复杂性和系统级吞吐量之间划清了界限。此前,特别大的调用可能接近完整区块gas目标(有时约为4500万),为构建者和验证者创造时间和调度问题。
新上限要求超过16.78百万gas的工作负载被分解为更小的、有序的调用。基金会的指导谨慎地指出,"对于大多数用户,没有任何变化,"因为现实世界交易的统计分布已经远低于阈值;风险表面主要涉及批量密集型合约、部署脚本和专业路由器。
从路线图角度看,该上限明确定位为并行执行的基础工作。博客文章将此变更与"Glamsterdam"时代中预期的努力(如EIP-7928)联系起来,在那里,可预测、有界限的交易是执行层中有意义并发的先决条件。通过确保每个区块至少可以打包几个独立交易—即使在病态内存池条件下—该上限减少了最坏情况下的争用,并简化了为实验可并行执行路径的构建者设计的调度器。
规范本身简洁而机械化。EIP-7825的摘要说明了每笔交易"限制为16,777,216(2^24)gas"的意图,提高了对某些DoS向量的抵抗力,并使交易处理在区块限制增加时更可预测。这种简单性一直是其在核心开发渠道中的吸引力之一:一个小型、范围明确的约束,保持与更雄心勃勃的扩展工作的前向兼容性。
关于如何编码和传达上限的辩论已经活跃了数月,包括在以太坊魔术师和AllCoreDevs通话期间对命名和参数化的讨论。一个线程总结了几位贡献者针对的核心保证:将区块目标与2²⁴的倍数对齐,这样如果内存池有n个合格交易,构建者总能至少包含n个交易—这是一个关于可预测性而非原始吞吐量的论点。
在操作上,基金会表示所有主要客户端—Geth、Erigon、Reth、Nethermind和Besu—已在Fusaka就绪版本中实施了这一变更,减少了激活时跨客户端差异风险。该帖子还强调eth_call语义不受影响,而gas限制超过2²⁴的预签名交易将需要在上限以下重新签名。开发者的升级路径很简单:针对Holesky或Sepolia进行测试,重新调整接近限制的批处理操作,并调整gas估算逻辑和警报,使其在构造超过新上限时快速失败。
政策背景值得解析。以太坊的历史一直倾向于最小化、通用约束,将复杂性推迟到更高层次。EIP-7825符合这一模式:它不对合约应该做什么发表意见,只要求它们尊重保护活性并为执行层的多线程未来做准备的上限。
它还回避了费用市场的改变,将blob空间经济学和区块目标留给其他EIP和分叉。正如基金会所说,该上限"为未来分叉中更高的吞吐量建立了更安全、更可预测的基础",这一句话简洁地总结了这一权衡。
截至发稿时,ETH交易价格为$3,835。