Skip to content
New issue

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

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

Already on GitHub? # to your account

Convert node-wide request rate limiter to a per-channel outstanding request limiter. #4211

Merged
merged 1 commit into from
Apr 17, 2023

Conversation

clemahieu
Copy link
Contributor

This patch adds channel scoring functionality to the ascending bootstrapper. It prioritises using the most responsive channels first, e.g. the channels with the lowest outstanding requests.

Since there is no guarantee requests will be responded to, the scores periodically "decay" when timeouts are calculated.

This scoring opens up future possibilities for additional metrics; an example would be tracking telemetry information and not requesting nodes that report low block counts.

Performance wise this looks to have ~2x improvement over randomly selecting channels as was done previously.

@clemahieu clemahieu added this to the V25.0 milestone Apr 5, 2023
@clemahieu clemahieu marked this pull request as ready for review April 13, 2023 16:28
@clemahieu clemahieu force-pushed the bootstrap_channel_scoring branch 3 times, most recently from 6c9f9d6 to 442f0cd Compare April 13, 2023 16:51
@thsfs thsfs force-pushed the bootstrap_channel_scoring branch from 02ef3a1 to 23e7268 Compare April 13, 2023 21:59
…equest limiter.

Adding prioritizing for selecting channels, picking most responsive channel first.
# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants