Rollup 节点
Rollup 节点负责将 Scroll 区块拆分成适合在 L1 上证明和提交的部分,其中的两个主要单元是 块(Chunk) 和 批次(batches) 处理。
- 块(Chunk)是 L2 账本中连续的一部分,是 L2 区块的集合,而块是 zkEVM 证明的单位。
- 批次(batches)是块的集合,最终和聚合证明提交给L1。
Rollup 节点具有以下子模块:
- 块提议者(Chunk Proposer):收集 L2 区块并提出块,同时强制执行某些约束(见下文)。
- 批次提议者(Batch Proposer):收集块并提出批次,同时强制执行某些约束(见下文)。
- 中继器: 提交批次数据和证明至 L1。
块和批次约束
与执行节点相比,rollup 节点是一个更直观,更简单的组件。 它收集 L2 区块,创建块和批次,并将它们提交给 L1。 在本节中,我们概述了 rollup 节点在块和批处理创建期间必须强制执行的主要约束。
块约束:
- 无证明溢出: 使用电路容量检查器,我们确保在一个块中包含尽可能多的区块,而仍然不会导致证明溢出。
- L1 负载: 从批次提议者中继承的约束,交易负载不能超过128KB。
批次约束:
- L1 负载: 以太坊对交易有效负载大小有 128KB 的硬编码限制
- L1 提交 gas: 提交批次的 gas 成本与其中的区块和交易数量成正比。我们必须确保此成本不会超过 L1 区块的 Gas 限制。
- 块数量: 对于聚合证明器而言,批次中包含的最佳块数。