Tuesday, July 23, 2013

Smart Bro DNS vs. Google Public DNS

Here is a study comparing the DNS server from Smart Bro performance against that of Google Public DNS.

It has been thought that because Google has a large database that using their public DNS server would increase internet speed. So how true is it?

To begin, let me illustrate what happens when we browse the internet. At least as I understood it.

It starts from our computer. When we open our browser and type in a URL in the address bar called host name (like www.google.com), our computer sends out this information to the internet. But every machine, including the servers that host a domain, do not have word names, it has numeric names called IP address (like 173.194.38.144). The words are only for humans because we are better at remembering words than numbers.

To resolve this, another server is needed to translate the host name into an IP address before your request for a web page can continue. That is the job of a DNS server, to resolve host names into its equivalent IP address then directs you to the proper server.

Your computer sends out request to a host name, host name gets translated into an IP address by a DNS server, target IP address sends out requested data to your computer.
Smart Bro vs. Google Public DNS
To compare the two let us take the latency by using the ping command to check for delay but according to Google the delay in internet browsing also includes the host name resolution time.

"In addition to the ping time, you also need to consider the average time to resolve a name. For example, if your ISP has a ping time of 20 ms, but a mean name resolution time of 500 ms, the overall average response time is 520 ms. If Google Public DNS has a ping time of 300 ms, but resolves many names in 1 ms, the overall average response time is 301 ms.

The formula then for delay is:
Delay = connection latency + host name resolution time

To get the host name resolution time, I used the nslookup command in a batch file in DOS. I have taken some data at different times of the day as internet traffic varies during the day. Here is a summary of the result.

Time Host Name Ping Result DNS Server Resolution Time Total Delay
Smart Bro Google Public DNS Smart Bro Google Public DNS Smart Bro Google Public DNS
Day1 @ 1am www.google.com 312 ms 479 ms 1110 ms 1130 ms 1422 ms 1609 ms
www.facebook.com 447 ms 290 ms 1140 ms 1050 ms 1587 ms 1340 ms
cyberliving.blogspot.com 518 ms 446 ms 1160 ms 2170 ms 1678 ms 2616 ms
Day1 @ 9am www.google.com 331 ms 512 ms 1290 ms 1120 ms 1621 ms 1632 ms
www.facebook.com 433 ms 474 ms 1080 ms 1140 ms 1513 ms 1614 ms
cyberliving.blogspot.com 486 ms 507 ms 1380 ms 1130 ms 1866 ms 1637 ms
Day1 @ 4pm www.google.com 411 ms 318 ms 1020 ms 700 ms 1431 ms 1018 ms
www.facebook.com 358 ms 283 ms 880 ms 640 ms 1238 ms 923 ms
cyberliving.blogspot.com 420 ms 303 ms 1090 ms 700 ms 1510 ms 1003 ms
Day1 @ 9pm www.google.com 509 ms 438 ms 1140 ms 900 ms 1649 ms 1338 ms
www.facebook.com 399 ms 330 ms 1020 ms 870 ms 1419 ms 1200 ms
cyberliving.blogspot.com 510 ms 447 ms 6390 ms 940 ms 6900 ms 1387 ms
Day2 @ 12am www.google.com 344 ms 298 ms 700 ms 550 ms 1044 ms 848 ms
www.facebook.com 288 ms 255 ms 710 ms 430 ms 998 ms 685 ms
cyberliving.blogspot.com 302 ms 325 ms 670 ms 640 ms 972 ms 965 ms
Day2 @ 10am www.google.com 645 ms 349 ms 1670 ms 750 ms 2315 ms 1099 ms
www.facebook.com 505 ms 288 ms 1450 ms 720 ms 1955 ms 1008 ms
cyberliving.blogspot.com 566 ms 300 ms 1650 ms 720 ms 2216 ms 1020 ms
Day2 @ 7pm www.google.com 378 ms 330 ms 840 ms 570 ms 1218 ms 900 ms
www.facebook.com 428 ms 303 ms 740 ms 560 ms 1139 ms 863 ms
cyberliving.blogspot.com 305 ms 349 ms 810 ms 820 ms 1115 ms 1169 ms

