2 weeks back Google launched it’s Public DNS. The electronic media in general and the blogosphere in particular were all singing in favor of Google Public DNS. Many users claimed they have noticed significant improvement in their Internet speed after switching to Google Public DNS. Today, Google is undoubtedly the Most Powerful Brand in the world, but does it mean we should blindly follow what ever comes from Google?
Many excited Internet users have already configured their settings to Google Public DNS. Before Google’s launch many users were shifting to OpenDNS from their ISP’s DNS. We always have a doubt on the capability of our local ISP DNS server. The question which keeps up popping in web users mind is:
- Which one is the fastest DNS server, Google Public DNS or OpenDNS or your ISP DNS Server?
Optional Info: Let me simplify DNS (Domain Name System). Most of the human beings are more comfortable in remembering say for example google.com than 18.104.22.168. The domain name of this blog www.techno-pulse.com is more human friendly, as it helps us to remember it easily. What happens behind the scene when you type www.techno-pulse.com in your browser’s address bar?
- Browser will request the IP address for www.techno-pulse.com
- The above request will go to a DNS server, if you’ve not changed the settings, by default it should be your local ISP’s DNS server.
- The DNS server will check it’s cache for the IP address of www.techno-pulse.com
- If it’s not available in the cache it’ll query root servers for authoritative DNS server of www.techno-pulse.com
- The IP address of www.techno-pulse.com is resolved, your browser will connect to port 80 of destination IP address and will render the requested page.
In plain English we can define a DNS server as a Translator, sort of, from the human readable language to machine readable, i.e. it converts domain names into machine understandable IP address.
Which one is the fastest and the best: Google DNS or OpenDNS or your Local ISP DNS
How fast response comes back from a DNS server may significantly depend on where the server is located. DNS servers are located hierarchically in the network and DNS queries (name resolution) is done from the closest server (if DNS entry is valid). The following factors may affect the performance of a DNS server.
- Response Time,
- Number of hops traversed
- DNS server diversity
- Load-balancing factor
- Time-of-day effects,
- Impact on web-security etc.
Geographical proximity is not essential for better performance always.
CDNs (Content Delivery Networks) and DNS Server
There’s one more important factor to take a note of, especially with the growing trend of Cloud Computing. Every major website (Yahoo, Microsoft etc) have their CDNs or use some CDNs (viz Akamai CDN) nearest server will fulfill the request. If this is the case, Google DNS may route the request to a server which may not be the nearest one. Your ISP will at least be in a better position to provide the exact location & hence request will be routed to the nearest server… Since most CDNs have servers in ISP point of presence, clients’ request can be dynamically forwarded to topologically proximate replicas i.e.
Optional Info: “CDNs attempt to improve web performance by delivering content to end users from multiple, geographically dispersed servers located at the edge of the network. Content providers contract with CDNs to host and distribute their content. Since most CDNs have servers in ISP points of presence, clients’ requests can be dynamically forwarded to topologically proximate replicas. DNS redirection and URL rewriting are two of the commonly used techniques for directing client requests to a particular server”. Akamai CDN is perhaps the biggest CDN provider operating in 69 countries.
How to Test or Compare DNS servers speed
There’s a tool and that too from Google which will help you in comparing & benchmarking DNS Servers. The tool is known as NameBench.
How to use the benchmarking tool: Namebench
- Download Namebench. (Light weight, Approx. 5MB)
- Run it. It’s very smart and will populate your default DNS server.
- Even with a dial-up connection, It won’t take more than 30 minutes to render the result.
I got the following results for a test performed in Hyderabad, India on 13 Dec 2009.
It also recommends you 3 fastest + Nearest DNS Servers for your location
Optional Info: With reference to the above screen-shot:
You can uncheck the blue colored encircled check box if you are not interested in other DNS Servers of your region. Moreover, if you are on a slower connection it’s better to uncheck it.
For best results keep the Number of tests (Encircled in Red) to default i.e. 200. But if you are on a slower connection you can run a test for less number of tests i.e. 50 or 100 etc.
Analysis of the Result
Why ultraDNS was faster than Google Public DNS? I explored a bit more about it and I found out that UltraDNS has a DNS server in Noida (India). It also seems that UltraDNS is a paid service. Though Google claims to have DNS Servers hosted world-wide in its data-centers, I am not sure but it seems they are yet to host a DNS server in India. May be the Geographical proximity lead to a faster ultraDNS Server. I am not sure.
Perform your test and find out yourself as which one is the best and fastest DNS server for your location. Let me know.
The debate of GoogleDNS vs. OpenDNS vs. ISP DNS ends here~~~