This preview has intentionally blurred sections. Sign up to view the full version.View Full Document
Unformatted text preview: CoDNS : Masking DNS Delays via Cooperative Lookups KyoungSoo Park, Zhe Wang, Vivek Pai and Larry Peterson Department of Computer Science Princeton University Abstract The Domain Name System (DNS) is a ubiquitous part of everyday computing, translating human-friendly machine names to numeric IP addresses. With its redundant de- sign, aggressive caching, and widely-assumed reliability, few suspect its internal failures as a source of delays. We show, through careful measurement, that the infrastruc- ture responsible for resolving DNS names often encoun- ters various failures which then induce delays. A system- atic examination of the problem shows that the failures are widespread, uncorrelated, and can be a significant source of DNS-related delays. We address this problem via the development of CoDNS, a cooperative DNS lookup service. It uses a lo- cality and proximity-aware design to achieve low-latency, low-overhead name resolution in the presence of local DNS nameserver delay/failure. We show via repeated measurement and live traffic that CoDNS is an effective solution to DNS problems, and eliminates a major source of delay. 1 Introduction The Domain Name System (DNS) has become a ubiq- uitous part of everyday computing due to its effective- ness, human-friendliness, and scalability. It provides a distributed lookup service primarily used to convert from human-readable machine names to Internet Protocol (IP) addresses. Its existence has permeated much of comput- ing via the World Wide Web’s near-complete dependence on it. Thanks in part to its redundant design, aggressive caching, and flexibility, it has become a ubiquitous part of everyday computing that most people take for granted. Given its generally high reliability, few people suspect simple failures or oversights in deployment for being re- sponsible for noticeable delays in the Web connections. DNS employs multiple levels of redundancy and caching to improve its performance and hide short-term failures. Beginning with the 13 root nameservers, lower levels of the hierarchy are responsible for deploying at least one pair of nameservers so that name lookup queries can be resolved in the event of failures. Lookup results also carry explicit time-to-live (TTL) information, to aid in caching and to reduce load on all levels of the DNS hierarchy. DNS “users” can choose to perform lookup manually by querying each level of the hierarchy in turn until the complete name has been resolved, but most systems are configured to delegate this task to a set of local name- servers. This approach has several performance advan- tages, since a centralized lookup service may consoli- date requests and serve replies from its cache. It also has management advantages, since any updates to root server information or to the nameserver software are ap- plied to fewer machines. Given the importance of cen- tralized lookup nameservers in organizations, several are often deployed to provide redundancy....
View Full Document
- Spring '08
- Computer Science, Domain Name System, average response time, CoDNS