ChainSafe / lodestar

🌟 TypeScript Implementation of Ethereum Consensus
https://lodestar.chainsafe.io
Apache License 2.0
1.15k stars 283 forks source link

Implement engine_getBlobsV1 #7114

Open philknows opened 4 days ago

philknows commented 4 days ago

Problem description

Reference: https://github.com/ethereum/execution-apis/pull/559

Recently there have been calls to raise the blob target/max parameters for scaling DA. However, taking into consideration that some bandwidth/resource constrained validators are reportedly at their limits, we need to find ways to help alleviate this constraint before adding more demands for the most honest type of validator: home stakers building local blocks with 6 blobs and limited upload bandwidth.

Solution description

It's likely alongside Gossipsub 1.2 features such as IDONTWANT and APIs like engine_getBlobsV1 could help alleviate some bandwidth concerns so we can get better information about where blob limitations currently stand.

With #7077 already testing Gossipsub, we should prioritize supporting this as some execution clients have already implemented this feature for use.

Additional context

Teku analysis: https://hackmd.io/@dsjdqQDBRp66btjRzfxjbw/r1OuFG7AA Lighthouse blog describing this optimization: https://blog.sigmaprime.io/peerdas-distributed-blob-building.html