DNS lookup slows down web surfing by a significant amount of time. It has been calculated that an average DNS lookup takes 250ms, which is the amount of time you spent waiting even before the browser has connected to the site’s server and started downloading the page. 250ms doesn’t look like big issue at first glance, but even this small delay gets significant when you have to click dozens of links from a page.
Some time back I wrote about setting up a local DNS cache on your computer to speed up browsing. This method eliminates the need to lookup DNS for frequently visited pages. Another clever technique to speed up browsing is DNS Prefetching.
The DNS Prefetch addon for Firefox enables DNS Prefetching which is a method of resolving and caching DNS lookups before you actually click on a link. DNS prefetching just resolves domain names before a user tries to navigate, so that there will be no effective user delay due to DNS resolution. One example where prefetching can help is when a user is looking at a page with many links to various other domains, for instance a search results page.
With DNS Prefetching, Firefox automatically scans the content of each page looking for links, extracting the domain name from each link, and resolving each domain to an IP address. All this work is done in parallel with the user’s reading of the page. When a user clicks on any of these pre-resolved names to visit a new domain, they save an average of over 250ms in navigation.
DNS Prefetching is already available in Google Chrome, and is planned to be inbuilt in Firefox 3.5.