跳至内容
0%

什么是 EIP-1559?

Alchemy team headshot

作者 Alchemy

发布于 2022年5月3日4 分钟阅读

区块链并不完美。随着交易数量和用户数量的增长,网络需要不断满足新的需求。这些改进可以是让网络更具韧性、更安全,或提供更好的用户与社区体验的变更。

为了改进 Ethereum 协议,用户可以提交称为Ethereum 改进提案(EIP)的提案。我们先来看看什么是 EIP,然后再深入探讨 EIP-1599。

Ethereum 改进提案的三个类别是什么?

EIP 是针对Ethereum 生态系统中某个流程或设计方面进行改进的提案。EIP 可分为三种不同的类别:

  • Standards(标准类)
  • Meta(元类)
  • Informational(信息类)

我们将会看到,这三个类别各有不同的用途。其中,Standards 类适用于会改变大部分 Ethereum 实现的 EIP。我们稍后会详细讨论的 EIP-1559,就是 Standards 类 EIP 的一个例子。

Standards 类

Standards 类下又分为 4 个不同的子类别:

对核心的变更

Core(核心)改进是对 Ethereum 协议核心功能的变更。这类变更需要通过共识分叉来实现。EIP-2929 就是一个例子,它提高了一系列操作码(opcode)的 gas 消耗。

对网络交互的变更

Networking(网络)改进是指对网络交互方式的任何变更,例如交易验证和共识。EIP-2124 就是一个网络类 EIP 的例子。该提案通过创建“分叉标识符(fork identifier)”改进了节点相互识别的方式,缩短了节点找到运行在同一分叉上的其他节点所需的时间。

对接口的变更

Interface(接口)类 EIP 涵盖了在与客户端交互时对规范的任何改进。属于这一类别的一个重要 EIP 是 EIP-2700。该 EIP 创建了一个 JavaScript 事件发射器对象,用于将链上发生的任何状态变更通知给 JavaScript 应用程序。

ERC 提议应用层标准

Ethereum Request for Comments(ERC)类 EIP 是关于改进应用层标准与约定的提案。EIP-3156 是一个 ERC 类 EIP,它制定了一个标准,用于在 Ethereum 上进行单一资产闪电贷。在该 EIP 实施之前,进行闪电贷存在多种不同的标准。该 EIP 的目标是通过建立统一标准,为用户提供简便性并减少技术债务。

Meta 类与 Informational 类

EIP 还有另外两个类别,即 MetaInformational

Meta 类用于变更流程

这类 EIP 记录的是对某个流程的变更。它们与 Standards 类 EIP 不同,因为它们不要求对 Ethereum 代码库做任何变更。

Informational 类用于变更指导原则

Informational 类 EIP 不为 Ethereum 提议任何新功能,而是为 Ethereum 社区提供指导原则和信息。EIP-2228 就是一个例子,它将 Ethereum “Mainnet”正式确立为一个专有名词。此举是为了避免混淆,因为此前有作者用“main net”或“mainnet”等不同方式来描述它。

提案流程是如何运作的?

任何社区成员都可以提出 EIP。方式是将提案提交到 EIP Github 仓库。该仓库中有标准的提交设计与流程说明。

EIP 提交后,将经历以下流程:

1)Draft(草案) —— 这是一个处于开放状态的 EIP,仍可进行编辑和修改。社区成员可以向作者提供反馈,并讨论 EIP 试图实现的变更。

2)Last Call(最终征询) —— 此时 EIP 已准备好接受委员会审查。审查由一支编辑团队完成,其中包括 Ethereum 基金会成员和社区成员。

3)Final(最终) —— 对于非 Core 类提案,技术变更会被实施。对于 Core 类提案,Ethereum 核心开发者会发出批准,并计划在未来的硬分叉中实施这些变更。

4)Deferred(延后) —— 已完成审查的提案,但被决定推迟以留待未来重新考虑。

EIP process Sourcehttps://blog.bitnovo.com/en/what-is-ethereum-improvements-proposals-eip/
EIP process Sourcehttps://blog.bitnovo.com/en/what-is-ethereum-improvements-proposals-eip/

在了解了 EIP 的一些背景知识后,我们再来详细看看 EIP-1559。

什么是 EIP-1559 提案?

