<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.19 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-roll-enrollment-priority-12" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.25.0 -->
  <front>
    <title abbrev="join-metric">Controlling Secure Network Enrollment in RPL networks</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-roll-enrollment-priority-12"/>
    <author initials="M." surname="Richardson" fullname="Michael Richardson">
      <organization>Sandelman Software Works</organization>
      <address>
        <email>mcr+ietf@sandelman.ca</email>
      </address>
    </author>
    <author initials="R. A." surname="Jadhav" fullname="Rahul Arvind Jadhav">
      <organization>Huawei Tech</organization>
      <address>
        <email>rahul.ietf@gmail.com</email>
      </address>
    </author>
    <author initials="P." surname="Thubert" fullname="Pascal Thubert">
      <organization>Cisco Systems</organization>
      <address>
        <email>pthubert@cisco.com</email>
      </address>
    </author>
    <author initials="H." surname="She" fullname="Huimin She">
      <organization>Cisco Systems</organization>
      <address>
        <email>hushe@cisco.com</email>
      </address>
    </author>
    <author initials="K." surname="Iwanicki" fullname="Konrad Iwanicki">
      <organization>University of Warsaw</organization>
      <address>
        <email>iwanicki@mimuw.edu.pl</email>
      </address>
    </author>
    <date year="2025" month="March" day="03"/>
    <area>Internet</area>
    <workgroup>ROLL Working Group</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 64?>

<t><xref target="RFC9032"/> defines a method by which a potential <xref target="RFC9031"/> enrollment proxy can announce itself as available for new Pledges to enroll on a network.
The announcement includes a priority for enrollment.
This document provides a mechanism by which a RPL DODAG Root can globally disable enrollment announcements or adjust the base priority for enrollment operations.</t>
    </abstract>
  </front>
  <middle>
    <?line 70?>

<section anchor="problems">
      <name>Introduction</name>
      <t><xref target="RFC7554"/> describes the use of the Time-Slotted Channel Hopping (TSCH) mode of <xref target="ieee802154"/>.
<xref target="RFC9031"/> and <xref target="RFC9032"/> describe mechanisms by which a new node (the "Pledge") can use a
nearby router as a Join Proxy.
<xref target="RFC9032"/> describes an extension to the 802.15.4 Enhanced Beacon that is used by a Join Proxy to announce its existence such that Pledges can find them.</t>
      <section anchor="motivation-and-overview">
        <name>Motivation and Overview</name>
        <t>It has become clear that not every routing member of the mesh ought to announce itself as a <em>Join Proxy</em>.
There are a variety of local reasons for which a 6LowPAN Router (6LR) might not want to provide the <em>Join Proxy</em> function.
They include low available battery power, already high committed network bandwidth, and little free memory for Neighbor Cache Entry (NCE) slots.
(An NCE entry is needed in order to maintain communication with the Pledge.)</t>
        <t>There are other situations where the operator of the network would like to selectively enable or disable the enrollment process in a specific Destination Oriented Directed Acyclic Graph (DODAG).
In particular, as the enrollment process involves permitting unencrypted traffic into the best effort part of a network, it would be better to have the enrollment process off when no new nodes are expected.</t>
        <t>This document describes a Routing Protocol for Low-Power and Lossy Networks (RPL) Destination Information Object (DIO) option that can be used to set a minimum enrollment priority.
The minimum priority expresses the (lack of) willingness by the RPL DODAG globally to accept new joins.
It may derive from multiple constraining factors, for instance, the size of the DODAG, the occupancy of the bandwidth at the DODAG Root, the memory capacity at the Root, or an administrative decision.
Each potential <em>Join Proxy</em> utilizes this value as a base on which to add values relating to local conditions, such as its Rank and number of pending joins.
As explained in <xref target="RFC9032"/>, higher values decrease the likelihood of an unenrolled node sending enrollment traffic via this <em>Join Proxy</em>.
In particular, by setting the minimum enrollment priority to the maximum value allowed, a network operator can globally disable all new enrollment traffic.</t>
        <t>Moreover, when a RPL domain is composed of multiple DODAGs, a node at the edge of more than one such DODAG may not only join any of the DODAGs but also move between them in order to keep their relative sizes balanced.
