Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add EIP: Blob throughput increase #8452

Open
wants to merge 10 commits into
base: master
Choose a base branch
from
61 changes: 61 additions & 0 deletions EIPS/eip-xxxx.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
---
eip: tbd

Check failure on line 2 in EIPS/eip-xxxx.md

View workflow job for this annotation

GitHub Actions / EIP Walidator

preamble header `eip` must be an unsigned integer

error[preamble-eip]: preamble header `eip` must be an unsigned integer --> EIPS/eip-xxxx.md:2:5 | 2 | eip: tbd | ^^^^ not a non-negative integer | = help: see https://ethereum.github.io/eipw/preamble-eip/

Check failure on line 2 in EIPS/eip-xxxx.md

View workflow job for this annotation

GitHub Actions / EIP Walidator

file name must reflect the preamble header `eip`

error[preamble-file-name]: file name must reflect the preamble header `eip` --> EIPS/eip-xxxx.md:2:5 | 2 | eip: tbd | ^^^^ this value | = help: this file's name should be `eip-tbd.md` = help: see https://ethereum.github.io/eipw/preamble-file-name/
parithosh marked this conversation as resolved.
Show resolved Hide resolved
title: Blob throughput increase
description: Increase the number of blobs to reach a new target of x blobs per block, to be defined by performing tests.
author: Parithosh Jayanthi (@parithosh), Toni Wahrstätter (@nerolation), Sam Calder-Mason (@samcm), Andrew Davis (@savid)
discussions-to: tbd

Check failure on line 6 in EIPS/eip-xxxx.md

View workflow job for this annotation

GitHub Actions / EIP Walidator

preamble header `discussions-to` is not a valid URL

error[preamble-discussions-to]: preamble header `discussions-to` is not a valid URL --> EIPS/eip-xxxx.md:6:16 | 6 | discussions-to: tbd | ^^^^ relative URL without a base | = help: see https://ethereum.github.io/eipw/preamble-discussions-to/

Check failure on line 6 in EIPS/eip-xxxx.md

View workflow job for this annotation

GitHub Actions / EIP Walidator

preamble header `discussions-to` should point to a thread on ethereum-magicians.org

error[preamble-re-discussions-to]: preamble header `discussions-to` should point to a thread on ethereum-magicians.org --> EIPS/eip-xxxx.md:6:16 | 6 | discussions-to: tbd | ^^^^ required pattern was not matched | = info: the pattern in question: `^https://ethereum-magicians.org/t/[^/]+/[0-9]+$` = help: see https://ethereum.github.io/eipw/preamble-re-discussions-to/
status: Draft
type: Standards Track
category: Core
created: 2024-04-17
---

## Abstract

This EIP proposes to increase to the number of blobs in a block to provide more scale to Ethereum via L2 solution that rely on L1 data capacity.

## Motivation

Ethereum, with its rollup centric roadmap, scales by relying on L2. Since the Dencun fork, the blob gas target and maximum was set to 3/6 respectively. The blob gas limit was arrived at based on a series of big block tests performed on the Ethereum mainnet network as well as a series of testnets. The values were chosen cautiously, as its extremely hard to predict the exact p2p behaviour of Ethereum mainnet.

As we now have the Dencun upgrade live, we are able to use monitoring tools to check the network health. Initial monitoring indicates that we have a stable network with the current gas target, allowing us to consider starting a series of big block and blob tests to determine the theoretical headroom we currently have. The EIP would then be updated to include a proposed new blob gas target and limit.

Additional EIPs such as [EIP-7623](./eip-7623.md) proposes a calldata cost increase which would significantly lower the worst case base block size, thus creating more headroom for a potential blob throughput increase.

The current long term plan of Ethereum is to impliment peerDAS, but given the uncertain timelines, this EIP aims to increase the throughput short term to provide some scaling until future solutions are deployed.


## Specification

### Parameters

| Constant | Value |
| - | - |
| `PECTRA_FORK_EPOCH` | `tbd` |
| `MAX_BLOBS_PER_BLOCK` | `tbd` |

## Rationale

### Simplicity

A blob limit increase at the fork transition is relatively straightforward from an implimentation perspective. We would need to deploy an increased amount of monitoring around the fork epoch, but after a period of stability we can assume that the blob limit increase was successful, reducing any unexpected co-ordination efforts.

The EIP aims to minimize the amount of testing and implimentation effort from the perspective of the client teams, to allow for more resources to be allocated to peerDAS and other scaling research.

While this EIP may not achieve the new optimal blob limit, it offers a compromise for a short term increase.

### Testable changes

Through the use of big block/blob tests on Ethereum mainnet as well as testnets, we can earn a high degree of certainity that the blob limit increase would not negatively impact the network. These tests as well as the associated analysis can be performed mostly by non-client team entities, with minimal input required. Since the changes are quite contained, the EIP should be able to reduce the risk of the blob limit increase.

## Backwards Compatibility

todo

## Security Considerations

todo

## Copyright

Copyright and related rights waived via [CC0](../LICENSE.md).
Loading