Count server-sent RST_STREAM STREAM_CLOSED as suspect streams towards the HTTP/2 connection close threshold.
This CL considers scenarios in which the GFE needs to send RST_STREAM
STREAM_CLOSED as suspicious, as these scenarios imply the client is sending
HEADERS or DATA on a stream after half-closing that stream. As discussed in
cl/568690849, these scenarios can count toward the existing threshold for
connection close (used for client-sent premature RST_STREAMs) because the GFE
will not be forwarding these frames to the backend.
This CL also performs a minor fix to consider the receipt of HEADERS on a
half-closed remote stream to be suspect (via newly closing with RST_STREAM
STREAM_CLOSED) even if that HEADERS does not have the END_STREAM flag set.
Tested:
blaze test //gfe/gfe2/http2/e2e:end_to_end_test_http2 --test_filter=*DataFrameAfterHalfClosedRemote* --runs_per_test=2000
http://sponge2/1f334d43-ce60-4531-b7b4-aea62075e6c3
Protected by FLAGS_gfe2_reloadable_flag_http2_record_suspect_rst_stream_closed and pre-existing --gfe2_reloadable_flag_http2_send_goaway_for_premature_rst_streams.
PiperOrigin-RevId: 568909684
diff --git a/build/source_list.json b/build/source_list.json
index 5dffaf9..6dbfde3 100644
--- a/build/source_list.json
+++ b/build/source_list.json
@@ -1478,6 +1478,12 @@
"quiche/quic/load_balancer/load_balancer_server_id_map_test.cc",
"quiche/quic/load_balancer/load_balancer_server_id_test.cc"
],
+ "moqt_hdrs": [
+
+ ],
+ "moqt_srcs": [
+
+ ],
"binary_http_hdrs": [
"quiche/binary_http/binary_http_message.h"
],