For this, the approximate knowledge of the size of the DODAGs is also an essential metric.
Depending on the network policy, the size of the DODAG may or may not affect the minimum enrollment priority.
Therefore, since making one proportional to the other would be limiting their value, the current size of the DODAG is advertised separately in the new option.</t>
        <t>Updates to the option propagate through the network according to the trickle algorithm.
The contents of the option are generated at the DODAG Root and do not change at any hop.
If the contents represent an update that is considered important (e.g., quickly disabling any enrollments), the option can trigger trickle timer resets at the nodes to speed up its propagation.</t>
      </section>
    </section>
    <section anchor="Terminology">
      <name>Terminology</name>
      <t>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 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.
<?line -6?>
      </t>
      <t>The term 6LR means 6LowPAN Router, and is defined in <xref target="RFC6606"/>.
It refers to a router that forwards packets in a 6LowPAN network.</t>
      <t>The terms DODAG, DODAG root, DIO, trickle timer are from <xref target="RFC6550"/>.
The lollipop counter function comes from <xref section="7.2" sectionFormat="comma" target="RFC6550"/>.</t>
      <t>The term (1)"Join" has been used in documents such as <xref target="RFC9031"/> to denote the activity of a new node authenticating itself to the network to obtain authorization to become a member of the network.</t>
      <t>In the context of the <xref target="RFC6550"/> RPL protocol, the term (2)"Join" has an alternative meaning: that of a node (already authenticated to the network, and already authorized to be a member of the network), deciding which part of the RPL DODAG to attach to.
This term "Join" has to do with preferred parent selection processes.</t>
      <t>In order to avoid the ambiguity of this term, this document refers to the process (1)"Join" as enrollment, leaving the term "Join" to mean (2)"Join".
The term "onboarding" (or "IoT Onboarding") is increasingly used to describe what is now called enrollment in other documents.
However, the term <em>Join Proxy</em> is retained with its (1)"Join" meaning from <xref target="RFC9031"/>.</t>
    </section>
    <section anchor="protocol-definition">
      <name>Protocol Definition</name>
      <t>This document uses the extensions mechanism designed into <xref target="RFC6550"/>.
No mechanism is needed to enable it.</t>
      <section anchor="option-format">
        <name>Option Format</name>
        <t>The following option is defined for transmission in DIOs issued by the DODAG Root to be propagated within the DODAG.</t>
        <artwork><![CDATA[
    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | Type = TBD01  |Opt Length = 4 |Version Number |T| Min Priority|
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  Exp  |DODAGSz|
   +-+-+-+-+-+-+-+-+
]]></artwork>
        <dl>
          <dt>Type</dt>
          <dd>
            <t>To be assigned by IANA.</t>
          </dd>
          <dt>Version Number</dt>
          <dd>
            <t>An 8-bit unsigned integer set by the DODAG root and denoting the version number of the contents of the option. The version number is interpreted as a lollipop counter (see Section 7.2 of <xref target="RFC6550"/>).</t>
          </dd>
          <dt>T</dt>
          <dd>
            <t>A bit indicating whether the particular version of the option is important in that adopting its contents should trigger a trickle timer reset at the node.</t>
          </dd>
          <dt>Min Priority</dt>
          <dd>
            <t>A 7-bit field providing a base value for the Enhanced Beacon Join priority.  A value of 0x7f (127) disables the <em>Join Proxy</em> function entirely.</t>
          </dd>
          <dt>Exp</dt>
          <dd>
            <t>A 4-bit unsigned integer indicating the power of 2 that defines the unit of the DODAG Size, such that (unit = 2^Exp).</t>
          </dd>
          <dt>DODAGSz</dt>
          <dd>
            <t>A 4-bit unsigned integer expressing the size of the DODAG in units that depend on the Exp field.</t>
          </dd>
        </dl>
        <t>The DODAG Size is calculated as (DODAGSz * 2^Exp).</t>
        <t>The DODAG Size can be measured by the Root based on the DAO activity.
