Mercurial > hg > nginx-quic
comparison src/event/quic/ngx_event_quic_connection.h @ 8492:af33d1ef1c3c quic
QUIC: stream flow control refactored.
- Function ngx_quic_control_flow() is introduced. This functions does
both MAX_DATA and MAX_STREAM_DATA flow controls. The function is called
from STREAM and RESET_STREAM frame handlers. Previously, flow control
was only accounted for STREAM. Also, MAX_DATA flow control was not accounted
at all.
- Function ngx_quic_update_flow() is introduced. This function advances flow
control windows and sends MAX_DATA/MAX_STREAM_DATA. The function is called
from RESET_STREAM frame handler, stream cleanup handler and stream recv()
handler.
author | Roman Arutyunyan <arut@nginx.com> |
---|---|
date | Mon, 07 Jun 2021 10:12:46 +0300 |
parents | b3f6ad181df4 |
children | 004172345bdc |
comparison
equal
deleted
inserted
replaced
8491:ac0398da8f23 | 8492:af33d1ef1c3c |
---|---|
113 | 113 |
114 typedef struct { | 114 typedef struct { |
115 ngx_rbtree_t tree; | 115 ngx_rbtree_t tree; |
116 ngx_rbtree_node_t sentinel; | 116 ngx_rbtree_node_t sentinel; |
117 | 117 |
118 uint64_t received; | |
119 uint64_t sent; | 118 uint64_t sent; |
119 uint64_t recv_offset; | |
120 uint64_t recv_window; | |
121 uint64_t recv_last; | |
120 uint64_t recv_max_data; | 122 uint64_t recv_max_data; |
121 uint64_t send_max_data; | 123 uint64_t send_max_data; |
122 | 124 |
123 uint64_t server_max_streams_uni; | 125 uint64_t server_max_streams_uni; |
124 uint64_t server_max_streams_bidi; | 126 uint64_t server_max_streams_bidi; |