Connected: An Internet Encyclopedia
RFC 1034 - 5.3.2. Resources

Top: Connected: An Internet Encyclopedia
Up: Requests For Comments
Up: RFC 1034
Up: 5. RESOLVERS
Up: 5.3. Resolver internals
Prev: 5.3.1. Stub resolvers
Next: 5.3.3. Algorithm

### 5.3.2. Resources

In addition to its own resources, the resolver may also have shared access to zones maintained by a local name server. This gives the resolver the advantage of more rapid access, but the resolver must be careful to never let cached information override zone data. In this discussion the term "local information" is meant to mean the union of the cache and such shared zones, with the understanding that authoritative data is always used in preference to cached data when both are present.

The following resolver algorithm assumes that all functions have been converted to a general lookup function, and uses the following data structures to represent the state of a request in progress in the resolver:

    SNAME           the domain name we are searching for.

    STYPE           the QTYPE of the search request.

    SCLASS          the QCLASS of the search request.

    SLIST           a structure which describes the name servers and the
                    zone which the resolver is currently trying to query.
                    This structure keeps track of the resolver's current
                    best guess about which name servers hold the desired
                    information; it is updated when arriving information
                    changes the guess.  This structure includes the
                    equivalent of a zone name, the known name servers for
                    the zone, the known addresses for the name servers, and
                    history information which can be used to suggest which
                    server is likely to be the best one to try next.  The
                    zone name equivalent is a match count of the number of
                    labels from the root down which SNAME has in common with
                    the zone being queried; this is used as a measure of how
                    "close" the resolver is to SNAME.

    SBELT           a "safety belt" structure of the same form as SLIST,
                    which is initialized from a configuration file, and
                    lists servers which should be used when the resolver
                    doesn't have any local information to guide name server
                    selection.  The match count will be -1 to indicate that
                    no labels are known to match.

    CACHE           A structure which stores the results from previous
                    responses.  Since resolvers are responsible for
                    discarding old RRs whose TTL has expired, most
                    implementations convert the interval specified in
                    arriving RRs to some sort of absolute time when the RR
                    is stored in the cache.  Instead of counting the TTLs
                    down individually, the resolver just ignores or discards
                    old RRs when it runs across them in the course of a
                    search, or discards them during periodic sweeps to
                    reclaim the memory consumed by old RRs.

Next: 5.3.3. Algorithm

Connected: An Internet Encyclopedia
RFC 1034 - 5.3.2. Resources