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

Final vote requests/replies only #4648

Merged
merged 11 commits into from
Jul 11, 2024

Conversation

pwojcikdev
Copy link
Contributor

There are two main changes:


  • We are only replying with final votes, for blocks that are either confirmed or marked as final.
  • We are not using cached votes for replies.

During testing it was shown that the above changes reduce vote traffic by an order of magnitude.

The rationale for abandoning replies from vote cache is that it causes excessive bandwidth usage. A vote request might contain 12 hashes (255 hashes after upcoming network upgrade) and the chance that a vote with exactly these hashes is already cached is low. This in turn requires replying with multiple votes, which is incredibly inefficient. Pessimistic bandwidth usage in such scenario is number of hashes squared.

@qwahzi qwahzi added this to the V27 milestone Jun 19, 2024
# Conflicts:
#	nano/core_test/request_aggregator.cpp
@qwahzi qwahzi added this to In Progress / V27.0 in Nano Roadmap Jul 2, 2024
gr0vity-dev pushed a commit to gr0vity-dev/nano-node that referenced this pull request Jul 7, 2024
@clemahieu clemahieu merged commit a7a2c0b into nanocurrency:develop Jul 11, 2024
26 of 28 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Merged / V27.0
Nano Roadmap
In Progress / V27.0
Development

Successfully merging this pull request may close these issues.

None yet

3 participants