Hi folks,
I got some questions regarding DNS
SRV support and will appreciate your response:
For the code in TransactionState::sendToTU:
- In case of 503 with Retry-After host is added to blacklist for
timeout specified in Retry-After
- In case of internally generated 408, host is added to grey list to
for 32 seconds.
- In case of any other response host is being white listed.
My questions are:
- What is a difference between graylist and blacklist. (I suspect
that hosts from black list are never tried, while grey-listed hosts are
tried when there are no other hosts left to try)?
- Why timeout for no response case (408) is so short. Faulty host is
being tried very fast again, the transaction fails instead of going with
available hosts.
- Is there any way to use ICMP messages as indication of host
unavailability instead of waiting until transaction timeout and if there
is any way to resend request to the next host in this case?
- Is there any way to get notified regarding list of all hosts
maintained by stack instance and does it make sense to ping (using OPTIONS
for example) these hosts directly (bypassing SRV query), so if status of
the host is changed it will be known sooner and probably even without
wasting real transaction?
Thanks, Boris
|