Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

congestion control: Do not treat missing blocks as congestion #11852

Open
wacban opened this issue Jul 29, 2024 · 2 comments
Open

congestion control: Do not treat missing blocks as congestion #11852

wacban opened this issue Jul 29, 2024 · 2 comments
Labels
A-congestion Work aimed at ensuring good system performance under congestion Near Core T-core Team: issues relevant to the core team

Comments

@wacban
Copy link
Contributor

wacban commented Jul 29, 2024

The congestion control considers both missing chunks and missing blocks as congestion. The point of this check is to prevent receipts accumulating and causing the state witness to grow too large. For this purpose the missing blocks are not relevant because when a block is missing no new outgoing receipts can be send.

This task is about making congestion control distinguish between missing chunks and missing blocks and only consider the former as congestion.

@wacban wacban added T-core Team: issues relevant to the core team A-congestion Work aimed at ensuring good system performance under congestion Near Core labels Jul 29, 2024
@jancionear
Copy link
Contributor

I think ideally this should be solved with cross-shard bandwidth limiting. The way I imagine it, each shard would be allowed to send X bytes of data to other shard, with X being determined dynamically at each height. Then when a chunk is missing, we can sum up how much each shard was allowed to send to this shard in the past and assign the remaining bandwidth until it runs out.

@wacban
Copy link
Contributor Author

wacban commented Jul 29, 2024

Good point, thanks! I think we can still consider this proposal as a quicker alternative. Ultimately it is about the cross shard bandwidth so the limiting should resolve this issue as well. We just need to make sure to get rid of the missing chunks / blocks congestion when the limiting is in place.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-congestion Work aimed at ensuring good system performance under congestion Near Core T-core Team: issues relevant to the core team
Projects
None yet
Development

No branches or pull requests

2 participants