Internet DRAFT - draft-jabley-dnsop-ordered-answers
draft-jabley-dnsop-ordered-answers
Network Working Group J. Abley
Internet-Draft Dyn, Inc.
Updates: 1034, 1035 (if approved) October 9, 2015
Intended status: Standards Track
Expires: April 11, 2016
Ordering of RRSets in DNS Messages
draft-jabley-dnsop-ordered-answers-00
Abstract
The existing Domain Name System (DNS) specifications lack some
clarity in their description of the process by which individual
sections of a DNS message are constructed.
This document updates RFC 1034 and RFC 1035 to provide a clearer
specification, consistent with deployed implementations.
Status of this Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on April 11, 2016.
Copyright Notice
Copyright (c) 2015 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. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
Abley Expires April 11, 2016 [Page 1]
Internet-Draft Ordering of RRSets in DNS Messages October 2015
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Updates to RFC 1034 . . . . . . . . . . . . . . . . . . . . . 5
4. Updates to RFC 1035 . . . . . . . . . . . . . . . . . . . . . 6
5. Security Considerations . . . . . . . . . . . . . . . . . . . 7
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 9
8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 10
8.1. Normative References . . . . . . . . . . . . . . . . . . . 10
8.2. Informative References . . . . . . . . . . . . . . . . . . 10
Appendix A. Editorial Notes . . . . . . . . . . . . . . . . . . . 11
A.1. Venue . . . . . . . . . . . . . . . . . . . . . . . . . . 11
A.2. Change History . . . . . . . . . . . . . . . . . . . . . . 11
A.2.1. draft-jabley-dnsop-ordered-answers-00 . . . . . . . . 11
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 12
Abley Expires April 11, 2016 [Page 2]
Internet-Draft Ordering of RRSets in DNS Messages October 2015
1. Terminology
This document uses terminology specific to the Domain Name System
(DNS), descriptions of which can be found in
[I-D.ietf-dnsop-dns-terminology].
In an exchange of DNS messages between two hosts, this document
refers to the host sending a DNS request as the initiator, and the
host sending a DNS response as the responder.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY" and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119].
Abley Expires April 11, 2016 [Page 3]
Internet-Draft Ordering of RRSets in DNS Messages October 2015
2. Introduction
[RFC1034] specifies an algorithm for use by responders when
constructing response to a DNS QUERY. This algorithm in some cases
can result in multiple RRSets being included in a single section of a
DNS message, e.g. when handling CNAME resource records.
Many responder implementations have interpreted the direction to copy
or store particular RRSets in the answer section of a DNS response to
mean "append", treating each section as an ordered list of RRSets.
Many initiators, in particular stub resolvers, are known to rely upon
that interpretation when processing DNS responses received from
responders.
Some DNS implementations employ algorithms in other sections that aim
to optimise processing of responses received by initiators, e.g.
NAPTR before SRV before A/AAAA in the additional section of a
response. This behaviour has not been observed to cause any
interoperability problems, and is explicitly permitted by this
document.
This document updates [RFC1035] to specify that the answer section in
a DNS message is an ordered list of RRSets, but that other sections
may be constructed differently, and clarifies the directions provided
in [RFC1034] to match the observed behaviour and expectations of
deployed software.
Abley Expires April 11, 2016 [Page 4]
Internet-Draft Ordering of RRSets in DNS Messages October 2015
3. Updates to RFC 1034
[RFC1034] specifies the algorithms by which sections of a DNS
response are constructed by a responder. For example, step 3 of the
algorithm described in [RFC1034] section 4.3.2 contains the direction
"copy all RRs which match QTYPE into answer section".
In this case, and in all other cases where [RFC1034] specifies that
particular RRSets be included in the answer section of a DNS message,
the section MUST be treated as an ordered list of RRSets. When it is
necessary to include new RRSets in a section of a DNS message that is
under construction, those RRSets MUST be appended. The receiver of a
DNS message MAY refuse to process DNS messages that have been
constructed differently.
When constructing other sections of a DNS message, each section MAY
be treated as a non-ordered list, and a receiver of a DNS message
MUST NOT reject a DNS message on the basis of the order of RRSets in
those sections.
Abley Expires April 11, 2016 [Page 5]
Internet-Draft Ordering of RRSets in DNS Messages October 2015
4. Updates to RFC 1035
In a DNS message, the answer section MUST be considered to be an
ordered set of RRSets; all other sections MUST be considered to be a
non-ordered set.
DNS implementations MUST construct each section in a DNS response
according to the algorithms specified in [RFC1034], as clarified in
Section 3 of this document.
Abley Expires April 11, 2016 [Page 6]
Internet-Draft Ordering of RRSets in DNS Messages October 2015
5. Security Considerations
The recommendations contained in this document have no known security
implications.
Abley Expires April 11, 2016 [Page 7]
Internet-Draft Ordering of RRSets in DNS Messages October 2015
6. IANA Considerations
This document has no IANA actions.
Abley Expires April 11, 2016 [Page 8]
Internet-Draft Ordering of RRSets in DNS Messages October 2015
7. Acknowledgements
The contributions of Mark Andrews and Paul Vixie to this document are
acknowledged.
Abley Expires April 11, 2016 [Page 9]
Internet-Draft Ordering of RRSets in DNS Messages October 2015
8. References
8.1. Normative References
[RFC1034] Mockapetris, P., "Domain names - concepts and facilities",
STD 13, RFC 1034, DOI 10.17487/RFC1034, November 1987,
<http://www.rfc-editor.org/info/rfc1034>.
[RFC1035] Mockapetris, P., "Domain names - implementation and
specification", STD 13, RFC 1035, DOI 10.17487/RFC1035,
November 1987, <http://www.rfc-editor.org/info/rfc1035>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/
RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
8.2. Informative References
[I-D.ietf-dnsop-dns-terminology]
Hoffman, P., Sullivan, A., and K. Fujiwara, "DNS
Terminology", draft-ietf-dnsop-dns-terminology-05 (work in
progress), September 2015.
Abley Expires April 11, 2016 [Page 10]
Internet-Draft Ordering of RRSets in DNS Messages October 2015
Appendix A. Editorial Notes
This section (and sub-sections) to be removed prior to publication.
A.1. Venue
An appropriate forum for discussion of this draft is the dnsop
working group.
A.2. Change History
A.2.1. draft-jabley-dnsop-ordered-answers-00
Initial draft circulated for comment.
Abley Expires April 11, 2016 [Page 11]
Internet-Draft Ordering of RRSets in DNS Messages October 2015
Author's Address
Joe Abley
Dyn, Inc.
103-186 Albert Street
London, ON N6A 1M1
Canada
Phone: +1 519 670 9327
Email: jabley@dyn.com
Abley Expires April 11, 2016 [Page 12]