comparison src/event/quic/ngx_event_quic_transport.h @ 9192:efcdaa66df2e

QUIC: congestion control in ngx_quic_frame_sendto(). Previously ngx_quic_frame_sendto() ignored congestion control and did not contribute to in_flight counter. Now congestion control window is checked unless ignore_congestion flag is set. Also, in_flight counter is incremented and the frame is stored in ctx->sent queue if it's ack-eliciting. This behavior is now similar to ngx_quic_output_packet().
author Roman Arutyunyan <arut@nginx.com>
date Wed, 29 Nov 2023 21:41:29 +0400
parents 618132842e7c
children ce1ff81e9b92
comparison
equal deleted inserted replaced
9191:618132842e7c 9192:efcdaa66df2e
269 ngx_msec_t first; 269 ngx_msec_t first;
270 ngx_msec_t last; 270 ngx_msec_t last;
271 ssize_t len; 271 ssize_t len;
272 unsigned need_ack:1; 272 unsigned need_ack:1;
273 unsigned pkt_need_ack:1; 273 unsigned pkt_need_ack:1;
274 unsigned ignore_congestion:1;
274 275
275 ngx_chain_t *data; 276 ngx_chain_t *data;
276 union { 277 union {
277 ngx_quic_ack_frame_t ack; 278 ngx_quic_ack_frame_t ack;
278 ngx_quic_crypto_frame_t crypto; 279 ngx_quic_crypto_frame_t crypto;