bind9/lib
Aram Sargsyan 4e70342142
ns_client: reuse TCP send buffers
Constantly allocating, reallocating and deallocating 64K TCP send
buffers by 'ns_client' instances takes too much CPU time.

There is an existing mechanism to reuse the ns_clent_t structure
associated with the handle using 'isc_nmhandle_getdata/_setdata'
(see ns_client_request()), but it doesn't work with TCP, because
every time ns_client_request() is called it gets a new handle even
for the same TCP connection, see the comments in
streamdns_on_complete_dnsmessage().

To solve the problem, we introduce an array of available (unused)
TCP buffers stored in ns_clientmgr_t structure so that a 'client'
working via TCP can have a chance to reuse one (if there is one)
instead of allocating a new one every time.
2024-06-10 18:43:45 +02:00
..
bind9 Deprecate AES algorithm for DNS cookies 2023-12-05 10:52:03 +01:00
dns Clear DNS_FETCHOPT_TRYSTALE_ONTIMEOUT 2024-06-06 07:48:49 +02:00
irs Properly process extra nameserver lines in resolv.conf 2023-05-16 13:29:33 +10:00
isc Throttle reading from TCP if the sends are not getting through 2024-06-10 18:43:44 +02:00
isccc NetBSD has added 'hmac' to libc so rename our uses of hmac 2023-12-14 11:14:04 +11:00
isccfg Add checkconf check for signatures-jitter 2024-04-18 15:00:07 +00:00
ns ns_client: reuse TCP send buffers 2024-06-10 18:43:45 +02:00
.gitignore The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
Makefile.am move samples/resolve.c to bin/tests/system 2021-04-16 14:29:43 +02:00