HeadlinesBriefing favicon HeadlinesBriefing.com

Linux CUBIC tweak triggers QUIC stall in Cloudflare’s stack

Hacker News •
×

Cloudflare’s open‑source QUIC stack, quiche, uses Linux’s default congestion controller, CUBIC, for most traffic. A recent kernel tweak meant to align CUBIC with RFC 9438’s app‑limited exclusion unintentionally broke recovery after idle periods. The bug locks the congestion window at its minimum, stopping any bandwidth growth after a loss event. Because CUBIC shapes TCP and QUIC on the Internet, the regression could impact any Linux‑based service.

Engineers observed the failure in an integration test that downloads a 10 MB file over HTTP/3 with 30 % packet loss for the first two seconds. After loss stops, CUBIC’s cwnd stays at 2700 bytes and toggles between recovery and avoidance every 14 ms, matching the RTT. Running the same scenario with Reno succeeded, confirming the issue is specific to CUBIC under realistic load network conditions.

The root cause traces back to a 2017 kernel optimization that failed to reset CUBIC’s epoch_start after an idle period, causing an inflated target window and immediate cwnd contraction. Jana Iyengar’s one‑line fix that restores epoch_start on resume resolves the oscillation. With the patch applied, quiche regains normal recovery behavior and avoids permanent throttling.