[squid-dev] [RFC] dns_wait_for_all
Amos Jeffries
squid3 at treenet.co.nz
Thu Sep 15 01:26:14 UTC 2016
On 15/09/2016 8:15 a.m., Alex Rousskov wrote:
>
> Any better ideas or objections to adding dns_wait_for_all?
>
In principle okay. However, I was intending to redesign the object we
store DNS RR results in to achieve this is a more useful way. Such that
instead of returning an array of IP addresses it returned an object
storing the Query label, then a chain of RR objects for that label.
That would give several other useful benefits beyond that speedup:
* slow DNS responses could add to the chain while earlier results are
still in Async queue pending delivery to a caller.
- this would obsolete the need for dns_wait_for_all to be configurable.
Always respond on first result and append data if it comes in early enough.
* ip/fqdn caches can store older data up to some timeout in TTL / LRU
sequence.
- resolving many DNS rotation issues, including certain type of Host
verify failures.
- merging the IP and FQDN caches ??
* extensibility of RR type the DNS could lookup and present the callers.
- needed by DANE and SRV lookups.
* one less memcpy cycle per IP address returned by DNS.
- paid for by more chain dereferencing overheads.
Amos
More information about the squid-dev
mailing list