From: Ethan Phelps-Goodman (ethanpg@cs.washington.edu)
Date: Tue Nov 16 2004 - 12:44:28 PST
Development of DNS
Mockapetris and Dunlap
In this paper the authors describe the lessons they have learned from five
years of working on DNS. Prior to DNS all hosts had to obtain a copy of the
hosts.txt file, which listed all hosts on the internet. This clearly didn't
scale, and in 1983 DNS began to be deployed as a scalable and distributed
naming system. The exact details of the system are hard to infer from the
paper. Names are specified as branches of a tree, with nodes labeled by
strings. This gives an unconstrained hierarchy, rather than a fixed naming
semantic. The top level domains are managed by particular organizations,
which can then delegate responsibility for subtree to other organizations.
(For example, at the time SRI-NIC managed the top-level edu domain, and UC
Berkeley managed the subtree rooted at berkeley.edu.) Master name servers
are replicated at different points in the network, and queries are cached,
but the paper says very little about how either of these is done.
The main point of the paper is to point out good and bad design decisions.
These are some of the points I found interesting. In typical 80s system
research style, the authors envisioned a grand unified system that could
provide many different kinds of naming and database-like features. DNS
turned out to be used only for simple name-address lookup. They made a very
good decision in not overly structuring the namespace, and also in not
requiring name servers to be located in the domain they serve. I was
surprised by the terrible performance of the system back then--several
seconds per name lookup.
Ethan
This archive was generated by hypermail 2.1.6 : Tue Nov 16 2004 - 12:44:34 PST