主页 > www.token.im > Eth1.x 档案:EIP-1559 和以太坊的改进之路

Eth1.x 档案:EIP-1559 和以太坊的改进之路

www.token.im 2023-03-11 07:37:17

以太坊是区块链吗_以太坊区块链高度_区块链和以太坊的相同点

作词:格里芬一叶霍奇基斯

翻译:Unitimes_David

最近我一直在想很多关于后世界末日荒地的事情,特别是电影《疯狂的麦克斯:狂暴之路》中的这个场景,主角们刚刚在潜在的追捕者之前逃脱了第一波追捕。 他们需要继续前行,但仍然需要保持影片的核心:一辆巨大的“战车”卡车将他们运送到安全的地方。 所以女主角查理兹塞隆需要在卡车行驶时爬到驾驶室下面进行维修:

以太坊是区块链吗_以太坊区块链高度_区块链和以太坊的相同点

对仍在行驶的复杂卡车进行维修的想法与影片的紧张剧情完美契合。 当我看到这个时,我意识到这是对 EIP(以太坊改进提案)流程和核心开发人员工作的恰当比喻。

以太坊协议的变化是实时发生的,许多谨慎、复杂的工程都用于精心设计升级,以便所有人和所有人(如果可能)都可以通过升级过程向前推进。 区块链荒地的道路上仍有坎坷,但总的来说,以太坊仍遥遥领先于其他掠夺车辆(技术债)——只要卡车不断前行,不停地驶向地平线。 新的提议可能会在短期内对现状造成一些破坏,但总体而言,它们通常是对协议的值得改进。

我今天要讨论的升级属于“Eth1.x”的范畴,但不是无状态以太坊工作的一部分,而是一种全新的汽油费市场/区块大小机制。 相关提案已成为社区和开发人员反馈改进以太坊的非常有趣的案例研究。 通过观察 EIP 如何吸引更多的开发者讨论和随着时间的推移而变化,我认为我们可以从中学到很多东西,对以太坊的发展进行建设性的讨论,并希望获得一些清晰的见解(或者至少是一些不太明确的格言)来帮助指导讨论超出计划的无状态以太坊的重大变化。

通常在这个系列的文章中,我会尝试非常有条理地“深入讨论”,但在这篇文章中,我想更多地关注围绕这些提案讨论的内容和特点,而不是其中包含的技术细节。 在我们讨论讨论的进展情况和目前的进展之前,让我们先简单地看一下这两个提案区块链和以太坊的相同点,EIP-1559 和“自动扶梯”。

EIP-1559

让我们看看最初的 EIP-1559 [1] 提议的动机,这是一个很好的起点。 这个提议的最初动机很简单:

“目前以太坊中的“最高价拍卖”费用模型效率低下且对用户来说成本高昂。该 EIP 提出了一种替代该机制的方法,即根据网络需求调整基础网络费用,从而创造更好的费用价格效率并降低复杂性客户端软件需要避免支付不必要的高额费用。”

在目前的以太坊系统中,新提交的交易必须等待矿工打包到下一个区块中,但是这些交易可以通过增加gasPrice参数使其高于网络平均水平,从而激励矿工打包自己的交易. 如果矿工是理性的,他们总是希望将交易费用最大的交易包含在新区块中,因此下一个区块中预期包含的交易始终是 gas price 最高的交易。

这种最高价拍卖模式的问题在于,在交易需求旺盛的时期,事情很快就会失控。 当一个区块接近满时,将交易包含在下一个区块中的成本(交易费用)可能会急剧上升,因为用户试图以比其他人更高的价格将他们的交易包含在内。

虽然现在的矿工有一定的能力(注意:比如提高区块gas的上限)来增加单个区块打包的交易数量,但是这个上限不可能很快改变,事实上矿工更愿意使用更多小的完整区块而不是将区块 gas limit 推得越来越高(对于矿工来说,由于叔块率,更大的区块带来更高的风险)。 特别是如果你的钱包使用 gas 定价算法使你的交易在特定时间范围内被包含,你最终可能会支付相当高的交易费用 [2] 以使你的交易被包含到下一个(几乎)完整的区块。

EIP-1559引入了gas费用“base fee”的概念,设置为动态调整,使单个区块的总gas使用量接近当前1000万gas上限。 这笔“基础费用”不会落入矿工口袋,而是被烧掉。 为了激励矿工打包交易,用户还会设置一个“Tip”(提示)参数,并设置他们愿意支付的最高金额,以便让他们的交易被打包进区块,矿工将收到这个“Tip” “ (提示)。

由于“基础费用”不会根据网络需求的瞬时变化而剧烈波动,因此用户对“顶价拍卖”模式带来的低效率有一定的距离(“Tip”费用仍然是顶价模式),因为“基础费用”被烧掉而不是给矿工,所以矿工没有动力试图操纵交易费用。 重要的是,该机制还试图解决钱包开发者在自动估算网络交易费用方面遇到的一个主要问题,使交易费用估算更具可预测性。

关于EIP-1559的更多信息,我推荐你阅读Vitalik发布的EIP-1559 FAQ[3],如果你想更深入,你可以阅读Barnabe Monnot发布的这个Jupyter notebook[4]。

一个新的具有挑战性的提案出现了:自动扶梯

