冰河时代的延迟、伦敦升级前的区块没有被填满以及基费调整公式的不完善是以太坊链容量增加 9% 的三大原因。

原文标题:《 Vitalik Buterin:伦敦升级后,链容量增加 9% 的三大原因
撰文:Vitalik Buterin,以太坊联合创始人
翻译:Yangz
来源:巴比特

观察一下以太坊每日 Gas 使用量的图表,我们可以发现每天平均使用的 Gas 从约 920 亿增加到了约 1000 亿:增加了 9%。

Vitalik Buterin:为何伦敦升级后链容量增加了 9%

那么,为什么会发生这种情况呢?

我认为,这一情况大致上可以从三个不同的原因上解释:

  • 冰河时代的延迟。

  • 伦敦升级前的区块没有被填满。

  • 基费调整公式的不完善。

冰河时代的延迟

伦敦分叉推迟了冰期,当伦敦分叉开始时,冰期刚刚开始生效。在伦敦升级之前,平均区块时间约为 13.5 秒,而伦敦升级之后,平均区块时间回到了长期的正常水平,约为 13.1 秒。

Vitalik Buterin:为何伦敦升级后链容量增加了 9%

这是区块速度 3% 的差异,也是链上 Gas 使用量增加 9% 其中 3%。

Gas 使用量:目标 15M 与最大 15M

在伦敦升级之前,最大的区块 Gas 使用量为 15M。但并不是所有的区块都使用了整个 15M:即使是功能最完善的区块生产者也会留下 0-20999 的 Gas 未使用,因为剩余空间太小,无法容纳一个交易。除此之外,总有一些区块生产者会偶尔制造出空区块。4 月份的一项分析表明,大约 2% 的区块是空的。总的来说,我们可以假设伦敦升级前的未使用空间约为 2-3%。然而,伦敦升级后,1500M 已不是最大值,而是目标。这意味着,如果包括空区块在内的平均 Gas 使用量低于 15M,那么基费也将减少,直到平均数回到 15M。

因此,这又占了这一现象原因的约 2-3%。

基准费用调整中的数学缺陷

由于算术平均数和几何平均数之间的复杂关系,EIP-1559 公式并不能完美实现 50% 的使用率。一个 0% 的完整区块可以使基费减少 12.5%(乘以 7/8),而 100% 的完整区块可以使基费增加 12.5%(乘以 9/8)。那么,如果你有一个 0% 的完整区块,然后是一个 100% 的完整区块,会发生什么?结果是,基准费用会乘以 63/64。因此,为了使基费保持不变,你实际上需要的平均使用率略高于 50%。

至于高于多少则取决于波动率是多少。理论上的最小波动偏差是零:这时 50% 的区块是完整区块,基费在每个区块中保持不变。而理论上最大的波动偏差是 53.13% 的区块是完整区块,而 46.87% 的区块是空区块(满和空的比例是 1.133,与-log(7/8)/log(9/8) 的比例相同);在这种情况下,基费将在平均 53.13% 的区块是完整区块时保持不变。而实际使用情况似乎在这两个极端的中间:从最近观察到的一个时间段的数据来看,51.5% 是完整区块(因此,比预期的 50% 高约 3%)。

最近的数据分析也大致证实了后两个数字(仔细看伦敦会议前和伦敦会议后的蓝线,以及图表上的 15M 水平线)。

Vitalik Buterin:为何伦敦升级后链容量增加了 9%

解决这一数学问题的一个可能方法是 让基本费用调整机制更明确地呈指数增长 。这将建立一个硬性的不变因素,基础费用可以作为总「过剩」Gas 使用量的直接函数计算(因此,对于任何水平的过剩 Gas 使用量,基费将不得不最终趋于无穷大)。

但现在,以太坊用户可以为伦敦升级带来的无意的 6% 的容量增长而欢欣鼓舞(而客户端开发人员需要继续努力解决无状态 / 状态过期问题,以确保我们可以安全地处理状态增长)。

来源链接: www.8btc.com