Alert Source Discuss
Informational

EIP-7840: 将 blob 调度添加到 EL 配置文件

在客户端配置文件中包含每个分叉的 blob 参数

Authors lightclient (@lightclient)
Created 2024-12-12

摘要

向客户端配置文件添加一个新的对象 blobSchedule,该对象列出了每个分叉的每区块目标 blob 计数和每区块最大 blob 计数。

动机

  • 确保有一种方法可以动态调整每区块的目标和最大 blob 计数
  • 确保有一种方法可以动态调整 blob 基础费用更新比例
  • 避免通过引擎 API 进行复杂的握手

规范

使用对象 blobSchedule 扩展客户端配置文件,该对象具有以下形状:

"blobSchedule": {
  "cancun": {
    "target": 3,
    "max": 6,
    "baseFeeUpdateFraction": 3338477
  },
  "prague": {
    "target": 6,
    "max": 9,
    "baseFeeUpdateFraction": 5007716
  }
}

客户端必须配置每个分叉的目标、最大值和 baseFeeUpdateFraction。当分叉的配置丢失或不完整时的行为未定义。客户端可以自由选择如何处理这种情况。

理由

尽管仅在共识客户端中维护目标和最大 blob 是可取的,但我们承认执行客户端需要这些值才能执行各种活动。例如,eth_feeHistory RPC 方法返回一个字段 blobGasUsedRatio,即使核心协议不需要该值,但它确实需要最大值。每区块通过引擎 API 传递此值似乎有点过头,因此我们认为配置值是一个很好的中间地带。此外,还添加了 baseFeeUpdateFraction 参数,以调整每个分叉的 blob gas 定价的响应性。

向后兼容性

未发现向后兼容性问题。

安全注意事项

未发现安全注意事项。

版权

通过 CC0 放弃版权及相关权利。

Citation

Please cite this document as:

lightclient (@lightclient), "EIP-7840: 将 blob 调度添加到 EL 配置文件," Ethereum Improvement Proposals, no. 7840, December 2024. [Online serial]. Available: https://eips.ethereum.org/EIPS/eip-7840.