Copyright 1997 Nikkei Business Publications,Inc. all rights reserved, permission is hearby
given for reproduction, as long as attribution is given and this notice is
included.
DNS as a flawed directory service
By: Scott Bradner
The Internet Domain Name System (DNS) was
designed to perform two functions. First it provides a human-friendly way for a
user to specifying a particular node or group of nodes on a data network.
Second, it provides a mostly static reference to a node or nodes. But we are
now burdened by the DNS being asked to perform yet another function, one that
it was not designed to perform, that of a directory service.
Using human-friendly names for computers is
important because memorizing IP Addresses for hundreds or thousands of
Internet-based services is not practical. DNS names make it easy for users to
remember names for these functions. www.ibm.com is an easy name to remember,
remembering the IP address for the same computer (204.146.17.33 ) would be far
harder and most people would have to use some form of directory, like a
telephone directory, to find the IP Address.
But even if you could have a system like a
printed telephone directory for finding the IP Address you could still have
trouble. Network managers reconfigure their networks their networks quite
frequently an move servers between machines. Both of these activities will
cause IP Addresses to change. Keeping the printed directory up to date would be
just about impossible.
The DNS mitigates the problem of changing IP
Addresses by having network-based servers which are used to translate between
the human-friendly name and the current IP Address. There are many of these
servers, as many as one for each domain (ibm.com is a domain), each of which is
usually run by the local organization itself. Having the organization whose
names are in the server run the server maximizes the chance that the server
will be kept up to date with the current DNS name to IP Address mapping. But
the use of human-friendly names is now causing a number of problems.
One problem is in the overlap between the
domain names and trademarks. ibm.com is a domain name and IBM is a trademark.
The computer maker IBM might be upset if some other company has gotten the
domain name ibm.com. Some Internet purists will tell you that domain names have
nothing to do with trademarks but this is clearly not the case. In trademark
law someone using a trademarked name in such a way as to cause confusion in the
mind of a receiver as to the actual relationship between the company and the
user of the trademark then the usage is illegal. So if someone else had the
domain ibm.com and started to advertise computers, the IBM company would have
justification to complain.
Another problem is that there is quite
limited namespace. There are a few global top level domains (like .com and
.net) and a 2 letter country code per country. A domain name must be unique
within the top level domain name. One could not have two companies with the
domain name nikkeibp.co.jp - the network would not know where to send the
traffic. In the physical world it is quite easy to have to companies with the
same name if they are in different cities or in different businesses. Since the
Internet does not have these same types of geographic or category separations
things can get quite confusing. Should Apple Records in England get rights to
apple.com or should Apple Computer in California? In this case if both companies
claimed the name there would be no way to resolve the issue because the two
companies are in different legal jurisdictions. It is already getting harder to
find short unique names within a particular top level domain and only a very
small percentage of the companies in each area are on the Internet at this
time.
But the biggest problem with the DNS is that
people use it as a directory service. People think they can guess at what the
domain name for a company should be. They think that IBM's web site should be
at www.ibm.com. Because of this companies want to get meaningful domain names.
Which brings us back to the issues of trademark, companies would like to get
domain names which are similar to their trademarks, and of the limited address
space, too many companies with similar names trying to get the same domain
names.
Domain names are treated differently than
phone numbers. People assume that phone numbers are not the same as company
names and that you have to use a directory to look them up. The Internet names
problem would be quite a bit easier if users felt the same way about domain
names - one looks up IBM Corporation and gets a list of companies, each with
IBM as its name - with a short description of each company, or maybe only its
postal address, and the user picks one and then uses the non-meaningful number
string as the "name" of the company over the Internet. Note that you
could not use the IP Address as this numeric name because it changes too fast,
you still need this indirect name function that the DNS provides.
But, if you think about it, we know how to do
this. Internet search engines could be used to retrieve the indirect name. You
could tell the search engine that you were looking for companies that built
large computers and had the characters IBM in their name, the engine would then
return with a list of possible companies, you would then click on the right one
and would be connected to its web page. If this type of real directory were
used, then the DNS name could be a random character or number string and no one
would care because it was not seen my most people.
This is all well and good but it fails in one
area - what do you put on your business card as your email address. As long as
you want that email address to have some implied meaning, such as the company
name, we are back to where we started - trying to use the DNS as a directory
service which it is not good at.
If you find an answer to this problem, please
let me know. (hint - X.500 is too complex for most people to use)