撰文:SeongwanPark
编译:Glendon,TechubNews
以太坊社区近期聚焦于一个热门议题:增加Gas上限。提高Gas上限的想法似乎很合理,因为它符合用户对更高交易吞吐量的需求,也反映了网络容量随时间推移的自然增长趋势。对此,许多研究人员和社区成员表示强烈支持,他们认为以太坊已经为这一变化做好了充分的准备,并视其为直接增强以太坊可扩展性的适时之举。
该提案在社区内也引发了广泛关注,由社区创建的网站如pumpthegas.org,旨在普及Gas上限增加的基础知识,以及验证者如何更改其节点设置。另一个网站Gaslimit.pics则积极追踪验证者对更高Gas上限支持度的进展——数据显示,截至2024年12月21日,已有25%的以太坊验证者调整了客户端配置以示支持。一旦超过50%的验证者同意提高Gas上限并修改其客户端配置,那么以太坊的Gas上限将开始提升,并最终稳定在新的目标值上。
值得注意的是,该提案与以太坊以rollup为中心的路线图有所不同,即与近期的可扩展性改进(例如EIP-4844和EIP-7691)不同,这些改进侧重于rollup扩展和blob交易,而提高Gas上限是一种L1层级的扩展方法(TechubNews注,以太坊区块Gas限制是指在一个区块中可以包含的操作数量上限,这个上限由Gas值来衡量)。
虽然这一讨论让社区部分成员感到兴奋,但同时也引起了研究人员对以太坊去中心化和安全等核心价值面临潜在风险的担忧。批评者警告称,在最糟糕的情况下,更大的区块大小可能会给共识层带来压力,并增加验证器硬件要求,从而可能威胁网络稳定性。
这些担忧是否是杞人忧天?本文为此探讨了提高以太坊Gas上限提案的简史、潜在影响以及正在进行的讨论所涉及的技术和一些考量因素。
提高以太坊Gas上限提案简史事实上,提高以太坊Gas上限的想法已讨论了一段时间。在2024年1月的以太坊AMA上,以太坊联合创始人VitalikButerin建议将Gas上限提高到4000万(目前,以太坊的Gas上限为3000万),这与摩尔定律相符,反映出硬件能力的稳步提升。
值得一提的是,自2021年4月以来,以太坊一直未调整其Gas上限,尽管在此期间硬件已经取得了显著进步。于是,现在许多社区成员认为,以太坊是时候考虑这些发展了。
就在最近,一个提案更是提出「雄心勃勃」的目标:将Gas上限翻倍至6000万。当然,6000万主要被视为一个长期目标,而非即时目标。2024年12月,ToniWahrstätter则建议采取更为谨慎的方法,主张先将Gas上限增加到3600万(增长20%)作为更安全的第一步。
因此,目前以太坊Gas上限增加到3600万被视为一个初始里程碑,任何进一步的增加都将遵循逐步、分阶段的方法。
区块Gas上限如何调整?区块Gas上限可以在无需分叉或更改网络规则的情况下逐步增加。相反,验证者通过修改其配置选项来实现向后兼容,并根据社区共识进行定期、灵活的调整。
与普遍认知相反,以太坊的区块Gas上限并非固定在3000万。区块提议者可以在一定限度内对其进行微调。具体来说,一个区块的Gas上限可以在上一个区块Gas上限的1/1024内进行改变。例如,如果当前区块的Gas上限是3000万,那么在下一个区块中,它可以增加到「30,000,000+30,000,000×(1/1024)=30,029,296」。
下面的代码展示了在geth客户端中以太坊节点的默认行为:如果新区块的Gas上限相对于其父区块(ParentBlock)在可接受范围内,则它将被视为有效。
如果连续区块的提议者都同意提高上限,那么Gas上限可以持续增加。例如,在理想情况下(假设验证者达成共识),达到3600万这一首个里程碑(增长20%)大约需要「log(1.2)/log(1025/1024)=187个区块」,即38分钟。一旦超过50%的验证者同意,增加便可以迅速实现。
提高Gas上限会带来什么影响?让我们先来看看Gas上限增加的一些相对可预测的影响。区块容量的增加将使处理当前区块链需求变得更容易,从而降低Gas费用。
在短期内,根据EIP-1559机制,Gas费用的减少可能会导致ETH销毁量减少,暂时增加以太坊的净发行量。在EIP-4844之后也出现了类似的趋势,当时rollup的数据可用性(DA)费用大幅降低,导致ETH销毁量减少。Gas上限的增加也可能产生同样的效果,进一步加剧短期通货膨胀。
然而,从长远来看,费用的降低可能会鼓励更多的网络活动,因为更多的用户可以负担得起交易费用。这种增加的活动可能会推动以太坊的网络效应,吸引更多的DApp并促进更广泛的采用。随着以太坊成为DApp和DeFi系统中不可或缺的一部分,ETH作为货币的使用频率可能会增加。由此产生的ETH使用量增加反过来可能会推动网络活动的进一步增长,为以太坊生态系统创造一个正反馈循环。
Gas上限增加后,构建新的DApps将成为可能除了降低Gas和改善交易流程之外,单个区块的Gas上限增加还可能解锁全新的机会。虽然适度增加到3600万不一定会带来显著变化,但更大幅度的跃升至6000万可能会使之前受3000万Gas上限限制的新型DApps和交易成为可能。因为某些几乎填满或超过当前3000万Gas上限的操作,在更改后可能会更高效地执行或首次变得可行。
例如,需要大量Gas的交易(NFT批量铸造、大规模代币空投或DAO活动),通常接近或超过当前的3000万Gas上限。这些交易通常分散在多个区块中,导致效率低下、交易延迟和潜在的漏洞。下图中显示的一个具体示例是NFT批量铸造交易,消耗超过2800万Gas。
交易哈希:0xf99bdd89f7e3186e63d71a4a3ffb53cb5cd1c3190ce3771c966f2a82b3346bee
将区块Gas上限增加到6000万后,此类操作能够在单个区块内完成,确保原子执行。这保证了整个操作要么成功,要么失败,避免了部分完成,确保了参与者的公平性,同时减少了操纵的机会。
除了优化现有用例外,更高的Gas上限还可能为需要计算密集型操作的创新DApps铺平道路。例如,随着Gas上限的提高,链上AI应用(如小规模模型训练或推理)可能变得可行。同样,更复杂的智能合约(如完全链上游戏或复杂的治理机制)可以在更高容量的环境中蓬勃发展。这些进步都可能会扩展以太坊的功能和吸引力,使生态系统更加多样化。
因此,在许多情况下,将Gas上限翻倍可能会带来更多的益处,因为它可以减少碎片化并解锁一些新的可能性。
增加Gas上限对区块链「不可能三角」困境意味着什么?增加Gas上限从根本上讲是为了提高以太坊的可扩展性。在区块链「不可能三角」困境的背景下,实现更高的可扩展性往往以牺牲去中心化或安全性为代价。这就是为什么提高Gas上限的提议引发了一些质疑,人们担心这可能会通过提高验证者要求而导致中心化,或者通过降低共识层的稳定性而削弱安全性。
不过,支持者却认为,这并不是为了提升可扩展性而牺牲去中心化或安全性。相反,他们将其描述为利用摩尔定律所描述的硬件性能改进来扩大区块链的总容量。在这一观点下,区块链「不可能三角」困境的「三角形」可能会扩大,因为现代硬件允许更大的总容量,而不必降低以太坊的核心属性。
要评估这是否属实,必须仔细审查提高Gas上限的潜在风险。关于去中心化的考虑因素可能包括增加验证器硬件要求,以及MEV策略的复杂性。在安全性方面,我们应该考虑增加最坏情况下的区块大小、交易的执行时间,这些都会影响分叉或错过slots的比率。
Gas上限增加与区块大小单个区块中Gas上限的增加可容纳更多调用数据,这会影响最坏情况下的区块大小。目前,通过用无意义的调用数据填充区块所能达到的最大区块大小约为1.8MB,而使用六个blob,在单个slot中传播的总数据大小可达到2.58MB。更高的Gas上限将增加这种最坏情况下的区块大小,可能会导致网络节点用于通信的对等(P2P)层出现问题。
这一情况可能会给P2P层的共识客户端带来压力。当Gas上限超过4000万时,最坏情况下的区块大小可能会超过默认客户端行为中内置的限制,导致一些客户端无法正确提议或传播区块。因此,在大幅提高Gas上限之前,解决这些限制至关重要。
希望EIP-7623通过调整数据可用性交易中的调用数据(calldata)价格来提供解决方案,这可以将最坏情况下的区块大小从2.58MB减少到大约1.2MB。因此我们认为,为确保未来任何Gas上限的增加都能保持共识稳定性,采用EIP-7623将是必要的。
同样,实际区块大小(通常填充交易数据的区块大小)与重组或遗漏slot的概率相关。分析slot数据(#9526972至#10351782)表明,对于较小的区块,包含slot与重组/遗漏slot之间的区块大小分布差异很小。然而,随着区块变大(例如,超过0.25MB),发生重组或遗漏slot的可能性就会增加。
这种相关性可能源于交易执行时间的增加或默认的P2P行为等因素,而不仅仅是区块大小本身。虽然观察到的关系突出了潜在风险,但并没有确定因果关系。
综上所述,虽然区块大小的增加会影响slot的稳定性,但最坏情况下的区块大小对于确保P2P层的稳健性尤为重要。未来增加Gas上限时必须伴随如EIP-7623中提出的变更,以有效缓解这些风险。
Gas上限增加与执行时间由于Gas上限的增加允许更多的交易被纳入区块中,交易的执行时间也会相应增加。这一增加是否关键取决于分叉或遗漏的slot,这代表了整体共识的稳定性。
下图显示,随着区块中使用更多的Gas,执行时间趋于增加。预计20%的Gas上限增加会略微延长执行时间,但具体影响难以预测。执行时间并不总是与最大Gas上限或Gas使用量直接成正比。但是,如果我们根据图表做出保守的比例假设,认为它们成正比,那么执行时间增加400~500毫秒似乎是合理的。
现在,让我们来探讨一下执行时间与分叉或遗漏slot之间的关系。
上图中的红色方框强调,执行时间超过4000毫秒的slot与执行时间较短的slot相比,更容易发生重组或遗漏。虽然大多数重组或遗漏的slot发生在1000~3000毫秒之间(表明在这个范围内执行时间与重组概率之间的相关性较弱),但红色方框中的区块显示,当执行时间超过4000毫秒时,重组的可能性明显更高。另一图表中通过显示执行时间超过4000毫秒的slot的重组或遗漏率,比4000毫秒以下的slot高出三倍以上,进一步强调了非常高的执行时间对稳定性的影响。
Gas上限增加是否会影响验证者硬件要求?在提高Gas上限时,验证者主要担心的是运行验证者节点的存储大小。截至2024年12月,一个验证者节点大约有1.5~1.6TB的存储空间,用于维护所有历史和状态数据。Gas上限的增加将加速历史和状态数据的增长。
在2020年和2021年,运行一个验证者节点需要2TB的固态硬盘(SSD)。然而,当历史和状态数据达到1.8TB时,使用2TBSSD的验证者需要将其更换为4TBSSD。虽然现在4TBSSD的价格与三年前2TBSSD的价格几乎相同,约为250美元,但更换本身就意味着维护成本和技术难度。
3600万的Gas上限可能不是什么大问题。但如果Gas上限增加到6000万或是更多,验证者节点将不得不持续更换硬件,从而累积维护成本,威胁到去中心化特性。
当EIP-4444被采用时(目标是在2025年5月之前发布客户端),历史数据的增长可能会停止,从而为Gas上限的增加提供更多空间。不过,如果没有EIP-4444,那么历史数据的增长可能是提高Gas上限的下一个瓶颈。
StormSlivkoff对状态增长的分析表明,状态增长也是一个潜在瓶颈,但目前的增长率(每月约2.62GiB)是可管理的,现代硬件可以支持十年的增长。内存需求随着状态大小的增加而增加,而将Gas上限提高到6000万将加速这一过程,每年可能需要额外2~4.7GiB的RAM。虽然目前64GiBRAM的配置提供了足够的缓冲空间,但持续的增长可能会使升级更加频繁。
预计即将到来的改进,如Verkle树和状态过期,将减轻这一负担,但仔细监控仍然非常重要。
Gas上限增加对MEV意味着什么?另一个可能影响去中心化的因素是Gas上限增加对验证者MEV(最大可提取价值)收益的影响。随着MEV的重要性日益凸显,人们开始担心使用先进MEV策略的复杂验证者和较小的独立质押者之间的收入差距。这种收入差距可能会加剧中心化压力,因为拥有更多资源和专业知识的验证者将占据主导地位。为了解决这个问题,以太坊社区正在积极讨论诸如提议者-构建者分离(PBS)和MEV销毁等机制,旨在平衡验证者的收入。
理论上,Gas上限的增加允许单个区块中包含更多交易,从而可能加剧与MEV相关的收入差距。虽然MEVBoost已经部分缓解了这一问题,使独立质押者能够捕获部分MEV奖励,但关于验证者收入差距的数据仍然没有定论。这是由于定义MEV交易和准确跟踪收益存在挑战,尤其是在跨中心化交易所(CEX)和去中心化交易所(DEX)的复杂MEV策略等复杂场景中。然而,这些场景相对罕见,因为大多数MEV都来自区块顶部策略。
另一方面,更高的Gas上限也会促使更复杂和资源密集型的MEV策略成为可能。虽然很少见,但确实有MEV机器人执行高度复杂的交易,几乎消耗了整个区块的Gas上限。例如,观察到一笔使用超过1800万Gas的机器人交易,在一个区块内执行了多次交换和流动性操作。随着Gas上限的增加,这类策略可能会变得更加普遍,从而有可能扩大成熟验证者和小型参与者之间的差距。
结论围绕提高以太坊Gas上限的讨论提供了一个激动人心的机会,可以推动可扩展性、降低交易费用,并为受当前限制约束的DApps创造了新的可能。然而,这一议题也触发了对去中心化、验证者要求及网络稳定性等方面的深刻忧虑。状态和历史数据增长、执行时间的延长以及MEV差异等问题凸显了仔细考虑和监控实证数据的必要性。
最终,能否成功提升Gas上限,关键在于以太坊如何巧妙平衡这些复杂因素。诸如EIP-7623、提议者-构建者分离(PBS)和MEV销毁等解决方案已经表明了该网络主动应对潜在风险的积极态度,而通过周密规划与执行,更高的Gas上限也有望解锁以太坊的下一阶段增长。