diff options
| author | Roman Arutyunyan <arut@nginx.com> | 2025-01-06 16:27:03 +0400 |
|---|---|---|
| committer | Roman Arutyunyan <arutyunyan.roman@gmail.com> | 2025-04-15 19:01:36 +0400 |
| commit | 6bf13e9d57bbc664ac055cdb58c738b09a0f0189 (patch) | |
| tree | e0f9cc4599f72f1d6e5b1e2410ee3df45bdef62e /src/event/quic/ngx_event_quic_ack.c | |
| parent | cd5e4fa1446dff86fafc3b6ffcc11afd527a024f (diff) | |
| download | nginx-6bf13e9d57bbc664ac055cdb58c738b09a0f0189.tar.gz nginx-6bf13e9d57bbc664ac055cdb58c738b09a0f0189.tar.bz2 | |
QUIC: do not shrink congestion window after losing an MTU probe.
As per RFC 9000, Section 14.4:
Loss of a QUIC packet that is carried in a PMTU probe is therefore
not a reliable indication of congestion and SHOULD NOT trigger a
congestion control reaction.
Diffstat (limited to 'src/event/quic/ngx_event_quic_ack.c')
| -rw-r--r-- | src/event/quic/ngx_event_quic_ack.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/event/quic/ngx_event_quic_ack.c b/src/event/quic/ngx_event_quic_ack.c index bc99947bd..d16545a1d 100644 --- a/src/event/quic/ngx_event_quic_ack.c +++ b/src/event/quic/ngx_event_quic_ack.c @@ -755,6 +755,14 @@ ngx_quic_congestion_lost(ngx_connection_t *c, ngx_quic_frame_t *f) goto done; } + if (f->ignore_loss) { + ngx_log_debug3(NGX_LOG_DEBUG_EVENT, c->log, 0, + "quic congestion lost ignore t:%M win:%uz if:%uz", + now, cg->window, cg->in_flight); + + goto done; + } + cg->recovery_start = now; cg->window /= 2; |
