All Topics
All Topics
Technology
Technology
Design
Design
Programming
Programming
Science
Science
News
News
Gaming
Gaming
Entertainment
Entertainment
Business
Business
Finance
Finance
Sports
Sports
Health
Health
Food
Food
Travel
Travel
Art
Art
Music
Music
Books
Books
Education
Education
Politics
Politics
Personal
Personal
No algorithm. No AI slop. No ads. Just RSS. Pro-human. Indie writers. Real journalism. Open web. Chronological. Hand toasted.

Cloudflare fixes CUBIC congestion control bug in QUIC implementation that permanently pinned performance at minimum

By

sbulaev

19d ago· 14 min readenInsight

Summary

Cloudflare engineers discovered and fixed a bug in the CUBIC congestion control algorithm (RFC 9438) used in their QUIC implementation (quiche). The bug caused the congestion window (cwnd) to become permanently pinned at its minimum floor value, severely degrading performance. The root cause was that the kernel's idle detection mechanism incorrectly treated normal RTT wait times as application idleness, triggering an unnecessary cwnd reset. The fix involved correctly measuring idle periods to distinguish between actual application idleness and normal network round-trip time waits.

Key quotes

· 3 pulled
CUBIC, standardized in RFC 9438, is the default congestion controller in Linux, and as a result governs how most TCP and QUIC connections on the public Internet probe for available bandwidth.
In this post, we'll tell the story of a bug in which CUBIC's congestion window (cwnd) gets permanently pinned at its minimum and never recovers.
The fix involved correctly measuring idle periods to distinguish RTT wait times from actual application idleness.
Snippet from the RSS feed
We investigated a bug where CUBIC's congestion window became pinned at its minimum floor, causing a performance to plummet. The fix involved correctly measuring idle periods to distinguish RTT wait times from actual application idleness.

You might also wanna read