Internet DRAFT - draft-lenders-dns-cns

draft-lenders-dns-cns







TBD                                                        M. S. Lenders
Internet-Draft                                                 FU Berlin
Intended status: Best Current Practice                     T. C. Schmidt
Expires: 27 April 2023                                       HAW Hamburg
                                                             M. Wählisch
                                                               FU Berlin
                                                         24 October 2022


      Guidance on DNS Message Composition in Constrained Networks
                        draft-lenders-dns-cns-00

Abstract

   This document provides guidance on the composition of DNS messages in
   constrained networks, where the link layer may restrict payload sizes
   significantly and batteries challenge power consumption.

About This Document

   This note is to be removed before publishing as an RFC.

   The latest revision of this draft can be found at https://anr-bmbf-
   pivot.github.io/draft-lenders-dns-cns/draft-lenders-dns-cns.html.
   Status information for this document may be found at
   https://datatracker.ietf.org/doc/draft-lenders-dns-cns/.

   Discussion of this document takes place on the TBD Working Group
   mailing list (mailto:TBD@example.com), which is archived at
   nicfs.nic.ddn.mil:~/namedroppers/*.Z.

   Source for this draft and an issue tracker can be found at
   https://github.com/anr-bmbf-pivot/draft-lenders-dns-cns.

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 https://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."



Lenders, et al.           Expires 27 April 2023                 [Page 1]

Internet-Draft         DNS in Constrained Networks          October 2022


   This Internet-Draft will expire on 27 April 2023.

Copyright Notice

   Copyright (c) 2022 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 (https://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 Revised BSD License text as
   described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Revised BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Constrained Resolver Considerations . . . . . . . . . . . . .   3
   4.  DNS Server Consideration  . . . . . . . . . . . . . . . . . .   3
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .   4
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   4
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   4
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .   4
     7.2.  Informative References  . . . . . . . . . . . . . . . . .   4
   Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . .   5
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   5

1.  Introduction

   Many IoT scenarios rely on constrained nodes [RFC7228] and need the
   Domain Name System (DNS).  Constrained nodes [RFC7228], however,
   challenge DNS resolution for two reasons.  First, IoT networks, such
   as IEEE 802.15.4 and LoRaWAN, often limit the payload of the data
   link layer significantly in terms of size, which prevents common
   (larger) DNS responses.  Second, constrained nodes are often battery
   powered and follow a strict duty cycle, which would benefit from
   minimal number of DNS messages to reduce unnecessary device wake-ups.
   Adoption layers such as 6LoWPAN [RFC4944] and SCHC [RFC8724] provide
   fragmentation and compression to overcome the problem, but do not
   help in principle.  Fragmentation requires more buffer space to
   account for lost fragments in lossy networks, and compression
   introduces additional processing overhead.






Lenders, et al.           Expires 27 April 2023                 [Page 2]

Internet-Draft         DNS in Constrained Networks          October 2022


   This document provides best common practices on DNS behavior, to
   reduce fragmentation and power consumption in constrained networks
   when IoT nodes resolve names.

2.  Terminology

   A "DNS server" is a server that provides DNS information to a
   querying DNS client.  For the purpose of this document, server and
   client may communicate based on any DNS transport, not just DNS over
   UDP [RFC1035], but also DNS over TLS [RFC7858], DNS over HTTPS
   [RFC8484], or DNS over CoAP [I-D.ietf-core-dns-over-coap].

   The terms "constrained node" and "constrained network" are used as
   defined in [RFC7228].

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in
   BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

3.  Constrained Resolver Considerations

   Nodes within a constrained network that implement DNS are assumed to
   be stub resolvers [RFC8499].  This means they only query information
   from a recursive DNS resolver and they MUST NOT distribute any DNS
   information received from an upstream DNS server.

4.  DNS Server Consideration

   A DNS server that is aware that the querying node is a node within a
   constrained network SHOULD resolve a CNAME or PTR record until the
   resource record type originally requested by the node is reached.
   This reduces the number of message exchanges within a constrained
   network.

   The DNS server SHOULD send compact answers, i.e., omit additional or
   authority sections in a DNS reply.  Additional and authority sections
   should only be included if they help a DNS client to reduce queries.
   One such example is DNS-SD [RFC6763], where the answer does not only
   need to include an SRV record but also TXT and A/AAAA records to make
   decent use of the reply.

   TBD: Provide more specific example use case?  Should the list be
   almost complete?






Lenders, et al.           Expires 27 April 2023                 [Page 3]

Internet-Draft         DNS in Constrained Networks          October 2022


5.  Security Considerations

   In the case when DNS clients act as DNS servers, resolving CNAME and
   PTR records at the upstream DNS server may lead to incorrect DNS
   information forwarded by the client.  As such, this document
   prohibits the distribution of such information in Section 3

   TODO more security

6.  IANA Considerations

   This document has no IANA actions.

7.  References

7.1.  Normative References

   [RFC1035]  Mockapetris, P., "Domain names - implementation and
              specification", STD 13, RFC 1035, DOI 10.17487/RFC1035,
              November 1987, <https://www.rfc-editor.org/rfc/rfc1035>.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/rfc/rfc2119>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/rfc/rfc8174>.

7.2.  Informative References

   [I-D.ietf-core-dns-over-coap]
              Lenders, M. S., Amsüss, C., Gündoğan, C., Schmidt, T. C.,
              and M. Wählisch, "DNS over CoAP (DoC)", Work in Progress,
              Internet-Draft, draft-ietf-core-dns-over-coap-00, 5
              September 2022, <https://datatracker.ietf.org/doc/html/
              draft-ietf-core-dns-over-coap-00>.

   [RFC4944]  Montenegro, G., Kushalnagar, N., Hui, J., and D. Culler,
              "Transmission of IPv6 Packets over IEEE 802.15.4
              Networks", RFC 4944, DOI 10.17487/RFC4944, September 2007,
              <https://www.rfc-editor.org/rfc/rfc4944>.

   [RFC6763]  Cheshire, S. and M. Krochmal, "DNS-Based Service
              Discovery", RFC 6763, DOI 10.17487/RFC6763, February 2013,
              <https://www.rfc-editor.org/rfc/rfc6763>.




Lenders, et al.           Expires 27 April 2023                 [Page 4]

Internet-Draft         DNS in Constrained Networks          October 2022


   [RFC7228]  Bormann, C., Ersue, M., and A. Keranen, "Terminology for
              Constrained-Node Networks", RFC 7228,
              DOI 10.17487/RFC7228, May 2014,
              <https://www.rfc-editor.org/rfc/rfc7228>.

   [RFC7858]  Hu, Z., Zhu, L., Heidemann, J., Mankin, A., Wessels, D.,
              and P. Hoffman, "Specification for DNS over Transport
              Layer Security (TLS)", RFC 7858, DOI 10.17487/RFC7858, May
              2016, <https://www.rfc-editor.org/rfc/rfc7858>.

   [RFC8484]  Hoffman, P. and P. McManus, "DNS Queries over HTTPS
              (DoH)", RFC 8484, DOI 10.17487/RFC8484, October 2018,
              <https://www.rfc-editor.org/rfc/rfc8484>.

   [RFC8499]  Hoffman, P., Sullivan, A., and K. Fujiwara, "DNS
              Terminology", BCP 219, RFC 8499, DOI 10.17487/RFC8499,
              January 2019, <https://www.rfc-editor.org/rfc/rfc8499>.

   [RFC8724]  Minaburo, A., Toutain, L., Gomez, C., Barthel, D., and JC.
              Zuniga, "SCHC: Generic Framework for Static Context Header
              Compression and Fragmentation", RFC 8724,
              DOI 10.17487/RFC8724, April 2020,
              <https://www.rfc-editor.org/rfc/rfc8724>.

Acknowledgments

   TODO acknowledge.

   *  Carsten Bormann

   *  Ben Schwartz

Authors' Addresses

   Martine Sophie Lenders
   Freie Universität Berlin
   Email: m.lenders@fu-berlin.de


   Thomas C. Schmidt
   HAW Hamburg
   Email: t.schmidt@haw-hamburg.de


   Matthias Wählisch
   Freie Universität Berlin
   Email: m.waehlisch@fu-berlin.de




Lenders, et al.           Expires 27 April 2023                 [Page 5]