One document matched: draft-thubert-6lowpan-backbone-router-03.xml
<?xml version="1.0" encoding="-ASCII"?>
<!-- This template is for creating an Internet Draft using xml2rfc,
which is available here: http://xml.resource.org. -->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC2460 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2460.xml">
<!ENTITY RFC3775 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3775.xml">
<!ENTITY RFC3963 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3963.xml">
<!ENTITY RFC3971 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3971.xml">
<!ENTITY RFC3972 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3972.xml">
<!ENTITY RFC4291 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4291.xml">
<!ENTITY RFC4389 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4389.xml">
<!ENTITY RFC4429 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4429.xml">
<!ENTITY RFC4443 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4443.xml">
<!ENTITY RFC4861 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4861.xml">
<!ENTITY RFC4862 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4862.xml">
<!ENTITY RFC4919 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4919.xml">
<!ENTITY RFC4944 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4944.xml">
<!ENTITY RFC6550 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6550.xml">
<!ENTITY RFC6282 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6282.xml">
<!ENTITY RFC6775 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6775.xml">
<!ENTITY I-D.van-beijnum-multi-mtu SYSTEM "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.van-beijnum-multi-mtu.xml">
]>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<rfc category="std" ipr="trust200902" docName="draft-thubert-6lowpan-backbone-router-03">
<?rfc toc="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc sortrefs="yes"?>
<?rfc iprnotified="no" ?>
<?rfc strict="yes" ?>
<front>
<title>6LoWPAN Backbone Router</title>
<author initials="P" surname="Thubert" fullname="Pascal Thubert">
<organization abbrev="Cisco">
Cisco Systems
</organization>
<address>
<postal>
<street>Village d'Entreprises Green Side</street>
<street>400, Avenue de Roumanille</street>
<street>Batiment T3</street>
<city>Biot - Sophia Antipolis</city>
<code>06410</code>
<country>FRANCE</country>
</postal>
<phone>+33 4 97 23 26 34</phone>
<email>pthubert@cisco.com</email>
</address>
</author>
<date/>
<area>Internet</area>
<workgroup>6LoWPAN</workgroup>
<abstract>
<t>
Some LLN subnets are expected to scale up to the thousands of nodes and hundreds of routers.
This paper proposes an IPv6 version of the Backbone Router concept that enables such a degree of scalability
using a high speed network as a backbone to the subnet.
</t>
</abstract>
</front>
<middle>
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<section anchor='introduction' title="Introduction">
<t>
In order to meet industrial requirements for non-critical monitoring, alerting,
supervisory control, open loop control and some closed loop control
applications, both <xref target="ISA100.11a"/> and wireless <xref target="HART"/> standards
leverage advanced technology at every layer, including the Time Synchronized Channel Hopping (TSCH)
Medium Access Control (MAC) operation that enables deterministic behaviours for time-sensitive flows.
Additionally, <xref target="ISA100.11a"/> endorsed the
6LoWPAN Header Compression <xref target="RFC6282"/> format for the
network header, making it possible to utilize IPv6 based protocols such
as BACnet IP, Profibus IP and Modbus TCP without significant changes
to those protocols.
</t>
<t>
<xref target="ISA100.11a"/> has introduced the concept of a Backbone Router
that would interconnect small LLNs over a high speed Backbone network and scale
a single ISA100.11a network up to the thousands of nodes. In that model
the LLNs and the backbone form a single subnet in which nodes can move freely
without the
need of renumbering, and the Backbone Router is a special kind of Border Router
designed to manage the interaction between the LLNs and the backbone at layer 3.
<!--How to implement the Backbone Router
will not be part of the initial release of the ISA100.11a standard.-->
Similar scalability requirements exist in the metering and monitoring industries.
In a network that large, it is impossible for a node to register to all Border Routers
as suggested for smaller topologies in <xref target="RFC6775">
Neighbor Discovery Optimization for Low-power and Lossy Networks</xref>.
</t>
<t>
This paper specifies IP layer functionalities that are required to implement
the concept of a Backbone Router with IPv6, in particular the application of the
<xref target="RFC4291">"IP Version 6 Addressing Architecture"</xref>,
<xref target="RFC4861">" the Neighbor Discovery Protocol"</xref> and
<xref target="RFC4862">"IPv6 Stateless Address Autoconfiguration"</xref>.
</t><t>
The use of EUI-64 based link local addresses,
<xref target="RFC4389"> Neighbor Discovery Proxying </xref>,
<xref target="RFC6775"> Neighbor Discovery Optimization
for Low-power and Lossy Networks</xref>,
<xref target="RFC6550">the IPv6 Routing Protocol for Low
power and Lossy Networks</xref> , the mixed mode of
<xref target="I-D.chakrabarti-nordmark-6man-efficient-nd">
Efficiency aware IPv6 Neighbor Discovery Optimizations</xref> and
<xref target="RFC4429"> Optimistic Duplicate Address Detection </xref> are
discussed. Also, the concept of Backbone Link is introduced to implement
the backbone network that was envisioned by ISA100.11a.
</t>
<t>This operation of the Backbone Router requires that some protocol operates
over the LLNs from which node registrations can be obtained, and that can disseminate the location
of the backbone Router over the LLN. Further expectations will be detailed.</t>
<t>
The way the PAN IDs and 16-bit short addresses are allocated and distributed
in the case of an 802.15.4 network is not covered by this specification.
Similarly, the aspects of joining and securing the network are out of scope.
The way the nodes in the LLN learn about their Backbone Router depends on the protocol
used in the LLN. In the case of RPL, a Border Router is the root of the DODAG
that it serves and represents all nodes attached to that DODAG.
</t>
<!--t>
ISA100.11a is a Working Group at the ISA 100 standard committee that covers
Wireless Systems for Industrial Automation and Process Control. The ISA100.11a has designed a
scalable, industrial grade wireless network and application layer suite of
protocols for low power devices such as sensors and actuators, with
a response time on the order of 100ms.
</t-->
</section>
<section title="Terminology">
<t>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 <xref target="RFC2119"/>.</t>
<t>Readers are expected to be familiar with all the terms and concepts
that are discussed in <xref target="RFC4861">"Neighbor Discovery for
IP version 6"</xref>, <xref target="RFC4862">"IPv6 Stateless Address
Autoconfiguration"</xref>, <xref target="RFC4919">"IPv6 over Low-Power
Wireless Personal Area Networks (6LoWPANs): Overview, Assumptions,
Problem Statement, and Goals"</xref>,
<xref target="RFC6775">Neighbor Discovery Optimization
for Low-power and Lossy Networks</xref> and <xref target="RFC4944">
"Transmission of IPv6 Packets over IEEE 802.15.4 Networks"</xref>.
</t>
<t>Readers would benefit from reading <xref target="RFC3775">
"Mobility Support in IPv6" </xref>, <xref target="RFC4389">
"Neighbor Discovery Proxies (ND Proxy)" </xref> and
<xref target="RFC4429">"Optimistic Duplicate Address Detection"
</xref> prior to this specification for a clear
understanding of the art in ND-proxying and binding.</t>
<t>Additionally, this document uses terminology from <xref
target="I-D.ietf-roll-terminology"></xref>, and introduces the following
terminology:
<list hangIndent="6" style="hanging">
<!--t hangText="LLN"></t>
<t>
Low-power wireless Personal Area Network. See <xref target="RFC4919"/>.
The same concept applies for small Wireless Sensor Networks.
</t-->
<t hangText="Backbone">
This is an IPv6 Backbone link that interconnects 2 or more Backbone Routers.
It is expected to be deployed as a high speed backbone in order to
federate a potentially large set of LLNS. Also referred to as a
LLN backbone or Backbone network.
</t>
<t hangText="Backbone Router">
An IPv6 router that federates the LLN using a Backbone link as a backbone.
A BBR acts as a 6LoWPAN Border Routers (6LBR) and an Energy Aware Default Router (NEAR).
</t>
<t hangText="Extended LLN">
This is the aggregation of multiple LLNs as defined in
<xref target="RFC4919"/> interconnected
by a Backbone Link via Backbone Routers and forming a single IPv6 link.
</t>
<t hangText="Energy-Constrained Node">
An IPv6 node that operates ND registration in order to save energy. This can be a
LLN node, or an Efficiency-Aware Host(EAH) on the backbone.
</t>
<t hangText="Binding">
The association of the Energy-Constrained Node IPv6 address and Interface ID
with associated proxying states including the remaining lifetime
of that association.
</t>
<t hangText="Registration">
The process during which a Energy-Constrained Node injects its address in a protocol
through which the Border Router can learn the address and proxy ND for it.
</t>
<t hangText="Primary BBR"></t>
<t>
The BBR that will defend a registered address for the purpose of DAD over the backbone
</t>
<t hangText="Secondary BBR"></t>
<t>
A BBR to which the address is registered. A Secondary Router MAY advertise the address
over the backbone and proxy for it.
</t>
</list>
</t>
</section>
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<section anchor='overview' title="Overview">
<t>
The scope of this draft is a Backbone Link that federates multiple LLNs as a single IPv6 subnet.
Each LLN in the subnet is anchored at a Backbone Router (BBR). The Backbone Routers interconnect
the LLNs over the Backbone Link and emulate that the LLN nodes are present on the Backbone
by proxy-ND operations. An LLN node can move freely from an LLN anchored at a Backbone Router
to an LLN anchored at another Backbone Router on the same backbone and conserve any of the IPv6
addresses that it has formed. In a same fashion, an Efficiency-Aware Host (EAH) residing on the
Backbone may change its BBR - acting as IPv6 ND-efficiency-aware Router (NEAR) - and conserve its addresses
with no disruption.
</t>
<t>
Energy-Constrained Nodes are often associated with radios and therefore may change their point of attachment in the network.
Virtual devices - typically virtual machines in a datacenter - also move though in a different fashion, from a physical device to the next.
In the case if a movement, it might be difficult for Stateful devices in the network such as the NEAR and SAVI switches to differentiate a duplication from a movement.
And if indeed it is a movement, then it might be difficult to select to freshest information to know where the device actually is.
</t>
<figure anchor='figBackbone'
title="Backbone Link and Backbone Routers">
<artwork><![CDATA[
---+------------------------
| Plant Network
|
+-----+
| | Gateway
| |
+-----+
|
| Backbone Link
+--------------------+------------------+
| | |
+-----+ +-----+ +-----+
| | Backbone | | Backbone | | Backbone
| | router | | router | | router
+-----+ +-----+ +-----+
o o o o o o
o o o o o o o o o o o o o o
o o o o o o o o o o o o o o o
o o o o o o o o o o
o o o o o o o
LLN LLN LLN
]]></artwork>
</figure>
<t>
The Backbone Link is used as reference for
Neighbor Discovery operations, by extending the concept of a Home Link
as defined in <xref target="RFC3775"/> for Mobile IPv6.
In particular, Backbone Routers perform ND proxying for the Energy-Constrained Nodes
in the LLNs they own through a node registration.
</t>
<t>
The Backbone Router operation is compatible with that of a Home Agent.
This enables mobility support for LLN devices that would move
outside of the network delimited by the Backbone link. This also enables
collocation of Home Agent functionality within Backbone Router
functionality on the same interface of a router.
</t>
<t>
A Energy-Constrained Node registers and claims ownership of its addresse(s) using
proactive acknowledged registration exchanges with a neighboring router.
In case of a complex LLN topology, the router might be an intermediate LLN
Router that relays the registration to the BBR (acting as LBR) as described in
<xref target="RFC6775"/>.
In turn, the Backbone Routers operate as a distributed database of all the Energy-Constrained Nodes
whether theyreside on the LLNs or the backbone, and use the Neighbor Discovery
Protocol to share that information across the Backbone in the classical ND reactive fashion.
</t>
<t>
For the purpose of Neighbor Discovery proxying, this specification documents
the LLN Master Neighbor Registry, a conceptual data structure that is similar to the
MIP6 binding cache. The Master Neighbor Registry is fed by redistributing addresses learnt
from the registration protocol used over the LLN.
</t>
<t>
Another function of the Backbone Router is to perform 6LoWPAN compression and
expansion between the LLN and the Backbone Link and ensure MTU compatibility.
Packets flow uncompressed over the Backbone Link and are routed normally towards
a Gateway or an Application sitting on the Backbone link or on a different
link that is reachable over the IP network.
</t>
</section>
<section anchor='mess' title="New types and formats">
<t>The specification expects that the protocol running on the LLN can provide
a sequence number called Transaction ID (TID) that is associated to the registration.
When a node registers to multiple BBRs, it is expected that the same TID is used,
to enable the BBR to correlate the registrations as being a single one, and
differentiate that situation from a movement. Otherwise, the resolution makes
it so that only the most recent registration was perceived from the highest TID
is kept.</t>
<t>The specification expects that the protocol running on the LLN can provide
a unique ID for the owner of the address that is being registered.
The Owner Unique ID enables to differentiate
a duplicate registration from a double registration. In case of a duplicate, the last
registration looses. The Owner Unique ID can be as simple as a EUI-64 burnin address, if
the device manufacturor is convinced that there can not be a manuf error that would
cause duplicate EUI64 addresses. Alternatively, the unique ID can be a hash of supposedly
unique information from multiple orthogonal sources, for instance:
<list style="symbols">
<t> Burn in address.
</t>
<t> configured address, id, security keys...
</t>
<t> (pseudo) Random number, radio link metrics ...
</t>
</list>
In any fashion, it is recommended that the device stores the unique Id in persistent memory.
Otherwise, it will be prevented to reregister after a reboot that would cause a loss of memory
until the Backbone Router times out the registration.
</t>
<t>The unique ID and the sequence number are placed in a new ND option that is used by the
Backbone Routers over the Backbone link to detect duplicates and movements. The option format
is as follows:
</t>
<section anchor='trackingmess' title="The Enhanced Address Registration Option (EARO)">
<t> This option is designed to be used with standard NS and NA messages between backbone Routers
over a backbone link and may be used between LRs and LBRs over the LLN.
By using this option, the binding in question can be uniquely identified and matched with
the Master Neighbor Registry entries of each Backbone Router.</t>
<figure anchor='EARO' title="EARO">
<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 | Length = 2 | Status | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|T|N| Reserved | TID | Registration Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ OUI ( EUI-64 or equivalent ) +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
</figure>
<!--
TID: 1-byte integer; a transaction id that is maintained by the device
and incremented with each transaction.
it is recommended that the device maintains the TID in a persistent storage.
T flag: Set if the next octet is a TID.
N flag: Set if the device moved. If not set, the router will refrain from sending NA(O) after DAD in mixed mode.
The TID is really a sequence counter, and it is managed as described in section 7.2. Sequence Counter Operation of [RFC 6550]
-->
<t> Option Fields
<list style='hanging'>
<t hangText="Type:">
</t>
<t hangText="Length:">2
</t>
<t hangText="T:">One bit flag. Set if the next octet is a used as a TID.
</t>
<t hangText="N:">One bit flag. et if the device moved. If not set, the router will refrain from sending gratuitous NA(O)
over the backbone, for instance after the DAD operation upon entry creation.
</t>
<t hangText="Reserved:">This field is unused. It MUST be initialized to zero by
the sender and MUST be ignored by the receiver.
</t>
<t hangText="TID:">1-byte integer; a transaction id that is maintained by the device
and incremented with each transaction.
it is recommended that the device maintains the TID in a persistent storage.
</t>
<t hangText="Owner Unique Identifier:">A globally unique identifier for the
host's interface associated with the binding for the NS/NA message
in question. This can be the EUI-64 derived IID of an interface, which can be hashed
with other supposedly unique information from multiple orthogonal sources.
</t>
</list>
</t>
</section>
</section>
<section anchor='opers' title="Backbone Router Operations">
<section anchor='concepts' title="Backbone Link and Router">
<t>The Backbone Router is a specific kind of Border Router that performs
proxy Neighbor Discovery on its backbone interface on behalf of the nodes that
it has discovered on its Low Power Lossy Network interfaces. On the LLN side,
the Backbone Router acquires its states about the nodes by terminating protocols
such as <xref target="RFC6550">RPL</xref> or <xref target="RFC6775">
6LoWPAN ND</xref> as a LLN Border Router. It is expected that the backbone
is the medium used to connect the subnet to the rest of the infrastructure, and
that all the LBRs are connected to that backbone and support the Backbone Router
feature as specified in this document.
</t>
<t>The backbone is expected to be a high speed, reliable Backbone link, with affordable multicast capabilities,
such as an Ethernet Network or a fully meshed NBMA network with multicast emulation, which allows a full support
of classical ND as specified in <xref target="RFC4861"/> and subsequent RFCs. In other words, the
backbone is not a LLN. Still, some restrictions of the attached LLNs will apply to the backbone. In
particular, it is expected that the MTU is set to the same value on the backbone and all attached
LLNs.
</t>
</section>
<section anchor='proxy' title="ND Proxy Operations">
<t>This specification enables a Backbone Router to proxy Neighbor Discovery
operations over the backbone on behalf
of the nodes that are registered to it, allowing any device on the backbone
to reach a Energy-Constrained Node as if it was on-link. </t>
<t>In the context of this specification, proxy ND means:
<list style="symbols">
<t> defending a registered address over the backbone using NA messages with the
Override bit set</t>
<t> advertising a registered address over the backbone using NA messages,
asynchronously or as a response to a Neighbor Solicitation messages.</t>
<t> Looking up a destination over the backbone in order to deliver packets
arriving from the LLN using Neighbor Sollicitation messages.</t>
<t>Forwarding packets from the LLN over the backkbone, and hte other way around.</t>
<t>Eventually triggering a look up for a destination over the LLN that would not be
registered at a given point of time, or as a verification of a registration.</t>
</list>
</t>
<t>
The draft introduces the concept of primary and secondary BBRs. The concept is
defined with the granularity of an address, that is a given
BBR can be primary for a given address and secondary or another one,
regardess on whether the addresses belong to the same node or not.
The primary Backbone Router is in charge of protecting the address for DAD over the
Backbone. Any of the Primary and Secondary BBR may claim the address over the
backbone, since they are all capable to route from the backbone to the LLN device.</t>
<t>When the protocol used to register the nodes over the LLN is
<xref target="RFC6550">RPL</xref>,
it is expected that one BBR acts as virtual root coordinating LLN
BBRs (with the same DODAGID) over the non-LLN backbone.
In that case, the virtual root may act as primary BBR for
all addresses that it cares to support, whereas the physical
roots to which the node is attached are secondary BBRs.
It is also possible in a given deployment that
the DODAGs are not coordinated. In that case,
there is no virtual root and no secondary BBR; the DODAG
root is primary all the nodes registered to it over the backbone.</t>
<t>When the protocol used to register the nodes over the LLN is
<xref target="RFC6775"> 6LoWPAN ND</xref>,
the Backbone Routers act as a distributed DAD table, using
classical ND over the backbone to detect duplication. This specification
requires that:
<list style="numbers">
<t>Registrations for all addresses that can be required to reach the device over the backbone,
including registrations for IPv6 addresses based on burn-in EUI64 addresses
are passed to the DAD table. </t>
<t> Nodes include the EARO in their NS used for registering those addresses
and the LRs propagate that option to the LBRs.
</t>
</list>
</t>
<t>
A false positive duplicate detection may arise over the backbone,
for instance if the node registers to more than one LBR,
or if the node has moved. Both situations are handled gracefully
unbeknownst to the node. In the former case,
one LBR becomes primary to defend the address over the
backbone while the others become secondary and may
still forward packets back and forth. In the latter case the LBR that receives
the newest registration wins and becomes primary.</t>
<!-- t>A Backbone Router advertises itself using a new option in the ND Router Advertisement
Message. A new anycast address 6LoWPAN_BBR is also introduced for the purpose of reaching the nearest
Backbone Router in the absence of any information. This enables to reduce the use of multicast
RAs for the router discovery operation. The routing to the nearest router that owns that anycast
address is out of scope for this specifiation.
</t -->
<!-- t> Another anycast address 6LoWPAN-NODE is introduced
to enable any Energy-Constrained Node to receive a response to its registration whether it completes
successfully or not.
</t -->
</section>
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<section anchor='broperation' title="Claiming and Defending Addresses">
<t>Upon a new or an updated registration, the BBR performs a DAD operation.
If either a TID or a OUI is available, the BBR places them in a
EARO in all its ND messages over the backbone.
If content is not available for a given field, it is set to 0.</t>
<t> If a primary already exists over the backbone, it will answer
the DAD with an RA.
<list style="symbols">
<t>If a RA is received with the O bit set, the primary rejects
the DAD and the DAD fails. the BBR needs to inform the LLN protocol
that the address is a duplicate.</t>
<t>If a RA is received with the O bit reset, the primary accepts
the BBR as secondary and DAD succeeds. The BBR may install or maintain
its proxy states for that address. This router MAY advertise the address
using a NA. during a registration flow, it MAY set the O bit.</t>
<t>If no RA is received, this router assumes the role of primary
and DAD succeeds. The BBR may install or maintain its proxy states
for that address. This router advertises the address using a NA
with the O bit reset.
</t>
</list>
</t>
<t>When the BBR installs or maintains its proxy states for an address,
it sends an NA with a SLLA option for that address. The Primary
BR MAY set the O bit if it wished to attract the traffic for that
address.
</t>
</section>
<section anchor='broperationconflict' title="Conflict Resolution">
<t>A conflict arise when multiple BBRs get a registration from a same address.
This situation might arise when a node moves from a BBR to another,
when a node registers to multiple BBRs, or in the RPL case when the
BRs belong to a single coordinated DODAG.</t>
<t> The primary looks up the EARO in ND messages
with a SLLA option.
<list style="symbols">
<t>If there is no option, normal ND operation takes place and
the primary defends the address with a NA with the O bit set,
adding the EARO with its own information.
</t>
<t>If there is a EARO and the OUIs are different,
then the conflict apparently happens between different nodes, and the
the primary defends the address with a NA with the O bit set,
adding the EARO with its own information.
If the TID in the EARO is in the
straight part of the lollipop, it is possible that the request
comes from the same node that has rebooted and formed a new OUI
The primary BBR may assess its registered entry prior to answering.
</t>
<t>If there is a EARO and the OUIs are the same:
<list style="symbols">
<t> If the TID in the ND message is newer than the most recent one known by the
primary router, this is interpreted as a node moving. The primary cleans up
its states and stops defending the address.
</t>
<t> If the TID in the ND message is the same as the most recent one known by the
primary router, this is interpreted as a double registration. In case of a DAD,
the promary responds with a NA with the O bit reset, to confirm its position
as primary, including the EARO.
</t>
<t> If the TID in the ND message is older than the most recent one known by the
primary router, this is interpreted as a stale information. The primary defends
the address with a NA with the O bit set, adding the EARO
with its own information.
</t>
<t> If the TIDs are very different (more than 16 apart, discounting the straight part of
the lollipop), it is impossible to resolve for sure. The primary BBR should assess its
registered entry prior to answering.
</t>
</list>
</t>
</list>
</t>
</section>
<section anchor='broperationasses' title="Assessing an entry">
<t>In a number of cases, it might happen that the information at the primary BBR is stale
and obsolete. In particular, a node with no permanent storage might reboot and form a different OUI,
in which case the information at the BBR is inaccurate and should be removed. In another case,
the BBR and the node have been out of reach for too long and the TID that the BBR maintains is so far out
that it is impossible to compare it with that stored at the BBR.</t>
<t>In such situation, the primary Backbone Router has the possibility to assess the registration.
this is performed by the protocol in use to register the node over the LLN.
</t>
<t>When the protocol used to register the nodes over the LLN is
<xref target="RFC6550">RPL</xref>, the BBR sends a targetted DIS to
the registered address over the registered path. A DAO back indicates that the
current registration is still valid and provides the adequate data to resolve the
conflict.</t>
<t>When the protocol used to register the nodes over the LLN is
<xref target="RFC6775"> 6LoWPAN ND</xref>.
</t>
</section>
</section>
<section title="Security Considerations">
<t>
This specification expects that the link layer is sufficiently protected, either
by means of physical or IP security for the Backbone Link or MAC sublayer cryptography.
In particular, it is expected that the LLN MAC provides secure unicast
to/from the Backbone Router and secure BBRoadcast from the Backbone Router in a way that prevents
tempering with or replaying the RA messages.
</t>
<t>
The use of EUI-64 for forming the Interface ID in the link local address prevents the usage
of Secure ND (<xref target="RFC3971"/> and <xref target="RFC3972"/>) and address privacy
techniques. Considering the envisioned deployments and the MAC layer security applied,
this is not considered an issue at this time.
</t>
</section>
<section title="IANA Considerations">
<t>A new type is requested for an ND option.</t>
</section>
<section title="Acknowledgments">
<t>TBD</t>
</section>
</middle>
<back>
<references title='Normative References'>
&RFC2119;
&RFC2460;
&RFC3775;
&RFC4291;
&RFC4429;
&RFC4443;
&RFC4861;
&RFC4862;
&RFC4944;
&RFC6282;
&RFC6550;
&RFC6775;
</references>
<references title='Informative References'>
&RFC3963;
&RFC3971;
&RFC3972;
&RFC4389;
&RFC4919;
<?rfc include='reference.I-D.van-beijnum-multi-mtu.xml'?>
<?rfc include='reference.I-D.ietf-roll-terminology.xml'?>
<?rfc include='reference.I-D.chakrabarti-nordmark-6man-efficient-nd.xml'?>
</references>
<references title="External Informative References">
<reference anchor="HART">
<front>
<title>Highway Addressable Remote Transducer, a group of
specifications for industrial process and control devices
administered by the HART Foundation</title>
<author>
<organization>www.hartcomm.org</organization>
</author>
<date></date>
</front>
</reference>
<reference anchor="ISA100.11a"
target="http://www.isa.org/Community/SP100WirelessSystemsforAutomation">
<front>
<title>ISA100, Wireless Systems for Automation</title>
<author>
<organization>ISA</organization>
</author>
<date day="05" month="May" year="2008" />
</front>
</reference>
</references>
</back>
</rfc>
| PAFTECH AB 2003-2026 | 2026-04-22 03:21:47 |