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?
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.
Quoted from here:
What happens if clients don't support requesting sidecars at all for saving bandwidth, is there any kind of punishment in this case?