Innovative Slow Start Algorithm for TCP and QUIC Enhancements

update n.w
1 / 20
Embed
Share

"Explore a new slow start algorithm for TCP and QUIC designed to address early or late exits, delivering better performance and efficiency for network communications. Dive into the motivation, methodology, and proposed updates discussed in the IETF meeting. Discover how per-flow memory usage and rate-limited flows play a crucial role in optimizing data transmission. Stay ahead with the latest insights on improving TCP and QUIC protocols."

  • Algorithm
  • TCP
  • QUIC
  • Networking
  • IETF

Uploaded on | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. UPDATE SEARCH a New Slow Start Algorithm for TCP and QUIC Jae Chung Feng Li Maryam Ataei Kachooei Mark Claypool IETF CCWG Dublin, Ireland November 2024

  2. Motivation Exit Too Early Exit Too Late Exit at Choke Point HyStart over wireless SEARCH 3/19/2025 - Better Slow Start for TCP and QUIC 2

  3. SEARCH Slow start Exit at Right CHokepoint 8a 8a delivered bytes sent bytes capacity 4a capacity 4a 2a 2a a a t1 t2 t3 t4 t5 t1 t2 t3 t4 Time Time 3/19/2025 - Better Slow Start for TCP and QUIC 3

  4. SEARCH Slow start Exit at Right CHokepoint sent = 2 delv previous diff = sent delv now 8a delivered bytes capacity 4a normalized_diff = diff / sent 2a normalized_diff threshold? exit slow start a t1 t2 t3 t4 t5 Time 3/19/2025 - Better Slow Start for TCP and QUIC 4

  5. Outline SEARCH Review Updates -Algorithm -Reduce Bytes per Flow -Test Rate Limited Flows Next Steps (done) (next) 3/19/2025 - Better Slow Start for TCP and QUIC 5

  6. Algorithm Update 0 1 2 3 4 5 0 1 2 3 4 5 10 30 40 60 90 110 10 20 10 20 30 20 bins are bytes received bytes received during that interval bins are cumulative bytes received cumulative bytes received up to that interval Bytes delivered from bin 1 bin 1 to bin 4 bin 4? 4 bin[4] - bin[0] bin [i] = bin[1] + bin[2] + bin[3] + bin[4] 1 3/19/2025 - Better Slow Start for TCP and QUIC 6

  7. Suggested Updates from Last IETF Meeting Per-flow memory use Rate-limited flows 3/19/2025 - Better Slow Start for TCP and QUIC 7

  8. Reduce Bytes Per Flow SEARCH-specific per-flow data // array of bins u32 u32 u32 s32 u8 bin[TOTAL_BINS]; bin_duration_us; // duration of each bin bin_end_us; // end time of latest bin curr_idx; // total number of bins scale_factor; // divisions by 2 (shifts) Reduce number of bits for each bin u32 u8 bytes ACKed 0 1 2 3 4 5 6 scale factor ? 10 30 40 50 80 120 280 1 5 15 20 25 40 60 140 140 3/19/2025 - Better Slow Start for TCP and QUIC 8

  9. Error with Reduced Bits Per Bin sent = 2 delv previous diff = sent delv now u32 bin[TOTAL_BINS]; normalized_diff ? normalized_diff = diff / sent u8 bin[TOTAL_BINS]; normalized_diff normalized_diff threshold? exit slow start 3/19/2025 - Better Slow Start for TCP and QUIC 9

  10. Error with Reduced Bits Per Bin Normalzied Diff MSE u32 bin[TOTAL_BINS]; normalized_diff ? normalized_diff u8 bin[TOTAL_BINS]; bin size (in bits) 3/19/2025 - Better Slow Start for TCP and QUIC 10

  11. Per-Flow Memory BBR Linux Private ICSK_CA_PRIV 104 bytes 104 bytes Cubic + HyStart Cubic

  12. Per-Flow Memory Cubic Cubic + HyStart Cubic + SEARCH (u8) BBR Cubic + SEARCH (u16) Cubic + SEARCH (u32)

  13. Suggested Updates from Last IETF Meeting Per-flow memory use Rate-limited flows 3/19/2025 - Better Slow Start for TCP and QUIC 13

  14. Test Rate Limited Flows Application limited TCP flow -Periodic e.g., HTTP streaming -Intermittent e.g., Web browsing -Application rate limited e.g., CBR traffic Receiver / Sender limited TCP flow -e.g., buffer size limits 3/19/2025 - Better Slow Start for TCP and QUIC 14

  15. Test Rate Limited Flow Application AWS EC2 Linux netem to add 200 ms latency Application limited flow (e.g., HTTP server) -3x 32 MB chunks at 5 s intervals -3x 64 MB chunks at 5 s interval 3/19/2025 - Better Slow Start for TCP and QUIC 15

  16. Outline SEARCH Review Updates -Algorithm -Bytes per Flow -Rate Limited Flows Next Steps (done) (done) (done) (done) (done) (next) 3/19/2025 - Better Slow Start for TCP and QUIC 16

  17. Next Steps CCWG seeks empirical evidence of safety Most impactful data from deployments in the field Looking for volunteers! We will help with SEARCH deployment -Provide implementation (currently, Linux and Quicly, working on FreeBSD version) -Help with installation and trouble shooting -Give assistance with data collection and analysis claypool@wpi.edu 3/19/2025 - Better Slow Start for TCP and QUIC 17

  18. Summary https://search-ss.wpi.edu/ SEARCH -Determines choke point from expected delivered bytes -Exits slow start after congestion point, before loss Updates (now version 3.0) -Algorithm tweak (cumulative bytes) -Reduced bytes per flow -App-limited flows Looking for volunteers to try it out! claypool@wpi.edu 3/19/2025 - Better Slow Start for TCP and QUIC 18

  19. Thank-you for your attention! SEARCH a New Slow Start Algorithm for TCP and QUIC Jae Chung Feng Li Maryam Ataei Kachooei Mark Claypool IETF CCWG Dublin, Ireland November 2024

  20. References Improving TCP Slow Start Performance in Wireless Networks with SEARCH - IEEE World of Wireless, Mobile and Multimedia Networks (WoWMoM) - Perth, Australia, June 2024 Improving QUIC Slow Start Behavior in Wireless Networks with SEARCH - IEEE Local and Metropolitan Area Networks (LANMAN) - Boston, Massachusetts, USA, July 2024 Implementation of the SEARCH Slow Start Algorithm in the Linux Kernel - 0x18 NetDev Conference - Santa Clara, California, USA, July 2024 3/19/2025 - Better Slow Start for TCP and QUIC 20

More Related Content