Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Do not starve parachains because of slow validators/collators #3384

@bkchr

Description

@bkchr

Validators only request one collation at a time per relay parent and collators only send one collation at a time per relay parent. The problem with that is that if there is a slow validator/collator it could lead to a stall of the parachain. This is also a potential DoS vector as the receiving/sending node could send the data on purpose rather slow. To prevent this, we should introduce a second timeout. This timeout should be chosen wisely and should reflect the time we expect the other side to have received/send the data. If this timeout is hit, we should start requesting a second collation/start sending our collation to a second validator.

This approach assumes that if someone isn't fast enough to send/receive the collator in a reasonable amount of time, it also doesn't uses our full bandwidth and we can start to share the bandwidth with others.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions