Perry Lorier wrote:
Jay Daley wrote:
Hello All
I suspect many of you will already know that the Commerce Commission has released its report into broadband quality for the last six month of last year:
http://www.comcom.govt.nz/assets/Uploads/Report-on-New-Zealand-Broadband-Qua...
On page 31 there is a specific discussion about the impact of caching DNS resolution speeds:
"The DNS performance from remote test sites to the ISPs tested in all cities shows that webpage loading is slower the further the user is from the Auckland based DNS."
This implies that all ISPs have their caching DNS resolvers based in Auckland. I would be very interested to know if that is that case. If anyone could enlighten me, on or off list, I would be very grateful.
As I'm sure you're aware, a recursive nameserver looking up a name starts with the root nameservers, and works its way down the tree towards the name you care about. So if you're looking up www.example.net, and we assume there is nothing in your nameservers cache, you get this sequence of events:
[Resolution sequence deleted]
Now we're ready to start to fetch the page.
Best case I've got 8ms (f.root) + 137ms (f.gtld) + 139ms (a.iana) = 284ms. Worst case I've got 248 (m.root) + 310ms (e.gtld) + 329ms (a.iana) = 887ms.
And this is for a reasonably well connected site -- nearly .9 of a second before we've *begun* to fetch the page.
You are missing a very important point: this is assuming your cache is totally empty. So you pay this penalty once when the cache is cold. During normal operation, a cache sees a 75-85% hit rate. [1]
Somewhere between about 20% and 70% of that time is spent talking to the GTLD servers. And the NS and A .com/.net glue are cachable for 86400, so once a day, at least one person has to wait almost an entire extra second. If you have 86,400 users that have to waste 1 extra second a day, you've just wasted an entire lifetime.
This affirmation assumes all entries expire at the same time, and the root zone has a 41 days TTL for the glue records. If 86,400 users wasted one second, that's not a lifetime, that's only a day... unless we are talking about the lifetime of some insects. Joking aside, to waste that amount of time 236 years have to pass, because you waste one second per day.
If you want to improve Internet performance in New Zealand through improving DNS infrastructure, try and get at least one GTLD server instance hosted within New Zealand. the time it takes to go to the US for the GTLD .COM/.NET/.EDU lookups is by far the easiest of those to solve.
The gain for having an instance of each .COM/.NET/.EDU in New Zealand is low, because a cache resolver will hit them only when the NS/A records expire. A cache resolver usually queries more frequently the authoritative nameservers for the domains the users ask for, rather than "hierarchy" nameservers. Cheers! [1] http://pdos.csail.mit.edu/papers/dns:ton.pdf (I didn't find a fresher reference)
Interestingly afilias's .org and .info infrastructure appears to have an instance within NZ (~5ms away), and the rest of their servers also seem to be fairly close.
Also, you want to try and implement recursive name servers that have large caches, and have some kind of prefetching for commonly hit domains to avoid having end users wait. Try checking your local nameserver infrastructure with http://code.google.com/p/namebench/ to see how well it performs, it's quite eye opening.
_______________________________________________ NZNOG mailing list NZNOG(a)list.waikato.ac.nz http://list.waikato.ac.nz/mailman/listinfo/nznog
-- Sebastian Castro DNS Specialist .nz Registry Services (New Zealand Domain Name Registry Limited) desk: +64 4 495 2337 mobile: +64 21 400535