In such a case, it represents the number of routes not the number of nodes, and can thus be used to infer the load only in a network where each node advertises roughly the same number of addresses and generates roughly the same amount of traffic.</t>
        <t>As the DODAG Size is always a multiple of a power of 2, when the actual size falls between two such values, the DODAG Root is to always round up.</t>
        <t>Future work such as <xref target="I-D.ietf-roll-capabilities"/> will enable collection of capabilities such as this one in reports to the DODAG Root.</t>
        <t>In any case, the DODAG Size may slightly change between a DIO and the next, so the value transmitted is considered as an approximation.</t>
      </section>
      <section anchor="option-processing">
        <name>Option Processing</name>
        <t>The contents of the option MUST be generated by the DODAG Root.
A 6LR MUST NOT change them when propagating the option.</t>
        <t>Whenever the DODAG root changes the values of Min Priority or DODAG Size in the option, it MUST also increment the value of Version Number.
Moreover, if the change is considered important (i.e., it is expected to propagate in the DODAG quickly), the DODAG Root SHOULD also set the T bit to 1; otherwise, it MUST set the bit to 0.</t>
        <t>Upon receiving the option, a 6LR first checks the value of the Version Number field in the option, <em>vr</em>, versus the value of the Version Number it has last adopted locally, <em>vl</em>.</t>
        <ul spacing="normal">
          <li>
            <t>If <em>vl</em> is greater than <em>vr</em> (in the lollipop counter order), then the 6LR MUST ignore the received option.</t>
          </li>
          <li>
            <t>Otherwise, the 6LR MUST adopt the contents of the option (i.e., the values of Version Number, Min Priority, DODAG Size, and the T bit) as its local ones.
Moreover, if <em>vl</em> was smaller than <em>vr</em> (in the lollipop counter order) and the T bit in the received option was set, then the 6LR MUST reset its DIO trickle timer.</t>
          </li>
        </ul>
        <t>A 6LR, which would otherwise be willing to act as a <em>Join Proxy</em>, will examine the locally adopted value of Min Priority and to that number add any additional local consideration (such as upstream congestion, number of NCE slots available, etc.).</t>
        <t>The maximum resulting value any 6LR can obtain this way is 0x7f.</t>
        <t>The resulting priority, if less than 0x7f, should enable the <em>Join Proxy</em> function.</t>
      </section>
      <section anchor="upwards-compatibility">
        <name>Upwards Compatibility</name>
        <t>A 6LR that did not support this option would not act on it or propagate it in its DIO messages.
In effect, the 6LR's children and grandchildren nodes could not receive any telemetry.
Therefore, 6LRs that support this option but do not receive it via any path SHOULD assume a default value of 0x40 as their base value for the Enhanced Beacon Join Priority.</t>
        <t>A 6LR downstream of a 6LR where there was such an interruption in the telemetry could err in two directions:</t>
        <ul spacing="normal">
          <li>
            <t>If the value implied by the base value of 0x40 was too low, then the 6LR might continue to attract enrollment traffic when none should have been collected.
This is a stressor for the network, but this would also be what would occur without this option at all.</t>
          </li>
          <li>
            <t>If the value implied by the base value of 0x40 was too high, then the 6LR might deflect enrollment traffic to other parts of the DODAG, possibly refusing any enrollment traffic at all.
In order for this to happen, some significant congestion must be seen in the sub-DODAG where the implied 0x40 was introduced.
The 0x40 is only the half-way point, so if such an amount of congestion was present, then this sub-DODAG of the DODAG simply winds up being more cautious than it needed to be.</t>
          </li>
        </ul>
        <t>It is possible that the temporal alternation of the above two situations might introduce cycles of accepting and then rejecting enrollment traffic.
This is something an operator should consider if they incrementally deploy this option to an existing Low-power/Lossy-Network (LLN).
In addition, an operator would be unable to turn off enrollment traffic by sending a maximum value enrollment priority to the sub-DODAG.
This situation is unfortunate, but without this option, the situation would occur all over the DODAG, rather than just in the sub-DODAG that the option did not reach.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>As per <xref target="RFC7416"/>, RPL control frames either run over a secured layer 2 or use the <xref target="RFC6550"/> Secure DIO methods at layer 3.
This option can be placed into either a "clear" (layer-2 secured) DIO or a layer-3 Secure DIO.</t>
      <t>In most deployments involving wireless technology, layer 2 is always encrypted using a layer-2 specific technology, and so privacy of this option is available.</t>
      <t>However, a malicious node that was part of the RPL control plane (i.e., had been enrolled into the layer-2 security) would be able to see the values of this option and, based upon the observed minimal enrollment priority, could signal a confederate that it was a good time to send malicious join traffic.</t>
      <t>What is more, such a malicious node, being already part of the RPL control plane, could also send DIOs with a different minimal enrollment priority, which would cause downstream mesh routers to change their <em>Join Proxy</em>  behavior: lower minimal priorities would cause downstream nodes to accept more Pledges than the network was expecting; higher minimal priorities could cause the enrollment process to stall.</t>
      <t>The use of layer-2 or layer-3 security for RPL control messages prevents the two aforementioned attacks by non-participating nodes by preventing malicious nodes from becoming part of the control plane.</t>
      <t>Nevertheless, a node that is attacked and has malware placed on it creates vulnerabilities in the same way such an attack on any node involved in Internet routing protocol does.
