Connected: An Internet Encyclopedia Efficient Resource Usage

Up: Connected: An Internet Encyclopedia
Up: Requests For Comments
Up: RFC 1123
Prev: Transport Protocols
Next: Multihomed Hosts Efficient Resource Usage Efficient Resource Usage

The following requirements on servers and resolvers are very important to the health of the Internet as a whole, particularly when DNS services are invoked repeatedly by higher level automatic servers, such as mailers.

  1. The resolver MUST implement retransmission controls to insure that it does not waste communication bandwidth, and MUST impose finite bounds on the resources consumed to respond to a single request. See [DNS:2] pages 43- 44 for specific recommendations.

  2. After a query has been retransmitted several times without a response, an implementation MUST give up and return a soft error to the application.

  3. All DNS name servers and resolvers SHOULD cache temporary failures, with a timeout period of the order of minutes.


    This will prevent applications that immediately retry soft failures (in violation of Section 2.2 of this document) from generating excessive DNS traffic.

  4. All DNS name servers and resolvers SHOULD cache negative responses that indicate the specified name, or data of the specified type, does not exist, as described in [DNS:2].

  5. When a DNS server or resolver retries a UDP query, the retry interval SHOULD be constrained by an exponential backoff algorithm, and SHOULD also have upper and lower bounds.


    A measured RTT and variance (if available) should be used to calculate an initial retransmission interval. If this information is not available, a default of no less than 5 seconds should be used. Implementations may limit the retransmission interval, but this limit must exceed twice the Internet maximum segment lifetime plus service delay at the name server.

  6. When a resolver or server receives a Source Quench for a query it has issued, it SHOULD take steps to reduce the rate of querying that server in the near future. A server MAY ignore a Source Quench that it receives as the result of sending a response datagram.


    One recommended action to reduce the rate is to send the next query attempt to an alternate server, if there is one available. Another is to backoff the retry interval for the same server.

Next: Multihomed Hosts

Connected: An Internet Encyclopedia Efficient Resource Usage