Skip to content
This repository has been archived by the owner on Jan 13, 2025. It is now read-only.

adds code-path broadcasting shreds using QUIC #31610

Merged

Conversation

behzadnouri
Copy link
Contributor

@behzadnouri behzadnouri commented May 12, 2023

Problem

Turbine => QUIC migration

Summary of Changes

  • Added code-path broadcasting shreds using QUIC.
  • Currently this code-path is inactive for all shreds.
  • We will incrementally roll-out and monitor shreds propagation using QUIC.

@codecov
Copy link

codecov bot commented May 12, 2023

Codecov Report

Merging #31610 (944cb26) into master (2572df7) will decrease coverage by 0.1%.
The diff coverage is 67.8%.

@@            Coverage Diff            @@
##           master   #31610     +/-   ##
=========================================
- Coverage    81.9%    81.9%   -0.1%     
=========================================
  Files         764      765      +1     
  Lines      208096   208248    +152     
=========================================
+ Hits       170507   170631    +124     
- Misses      37589    37617     +28     

@behzadnouri behzadnouri force-pushed the turbine-quic-connection-cache branch 2 times, most recently from afe4fa1 to 4a29410 Compare May 12, 2023 19:03
Copy link
Contributor

@joncinque joncinque left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The changes look good, just a few nits and questions. And then the larger question from #31576 about whether this should be included in 1.16. It would be better to include it, but we'll need to start telling operators to start opening the new port immediately.

If it's in 1.16, we'd likely avoid the situation of needing to make a 1.13-style branch just to force Turbine over QUIC. You probably have a clearer plan, but it could look like:

  • 1.16: validators open the port and can receive it, helping the 1.16 to 1.17 transition
  • 1.17: cut over to only QUIC
  • 1.18: shut off UDP

Let me know if I should post this elsewhere

core/src/tvu.rs Outdated Show resolved Hide resolved
core/src/cluster_nodes.rs Show resolved Hide resolved
core/src/broadcast_stage/standard_broadcast_run.rs Outdated Show resolved Hide resolved
core/src/broadcast_stage.rs Outdated Show resolved Hide resolved
core/src/broadcast_stage.rs Show resolved Hide resolved
core/benches/retransmit_stage.rs Outdated Show resolved Hide resolved
core/benches/cluster_info.rs Outdated Show resolved Hide resolved
core/src/retransmit_stage.rs Show resolved Hide resolved
core/src/retransmit_stage.rs Outdated Show resolved Hide resolved
core/src/retransmit_stage.rs Outdated Show resolved Hide resolved
@behzadnouri behzadnouri force-pushed the turbine-quic-connection-cache branch 2 times, most recently from 2a5b177 to 01d55fe Compare May 25, 2023 17:10
@behzadnouri behzadnouri force-pushed the turbine-quic-connection-cache branch 4 times, most recently from 074d714 to adf56cb Compare June 8, 2023 15:15
Working towards migrating turbine to QUIC.
@behzadnouri behzadnouri force-pushed the turbine-quic-connection-cache branch from adf56cb to 944cb26 Compare June 12, 2023 14:13
@behzadnouri behzadnouri requested a review from joncinque June 12, 2023 14:14
Copy link
Contributor

@joncinque joncinque left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me!

@behzadnouri behzadnouri merged commit ec0001e into solana-labs:master Jun 12, 2023
@behzadnouri behzadnouri deleted the turbine-quic-connection-cache branch June 12, 2023 22:58
@t-nelson
Copy link
Contributor

how much of this stuff really needs to be in master before we know for a fact that quic is suited for the job? i don't want to be in a situation where we have a bunch of gaps in abi and special-case logic because we got ahead of ourselves and committed code that was doomed to be abandoned

jeffwashington pushed a commit to HaoranYi/solana that referenced this pull request Jun 13, 2023
adds quic connection cache to turbine

Working towards migrating turbine to QUIC.
wen-coding added a commit to wen-coding/solana that referenced this pull request Aug 15, 2023
adds quic connection cache to turbine

Working towards migrating turbine to QUIC.
wen-coding pushed a commit to wen-coding/solana that referenced this pull request Aug 15, 2023
adds quic connection cache to turbine

Working towards migrating turbine to QUIC.
wen-coding added a commit to wen-coding/solana that referenced this pull request Aug 15, 2023
adds quic connection cache to turbine

Working towards migrating turbine to QUIC.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants