<?xml version="1.0" encoding="us-ascii"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.2.12 -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY RFC2119 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC7554 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7554.xml">
<!ENTITY RFC6550 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.6550.xml">
<!ENTITY I-D.ietf-6tisch-enrollment-enhanced-beacon SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-6tisch-enrollment-enhanced-beacon.xml">
<!ENTITY I-D.ietf-6tisch-minimal-security SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-6tisch-minimal-security.xml">
<!ENTITY RFC7416 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7416.xml">
<!ENTITY RFC8137 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8137.xml">
<!ENTITY I-D.ietf-6tisch-architecture SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-6tisch-architecture.xml">
<!ENTITY I-D.ietf-6tisch-dtsecurity-secure-join SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-6tisch-dtsecurity-secure-join.xml">
<!ENTITY I-D.ietf-6tisch-terminology SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-6tisch-terminology.xml">
<!ENTITY RFC8366 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8366.xml">
]>

<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>

<rfc ipr="trust200902" docName="draft-richardson-6tisch-roll-enrollment-priority-03" category="info">

  <front>
    <title abbrev="J-Pref DIO">Enabling secure network enrollment in RPL networks</title>

    <author initials="M." surname="Richardson" fullname="Michael Richardson">
      <organization>Sandelman Software Works</organization>
      <address>
        <email>mcr+ietf@sandelman.ca</email>
      </address>
    </author>

    <date year="2019" month="August" day="08"/>

    <area>Internet</area>
    <workgroup>6lo Working Group</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<t><xref target="I-D.ietf-6tisch-enrollment-enhanced-beacon"/> defines a method by which a
potential <xref target="I-D.ietf-6tisch-minimal-security"/> join proxy can announce itself as a
available for new Pledges to Join a network.  The announcement includes a
priority for join.   This document provides a mechanism by which a RPL DODAG
root can disable join announcements, or adjust the base priority for join
operation.</t>



    </abstract>


  </front>

  <middle>


<section anchor="problems" title="Introduction">

<t><xref target="RFC7554"/> describes the use of the time-slotted channel
hopping (TSCH) mode of <xref target="ieee802154"/>.
<xref target="I-D.ietf-6tisch-minimal-security"/> and <xref target="I-D.ietf-6tisch-dtsecurity-secure-join"/> describe mechanisms by which a new node (the "pledge)" can use a
friendly router as a Join Proxy.
<xref target="I-D.ietf-6tisch-enrollment-enhanced-beacon"/> 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>

<t>It has become clear that not every routing member of the mesh ought to
announce itself as a Join Proxy.  There are a variety of local reasons by
which a 6LR might not want to provide the Join Proxy function.  They include
available battery power,  already committed network bandwidth, and also
total available memory available for Join proxy neighbor cache slots.</t>

<t>There are other situations where the operator of the network would like
to selective enable or disable the join process in a particular DODAG.</t>

<t>As the join process involves permitting unencrypted traffic into the best
effort part of a (TSCH) network,  it would be better to have the join process
off when no new nodes are expected.</t>

<t>A network operator might also be able to recognize when certain parts of
the network are overloaded and can not accomodate additional join traffic,
and it would like to adjust the join priority among all nodes in the subtree
of a congested link.</t>

<t>This document describes an RPL DIO option that can be used to announce a
minimum join priority.  Each potential Join Proxy would this value as a base
on which to add (decreasing likely hood of attracting traffic) values
relating to local conditions.</t>

<t>A network operator can set this value to the maximum value allowed,
effectively disable all new join traffic.</t>

<section anchor="Terminology" title="Terminology">

<t>In this document, the key words "MUST", "MUST NOT", "REQUIRED",
"SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
and "OPTIONAL" are to be interpreted as described in BCP 14, RFC 2119
<xref target="RFC2119"/> and indicate requirement levels for compliant STuPiD
implementations.</t>

<t>In addition, the terminology of <xref target="I-D.ietf-6tisch-terminology"/> and
from <xref target="RFC8366"/> are used.</t>

</section>
</section>
<section anchor="protocol-definition" title="Protocol Definition">

<t>The following option is defined to transmission in the DIO issued by
the DODAG root.  It may also be added by a router on part of the sub-tree
as a result of some (out of scope for this document) management function.</t>

<t>6LRs that see this DIO Option SHOULD increment the minimum priority
if they observe congestion on the channel used for join traffic.
(TODO: how much? Do we need to standardize this?)</t>

<t>A 6LR which would otherwise be willing to act as a Join Proxy, will
examine the minimum priority field, and to that number, add any additional
local consideration (such as upstream congestion).
The resulting priority, if less than 0x7f should enable the Join Proxy function.</t>

<figure><artwork><![CDATA[
    0                   1                   2
    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |   Type = TBD01|Opt Length = 1|R| min. priority  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork></figure>

<t><list style="hanging">
  <t hangText='min.priority'>
  a 7 bit field which provides a base value for the Enhanced Beacon Join priority.  A value of 0x7f (127) disables the Join Proxy function entirely.</t>
  <t hangText='R'>
  a reserved bit that SHOULD be set to 0 by senders, and MUST be ignored by receivers.  The reserved bit SHOULD be copied to options created.</t>
</list></t>

</section>
<section anchor="security-considerations" title="Security Considerations">

<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.  This option can be placed into
either a "clear" (layer-2 secured) DIO, or a layer-3 Secure DIO.  As such
this option will have both integrity and confidentiality mechanisms applied
to it.</t>

<t>A malicious node (that was part of the RPL control plane) could see these
options and could, based upon the observed minimal join priority signal a
confederate that it was a good time to send malicious join traffic.</t>

<t>A malicious node (that was part of the RPL control plane) could also send
DIOs with a different minimal join priority which would cause downstream
mesh routers to change their Join Proxy behaviour.  Lower minimal priorities
would cause downstream nodes to accept more pledges than the network was
expecting, and higher minimal priorities cause the join process to stall.</t>

<t>The use of layer-2 or layer-3 security for RPL control messages prevents
the above two attacks.</t>

</section>
<section anchor="privacy-considerations" title="Privacy Considerations">

<t>There are no new privacy issues caused by this extension.</t>

</section>
<section anchor="iana-considerations" title="IANA Considerations">

<t>Allocate a new number TBD01 from Registry RPL Control Message Options.
This entry should be called Minimum Join Priority.</t>

</section>
<section anchor="acknowledgements" title="Acknowledgements">

<t>This has been reviewed by Pascal Thubert and Thomas Wattenye.</t>

</section>


  </middle>

  <back>

    <references title='Normative References'>

&RFC2119;
&RFC7554;
&RFC6550;
&I-D.ietf-6tisch-enrollment-enhanced-beacon;
&I-D.ietf-6tisch-minimal-security;
<reference anchor="ieee802154" target="http://standards.ieee.org/findstds/standard/802.15.4-2015.html">
  <front>
    <title>802.15.4-2015 - IEEE Standard for Low-Rate Wireless Personal Area Networks (WPANs)</title>
    <author initials="." surname="IEEE Standard">
      <organization></organization>
    </author>
    <date year="2015"/>
  </front>
</reference>
&RFC7416;


    </references>

    <references title='Informative References'>

&RFC8137;
&I-D.ietf-6tisch-architecture;
&I-D.ietf-6tisch-dtsecurity-secure-join;
&I-D.ietf-6tisch-terminology;
&RFC8366;


    </references>


<section anchor="change-history" title="Change history">

<t>version 00.</t>

</section>


  </back>

<!-- ##markdown-source:
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
vHBm29lM/Bcbo5y6DBkAAA==

-->

</rfc>