The rekeying provisions of <xref target="RFC9031"/> exist to permit an operator to remove such nodes from the network.</t>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>There are no new privacy issues caused by this extension.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>Allocate a new number TBD01 from Registry RPL Control Message Options.
This entry should be called Minimum Enrollment Priority.</t>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>This has been reviewed by Thomas Watteyne, Rifaat Shehk-Yusek, Dave Thaler,</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC7554">
          <front>
            <title>Using IEEE 802.15.4e Time-Slotted Channel Hopping (TSCH) in the Internet of Things (IoT): Problem Statement</title>
            <author fullname="T. Watteyne" initials="T." role="editor" surname="Watteyne"/>
            <author fullname="M. Palattella" initials="M." surname="Palattella"/>
            <author fullname="L. Grieco" initials="L." surname="Grieco"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>This document describes the environment, problem statement, and goals for using the Time-Slotted Channel Hopping (TSCH) Medium Access Control (MAC) protocol of IEEE 802.14.4e in the context of Low-Power and Lossy Networks (LLNs). The set of goals enumerated in this document form an initial set only.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7554"/>
          <seriesInfo name="DOI" value="10.17487/RFC7554"/>
        </reference>
        <reference anchor="RFC6550">
          <front>
            <title>RPL: IPv6 Routing Protocol for Low-Power and Lossy Networks</title>
            <author fullname="T. Winter" initials="T." role="editor" surname="Winter"/>
            <author fullname="P. Thubert" initials="P." role="editor" surname="Thubert"/>
            <author fullname="A. Brandt" initials="A." surname="Brandt"/>
            <author fullname="J. Hui" initials="J." surname="Hui"/>
            <author fullname="R. Kelsey" initials="R." surname="Kelsey"/>
            <author fullname="P. Levis" initials="P." surname="Levis"/>
            <author fullname="K. Pister" initials="K." surname="Pister"/>
            <author fullname="R. Struik" initials="R." surname="Struik"/>
            <author fullname="JP. Vasseur" initials="JP." surname="Vasseur"/>
            <author fullname="R. Alexander" initials="R." surname="Alexander"/>
            <date month="March" year="2012"/>
            <abstract>
              <t>Low-Power and Lossy Networks (LLNs) are a class of network in which both the routers and their interconnect are constrained. LLN routers typically operate with constraints on processing power, memory, and energy (battery power). Their interconnects are characterized by high loss rates, low data rates, and instability. LLNs are comprised of anything from a few dozen to thousands of routers. Supported traffic flows include point-to-point (between devices inside the LLN), point-to-multipoint (from a central control point to a subset of devices inside the LLN), and multipoint-to-point (from devices inside the LLN towards a central control point). This document specifies the IPv6 Routing Protocol for Low-Power and Lossy Networks (RPL), which provides a mechanism whereby multipoint-to-point traffic from devices inside the LLN towards a central control point as well as point-to-multipoint traffic from the central control point to the devices inside the LLN are supported. Support for point-to-point traffic is also available. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6550"/>
          <seriesInfo name="DOI" value="10.17487/RFC6550"/>
        </reference>
        <reference anchor="RFC9032">
          <front>
            <title>Encapsulation of 6TiSCH Join and Enrollment Information Elements</title>
            <author fullname="D. Dujovne" initials="D." role="editor" surname="Dujovne"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>In the Time-Slotted Channel Hopping (TSCH) mode of IEEE Std 802.15.4, opportunities for broadcasts are limited to specific times and specific channels. Routers in a TSCH network transmit Enhanced Beacon (EB) frames to announce the presence of the network. This document provides a mechanism by which additional information critical for new nodes (pledges) and long-sleeping nodes may be carried within the EB in order to conserve use of broadcast opportunities.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9032"/>
          <seriesInfo name="DOI" value="10.17487/RFC9032"/>
        </reference>
        <reference anchor="RFC9031">
          <front>
            <title>Constrained Join Protocol (CoJP) for 6TiSCH</title>
            <author fullname="M. Vučinić" initials="M." role="editor" surname="Vučinić"/>
            <author fullname="J. Simon" initials="J." surname="Simon"/>
            <author fullname="K. Pister" initials="K." surname="Pister"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document describes the minimal framework required for a new device, called a "pledge", to securely join a 6TiSCH (IPv6 over the Time-Slotted Channel Hopping mode of IEEE 802.15.4) network. The framework requires that the pledge and the JRC (Join Registrar/Coordinator, a central entity), share a symmetric key. How this key is provisioned is out of scope of this document. Through a single CoAP (Constrained Application Protocol) request-response exchange secured by OSCORE (Object Security for Constrained RESTful Environments), the pledge requests admission into the network, and the JRC configures it with link-layer keying material and other parameters. The JRC may at any time update the parameters through another request-response exchange secured by OSCORE. This specification defines the Constrained Join Protocol and its CBOR (Concise Binary Object Representation) data structures, and it describes how to configure the rest of the 6TiSCH communication stack for this join process to occur in a secure manner. Additional security mechanisms may be added on top of this minimal framework.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9031"/>
          <seriesInfo name="DOI" value="10.17487/RFC9031"/>
        </reference>
        <reference anchor="ieee802154" target="http://standards.ieee.org/findstds/standard/802.15.4-2015.html">
          <front>
            <title>IEEE Std. 802.15.4, Part. 15.4: Wireless Medium Access Control (MAC) and Physical Layer (PHY) Specifications for Low-Rate Wireless Personal Area Networks</title>
            <author initials="" surname="IEEE standard for Information Technology">
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC7416">
          <front>
            <title>A Security Threat Analysis for the Routing Protocol for Low-Power and Lossy Networks (RPLs)</title>
            <author fullname="T. Tsao" initials="T." surname="Tsao"/>
            <author fullname="R. Alexander" initials="R." surname="Alexander"/>
            <author fullname="M. Dohler" initials="M." surname="Dohler"/>
            <author fullname="V. Daza" initials="V." surname="Daza"/>
            <author fullname="A. Lozano" initials="A." surname="Lozano"/>
            <author fullname="M. Richardson" initials="M." role="editor" surname="Richardson"/>
            <date month="January" year="2015"/>
            <abstract>
              <t>This document presents a security threat analysis for the Routing Protocol for Low-Power and Lossy Networks (RPLs). The development builds upon previous work on routing security and adapts the assessments to the issues and constraints specific to low-power and lossy networks. A systematic approach is used in defining and evaluating the security threats. Applicable countermeasures are application specific and are addressed in relevant applicability statements.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7416"/>
          <seriesInfo name="DOI" value="10.17487/RFC7416"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC6606">
          <front>
            <title>Problem Statement and Requirements for IPv6 over Low-Power Wireless Personal Area Network (6LoWPAN) Routing</title>
            <author fullname="E. Kim" initials="E." surname="Kim"/>
            <author fullname="D. Kaspar" initials="D." surname="Kaspar"/>
            <author fullname="C. Gomez" initials="C." surname="Gomez"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="May" year="2012"/>
            <abstract>
              <t>IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs) are formed by devices that are compatible with the IEEE 802.15.4 standard. However, neither the IEEE 802.15.4 standard nor the 6LoWPAN format specification defines how mesh topologies could be obtained and maintained. Thus, it should be considered how 6LoWPAN formation and multi-hop routing could be supported.</t>
              <t>This document provides the problem statement and design space for 6LoWPAN routing. It defines the routing requirements for 6LoWPANs, considering the low-power and other particular characteristics of the devices and links. The purpose of this document is not to recommend specific solutions but to provide general, layer-agnostic guidelines about the design of 6LoWPAN routing that can lead to further analysis and protocol design. This document is intended as input to groups working on routing protocols relevant to 6LoWPANs, such as the IETF ROLL WG. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6606"/>
          <seriesInfo name="DOI" value="10.17487/RFC6606"/>
        </reference>
        <reference anchor="I-D.ietf-roll-capabilities">
          <front>
            <title>RPL Capabilities</title>
            <author fullname="Rahul Jadhav" initials="R." surname="Jadhav">
              <organization>Huawei</organization>
            </author>
            <author fullname="Pascal Thubert" initials="P." surname="Thubert">
              <organization>Cisco Systems, Inc</organization>
            </author>
            <author fullname="Michael Richardson" initials="M." surname="Richardson">
              <organization>Sandelman Software Works</organization>
            </author>
            <author fullname="Rabi Narayan Sahoo" initials="R. N." surname="Sahoo">
              <organization>Juniper</organization>
            </author>
            <date day="9" month="November" year="2021"/>
            <abstract>
              <t>   This draft enables the discovery, advertisement and query of
   capabilities for RPL nodes.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-roll-capabilities-09"/>
        </reference>
      </references>
    </references>
    <?line 247?>



  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA7Vb23IkN3J9r6+AOQ8mZ7tbJDUXiWtZS5EjDXd5M8mxQi92
