]> git.kaiwu.me - nginx.git/commit
HTTP/3: traffic-based flood detection.
authorRoman Arutyunyan <arut@nginx.com>
Thu, 7 Oct 2021 10:22:42 +0000 (13:22 +0300)
committerRoman Arutyunyan <arut@nginx.com>
Thu, 7 Oct 2021 10:22:42 +0000 (13:22 +0300)
commit434f11bf3f4c9c8466a946c775441ecd6f768c13
tree4b60637010e15bf84d539d2d027a31deddc1f297
parent0c33e484a4333fe2a343baf3aeefae3212534db3
HTTP/3: traffic-based flood detection.

With this patch, all traffic over HTTP/3 bidi and uni streams is counted in
the h3c->total_bytes field, and payload traffic is counted in the
h3c->payload_bytes field.  As long as total traffic is many times larger than
payload traffic, we consider this to be a flood.

Request header traffic is counted as if all fields are literal.  Response
header traffic is counted as is.
src/http/v3/ngx_http_v3.c
src/http/v3/ngx_http_v3.h
src/http/v3/ngx_http_v3_filter_module.c
src/http/v3/ngx_http_v3_request.c
src/http/v3/ngx_http_v3_streams.c