At 9/10/01 3:55 PM, Mark Jeftovic wrote:
>The one the root nameservers are returning are probably based on the same
>algorithm bind uses to figure this out since most, if not all of the
>roots run on bind or a variation thereof, (except Z.ROOT-SERVERS.NET which
>runs a proprietary verion of INEGroup's BINDPlus ;)
>
>If they don't already know they should query every nameserver delegated
>for domain and measure the RTT (Round Trip Time) from each in its
>response. They then hand out the nameserver with the shortest RTT.
>Then, each time they hand out that nameserver, they decrement the
>RTT's of the rest in order to facilitate a bit of load balancing.
And just so it's clear, it's the resolver that does the RTT measuring,
not the root servers.
The root servers simply give all the names to the resolver in
pseudo-random order. It's then up to the resolver to then decide which
nameserver(s) it wants to use for each query, based on a combination of
nameserver order, RTT, and nameserver availability (it tries at least
one, then tries others if necessary until it gets one that works).
(I'm sure that's what Mark was saying, but it could be read as implying
that the root servers themselves are doing the RTT measurements and
handing out the order based on that, which isn't the case.)
--
Robert L Mathews, Tiger Technologies