<?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.0.40 -->

<!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.richardson-6tisch-join-enhanced-beacon SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.richardson-6tisch-join-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 I-D.ietf-anima-voucher SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-anima-voucher.xml">
]>

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

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

  <front>
    <title abbrev="J-Pref DIO">Enabling secure network join 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="2017" month="July" day="18"/>

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

    <abstract>


<t><xref target="I-D.richardson-6tisch-join-enhanced-beacon"/> defines a method by which a
potential <xref target="I-D.ietf-6tisch-minimal-security"/> 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.richardson-6tisch-join-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.</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="I-D.ietf-anima-voucher"/> 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>none so far.</t>

</section>


  </middle>

  <back>

    <references title='Normative References'>

&RFC2119;
&RFC7554;
&RFC6550;
&I-D.richardson-6tisch-join-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;
&I-D.ietf-anima-voucher;


    </references>


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

<t>version 00.</t>

</section>


  </back>

<!-- ##markdown-source:
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

-->

</rfc>

