The Implementation of Name Spaces
In this paper, I discuss the Implementation of Name Spaces and Address Resolution in Standard DNS and Decentralized DNS.
Your general terms must be any of the following 16 designated terms: Algorithms, Management, Measurement, Documentation, Performance, Design, Economics, Reliability, Experimentation, Security, Human Factors, Standardization, Languages, Theory, Legal Aspects and Verification.
Keywords DNS, name space, address resolution, decentralized, TLD, TTL
The Internet's progress seems unstoppable because it is continues expanding. For years now the rate of growth has been increasing to easily continue using a more widely spread Internet, and to keep a grip on it, DNS is vital. This article explains the benefit of DNS for business networks and the technological and administrative conditions necessary for the optimal deployment of this technology. The method described here is particularly important for organizations with many employees spread over multiple locations . DNS is a database which translates names to other names. It translates names to IPv4 addresses, names to IPv6 addresses, names to names and even names to DNS database servers. Database geeks will see that the DNS is really a hierarchically distributed database, no geeks can see that each dot marks a point where another database can be used, and this allows shared management and sharing of the load. The load is also shared by extensive use of caching: every entry in the DNS has an explicit "time to live" which controls how long the item can be stored in a cache. The optimum TTL value is about three days. The load is also shared by simple load sharing: multiple DNS servers for each part of the hierarchy are allowed; replication.
There are four types of DNS servers started with masters. Masters identify as where an element of the hierarchy is maintained, by editing "zone files". Zone transfer, which used by a second DNS servers type (Slaves), obtain a copy of zone file. The masters and slaves answer queries about their part of the hierarchy (they are found by NS records in the part of the hierarchy above them). A stealth slave has "zone transfer" but is not listed as an official name server. This is useful for improving performance where many DNS queries are made for a particular zone; for example, mail servers do many DNS lookups, so they will often run a DNS server with stealth secondary.
All DNS servers do is cache responses to queries if DNS servers with no zones. On foot, the walking of entire DNS hierarchy to find a name takes a long time is Performance's improves. On AARNet3 resolving a DNS name can be the largest fraction of the time spent displaying a web page. Forwarders also allow lighter host software, as the hosts need not have complicated name caching software to use the DNS. Forwarders also act as an application specific firewall. If your router blocks all DNS other than through the forwarder then no DNS packet from the outside can reach your hosts on the inside.
2.1 Definition Name Space
Name Space is defines a set of possible names. Whereas Naming System maintains collections of a set of name to value bindings. The naming system can be flat or hierarchical structured.
2.2 Definition Address Resolution
Address resolution is a resolution mechanism to get a corresponding value (IP address) from a name (Hostname). For example Name server is a one implementation of a resolution mechanism and widely used in the Internet.
2.3 Names and Addresses
Host should be identified before communicating. A host is identified by unique IP address. A host is identified by unique Name (for user convenience).
2.3.1 Names: can have variable length and mnemonic. The reason why using names because it is easy for humans to remember. Name contains no information about the host location
2.3.2 Addresses: should have fixed length and easy for computers to process and it is tied to routing.
An address resolution of DS networks refers the mapping of IP address to lower level address and to the mapping of node names to IP addresses. An address resolution has several which can be used individually or in combination with each other. The methods can be configured to the wanted of the network accordingly.
The available address resolution methods are:
- Domain name services.
- Network directory.
- Probe (and probe proxy) (LAN, 100VG-AnyLAN, and 100Base-T only).
- Address resolution protocol (ARP) (LAN, Token Ring, FDDI, 100VG-AnyLAN, and 100Base-T only).
3. NAME SPACES AND ADDRESS RESOLUTION IN STANDARD DNS
3.1 Name space planning for DNS
Before begin using DNS on the network, a namespace is used to making some decisions about how I plan to use DNS naming and what goals I am trying to achieve in using DNS.
3.2 Selecting first DNS domain name
When creation DNS servers, the first notation to you that is the first selection and registration for a unique parent DNS domain name is can be used for hosting the Internet or the organization.
Once the parent name has been selecting, the parent name can be combining with a location or organizational name. A location and organizational can be used within organization to figure other sub domain names such as if there a sub domain was added additional sub domain names which could be created using this name. Any group of programmers which working on electronic data interchanges (EDI) can have a sub domain named "edi.main.portal.uum.edu.my". Similarly, each group of workers to provide support might use support "main.portal.uum.edu.my".
Indeed, when any parent DNS domain name for organization is wanted to use on the Online, execute a search to see if there is a name which is registered to another organization or anyone. The namespace of Internet DNS is presently managed by the Internet Network Information Center (InterNIC). In future work, a new domain name registrars might also be available.
Before planning for Directory namespace and DNS Active, it is suggested that you apply a several set of distinguished names that do not be related as the root for your internal and external DNS use. For example, if your organization's parent domain name is "portal.uum.edu.my"
- The internal DNS names could use a name such as "internal.portal.uum.edu.my "
- The external DNS names could use a name such as "external.portal.uum.edu.my "
Separating and districting these internal and external namespaces in this way, can support you to repairs any configurations in easy way such as domain name filter or exclusion lists.
3.3 Selecting names
Using only characters in your names are part of the Internet standard character which allowed for using in DNS host naming. The characters which defined in RFC 1123 is as follows: all uppercase letters (A-Z), lowercase letters (a-z), numbers (0-9), and the hyphen(-).
I can consider that the procedure of adjusting naming conventions might be time overriding. Also, the DNS service has includes supporting for extended ASCII and Unicode characters to change from WindowsNT4.0 NetBIOS names to Windows2000 DNS domain names. Anyway, this additional support only can be used in unadulterated Windows 2000 network environment because the most of other DNS resolver client software is based on RFC 1123 of the specification that standardizes the Internet host naming requirements. If there is a nonstandard DNS domain name which is inserted throughout Windows2000 setup, a warning message appears to recommend that a standard DNS name be used instead.
Inside WindowsNT4.0 and its earlier versions, the name which used to recognize a Windows computer on the network was a NetBIOS name. In Windows2000, a computer can be recognized in any of the following ways: First, the NetBIOS computer name is Optional to use for interoperability with earlier Windows systems. Second, the Full computer name is a totally qualified domain name (FQDN) for the computer and is its primary (or default) name. Moreover, the full computer name is a combination of both the computer name and the DNS domain name for the computer.
4. STANDARD DNS
4.1 The Namespace
DNS presents a hierarchical namespace allowing the uniqueness of name to be guaranteed in a tree structure. Every leaf or node in the tree has one or more resource records, which grasp information associated with the domain name. The tree sub-divides into zones. A zone consists of a collection of connected nodes authoritatively served by an authoritative DNS name server.
DNS also provide a system of distribution servers enabling namespace to be made available. It also a client system to resolve domain names such as interrogates the servers to find out the IP address corresponding to a name.
4.2 Parts of a domain name
The structure of the DNS system relies on a tree structure where the higher level domain called Top Level Domain (TLD) are defined, attached to a root node represented by a dot. A domain name usually consists of two or more parts (technically labels), separated by dots such as google.com. The rightmost label conveys the top-level domain (for example, the address www.google.com has the top-level domain com).
Each label to the left specifies a subdivision, or subdomain of the domain above it. Note;"subdomain" expresses relative dependence, not absolute dependence. For example: google.com comprises a subdomain of the com domain, and www.google.com comprises a subdomain of the domain google.com. In theory, this subdivision can go down to 127 levels deep. Each label can contain up to 63 characters. The whole domain name does not exceed a total length of 255 characters. In practice, some domain registries may have shorter limits.
A hostname refers to a domain name that has one or more associated IP addresses; ie: the www.google.com and google.com domains are both hostnames. However, the com domain is not. Refer the diagram below for the tree design.
Domain Name System Tree Structure
4.3 DNS Server
During talking about DNS server, we have to know the machines which named as domain name servers, to make it possible to set up the link between domain names and IP addresses of machines on a network. Moreover, each domain has a domain name server which is named as a primary domain name server. A secondary domain name server can throw over from the primary domain name server in the event of unavailability. Also, each domain name server is created in the domain name server of the directly highest level. The name system is a distributed architecture, where each entity is responsible for the management of its domain name. Thus, there is no organization which responsible about the management of all domain names.
The servers which are related to the top level domains (TLD) are named "root name servers". There are 13 of them, distributed around the world with the names "a.root-servers.net" to "m.root-servers.net". A domain name server defines a zone, i.e. a collection of domains over which the server has authority. The domain name system is transparent for the user nevertheless; the following points must be remembered:
4.3.1 Every PC has to be formed with the address of a machine's capability to transform any name into an IP address. When you connect to the Internet, the service provider will automatically change your network parameters to make the domain name servers available for you.
4.3.2 The IP address of a second Domain Name Server (secondary Domain Name Server) must also be defined.
The secondary domain name server can take over from the primary domain name server in the event of malfunction.
The most commonly used server is called BIND (Berkeley Internet Name Domain). This is free software available under UNIX systems, initially developed by the University of Berkeley in California and now maintained by ISC (Internet Systems Consortium).
4.4 DNS Resolution
The consistent mechanism for finding the IP address relating to a host name is called "domain name resolution". The application making it possible to conduct this operation (generally integrated in the operating system is called "resolving".
When an application wants to connect to a known host by its domain name (e.g. "www.commentcamarche.net"), it interrogates a domain name server defined in its network configuration. In fact, each machine connected to the network has the IP addresses of its service provider's two domain name servers in its configuration.
A request is then sent to the first domain name server (called the "primary domain name server"). If this domain name server has the record in its cache, it sends it to the application, if not, it interrogates a root server (in our case a server relating to the TLD ".net"). The root name server sends a list of domain name servers with authority over the domain. The primary domain name server with authority over the domain will then be interrogated and will return the corresponding record to the domain host.
There are two categories of TLD (Top Level Domains):
4.4.1 Domains known as "generic", called gTLD (generic TLD).
gTLDs are top level generic domain names offering a classification according to the sector of activity. So each gTLD has its own access rules: a. historic gTLD: .arpa relates to machines from the original network; .com initially related to companies with a commercial purpose. However, this TLD became the "default TLD" and the purchase of domains with this extension is possible, including by individuals.
- edu relates to educational organizations;
- gov relates to governmental organizations;
- int relates to international organizations;
- net initially related to organizations dealing with the networks. Over several years this TLD has become a common TLD. The purchase of domains with this extension is possible, including by individuals.
- org usually relate to not for profit organizations.
New gTLD introduced in November 2000 by ICANN:
- aero relates to the aeronautical industry;
- biz (business) relating to commercial companies;
- museum relating to museums;
- name relating to the name of people or imaginary people;
- info relates to organisations dealing with information;
- coop relating to cooperatives;
- pro is relating to liberal professions.
4.4.2 Special gTLD:
arpa relates to the network management infrastructures. The arpa gTLD also serve for the inverse resolution of network machines, enabling the name relating to an IP address to be found.
Domains known as "national", called ccTLD (country code TLD). The ccTLD relate to the different countries and their names relate to the country name abbreviations defined by the ISO 3166 standard. The table shown below is a few of ccTLD.
4.5 How DNS resolve the address?
In theory a full host name may have several name segments, (e.g a host of a subnet of a bigger net in a domain example). In practice, in the experience of the majority of public users of Internet services, full host names will frequently consist of just three segments (ahost.inadomain.example, and most often www.inadomain.example).
For querying purposes, software interprets the name segment by segment, from right to left, using an iterative search procedure. At each step along the way, the program queries a corresponding DNS server to provide a pointer to the next server which it should consult.
As originally envisaged, the process was as simple as:
1. The local system is pre-configured with the known addresses of the root servers in a file of root hints, which need to be updated periodically by the local administrator from a reliable source to be kept up to date with the changes which occur over time.
2. Query one of the root servers to find the server authoritative for the next level down (so in the case of our simple hostname, a root server would be asked for the address of a server with detailed knowledge of the example top level domain).
3. Querying this second server for the address of a DNS server with detailed knowledge of the second-level domain (inadomain.example in our example).
4. Repeating the previous step to progress down the name, until the final step which would, rather than generating the address of the next DNS server, return the final address sought.
The mechanism in this simple form has a difficulty: it places a huge operating burden on the root servers, with each and every search for an address starting by querying one of them. Being as critical as they are to the overall function of the system such heavy use would create an insurmountable bottleneck for trillions of queries placed every day.
4.6 How it works?
When an application (such as a web browser) tries to find the IP address of a domain name, it doesn't necessarily follow all of the steps outlined in the Theory section above. We will first look at the concept of caching, and then outline the operation of DNS in "the real world."
4.6.1 Caching and time to live
Because of the huge volume of requests generated by a system like DNS, the designers wished to provide a mechanism to reduce the load on individual DNS servers. To this end, the DNS resolution process allows for caching (i.e. the local recording and subsequent consultation of the results of a DNS query) for a given period of time after a successful answer. How long a resolver caches a DNS response (i.e. how long a DNS response remains valid) is determined by a value called the time to live (TTL). The TTL is set by the administrator of the DNS server handing out the response. The period of validity may vary from just seconds to days or even weeks.
4.6.2 Caching time
As a noteworthy consequence of this distributed and caching architecture, changes to DNS do not always take effect immediately and globally. This is best explained with an example: If an administrator has set a TTL of 6 hours for the host www.wikipedia.org, and then changes the IP address to which www.wikipedia.org resolves at 12:01pm, the administrator must consider that a person who cached a response with the old IP address at 12:00pm will not consult the DNS server again until 6:00pm. The period between 12:01pm and 6:00pm in this example is called caching time, which is best defined as a period of time that begins when you make a change to a DNS record and ends after the maximum amount of time specified by the TTL expires.
Some resolvers may override TTL values, as the protocol supports caching for up to 68 years or no caching at all. Negative caching (the non-existence of records) is determined by name servers authoritative for a zone which MUST include the Start of Authority (SOA) record when reporting no data of the requested type exists.
Many people incorrectly refer to a mysterious 48 hour or 72 hour propagation time when you make a DNS change. When one changes the NS records for one's domain or the IP addresses for hostnames of authoritative DNS servers using one's domain (if any), there can be a lengthy period of time before all DNS servers use the new information. This is because those records are handled by the zone parent DNS servers (for example, the .com DNS servers if your domain is example.com), which typically cache those records for 48 hours. However, those DNS changes will be immediately available for any DNS servers that do not have them cached. And any DNS changes on your domain other than the NS records and authoritative DNS server names can be nearly instantaneous, if you choose for them to be (by lowering the TTL once or twice ahead of time, and waiting until the old TTL expires before making the change).
5. STANDARD DECENTRALIZED
The world of information technology is under continuous and quick change. Therefore the scalability is an important property. One form of scalability is the size of the system, how much resources does it have. Another kind of scalability is geographic scalability allowing the users lie far apart. Administrative scalability means that a system can be administered even if it is managed by various organizations.
Scalability usually means decentralized data and services. A good example of decentralized data is Domain Name System (DNS) - who could manage a centralized system of Internet domain names? An advantage of a decentralized algorithm is that computers need not know the state of other computers, they do not fail due to the failures of other computers, or they do not need a global clock.
5.2 Synchronization of physical clocks
Physical clocks can be synchronized by the following simple ideas:
- Client asks time server the time. But due to data communication some time is lost both ways. Also the time server may needs some nonero interrupt handling time I. If query time and reply time at client are Tq and Tr, an estimate for the time difference is (Tr - Tq - I)/2.
- Time server asks clients the time in turn and computes the average time. Depending on each client's time the server asks it to speed-up or slow-down its clock. This method applies to systems that don't have access to exact time.
- Decentralized version. At regular intervals the machines broadcast their times to each others and (knowing an estimate of communication delay) and adjust their times to the average.
5.3 Name spaces
Name space is the set of all possible names in a naming system. A method to define names is to use a naming graph, which is a directed acyclic graph. The nodes of the naming graph correspond to the entities of the system.
There are a number of root nodes of indegree zero, and leaf nodes of outdegree zero. Nonleaf nodes are called directory nodes. Nodes are labelled with node identifiers.
The directed arcs of a naming graph are labelled with arc names. For name resolution, each directory node stores a directory table consisting of entries of the form (node identifier, arc label). If the directory node n1 contains (n2,lab), there is an arc from n1 to n labelled with lab. Examples of such naming systems are the Internet Domain Name
System and the file directory tree of Unix.
5.4 Implementation of a name space
Name resolution and name space management are usually distributed and organised hierarchically:
- Global level are highest level directory nodes that are rarely changed. They may be managed by different organizations.
- Admistrational level consists of nodes that are managed withing a single organization. Nodes are relatively stable.
- Managerial level contains low level nodes of a single organization. They may be managed by system administrators but also by single users of distributed systems.
Probably widest used naming system is the Domain Name System (DNS) of Internet.
The name space of DNS is a hierarchically organized rooted tree. A subtree of consisting of the descendants of a node is a domain. The path name from this node to the root name is the domain name of this domain. Important information needed in name resolution is stored in the resource records of the node. Most important types of resource records are given in the enclosed table. In the table, SOA (Start of Authority) starts a zone administered by this node. Canonical name is an alias in our general terminology.
5.5 Mobile Entities
More and more computer systems contain mobile components. How should they be named and how can the names be resolved?
Some simple solutions and their drawbacks:
- Broadcasting: A query "who has this address?" is broadcast to the network, and the station having that name answers with its address. This technique called Address Resolution Protocol (ARP) is used in local area networks but is inefficient in Internet.
- When a mobile station comes to a new zone (e.g. ftp.cs.vu.nl comes to cs.unisa.edu.au), it is given a new name under the new zone, and the old name becomes a link to the new name. If the station moves again, another link is added. Expensive to manage and access.
- Whenever a mobile host moves to another network, it gets a temporary care-of address.
- Care-of address is forwarded to the home, where a home agent is formed.
- Whenever the mobile host receives a packet, home agent knows how to forward it to the care-of address.
- Messages sent from the network of care-of address go through the home agent. Efficiency can be improved by checking the visitor register first.
- Rich collaborative environment
- Seamless firewall traversal (cross-enterprise)
- Offline access
- Automatic data synchronization
- Leverages existing desktop investments
- Integrates with existing centralized infrastructure
- IT management capabilities
5.6 Homebased resolution
In homebased name resolution servers maintain visitor registers.
Resolution works as follows:
6. BENEFITS OF A DECENTRALIZED ARCHITECTURE
A DNS system is a fundamental piece of the Internet framework. The hierarchical structure of the DNS name space, worldwide network of name servers, and efficient local caches allow broadband operators to provide high-speed, user friendly Internet communications.
Companies invest a lot of time and money in network connections (routers, bandwidth, etc) and in applications, such as SAP. The poor relation here is often the names in between. The necessary organizational roles are often not filled, and there is lack of a decent infrastructure.
This increases the operational costs of the intranet, because, for example, changes cannot be implemented without involving end users. A good DNS service brings with it a clear divide between LAN management and WAN management. This simplifies the daily administration, increases service availability, and prepares the intranet for the future.
Now when I look for the DNS future, I should look to these points:
- The Internet Revolution is less than 15% complete
- I am seeing a profound paradigm shift:
- As important as the World Wide Web was in 1995
- New approaches to business and policy are essential
My special thanks to ACM SIGCHI for allowing us to modify templates they had developed.
 Michael R. Nelson, F.2008, The Next Generation Internet and the Future of the Domain Name System, available in April 1, 2008, Vienna, Austria= http://www.nic.at/fileadmin/domainpulse/archiv/2008/Michael%20Nelson.pdf
 Incognito Software. J.2007, Understanding DNS (the Domain Name System), available in April 1,2008, Canada= http://www.incognito.com/pdf/WP_UnderstandingDNS.pdf
 Anton Holleman, J. 1999, Domain Name System, available in April 1, 2008, Netherlands= http://www.isc.org/sw/bind/docs/dns-paper-originit.pdf.
 Kim Hawtin, Glen Turner,2004, Configuring Anycast DNS, available in March 31 ,2008 , Australia=
 Martti Penttonen, 2002, Distributed Systems, available in April 1, 2008, http://www.cs.uku.fi/~penttone/ds2002/ds.pdf
 Dec 1st, 1999, Prof. Lawrence H. Landweber, Prof. Jun Murai , "Introduction to Computer Networks"