forwarding algorithm and timeouts

Kevin Darcy kcd at
Mon Mar 26 22:00:22 UTC 2001

Bob Vance wrote:

> What exactly is the forwarding algorithm, assuming that "forward only"
> is set.
> Or where can I read about it (besides the source code :) ?
> I checked the ARM, but only found this brief statement:
>    "they are queried in turn until the list is exhausted or an answer
>     is found.
>    "
> Hmmm. I just looked in 'DNS and BIND, 2nd' and it says:
>    "each forwarder is contacted only once, and it waits a short time
>     for the forwarder to respond.
>    "

Actually, as of BIND 8.2.3, the forwarders are supposedly tried according
to historical RTT, not necessarily sequentially...

> OK.  What is the timeout used before going to the next one in the list?
> I would assume that it would have to be ~5 since we know that the stub
> resolvers wait this long on their initial try.  Otherwise, we could get
> several outstanding request from resolvers before the first forwarder
> try times out.
> Do all resolvers follow the algorithm described in 'DNS and BIND' ?
> I.e., do WinX or MAC clients also try their list initially with 5
> seconds, then re-do the list with 10 seconds, etc.?
> Is this algorithm a requirement described in an RFC?

In RFC terms, a nameserver doing "forward only" isn't really acting as a
"nameserver" _per_se_, but is actually assuming the role of a "resolver",
basically a stub-resolver-with-caching. I don't recall offhand if there
are any specific parameters in the RFCs regarding resolver timeouts...

- Kevin

More information about the bind-users mailing list