07-10-2016, 03:13 PM
CSE dns ppt.pptx (Size: 282.7 KB / Downloads: 7)
Introduction
The Domain Name System (DNS) is basically a large database which resides on various computers and it contains the names and IP addresses of various hosts on the internet and various domains.
The Domain Name System is used to provide information to the Domain Name Service to use when queries are made.
DNS History
ARPANET utilized a central file HOSTS.TXT
Contains names to addresses mapping
Maintained by SRI’s NIC (Stanford-Research-Institute: Network-Information-Center)
Administrators email changes to NIC
NIC updates HOSTS.TXT periodically
Administrators FTP (download) HOSTS.TXT
DNS History Cont…
As the system grew, HOSTS.TXT had problems with:
Scalability (traffic and load)
Name collisions
Consistency
In 1984, Paul Mockapetris released the first version (RFCs 882 and 883, superseded by 1034 and 1035 …)
What is DNS ?
The “Domain Name System”
What Internet users use to reference anything by name on the Internet
The mechanism by which Internet software translates names to attributes such as addresses
What is DNS ?
A globally distributed, scalable, reliable database
Comprised of three components
A “name space”
Servers making that name space available
Resolvers (clients) which query the servers about the name space
Why we need DNS?
DNS as a Database
Global Distribution
Loose Coherency
Scalability
Reliability
Dynamicity
DNS as a Database
Keys to the database are “domain names”
www.foo.com, 18.in-addr.arpa, 6.4.e164.arpa
Over 100,000,000 domain names stored
Each domain name contains one or more attributes
Known as “resource records”
Each attribute individually retrievable
Global Distribution
Data is maintained locally, but retrievable globally
No single computer has all DNS data
DNS lookups can be performed by any device
Remote DNS data is locally cachable to improve performance
Loose Coherency
The database is always internally consistent
Each version of a subset of the database (a zone) has a serial number
The serial number is incremented on each database change
Changes to the master copy of the database are replicated according to timing set by the zone administrator
Cached data expires according to timeout set by zone administrator
Scalability
No limit to the size of the database
One server has over 20,000,000 names
Not a particularly good idea
No limit to the number of queries
24,000 queries per second handled easily
Queries distributed among masters, slaves, and caches
Reliability
Data is replicated
Data from master is copied to multiple slaves
Clients can query
Master server
Any of the copies at slave servers
Clients will typically query local caches
DNS protocols can use either UDP or TCP
If UDP, DNS protocol handles retransmission, sequencing, etc.
Dynamicity
Database can be updated dynamically
Add/delete/modify of any record
Modification of the master database triggers replication
Only master can be dynamically updated
Creates a single point of failure
DNS Components
There are 3 components:
Name Space:
Specifications for a structured name space and data associated with the names
Resolvers:
Client programs that extract information from Name Servers.
Name Servers:
Server programs which hold information about the structure and the names.
Name Space
Flat Name Space
In a flat name space, a name is assigned to an address. A name in this space is a sequence of characters without structure.
Hierarchical Name Space
In a hierarchical name space, each name is made of several parts. The first part can define the organization, the second part can define the name, the third part can define departments, and so on.
Resolvers
A Resolver maps a name to an address and vice versa.