]> git.ipfire.org Git - thirdparty/bind9.git/commit
Limit TCP pipelining per shared dispatch
authorOndřej Surý <ondrej@sury.org>
Sun, 15 Mar 2026 06:23:33 +0000 (07:23 +0100)
committerOndřej Surý <ondrej@isc.org>
Tue, 14 Apr 2026 15:48:16 +0000 (17:48 +0200)
commit385ceabe8f9d50c13f6781fbed79807ed77da69d
tree082c11bed0eb4e5c7fc1598ad8fe79a691dc06a9
parent05e8b58307db4333633226a3a38f3321368c41f7
Limit TCP pipelining per shared dispatch

Cap the number of in-flight queries on a single shared TCP dispatch.
When the limit is reached, the dispatch is removed from the hash
table so subsequent queries get a fresh connection.  The existing
dispatch continues serving its queries until they complete.

This bounds the blast radius of a connection drop: at most N queries
fail simultaneously instead of all queries to that server.

The default limit is 256.  It can be overridden for testing via
'named -T tcppipelining=N'.
bin/named/main.c
lib/dns/dispatch.c