Improved DNS server
Publication Date: 2010-Aug-24
The IP.com Prior Art Database
We disclose a method of improving DNS lookup times. When a lookup is done for a particular address, the reply should contain lookup data for requests likely to be made subsequently. These subsequent requests then never need to be made, reducing latency. Statistical analysis and inference may be used to derive the additional lookup data to be included. Other methods are disclosed.
Improved DNS server
In an example, a website is created, and the DNS activity and speed when loading the website is measured using a tool.
It is found that five serial DNS lookups were required to load the page, although four of these can in principal be queried in parallel.
We would like to speed up the loading of the webpage by reducing the time spent doing DNS resolution. One approach to this is to make each of the serial DNS lookups as fast as possible. We disclose an alternative method: by combining knowledge of page content with the DNS system we can further reduce latency without requiring any changes to DNS clients.
The DNS response format allows the DNS server to include additional records which the client did not ask for. If the DNS server has knowledge of the resources required by the pages on the website being queried, the DNS server could reduce the latency experienced by its clients by sending the DNS records to resolve the location of those resources along with the original response. The client then never needs to ask for them, and hence never experiences delay of waiting for them.
Assuming that the page content database also has a record of which pages are the most popular, the DNS server can respond with the additional records which have the greatest chance of being useful to the client. Again, examining a site (eg, http://blog.mysite.com), one needs to resolve the following domains to render any html page:
And one needs to resolve the following to render some of the pages: myramblings.files.globepub.com (2 pages, including the front page - about 35% of page views)
www.mainsite.com (60 pages, not including the front page - under 5% of page views) So a smart DNS responder, when asked for the address of blog.mysite.com would give the addresses of:
But it is not currently worth telling everyone where to find www.mainsite.com as most requesters won't ever want to know.
The information above was obtained from a public website analytics site, so the information already exists in a form that could be used by an advanced DNS server.
The information can also be derived without using external website analytics. Clearly one method of doing this would be for a web master to upload this information to the DNS server - potentially using a web form. In principal the web server could do the same - potentially using a network protocol designed for this purpose.
However the most elegant form is to build up the database using statistical analysis of past DNS requests: the server will identify all requests by incoming IP address. When a single IP makes requests for more than one address within a short period of time (a "session"), the DNS server should make a note of the first and subsequent addresses. This could be stored in a hash data structure with the firs...