TLDR Tech / DevOps
When 'idle' isn't idle: how a Linux kernel optimization became a QUIC bug
Cloudflare engineers discovered and fixed a critical bug in CUBIC, the default congestion control algorithm for most TCP and QUIC connections on the internet, where the congestion window would get permanently stuck at its minimum value (two packets) after severe packet loss, causing 60% of test downloads to fail. The bug stemmed from a Linux kernel optimization for idle connections that was incorrectly ported to Cloudflare's quiche QUIC implementation, where it mistook normal ACK delays for idle periods and trapped the algorithm in a cycle that prevented bandwidth recovery—ultimately requiring just a three-line fix to measure idle time from the last ACK rather than the last sent packet.
Read the full story