Forwarders and performance

Payne Freret payne at cs.stanford.edu
Mon Oct 25 19:05:57 UTC 1999


"Steve Snyder" <swsnyder at home.com> wrote:

> I'm considering forwarders as they relate to performance
> [snip]
> 1. In the short term (soon after [re]starting named) I will get better 
> performance in name resolution by having these lines in the options {} 
> section of my config file: 
> 
>         forward first;
>         forwarders { 24.4.162.33; 24.4.162.34; };
> 
> The performance win is that my ISP's nameservers (the addresses above) 
> may already have cached the information I will need.  If the info is not 
> already cached, I will fall back to resolving the name in question via 
> the root nameservers.  

I have found from experiment and experience that forwarding to my
ISP's nameservers almost always produces faster lookups than having my
local nameserver start at the root servers. Because the ISP's
nameservers frequently have the information in their cache, the lookup
was virtually instantaneous.  Even when the information wasn't in the
ISP's cache, the ISP nameserver seemed to be able to get it faster
than my local nameserver.  (This part of the experiment was hard to
control, and I didn't devote much effort to trying to nail down the
performance difference.)

> 2. There is a long term (named has been running for a while) gain to 
> *not* having these to options defined as this forces all name resolution 
> to be done via the root nameservers.  My local nameserver will gain 
> general resolution info in the course of resolving a given specific 
> name. 

For the "long term" case I found from experience that records in my
local nameserver's cache have often expired, so my local nameserver
has to get them from the Internet all over again.  That is to say, my
local nameserver seems often to out to the Internet to answer a local
DNS query.  Forwarding to my ISP's nameservers produces, in general,
faster DNS lookups even after my local nameserver has been running for
days or weeks.

I have come across a rare downside to forwarding.  I encountered a
case where the preferred ISP nameserver (the one listed first in the
forwarders {}; statement) had cached incorrect information.  Only by
forcing a query to the non-preferred nameserver or by bypassing
forwarding altogether could I get the correct information.

In summary, from experiment and personal experience I've found that
forwarding to a well connected, well used ISP nameserver produces (for
me at least) faster lookups than does not forwarding.  I described my
experiments to the bind-users mailing list at the end of June
(http://www.isc.org/ml-archives/bind-users/1999/06/msg00200.html) and
was chastised for constructing an unfair experient.  That could be
because (a) the essential results of my experiments were overlooked,
(b) I described the experiments poorly, or (c) I just don't get it.

Payne Freret


 


More information about the bind-users mailing list