[block-input-refactor] consider download data columns from multiple peers at a time
Describe the bug
in BlockInputSync of #8200, when we request data_column_sidecars_by_root, it could take up to 10s because peer may only response when it has all data
Expected behavior
in BlockInputSync, we need to consider downloading from multiple peers of a time instead of doing it sequentially
Steps to reproduce
No response
Additional context
No response
Operating system
Linux
Lodestar version or commit hash
mkeil/refactor-block-input-on-unstable
it also showed that it may take up to more than 5s to download a block
one down side with this approach is downloading blocks in parallel will degrade the performance of node, need to address this before start also the performance improvement needs to be proved by metrics, see #8403
the UnknownBlockSync does not seem that bad https://github.com/ChainSafe/lodestar/pull/8416#issuecomment-3302101216
also #8408 should get us import block faster should only revisit if it shows bad validator performance
some peers likely hold the request and only response once it has data for example:
- it takes 7.79s to get a success reponse from this peer
- once it returns, it's already late