DISCOVER: Supporting Multicast DNS Queries
Independent Submission B. Manning
Request for Comments: 6804 November 2012
DISCOVER: Supporting Multicast DNS Queries
This document describes the DISCOVER opcode, an experimental
extension to the Domain Name System (DNS) to use multicast queries
for resource discovery. This opcode was tested in experiments run
during 1995 and 1996 for the Topology Based Domain Search (TBDS)
project. This project is no longer active and there are no current
plans to restart it. TBDS was the first known use of multicast
transport for DNS. A client multicasts a DNS query using the
DISCOVER opcode and processes the multiple responses that may result.
Status of This Memo
This document is not an Internet Standards Track specification; it is
published for the historical record.
This document defines a Historic Document for the Internet community.
This is a contribution to the RFC Series, independently of any other
RFC stream. The RFC Editor has chosen to publish this document at
its discretion and makes no statement about its value for
implementation or deployment. Documents approved for publication by
the RFC Editor are not a candidate for any level of Internet
Standard; see Section 2 of RFC 5741.
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
Copyright (c) 2012 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document.
Manning Historic [Page 1]
RFC 6804 DISCOVER November 2012
The TBDS project developed extensions to existing network services to
enable software for clients and servers of an application to become
more resilient to changes in topology by dynamically sensing changes
and switching between client/server and peer-peer methods for both
end-system-to-server and server-to-server communications.
The first existing network service to be investigated was the Domain
Name Systems (DNS), which is used to map symbolic Internet names to
numeric Internet addresses. Based upon a hierarchical tree
structure, the DNS relies upon uninterrupted connectivity of nodes to
a special set of static, manually configured root servers. To
improve the robustness and availability of the DNS service, TBDS
developed and defined enhancements that enable nodes to map names to
numbers without the need for uninterrupted connectivity to the
Internet root servers. These techniques were automated, allowing
transition between connected and unconnected operations to be done
without direct human intervention.
These enhancements to the DNS server code are based on the open
source BIND to support reception and processing of multicast packets.
Proof-of-concept modifications to BIND 8.1.2 were made to show that
multicast awareness could be added to BIND. An analysis was made of
the existing DNS code deployment and the schedule of new feature
deployment so that we could synchronize TBDS with a more appropriate
code base. Testing identified a race condition due to overloading
the semantics of the DNS opcode that was used to communicate to
This race condition was explored within the IETF regarding use of
existing DNS opcodes. Discussion within the team and with others in
the IETF led to the idea that we needed a new opcode that would not
overload the semantics of existing opcodes. The original DNS design
specification presumes that few clients exist that would share common
DNS data. To correct this problem, a new opcode was designed to
disambiguate TBDS requests from normal nameserver requests.
In the standard Domain Name System (DNS)  , queries are always
unicast using the QUERY opcode. The TBDS research project ,
funded under DARPA grant F30602-99-1-0523, explored the use of
multicast DNS   queries for resource discovery by autonomous,
mobile nodes in disconnected networks. The operations model is
covered in the TBDS documentation. Multicast queries may return
multiple replies, while the standard DNS QUERY operation (see
Sections 3.7, 4.3, and 5 of RFC 1034 ; and Section 4.1.1 of RFC
1035 ) expects a single reply. Instead of extending the QUERY
Manning Historic [Page 2]
Show full document text