EIP-1559 是一个对 gas 费用结构以及矿工奖励方式做出变更的提案。该提案于 2021 年 8 月 5 日随 Ethereum 的 London 硬分叉一同实施。

Field
Value

Author

Vitalik Buterin, Eric Conner, Rick Dudley, Matthew Slipper, Ian Norden, Abdelhamid Bakhta

Discussions-To

Status

Final

Type

Standards Track

Category

Core

Created

2019-04-13

Requires

2718, 2930

问题

Ethereum 面临的主要挑战之一,是要提供一个可扩展的网络,使交易成本不至于高到让用户因负担不起而无法使用。由于 Ethereum 的受欢迎程度不断上升,网络流量增加,导致网络高度拥堵。

这种拥堵造成了一场“竞价战”:在这种一级价格拍卖模式下,用户争相让矿工将自己的交易打包进区块。出价最高者的交易会被矿工优先处理,因为他们提供的报酬最高,而其他交易则被搁置在内存池(mempool)中等待处理。

解决方案

EIP-1559 的目标是通过设置交易基础费用(base fee)并增大容纳这些交易的区块大小,来改善网络的流量状况。增大区块大小可以容纳更多交易,从而减少用户之间的经济竞争。

基础费用的变化

在引入交易基础费用之后,London 分叉之前那种竞价优先的方式被取消了。基础费用是指矿工将某笔交易打包进下一个区块所需支付的费用。

该基础费用会根据区块的容量随时间以 12.5% 的幅度变化。如果一个区块的填充率超过 50%,基础费用将上调 12.5%;如果一个区块是空的,基础费用将下调 12.5%。当容量为 50% 时,费用不会变化。

在 Ethereum 实施 EIP-1559 之后,交易仍然可以选择被优先处理。用户可以通过为交易添加优先费用(priority fee)来实现,这相当于给矿工的小费。用户可以通过设置 max_priority_fee_per_gas 来表明自己愿意支付的上限。

为了消除矿工将垃圾交易打包进区块(从而推高基础费用)的动机,EIP 还引入了一种销毁机制。销毁 ETH 是指将这些 ETH 发送到一个任何人都无法访问的钱包地址,从而将其从可用的 ETH 供应中移除。

交易的基础费用是根据区块当前容量计算得出的,该部分费用会被网络销毁,只有优先费用才会奖励给矿工。在 EIP-1559 之前,矿工会获得整笔交易费用。

结果

虽然这并非直接目标,但 EIP-1559 实施后用户在 gas 费用上有所节省,因为他们更容易估算 gas 费用。相比 EIP-1559 实施之前,交易的确认时间也有所缩短。每日交易中被销毁的 ETH 数量正在被持续监测。通过查看这些数据,社区可以了解 EIP-1559 对矿工奖励、基础费用以及每个区块交易总数所产生的影响。

BLOCK
BURNED
TIPS
REWARDS
BASE FEE
PRIORITY FEE
GAS USED
TXN
AGE

14696917

0.5615 ETH

0.0354 ETH

2 ETH

44 GWEI

1 GWEI

12,776,101 (85%)

163 (93%)

36 sec ago

14696916

1.1706 ETH

0.1764 ETH

2 ETH

39 GWEI

2 GWEI

29,962,669 (200%)

286 (70%)

53 sec ago

14696915

0.0534 ETH

0.005 ETH

2 ETH

44 GWEI

4 GWEI

1,210,288 (8%)

9 (56%)

55 sec ago

14696914

0.363 ETH

0.0828 ETH

2 ETH

47 GWEI

2 GWEI

7,725,733 (52%)

88 (65%)

56 sec ago

14696913

0.3274 ETH

0.0165 ETH

2 ETH

51 GWEI

2 GWEI

6,472,229 (43%)

74 (89%)

1 min ago

结语

EIP 在 Ethereum 作为一个协议以及作为 Web3 领导者的发展过程中扮演着重要角色。让社区能够提出提案并影响 Ethereum 的发展方向,带来了不同规模的多样化改进。EIP-1559 就是这一机制运作的一个很好的例子,它展示了 Ethereum 未来的可能性。

在我们的 EIP-1559 资源与教程中心中,了解如何发送和重试 EIP-1559 交易,以及如何构建一个 Gas 费用估算工具。

Background gradient

构建区块链应用

Alchemy 将最强大的 Web3 开发者产品和工具与资源、社区及专业支持结合在一起。