]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MINOR: quic: too permissive exit condition for high loss detection in Startup...
authorFrederic Lecaille <flecaille@haproxy.com>
Fri, 13 Dec 2024 10:56:49 +0000 (11:56 +0100)
committerFrederic Lecaille <flecaille@haproxy.com>
Fri, 13 Dec 2024 13:42:43 +0000 (14:42 +0100)
This bug fixes the 3rd condition used by bbr_check_startup_high_loss() to decide
it has detected some high loss as mentioned by the BBR v3 RFC draft:

   4.3.1.3. Exiting Startup Based on Packet Loss
   ...
   There are at least BBRStartupFullLossCnt=6 discontiguous sequence ranges lost in that round trip.

where a <= operator was used in place of <.

Must be backported to 3.1.

src/quic_cc_bbr.c

index 6179c9f24b44a944882b79e48124ec839f80ff94..3f49417eecd1ad01b02d3ed1065041d5f9f7f855 100644 (file)
@@ -677,7 +677,7 @@ static void bbr_check_full_bw_reached(struct bbr *bbr, struct quic_cc_path *p)
 static void bbr_check_startup_high_loss(struct bbr *bbr, struct quic_cc_path *p)
 {
        if (bbr->full_bw_reached ||
-           bbr->loss_events_in_round <= BBR_STARTUP_FULL_LOSS_COUNT ||
+           bbr->loss_events_in_round < BBR_STARTUP_FULL_LOSS_COUNT ||
            (bbr->in_loss_recovery &&
             bbr->round_count <= bbr->round_count_at_recovery) ||
            !is_inflight_too_high(&bbr->drs.rs)) {