Comparing the two, in general, using Google Public DNS gives a latency and host name resolution that is lower, thus the overall delay is much lower compared to that of my ISP.

It is interesting to note though that my first two results in Day 1 is showing a better performance for my ISP. And this is during a non-peak hours my time. But otherwise, Google Public DNS is thus far winning the battle. That is, of course, only one part of the problem solved. We have only looked at the delay from the moment our computer made the request until we got a response.

What does it mean to you? When you go to a certain web page, your computer actually makes several http requests. This is because web pages have javascript, CSS, html, images, Flash, etc. which are separate files in themselves saved at the same domain or from other domains and each one requires a separate request (http request) to the same domain.

Here is an example:
If I would have visited www.facebook.com on Day1 @ 9pm and it requires a total of 5 http requests, using my ISP's DNS would have a delay of 7.095s (5*1419ms) while with Google Public DNS it would only be 6s (5*1200ms) or a difference of approximately 1 second. With higher http request for a page the longer you will have to wait and the bigger difference between the two.

Throughput Speeds
How about the download and upload speed (Throughput) of our internet connection? Does using other DNS server improve it? For this, I have to use the online testing tool at speedtest.net. I choose three locations to test my download and upload speed. One nearest my location, one midway between my location and the Americas and one in the United States.

Time Down/Up Speed Tarlac Lutsk Sioux Falls SD
Smart Bro Google Public DNS Smart Bro Google Public DNS Smart Bro Google Public DNS
Day1 @ 10am Download Speed 0.35Mbps 0.25Mbps 0.40Mbps 0.30Mbps 0.53Mbps 0.43Mbps
Upload Speed 0.15Mbps 0.15Mbps 0.21Mbps 0.17Mbps 0.23Mbps 0.17Mbps
Day1 @ 4pm Download Speed 0.46Mbps 0.55Mbps 0.77Mbps 0.71Mbps 0.32Mbps 0.71Mbps
Upload Speed 0.16Mbps 0.18Mbps 0.23Mbps 0.20Mbps 0.17Mbps 0.29Mbps
Day2 @ 12am Download Speed 0.94Mbps 0.34Mbps 1.03Mbps 0.30Mbps 1.11Mbps 0.48Mbps
Upload Speed 0.15Mbps 0.13Mbps 0.25Mbps 0.18Mbps 0.29Mbps 0.29Mbps
Day2 @ 10am Download Speed 0.20Mbps 0.43Mbps 0.53Mbps 0.46Mbps 0.36Mbps 0.48Mbps
Upload Speed 0.14Mbps 0.15Mbps 0.20Mbps 0.21Mbps 0.26Mbps 0.27Mbps

The result above is now reversed. This time, it looked like Google has lower download and upload speeds compared to Smart Bro.

If I am to translate this into browsing speed, it will be like this. It is thought of that currently, the average size of a page is 1.3MB. Let us say I wanted to visit a site (www.exampleLutsk.com) located in the area of Lutsk, Ukrain during the time Day1 @ 10am, it would take me to download the content of the page (1.3MB) in 26 seconds (0.4Mbps=0.05MBps) using my ISP's DNS while with Google it would be 30.5 (0.3MBps=0.0375MBps) seconds or a difference of 4 seconds between the two.

Summary
With the tabulated results above, I could say that there is no difference with using my Smart Bro's DNS against that of Google Public DNS in terms of internet browsing speed. That is because, whatever advantage Google had with latency and host name resolution was erased by the download and upload speed. One reason I see that caused the bandwidth reduction in using Google's Public DNS is that it could be redirecting me to a server further from my location. But this is something that I have not verified and is beyond the scope of this post.

Increased HTTP look-up or not, notice at the tabulated ping results that my round trip time (RTT) is quite large. If some believe that an RTT below 100ms is what is deemed good/acceptable couple that with an average of 0.58Mbps (only results using Smart Bro DNS was used in the calculation) when it is rated at 3Mbps then what I have is mediocre at best.

Back to CyberLiving home page

Other Posts

1 comments

Anonymous

This is very interesting, You're an excessively professional
blogger. I've joined your feed and look ahead to in quest of more of your great post.

Additionally, I've shared your website in my social networks

Check out my webpage haarausfall bei kindern forum (losvideosmusicales.com)

Post a Comment