There are three important components in the Domain Name System. They are
● Name server
The domain names must be very unique and appropriate. The names should be selected from a names pace. The name space can be organized in two ways
● Flat name space
● Hierarchical name space
Flat name space is where the name is assigned to the IP address. They do not have any specific structure. In this flat name space, some meaningful names are given to IP address for accessing. The major disadvantage of flat name space is that they cannot be used in large system. Because they need to be accessed and controlled centrally to avoid ambiguity and redundancy. But it is difficult in flat name system. To avoid this major disadvantage hierarchical name space is used in large.
Hierarchical name space is where the name is made up of several parts. The first part may represent the nature of organization, the second part may represent the name of organization, and third part may represent the department of the organization and so on. In this way the power to control the name space can be decentralized.
Domain name space was designed to achieve hierarchical name space. In this, the names are represented as a tree like structure with root element on the top and this tree can have a maximum of 128 levels starting from root element taking the level 0 to level 127.
Figure 12.5 represent the domain name space where the root element is present at the top most level i.e., level 0. The root element always represents the NULL string (empty string). The next level to the root element is node (children of root element). Each node in the tree has a label and a domain name.
It is a string which can have maximum of 63 characters. Each node in that level should have different labels thereby assuring the individuality of the domain name.
In other words, Labels are the names given to domains. Domain is a sub tree in domain name space tree structure. The domain can be further divided into sub domains.
Figure 12.6 explain the domain name and label clearly. challenger.atc. fhda.edu. is the domain name which is obtained by reading the labels from bottom to top, separating each label by dot (.) Refer Figure 12.7
It is the sequence of labels. In domain name the sequence of labels are separated by dot (.). The domain name is always read from the lower level to higher level i.e., from the leaf node to root node. Since the root node always represent NULL string, all the domain name end with dot.
● Domain can consists of Alphabets a through z, and the digits 0 through 9.
● Hyphens are allowed, but hyphens can not be used as first character of a domain name.
● Spaces are not allowed
● Special symbols (such as !, $, &, _ and so on) are not permitted.
● Domain names have the minimum length of 2, and the maximum length of 63 characters. The entire name may be at most 253 characters long.
● Domain names are not case-sensitive. (It may be upper, lower or mixing of both case letters)
Top level domain is the last part of a domain name. Generic top level domains are used for generic purpose and maintained by IANA. Refer Table 12.1
Country domain uses 2-character country abbreviation according to country. For e.g., google.in – for INDIA, google.us for US. Refer Table 12.2
Domain names may also be used in other than English languages in UNICODE format. Tamil language is also used in three country Top Level Domain names which are. இந்தியா,.சிங்கப்பூர் and .இலங்கை
The information which needs to be stored in Domain name space is quite large. Single system would be inefficient and insufficient to store such a huge amount as responding to requests from all over the world. It also becomes unreliable because in case of any failure the data becomes inaccessible.
The solution to this problem is to distribute the information among many computers. The best way to do that is to divide the entire space into many domains and sub domains. DNS also allows domains to be further divided into sub domains. By this, the solution to the problem is obtained and hierarchy of servers is also maintained. Name servers store the data and provide it to clients when queried by them. Name Servers are programs that run on a physical system and store all the zone data.
Inverse domain performs the opposite task of normal DNS query. It converts the IP address to domain name.
Name Server is a main part in the Domain Name System (DNS). It translate the domain names to IP addresses. Name server contains the DNS database which consists of domain names and their corresponding IP addresses. There is a need to store large number of domain names for the world wide usage, so plenty of servers are used in the hierarchical manner. Name servers do the important task of searching the domain names. While you searching a website, Local Name server (provided by ISP) ask the different name servers until one of them find out your answer. At last it returns IP address for that domain name. Your computer can now connect to the requested webpage stored on the webserver. Refer Figure 12.8.
There are three types of Name Servers which control the entire Domain Name System:
1. Root Name Server - top level server which contains entire DNS tree, maintained by ICANN. There are 13 servers.
2. Primary/Master Name Server– contains a zone resource records. These records are updatable by domain name holders such as organizations.
3. Secondary/Slave Name Server – contains a copy of primary server files. This server has no authority to update, but reduce the workload of master server by sharing the queries.
ICANN, Internet Corporation for Assigned Name and Numbers is the Non-profit Organization which assigns names and numbers for all Internet resources like domain names and IP addresses.
The entire name space is divided into many different zones. It is the area up to which the server has access. Zone is defined as a group of contiguous domains and sub domains. If the zone has a single domain, then zone and domain are the same.
Every zone has the server which contains a database called zone file. Using the zone file, the DNS server replies to the queries about hosts in its zone. There are two copies of zone files available, Master file and slave file. Refer Figure 12.9
● A domain is a single node of the Domain Namespace.
● A zone is a subset of the Domain namespace generally stored in a file.
● Domain Name space is an entire collection Domains, Sub domains and Zones
● Name server manages the database of domain names and corresponding IP addresses.
● A server can contain more than one zone files (Zones). A zone can contain more than one sub domains
Domain Name System is a client/ server application. A host system need to map domain name to IP address or vice versa according to the call and that work is done by resolver. Resolver either asks server to provide information about IP address. If it doesn’t find any information, then it sends the request to other servers and so on. Once the resolver receives the mapping, it checks whether it is an error or resolution (mapping) and provides result according to that.
The resolver is a program which is responsible for initiating the translation of a domain name into an IP address. Since a resolver isstored in the host, There is no need of any protocol to form a connection between the resolver and the user program.
When the user enters the URL (consists of protocol, domain name, folder name, file name) in the browser, the system first checks its DNS cache for the corresponding IP address. If the IP address is found in the cache then the information is retrieved from cache. If not, then the system needs to perform DNS query i.e., the system needs to query the resolver about the IP address from Internet Service Provider (ISP). Each resolver has its own cache and if it is found in that then that information is retrieved. If not, then the query is passed to next domain server i.e., TLD (Top Level Domain) which reviews the request and direct the query to name servers associated with that specific domain. Until the query is solved it is passed to next level domains. At last the mapping and the record are returned to the resolver who checks whether the returned value is a record or an error. Then the resolver returns the record back to the computer browser which is then viewed by the user. Refer Figure 12.10
Web server is a program running on dedicated machine which handle the queries of www enduser. Server is used to host the websites and to deliver the contents of websites using HTTP. While typing the URL in browser, the browser send the URL to DNS. After getting an IP address from DNS, It sends the request to the web server with IP address . Now the content of websites appear on browser.
IANA is an affiliated authority of ICANN. IANA does the overall management of the DNS Root, IP addressing, and other Internet protocol resource handling. IANA takes care of a number of key aspects of the DNS, including the root zone, and the domains .int and .arpa.
The WHOIS is a service of ICANN. It is a free, publicly available directory containing the details of registered domain names and their owners (registrants). https://whois.icann.org/en