comparison src/event/quic/ngx_event_quic_connection.h @ 9195:ff452f283aa9

QUIC: reset RTT estimator for the new path. RTT is a property of the path, it must be reset on confirming a peer's ownership of its new address.
author Sergey Kandaurov <pluknet@nginx.com>
date Tue, 12 Dec 2023 20:20:51 +0400
parents a6f79f044de5
children 6c8595b77e66
comparison
equal deleted inserted replaced
9194:a6f79f044de5 9195:ff452f283aa9
62 62
63 #define ngx_quic_get_connection(c) \ 63 #define ngx_quic_get_connection(c) \
64 (((c)->udp) ? (((ngx_quic_socket_t *)((c)->udp))->quic) : NULL) 64 (((c)->udp) ? (((ngx_quic_socket_t *)((c)->udp))->quic) : NULL)
65 65
66 #define ngx_quic_get_socket(c) ((ngx_quic_socket_t *)((c)->udp)) 66 #define ngx_quic_get_socket(c) ((ngx_quic_socket_t *)((c)->udp))
67
68 #define ngx_quic_init_rtt(qc) \
69 (qc)->avg_rtt = NGX_QUIC_INITIAL_RTT; \
70 (qc)->rttvar = NGX_QUIC_INITIAL_RTT / 2; \
71 (qc)->min_rtt = NGX_TIMER_INFINITE; \
72 (qc)->first_rtt = NGX_TIMER_INFINITE; \
73 (qc)->latest_rtt = 0;
67 74
68 75
69 typedef enum { 76 typedef enum {
70 NGX_QUIC_PATH_IDLE = 0, 77 NGX_QUIC_PATH_IDLE = 0,
71 NGX_QUIC_PATH_VALIDATING, 78 NGX_QUIC_PATH_VALIDATING,