Please Whitelist This Site?

I know everyone hates ads. But please understand that I am providing premium content for free that takes hundreds of hours of time to research and write. I don't want to go to a pay-only model like some sites, but when more and more people block ads, I end up working for free. And I have a family to support, just like you. :)

If you like The TCP/IP Guide, please consider the download version. It's priced very economically and you can read all of it in a convenient format without ads.

If you want to use this site for free, I'd be grateful if you could add the site to the whitelist for Adblock. To do so, just open the Adblock menu and select "Disable on". Or go to the Tools menu and select "Adblock Plus Preferences...". Then click "Add Filter..." at the bottom, and add this string: "@@||^$document". Then just click OK.

Thanks for your understanding!

Sincerely, Charles Kozierok
Author and Publisher, The TCP/IP Guide

NOTE: Using software to mass-download the site degrades the server and is prohibited.
If you want to read The TCP/IP Guide offline, please consider licensing it. Thank you.

The Book is Here... and Now On Sale!

Enjoy The TCP/IP Guide? Get the complete PDF!
The TCP/IP Guide

Custom Search

Table Of Contents  The TCP/IP Guide
 9  TCP/IP Application Layer Protocols, Services and Applications (OSI Layers 5, 6 and 7)
      9  Name Systems and TCP/IP Name Registration and Name Resolution
           9  TCP/IP Name Systems: Host Tables and Domain Name System (DNS)
                9  TCP/IP Domain Name System (DNS)
                     9  DNS Name Servers and Name Resolution
                          9  DNS Resolution Concepts and Resolver Operations

Previous Topic/Section
DNS Resolution Concepts and Resolver Operations
Previous Page
Pages in Current Topic/Section
Next Page
DNS Basic Name Resolution Techniques: Iterative and Recursive Resolution
Next Topic/Section

DNS Resolver Functions and General Operation
(Page 2 of 2)

Resolution Functions Performed By Name Resolvers

To accomplish its resolution duties, name resolvers perform a number of related functions:

  • Providing The User Interface: In order for DNS to be of maximum value to TCP/IP users, it must be possible for names to be used interchangeably with addresses. This is usually done automatically by the resolver, which provides an interface to the user to allow names to be entered and used like addresses.

  • Forming and Sending Queries: Given a name to resolve, the DNS resolver must create an appropriate query using the DNS messaging system, determine what type of resolution to perform, and send the query to the appropriate name server.

  • Processing Responses: The resolver must accept back responses from the DNS server to which it sent its query, and decide what to do with the information within the reply. As we'll see, it may be necessary for more than one server to be contacted for a particular name resolution.

This seems fairly simple, and it is in some ways, but implementation can become rather complicated. Bear in mind that the resolver may need to “juggle” several outstanding name resolutions simultaneously. It has to keep track of the different requests, queries and responses and make sure everything is kept straight.

The user interface is a very important part of a name resolver’s job. We want users to be able to just use a name and have their software automatically treat it like an address. For this reason, normal name resolution usually doesn't involve explicitly running a piece of “resolver software”. Consider again your Web browser. You don't have to say “please find the IP address for” and then say “please connect to this IP address for XYZ Industries”. You just type in “” and the name resolution happens “magically”.

There is no magic, of course. The resolver is just called implicitly instead of explicitly. The Web browser recognizes that a name has been entered instead of an IP address and feeds it to the resolver, saying “I need you to resolve this name, please”. (Hey, it never hurts to be polite.) The resolver then takes care of resolution and provides the IP address back to the Web browser, which connects to the site. Thus, the resolver is the interface between the user (both the human user and the software user, the browser) and the DNS system.

Key Concept: The primary clients in DNS are software modules called DNS name resolvers. They are responsible for accepting names from client software, generating resolution requests to DNS servers, and processing and returning responses.

Other Functions Performed By Name Resolvers

Name resolvers don't have to perform nearly as many administrative jobs as name servers do; clients are usually simpler than servers in this regard. One important support function that many name resolvers do perform, however, is caching. Like name servers, name resolvers can cache the results of the name resolutions they perform to save time if the same resolution is required again (not all resolvers perform caching, however.)

I should point out that even though resolvers are the DNS components that are most associated with name resolution, name servers can also act as clients in certain types of name resolution. In fact, it is possible to set up a network so that the resolvers on each of the client machines do nothing more than hand resolution requests to a local DNS server and let the server take care of it. In this case, the client resolver becomes little more than a shell, sometimes called a stub resolver. This has the advantage of centralizing name resolution for the network, but a potential disadvantage of performance reduction.

Previous Topic/Section
DNS Resolution Concepts and Resolver Operations
Previous Page
Pages in Current Topic/Section
Next Page
DNS Basic Name Resolution Techniques: Iterative and Recursive Resolution
Next Topic/Section

If you find The TCP/IP Guide useful, please consider making a small Paypal donation to help the site, using one of the buttons below. You can also donate a custom amount using the far right button (not less than $1 please, or PayPal gets most/all of your money!) In lieu of a larger donation, you may wish to consider purchasing a download license of The TCP/IP Guide. Thanks for your support!
Donate $2
Donate $5
Donate $10
Donate $20
Donate $30
Donate: $

Home - Table Of Contents - Contact Us

The TCP/IP Guide (
Version 3.0 - Version Date: September 20, 2005

Copyright 2001-2005 Charles M. Kozierok. All Rights Reserved.
Not responsible for any loss resulting from the use of this site.