This EIP adds a flag to the block builder in order to allow them to include a client configured maximum amount of blobs.
Motivation
Currently a builder will include all blobs in their local mempool, up to the maximum amount that the protocol requires. If a builder has low bandwidth, they may include too many blobs
and subsequently end up not being able to convince the network that the blobs are available.
Specification
Create a parameter in block builder’s configuration called USER_CONFIGURED_MAX_BLOBS_PER_BLOCK
Take the minimum out of the MAX_BLOB_GAS_PER_BLOCK and the USER_CONFIGURED_MAX_BLOBS_PER_BLOCK
If the minimum is zero, set the minimum to one.
Use the minimum to decide how many blobs to include in the block
Note: By default USER_CONFIGURED_MAX_BLOBS_PER_BLOCK may be set to the maximum in the current fork.
Rationale
By adding a flag for the local block builder, they are able to specify how many blobs they can include in a block.
Francesco D'Amato <francesco.damato@ethereum.org>, Kevaundray Wedderburn (@kevaundray), Toni Wahrstätter (@nerolation), Alex Stokes (@ralexstokes), Ben Adams (@benaadams), Gajinder Singh (@g11tech), Dustin (@tersec), "EIP-7872: Max blob flag for local builders [DRAFT]," Ethereum Improvement Proposals, no. 7872, January 2025. [Online serial]. Available: https://eips.ethereum.org/EIPS/eip-7872.