![]() |
![]() |
Technical Library |
|
12 Oct 2000
Domain Name System |
BackgroundThe structure of the DNS name space is similar to the structure of the file system on a computer, with the root at the top. In DNS, the root is written as a single dot "." in text. Each partition of the database represents a domain. Each partition can be divided further into subdomains. A domain also has a domain name, which identifies its position in the database. In DNS, the full domain name is the sequence of labels from the domain to the root, with dots separating the labels. In a Computer File system, the names of the directories are read from the root to leaf:
As you can see, /windows/system is one directory, and /windows/temp is another. At the same time, neither of these conflict with the directory /system or /temp, even though the same names exist in both directories. In the DNS Name Space, the domain names are read from leaf to root:
As you can see, the domain psi.com is a separate domain, and does not conflict with the domain psi.net, even though psi is used in both domain names. Making names hierarchical eliminates the problem of name collisions. An organization's registered domain name is unique, which makes them free to choose any names they wish within their domains. Whatever name they choose, it will not conflict with other domain names, since it will have their unique domain name tacked onto the end of it. Each host on a network has a domain name that points to information about that host. This information may include IP addresses and mail routing information. In addition, hosts may have one or more domain name aliases, which are pointers to the official, or canonical, domain name. Programs called name servers contain information about some segment of the name space, and make it available to clients, called resolvers. Resolvers are library routines that create queries and send them to a name server. |