当前以太坊交易费用的“最高价拍卖”系统效率低下是不争的事实,重要的是要明确说明当前的交易费用机制可以做得更好,没有人会对此争论不休,另寻他路取代首价拍卖模式的机制无疑将有利于整个以太坊网络——最终这将有利于开发者和最终用户。 我们可以而且应该都同意这一点。

然而,EIP-1559 中提出的新机制与当前机制的工作方式不同,更改它会导致问题,特别是对于任何为用户构建和提交以太坊交易的软件。 钱包尤其需要进行重大更改以适应这种新机制。 即使从长远来看,事情最终对每个人都更好,但在短期内,EIP-1559 提案给需要适应变化并防止其软件崩溃的开发人员带来了巨大的负担。

在 EIP-1559 在其初始汤中漂浮了一段时间后,以太坊社区开始权衡,包括受该提案影响最大的钱包开发人员。 钱包开发人员没有抵制该提议,而是选择了一个有趣的讨论路线:他们重新考虑了该提议的核心动机(即改善以太坊交易的用户体验),并将该提议置于该背景下,本质上是在他们的声明中“如果无论如何,我们都会做所有这些工作,我们应该从一开始就知道这对用户来说会是什么样子,我们应该用它来帮助指导本提案中提出的建议。”

这简要解释了 Dan Finlay 反对 EIP-1559 的提议:自动扶梯算法 [5]。 该提案与 EIP-1559 的机制有许多相似之处,并且具有几乎相同的动机和目标。 但 Escalator 机制作为另一项改进提案被提出,促使社区对分别提出的两种机制进行更详细的讨论。

“为了在社区中推动关于汽油费市场的更富有成效和具体的讨论,我认为提出一个比现状明显更好的替代方案很重要,这样 EIP-1559 中声称的任何功能与替代改进相比,提案可以比作可行的。”

这种自动扶梯机制类似于目前的单价拍卖模式区块链和以太坊的相同点,有一些重要的变化:

用户不是提交具有固定出价的交易,而是提交“升级”出价,指定他们愿意支付的最大金额以包括他们的交易。 所有出价都被放入“自动扶梯”队列中,这些“自动扶梯”以相同的速率递增且可预测地增加队列中的所有出价。 当矿工查看所有自动扶梯的队列时,它会选择出价最高的交易,而不管这些交易在哪个自动扶梯上。 当一笔交易被包含在一个区块中时,用户将支付队列中仅次于最高出价的“第二高价格”,而不是支付用户当前的出价。

自动扶梯机制的主要优点是它可以实现高效的价格发现。 ,同时通过在排队时收取第二高的价格来防止用户多付钱。 它还具有与EIP-1559相同的一些优点,即使在网络拥塞的情况下,用户也可以更轻松地选择正确的费用。 值得注意的是,Escalator 机制本身并没有改变确定区块大小的机制。

区块链和以太坊的相同点_以太坊区块链高度_以太坊是区块链吗

自动扶梯算法提案本身很有趣,我强烈建议阅读提案的“用户策略”[6] 部分,以便对三种不同的事务处理模型进行高级比较。 如果您对此感兴趣,介绍自动扶梯算法的论文 [7] 也值得深入研究,但我离题了一点……

在与 EIP-1559 实施者的电话会议中,Dan Finlay 给出了钱包中各种参数将如何呈现给用户的一些模型,强调了如何根据所需的用户干预级别隐藏或显示这些参数。 范围。 见下文:

区块链和以太坊的相同点_以太坊是区块链吗_以太坊区块链高度

本设计旨在作为社区讨论的参考,帮助我们从用户的角度考虑EIP-1559和Escalator Algorithm这两个提案。

通过引入一个合理的替代方案并重新调整开发人员的批评以优先考虑用户挑战,EIP-1559/Escalator 讨论非常巧妙地创造了新的探索空间,最终目标是改善以太坊费用市场。 这方面还远远没有为下一次硬分叉升级做好准备,但它仍然像《疯狂的麦克斯》中的大卡车一样向前发展。

以太坊的未来

我认为 EIP-1559/Escalator 是一个值得以太坊社区关注和学习的重要问题,尤其是因为这与无状态以太坊的另一个更遥远(也更引人注目)的改进有关,即 Oil/Karma EVM 语义变化[8] ,具有许多相同的功能。 就像在收费市场中一样,其中一些提议的修改将对开发人员和用户产生显着的二阶效应。 同样在EIP-1559的案例中,需要在用户体验方面有明确的支持,然后才有机会协调懂用户体验的开发者,帮助以太坊改进提案保持势头,最终成功升级。

改进以太坊(Eth1.x)和其他公链是一个艰巨的过程。 正确的讨论路线应该是让那些有意义的改进建议保持在地平线上,但也要确保听到受影响最大的开发人员和用户的声音,并整合他们的担忧。 因为最后我们都将驾驶同一辆大卡车到达瓦尔哈拉的大门……好吧,又名宁静(以太坊 2.0)。 领先于以太坊的状态通货膨胀问题 [9] 意味着在不失去动力的情况下不断地提出建设性的建议、批评和修改变化,我们的生存就靠它了!

参考链接:

[1]

[2]

[3]

[4]

[5]

[6] #user-strategies-under-various-conditions-and-algorithms

[7]

[8]

[9]