The
definition of DNS
The
Domain Name System is essentially a database. It links domain names to IP (Internet Protocol)
addresses so that web browsing, e-mailing, etc… can be done
without the user knowing the numerical address of a location or
domain.
What makes the DNS
database unique is that it is one of the largest and most frequently
accessed on the planet. Its information and function is absolutely crucial to the
operation of the Internet.
Every time a domain name is used, such as “Yahoo.com,”
the Internet's domain name servers translate the
human-readable domain name into the machine-readable IP address.
A person may access it a hundred times in the course of a
day, which adds up to billions of requests a day throughout the
world.
The
importance of DNS
What makes DNS
interesting is that it keeps track of billions of IP
addresses all over the globe along with the human-readable
names that correspond to each.
Both of these pieces of information can be and often
are changed, created, and deleted daily.
Remembering the constantly-variable long strings of
numbers used for IP addresses would be impossible for people
to do. Without
it we would not be able to access information and
communicate over the internet with the ease and reliability
we've come to take for granted. DNS allows the
internet as we know it to exist.
All this and it returns answers to requests seemingly
instantly, not what one would predict for searching a
billion-entry database.
How
DNS works
When
DNS accept requests from programs and name servers to convert
domain names into IP addresses, the process is called name
resolution. It begins with the client (user with a PC and web browser)
entering a web address. This
allows the client to ask for a connection to another machine.
The
ISP’s (Internet Service Provider) DNS server tries to locate
the IP address for that domain name in its cache, if found then
it answers the request by sending the IP address back to the
client. If the IP address isn’t in the cache then it contacts a
root name server that is responsible for the top-level domain
(com, gov, edu, the last part of the domain name).
Then
the root name server directs the DNS to a generic top-level
domain server. DNS
communicates with the gTLD server where it list name servers
that have the domain registration for that domain name.
DNS chooses one of the name servers and ask if it knows
the web address.
The
IP address is then retrieved and sent to the ISP’s DNS server.
The ISP’s DNS server caches the IP address.
And
finally it is sent back through to the client.
Along
with the IP address, the DNS server also retrieves a time to
live (TTL) value. TTL tells how long the information can
be held in another DNS server’s cache.
The ISP’s DNS server keeps the IP address in it’s
cache for the time indicated by the TTL and then discards it.
In the case where, the domain name is invalid or does not
exist, the DNS server will respond to the client with an error
message.
To
summarize, the client types a web address to a browser.
The browser can’t read the format because it needs the
IP address so it contacts a DNS server to find out what it is.
The DNS server looks for the IP address, retrieves it and
sends it to the browser. The
browser receives it then connects to the web page. In
the unlikely event that no address is found, the server will
returns an error message.
Below
is an ASM chart summarizing this process.

Proxy
Servers
To
speed up the process of connecting to a DNS server, one could
cache the IP addresses locally using a DNS proxy server.
This eliminates the process of contacting a remote DNS
server provided by an ISP.
The proxy server contacts the remote server once, and
then caches the IP addresses locally instead of remotely.
There’s a caching DNS server available by AnalogX
called FastCache. It
is used to handle all DNS request making it faster to access a
web page. This is
ideal for modem users, who will experience a noticeable
difference in speed. This is a useful program to demonstrate how DNS works.
See the Links section for the web address to find out more.
Links
http://www.analogx.com/contents/download/network/fc.htm
http://www.howstuffworks.com/dns.htm
Resources
Article “How DNS Works” Performance
Computing by Tom Yager
Article “How DNS Works” Windows and
.Net Magazine, June 2000 by Gary Kessler
Web site, “How DNS Works” http://www.stamey.nu/DNS/DNSHowItWorks.asp
Website “DNS” http://www.phroggy.com/articles/dns.html
Diagrams
and pictures obtained from:
http://www.i-dns.net/technology/howidns/howidns.html
http://www.auri.net/dns/How_Does_It_Work.html
|