A Measurement-Based Study of the Optimal Value of DNS Timeouts

A Measurement-Based Study of the Optimal Value of DNS Timeouts

While in college at Ursinus, I did a research paper over a summer and a semester on DNS.  Below are links to my paper, the tools I used, and my abstract.

Abstract Paper Tools (tar.gz) Tools (zip)

The Domain Name System (DNS) is an Internet service that allows domain names, such as www.ursinus.edu, to be used in place of IP addresses, such as 198.17.40.106. DNS is consulted every time a host attempts to use a domain name for email, instant messaging, and many other Internet applications. Despite having been developed over 20 years ago, DNS is extremely robust. However, it is still possible for errors to occur. Since DNS queries and responses are sent via UDP, DNS implements its own reliability mechanism. When a system does not respond to a query, another request is sent after a timeout under the assumption that an error occurred. Our research explored the plausibility of reducing the default timeout for DNS queries.

To examine this timeout we used several methods and scripts to compile a large list of remote nameservers. We then measured the round-trip times from a local DNS server to a sample of the remote nameservers. We found that the vast majority of round-trip times were less than 1 second. We noted that current implementations of nameservers use a default timeout starting at 5 seconds. We therefore propose that the default timeout can be significantly reduced, noticeably enhancing user-perceived performance while limiting the overall negative impact on the network.

  1. No Comments