What is Domain Name Service?

 

In order to access a computer on the Internet, one needs its IP address.  But IP addresses are not the most fun to memorise and remember.  Computers are therefore given domain names to make life a little easier.  We access a computer on the Internet using its domain name.  An example could be "microsoft.com".  A domain name could represent more than one IP address and in fact microsoft.com could be the domain name for a collection of computers, one of which could be Microsoft web server, "www.microsoft.com".   Do not forget we could access this computer using its IP address just as well.

 

What is IP address of domain name "www.microsoft.com"?

 

 

domain_name_hierarchy.jpg

 

Domain names are organised in hierarchical form as shown above.  For example "www.shu.ac.uk" is the computer that all of us at Sheffield Hallam use as a web server.  Each element of the name is known as a domain and each domain represents an increasingly larger number of computers in the collection.  In this example "shu.ac.uk" domain represents all the computers at Sheffield Hallam University.

 

What domain name represents the collection of all computers in academia/UK?

 

 

For connection to happen therefore domain name has to be converted to its corresponding IP address.  In effect every time one attempts to access some resource through a domain name, first thing that happens is the conversion of the domain name to the IP address.   In fact every web server would need a system for this conversion.  This system is called the Domain Name Service (Also referred to as Domain Name System) or DNS.

 

DNS is a translation service from domain name to IP address.  Remember that Internet is really based on IP address for locating resources and domain names are merely alphabetic substitute that are easier to remember.

 

DNS is essentially one big database of names.  It is distributed and it is also hierarchical.  It is distributed in that every organisation provides at least two DNS servers for the resolution.  The idea is to spread the workload across the Internet.  It is hierarchical in that if the local name server does not manage to resolve a resolution request it queries the name server responsible for each node in this hierarchy until the name is resolved and IP address is returned.  For example when you place "www.microsoft.com" in your browser, first the domain name server at your ISP is consulted.  This is a popular address and this local DNS server must have resolved it before and so it must have it in memory and retrieval is quick.  Otherwise it would have to consult the root name server to get the IP address of server responsible for "com" domain.  The local server goes on to query the "com" domain server to get the IP address of the DNS server responsible for "microsoft.com" domain.   Yet again this local server has to query the "www.microsoft.com" DNS server to get the required IP address.  Having got this IP address connection could be made to the required page.  All this happens very quickly and the process is hidden from the user.