oKvQ3RDr5kIVe1qa+Rd/i7/MJzMBVFWTHHljw1Qo2OxCAZmJzJMnE5jpdJq0
ts3NkTqpyrap8tyWS3Vr0q4x6tK066q5V+9KelCYslW2VDfX56qUJy7R83lj
Ho7Ur5Utp4VpG5smWZWWusCUWaMX7dSadjGlCaYmzjOtG1s1tt1MDw6TxNbN
kWqbzrWH+/vf7h8mujH6SJ2VrWmwUrJeHqmbq/Nz9TPWJPl+aqquTu7X/Zjp
Ka2VpLo9Uq7NEtfqMvtPnVel4alNktT2SOHnhUp1qTpnlG4avVG7dqF0nquN
cXuqatRKu5VamcYkSrVVekQP8NFVTduYhTviKTKz0F3eOowIzzeFPKY/E921
q6o5ShT/TP1vBfNhxMVM3dh0pZvMVWV8JCa7oAcmf2pA1cAMt1DL5AU0uK0W
7RqGYqO4OMoU2uZHqkibP5Hh/+LCC7NUJ0/LczM7nqm/6mylH7akudGrLlfH
zYMts+0RLM77Tq+NVXcmXW1L0NC7M5ZhSd/M0qp4RoDrmbpbdXPTtFvrX2uX
6vzRQ176xLq0Urcb15rikfp1K6/8JaVRX1j6/UzdrszWsu87W8DRhw/+eMlV
51bmD9f720ydrXVp03u7tejfqrLR2eOnvPKH0j6YxiFgVLVQP+vG6fW2ANa/
+ZfCFt16ZrJuVudJUlZNoVu8Tt548+PJ4cHBt/7j29evX/mPb16/3vcfv93/
+rD/eLD1rTXGfLN/eCBvIkR0szQIup1V29ZHX33FgUeeO6ORM0j/1QLeg5h0
8dlXmGB28Hr2anq4j1+rtsh3ZDKBop2zd+/eqds2m6kwcgJfaNqZos9H6mfb
mNw4py5MZrtCHacp/eUhTO1eHJ/sKaylrlcbZ8mFzvXGNGr3+v0ve+q2Nqld
4OvWVqVTCwT9ebWe3ujW9DNfw9xVqcn7jQ5I6ETMcXTzvorIQUGe86xciOmr
kgOkrPJqudkB3IUHtCfJdDpVeu7aRqdtkvz++z95Y3/+TChjS+OUVkDWVZWp
+UatV0AGfFNXLXDUQsD4ygFe6SFW1U31ccNgp8uy6srUKNs6kwPuMOUDfEbP
c8OilmatrnOTLQ0jmkyiILcOSD9L7lYmTuRTQZp3GYsX0Jwn60Wgl6xTyAdd
kOjBZl4h4FtpXTHUiTLL6dXp8U/qpqpaFn2ZV3Og80Zl1rG4AwWH0jiCbp39
ihyiWkg61wD4Z8RSVW0a2fyZ2L+wWZYjRbygfNJUWZfyrvmf319AcKxduM9h
gyhyeINc2tg5WQ1rUk5BdNLHO1uY6W1eta3J1Ak0LYHp76u6puy1e3d78n5P
FVXG43//vY+pz59nyWg/yYm3fEKW7C3ohiaknSxp4l0SY0c2dWevz3lJaXSD
F5BBkTnZFdRfkbzVNbnLbNsBg3543XyExzmyC1yEZg+xCX4ASVJo+oPRKT1f
abiHowXZZ4cr0MtDf8S0FnhKf7kOKvC7wRdJakIPWq7AXr14oS4qxI0EFdnm
CrD4YM06Sc5aSt1qbgC+RqU51JTJSriSwTDRmTagMAWSQ9irwiDhV91y1W7L
FmJFvezlf8mR0BB7wP/qQTdIcYzKeUVAA7RwAVXCprwBvFwfX8Kr2ea7b85v
sP2WViThgNu8tA8PFmq4olpAINKYl96EwMOC60EczzWcDUrW1do0E1AaSJJt
1ArLKJiksOyLPpwxuszWNmtXEzZjjqeEBY0hexRVIzFzafD2HB9OdAqh3iE4
QJguT97tKQfnRvjsHpcKfyO66BH2vDQmwzoQvmoyKAu9kJ7KFv+zGF3pgVet
bbtiXWW3Z3vJwLIVHjQKCa/zKL3mRzRcoreK+xdUWlddTprcG1oUm2dSglhg
hynZQngloAi9N4ZKTiCWEM/59KBOjYO7iLBX2OaSDHiKBJHSh+N0k+YY9VOj
65XaZdzamyVnpaqRqWza5Zq2wT2/1kOVP8DJoQ5tDjlmVyIQmk1N8yMhLEgK
2E7CDWEIR15gX1pegvSP+DyBv3oLzGko+QKZAYztWW2rxYLMWsIJI244tr75
WLOSs2QLwQeAwN5MQsNJwZORdkMivSYPZLc6r5zbxOSpdgHweyOzDnPk1fxX
LApLnl2BiNf8HQcwocDcCJrwzraUQGwJmlOM9RK4l1wVBsQkAKUaqO3BejfX
6T1MsAc/5KKnJJMArOhhn4hi/iFoAMuoWzYVlTvwfmBOgRICfg5HQ/RUhSpQ
FtgaLgYgpKQOKWCjBZJ71bgJ2wivtoSXE17L2d9i2uA15esqTbsaozbhWYxY
pdt+MGfKiccxjttU1zolff0wGUDZEc6dkVVILIoMyA26yrjyDvE9oBQj9MEu
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
exQDp1RF3IF/Avrl1v8cW58kyf8Ci/gtlgQ3AAA=

-->

</rfc>
