![]() |
Network Systems Group Princeton University Publication Info |
CoDNS: Improving DNS Performance and Reliability via Cooperative Lookups
KyoungSoo Park
Vivek S. Pai
Larry Peterson
Zhe Wang
The Domain Name System (DNS) is a ubiquitous part of everyday computing, translating human-friendly machine names to numeric IP addresses. Most DNS research has focused on server-side infrastructure, with the assumption that the aggressive caching and redundancy on the client side are sufficient. However, through systematic monitoring, we find that client-side DNS failures are widespread and frequent, degrading DNS performance and reliability.
We introduce CoDNS, a lightweight, cooperative DNS lookup service that can be independently and incrementally deployed to augment existing nameservers. It uses a locality and proximity-aware design to distribute DNS requests, and achieves low-latency, low-overhead name resolution, even in the presence of local DNS nameserver delay/failure. Using live traffic, we show that CoDNS reduces average lookup latency by 27-82%, greatly reduces slow lookups, and improves DNS availability by an additional '9'. We also show that a widely-deployed service using CoDNS gains increased capacity, higher reliability, and faster start times.
In Proceedings of the Sixth Symposium on Operating Systems Design and
Implementation (OSDI '04)
San Francisco, CA, December 2004
paper gzip'd PostScript, 276 kB
paper PDF, 472 kB
presentation HTML/JPEG format
presentation PowerPoint format, 766 kB
html version of paper
BibTeX