ethereum / consensus-specs

Ethereum Proof-of-Stake Consensus Specifications
Creative Commons Zero v1.0 Universal
3.54k stars 962 forks source link

How is `MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS` guaranteed? #3625

Open zhiqiangxu opened 6 months ago

zhiqiangxu commented 6 months ago

Quoted from here:

Clients MUST support requesting sidecars since minimum_request_epoch, where minimum_request_epoch = max(finalized_epoch, current_epoch - MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS, DENEB_FORK_EPOCH).

What happens if clients don't support requesting sidecars at all for saving bandwidth, is there any kind of punishment in this case?

dapplion commented 6 months ago

There's no punishment currently. Syncing clients will downscore and eventually disconnect from the non-serving clients. We rely on honest behaviour to uphold this invariant AFAIK.