I was reading this article here:
“To speed up browsing, Google Chrome resolves domain names before the user navigates, typically while the user is viewing a web page.”
“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 … Google Chrome automatically scans the content of each rendered 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, hardly using any CPU power. When a user clicks on any of these pre-resolved names to visit a new domain, they will save an average of over 250ms in their navigation.”
So this article got me thinking and I have a few questions about DNS resolution:
#1 - Google Chrome looks like they look up domain names, translate them into IP addresses, and then save the results somewhere. This would mean that it would only have to be resolved once correct? So once you navigate to other webpages, the DNS resolution time would be just the time it takes to read the file and retrieving the saved entry.
#2 - Do other browsers do any sort of prefetching like this? Looking at webpagetest.org test results on repeat view, it looks like there can be significant time for DNS resolution even though the DNS was resolved on the first view. Any comments on this?
#3 - If IE does not save DNS lookups, is there anyway you can tell the browser to start resolving lookups for a particular page without downloading a resource? For instance, let’s say a user comes to my webpage. When they first get there, it would be nice to let the browser know what they need to resolve for the base document to work.
#4 - Do you think other browsers will catch on to this concept if they do not already?