<?xml version="1.0" encoding="ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY RFC2119 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.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 RFC4903 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.4903.xml">
<!ENTITY RFC4944 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.4944.xml">
<!ENTITY RFC5415 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.5415.xml">
<!ENTITY RFC6059 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.6059.xml">
<!ENTITY RFC6550 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.6550.xml">
<!ENTITY RFC6275 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.6275.xml">
<!ENTITY RFC6775 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.6775.xml">
<!ENTITY RFC6830 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.6830.xml">
<!ENTITY RFC7048 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.7048.xml">
<!ENTITY RFC7102 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.7102.xml">
<!ENTITY RFC7428 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.7428.xml">
<!ENTITY RFC7559 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.7559.xml">
<!ENTITY RFC7772 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.7772.xml">
<!ENTITY RFC8200 SYSTEM
	"http://xml.resource.org/public/rfc/bibxml/reference.RFC.8200.xml">
<!ENTITY I-D.ietf-6tisch-architecture SYSTEM
	"http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-6tisch-architecture.xml"> ]>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>

<rfc category="std" ipr="trust200902"
			docName="draft-ietf-6lo-backbone-router-08">
<?rfc toc="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc sortrefs="yes"?>
<?rfc iprnotified="no" ?>
<?rfc strict="yes" ?>
<?rfc inline="yes"?>
<?rfc compact="no"?>
<?rfc subcompact="no"?>
<?rfc authorship="yes"?>
<?rfc tocappendix="yes"?>

<front> <title>IPv6 Backbone Router</title>
    <author fullname="Pascal Thubert" initials="P" role="editor"
							surname="Thubert">
      <organization abbrev="cisco">Cisco Systems, Inc</organization>
      <address>
         <postal>
		 <street>Building D</street>
		 <street>45 Allee des Ormes - BP1200 </street>
            <city>MOUGINS - Sophia Antipolis</city>
            <code>06254</code>
            <country>FRANCE</country>
         </postal>
         <phone>+33 497 23 26 34</phone>
         <email>pthubert@cisco.com</email>
      </address>
    </author>
    <author fullname="Charles E. Perkins" initials="C.E." surname="Perkins">
      <organization>Futurewei</organization>
      <address>
	<postal>
	  <street>2330 Central Expressway</street>
	  <!-- Reorder these if your country does things differently -->
	  <city>Santa Clara</city>
	  <region/>
	  <code>95050</code>
	  <country>United States of America</country>
	</postal>
	<phone/>
	<email>charliep@computer.org</email>
	<!-- uri and facsimile elements may also be added -->
      </address>
    </author>
   <date/>

   <area>Internet</area>

   <workgroup>6lo</workgroup>

   <abstract>
   <t>
	Backbone Routers running IPv6 Neighbor Discovery can manage multiple
	wireless links to form a large MultiLink Subnet, but it is more
	efficient if IPv6 Neighbor Discovery packets are not broadcast over
	the wireless links.
	This specification specifies proxy operations for IPv6 Neighbor
	Discovery on behalf of devices located on broadcast-inefficient
	wireless networks.
	Backbone Routers placed along the wireless edge of the backbone handle
	IPv6 Neighbor Discovery, and route packets on behalf of registered
	nodes.  Wireless nodes register, or are registered by proxy, to a
	Backbone Router to establish proxy services in a fashion similar to
	layer-2 association.
   </t>
   </abstract>
</front>

<middle>

<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<section anchor="introduction" title="Introduction">
    <t>
	<xref target="IEEEstd8021">IEEE	STD. 802.1</xref> Ethernet Bridging
	provides an efficient and reliable broadcast service; applications
	and protocols have been built that heavily depend on that feature for
	their core operation.  Unfortunately, many wireless networks do not
	economically provide the broadcast capabilities of Ethernet Bridging;
	protocols designed for bridged networks that rely on broadcast often
	exhibit disappointing behaviours when applied unmodified to a wireless
	medium (see
	<xref target="I-D.ietf-mboned-ieee802-mcast-problems"/>).
    </t>
    <t>
        <xref target="IEEEstd80211">WiFi</xref> Access Points (APs)
        deployed in an Extended Service Set (ESS) act as bridges.
        In order to ensure a solid connectivity to the devices and
	protect the medium against harmful broadcasts, they refrain from
	relying on broadcast-intensive protocols such as Transparent Bridging
	on the wireless side.
	<!--  CEP: citation needed for Transparent Bridging.   -->
        Instead, an association process is used to register the MAC
        addresses of the wireless device (STA) to the AP.  The APs subsequently
        proxy the bridging operation and eliminate the broadcasts.
    </t>
    <t>
	The IPv6 <xref target="RFC8200"/> Neighbor Discovery
        <xref target="RFC4861"/> <xref target="RFC4862"/> Protocol (IPv6 ND)
        operations are reactive and rely heavily on multicast transmissions to
        locate an on-link correspondent and ensure address uniqueness.
        Duplicate Address Detection <xref target="RFC4862"/> (DAD)
        mechanism was designed as a natural match with the efficient
        broadcast operation of Ethernet Bridging.  However, since broadcast can
	be unreliable over wireless media, DAD often fails to
        discover duplications <xref target="I-D.yourtchenko-6man-dad-issues"/>.
        DAD usually appears to work on wireless media, not because address
	duplication is detected and solved as designed, but because the use of
	64-bit Interface IDs makes duplication into a very rare event. </t>
    <t>
	IPv6 multicast messages are typically broadcast over the wireless
	medium.  They are processed by most if not all wireless nodes over the
	ESS fabric even when very few if any of them are subscribed
	to the multicast address.  A simple Neighbor Solicitation (NS)
	<xref target="RFC4861"/>, that is supposedly targeted to a small
	group of nodes, can congest the wireless bandwidth
	<xref target="I-D.ietf-mboned-ieee802-mcast-problems"/>.
	The IPv6 ND operation leads to undesirable power consumption
	in battery-operated devices.
    </t>
    <t>
        These problems suggest restricting IPv6 ND broadcasts over
        wireless access links, which can be done by dividing up the subnet.
	Another way is to take over (proxy) the Layer-3 protocols
	that rely on broadcast operation at the boundary of the wired and
	wireless domains, emulating the Layer-2 association at layer-3.
	For instance, <xref target="IEEEstd80211">IEEE 802.11</xref>
	specifies ARP and ND proxy <xref target="RFC4389"/> services at the
	Access Points (APs).
    </t>
    <t>
        Current devices rely on snooping for detecting association
	state, which is failure-prone in lossy and mobile conditions.
	With snooping, a state (e.g. a new IPv6 address) may not be discovered,
	or a change of state (e.g. a movement) may be missed, leading to
	unreliable connectivity.
<!--
  -->
    </t>
    <!--t>
        It appears that in a variety of Wireless Local Area Networks (WLANs)
        and Wireless Personal Area Networks (WPANs), the decision to use
        the broadcast support of a particular link should be left to Layer-3
        based on the criticality of the message and the number of interested
        listeners on that link, for the lack of capability to indicate that
        criticality to the lower layer.
        To achieve this, the operation at the Access Point cannot be a Layer-2
        bridge operation, but that of a Layer-3 router; the concept of MultiLink
        Subnet (MLSN) must be reintroduced,
        with IPv6 backbone routers (6BBRs) interconnecting the various links and
        routing within the subnet. For link-scope multicast operations, a 6BBR
        participates to MLD on its access links and a multicast routing protocol
        is setup between the 6BBRs over the backbone of the MLSN.
    </t>
    <t>
        As the network scales up, none of the approaches of using either
        broadcast or N*unicast for a multicast packet is really satisfying and
        the protocols themselves need to be adapted to reduce their use of
        multicast.
    </t>
    <t>
	One degree of improvement can be achieved by changing the tuning of
        the protocol parameters and operational practices, such as suggested in
        <xref target="RFC7772">
        Reducing energy consumption of Router Advertisements</xref> (RA).
        This works enables to lower the rate of RA messages but does not
        solve the problem associated with multicast NS and NA messages, which
        are a lot more frequent in large-scale radio environments with mobile
        devices which exhibit intermittent access patterns and short-lived IPv6
        addresses.
    </t-->
    <t>
        WPAN devices (i.e., those implementing IEEE STD. 802.15.4
	<xref target="IEEEstd802154"/>) can make use of <xref target="RFC6775">
	Neighbor Discovery Optimization for IPv6 over Low-Power Wireless
	Personal Area Networks (6LoWPANs) </xref> which treats the wireless
	medium as different from Ethernet.  RFC 6775 is updated as
	<xref target="I-D.ietf-6lo-rfc6775-update"/>; the update includes
        changes that are required by this document.
    </t>

    <!-->
    <t>
        DHCPv6 <xref target="RFC3315"/> is still a viable option in Low power
        and Lossy Network (LLN) to assign IPv6 global addresses.
        However, the IETF standard that supports address assignment specifically
        for LLNs is 6LoWPAN ND <xref target="RFC6775"/>, which is a mix of IPv6
        stateless autoconfiguration mechanism (SLAAC) <xref target="RFC4862"/>
        and a new registration process for ND.
        This specification introduces a Layer-3 association process based on
        6LoWPAN ND that maintains a proxy state in the 6BBR to keep the LLN
        nodes reachable and protect their addresses through sleeping periods.
    </t>
    <t>
        A number of use cases, including the Industrial Internet, require a
        large scale deployment of monitoring sensors that can only be realized
        in a cost-effective fashion with wireless technologies.
        Mesh networks are deployed when simpler hub-and-spoke topologies are
        insufficient for the expected size, throughput, and density. Meshes
	imply the routing of packets, operated at either Layer-2 or Layer-3.
        For routing over a mesh at Layer-3, the IETF has designed the IPv6
        Routing Protocol over LLN (RPL) <xref target="RFC6550"/>.
        6LoWPAN ND was designed as a stand-alone mechanism separately from RPL,
        and the interaction between the 2 protocols was not defined. This
        specification details how periodic updates from RPL can be used by the
        RPL root to renew the association of the RPL node to the 6BBR on its
        behalf so as to maintain the proxy operation active for that node.
    </t>
    <t>
       This document suggests a limited evolution to <xref target="RFC6775"/>
       so as to allow operation of a 6LoWPAN ND node while a routing protocol
       (in first instance RPL) is present and operational.
       It also suggests a more generalized use of the information in the ARO
       option of the ND messages outside the strict LLN domain, for instance
       over a federating backbone.
    </t-->
</section>	<!-- end section = "Introduction"  -->

<section title="Applicability and Requirements Served">
    <t>
	This specification updates and generalizes 6LoWPAN ND to a broader
	range of Low power and Lossy Networks (LLNs) with support
	for Duplicate Address Detection (DAD) and address lookup that does not
	require broadcasts over the LLNs.  The term LLN is used loosely in
	this specification to cover multiple types of WLANs and WPANs,
	including <!--IEEE STD. 802.11 basic service set (BSS), -->
	Low-Power Wi-Fi, BLUETOOTH(R) Low Energy, IEEE STD. 802.11AH
	<!--and Wi-Fi --> and IEEE STD. 802.15.4 wireless meshes, so as to
	address the requirements listed in Appendix B.3 of
	<xref target= "I-D.ietf-6lo-rfc6775-update"/>
	"Requirements Related to the Variety of Low-Power Link types".
    </t>
    <t>
	For the TimeSlotted Channel Hopping (TSCH) mode of
	<xref target="IEEEstd802154"/>, the
	<xref target="I-D.ietf-6tisch-architecture">6TiSCH architecture</xref>
	describes how a 6LoWPAN ND host could connect to the Internet via a
	RPL mesh Network, but doing so requires extensions to the 6LOWPAN ND
	protocol to support mobility and reachability in a secure and
	manageable environment. The extensions detailed in this document
	also work for the 6TiSCH architecture, serving the requirements listed
	in Appendix B.2 of <xref target= "I-D.ietf-6lo-rfc6775-update"/>
	"Requirements Related to Routing Protocols".
    </t>
    <t>
        This specification also applies to wireless links such as Low-Power
	IEEE STD. 802.11 (Wi-Fi) and IEEE STD. 802.15.1 (Bluetooth)
	<xref target="IEEEstd802151"/>.  It makes use of extensions to
	<xref target="RFC6775"/> to enable proxy operation by the 6BBR, as
	specified in <xref target="I-D.ietf-6lo-rfc6775-update"/>.  The BBR
	proxy operations eliminate the need for wireless nodes
	to respond synchronously when a lookup is performed for their
        addresses.  This provides the function of a Sleep Proxy for ND
	<xref target="I-D.nordmark-6man-dad-approaches"/>.
    </t>
    <t>
	This draft establishes a Backbone that treats multiple
	LLNs as a single IPv6 MultiLink Subnet.
<!--  CEP: I think it is dangerous to use this term, but if you want it,
		please cite the relevant RFC.  -->
<!--  CEP: Also, if the word "federate" is to be used, it needs a definition-->
<!-- Pascal I suggest we define it then, this is exactly the term we need
	in fact the definition is pretty much the sentence above -->
<!--  CEP: But the term is otherwise absent in the revision you sent me. -->
	Each LLN in the subnet is anchored at an IPv6 Backbone Router (6BBR).
	The Backbone Routers interconnect the LLNs and advertise the addresses
	of the 6LNs using proxy-ND operations. This specification extends
	IPv6 ND over the backbone to
	distinguish address movement from duplication and eliminate stale
	state in the backbone routers and backbone nodes once a 6LN has
	roamed.  In this way, mobile nodes may roam rapidly from
	one 6BBR to the next and requirements in Appendix B.1 of
	<xref target= "I-D.ietf-6lo-rfc6775-update"/>
	"Requirements Related to Mobility" are met.
    </t>
    <t>
	This specification enables any 6LN to
	register its IPv6 addresses and thereby obtain routing
	services including proxy-ND operations over the backbone,
	providing a solution to the requirements expressed in Appendix B.4 of
	<xref target= "I-D.ietf-6lo-rfc6775-update"/>
	"Requirements Related to Proxy Operations".
    </t>
    <t>
	The Link Layer Address (LLA) that is returned as Target LLA (TLLA) in
	Neighbor Advertisements (NA) messages by the 6BBR on behalf of the
	Registered Node over the backbone may be that of the Registering Node.
	In that case, the 6BBR needs to bridge the unicast packets
	(Bridging proxy), or that of the 6BBR on the backbone, in which case
	the 6BBRs needs to route the unicast packets (Routing proxy).
<!-- CEP: This does not belong here.  It is specified later, as is proper.
	In the latter case, the 6BBR maintains the list of correspondents
	to which it has advertised its own MAC address on behalf of the LLN
	node.
  -->
	The IPv6 ND operation is minimized as the number of 6LNs
	grows in the LLN.  This meets the requirements
	in Appendix B.6 of <xref target= "I-D.ietf-6lo-rfc6775-update"/>
	"Requirements Related to Scalability", as long has the 6BBRs are
	dimensioned for the
	number of registrations that each needs to support.
    </t>
    <t>
<!--  CEP: Need citation for Low-Power WiFi  -->
<!--  PT: agree  -->
	In the case of Low-Power IEEE STD. 802.11, a 6BBR may be collocated
	with a standalone AP or a CAPWAP <xref target="RFC5415"/> wireless
	controller.  Then the wireless client (STA) makes use of this
	specification
<!--  CEP: Should xref the section describing the STA == 6LN operation. -->
	to register its IPv6 address(es) to the 6BBR over the wireless medium.
	In the case RPL, the RPL root is collocated with a
	6LoWPAN Border Router (6LBR), and either collocated with or connected
	to the 6BBR over an IPv6 Link.  The 6LBR makes use of this
<!--  CEP: Should xref the section describing the 6LBR operation. -->
	specification to register the 6LNs on their behalf to the 6BBR.
    </t>
</section>	<!-- end section = "Applicability and Requirements Served"  -->

<section title="Terminology">
    <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 -->.
    </t>
    <t>
	In this document, readers will encounter terms and concepts
	that are discussed in the following documents:
	<list style="symbols">
	<t> <xref target="RFC4861">"Neighbor Discovery for IP version 6"</xref>,
		</t>
	<t> <xref target="RFC4862">"IPv6 Stateless Address Autoconfiguration"
								</xref>, </t>
	<t> <xref target="RFC4903">"Multi-Link Subnet Issues"</xref>, </t>
	<t> <xref target="RFC4919">"IPv6 over Low-Power Wireless Personal Area
		Networks (6LoWPANs): Overview, Assumptions, Problem Statement,
		and Goals"</xref>, </t>
	<t> <xref target="RFC6775">Neighbor Discovery Optimization for Low-power
		and Lossy Networks</xref>, </t>
        <t> <xref target="RFC6275">,"Mobility Support in IPv6" </xref>, </t>
        <t> <xref target="RFC4389"> "Neighbor Discovery Proxies (ND Proxy)"
		</xref> </t>
	<t> <xref target="RFC4429">"Optimistic Duplicate Address Detection"
		</xref>, and</t>
	<t> <xref target="I-D.ietf-6lo-rfc6775-update">
		"Registration Extensions for 6LoWPAN Neighbor Discovery"</xref>
	</t>
	</list>

	This document also uses terminology from
	<xref target="RFC7102"></xref>
	and <xref target="I-D.ietf-6lo-rfc6775-update"></xref>, and
	introduces the following terminology:
	<list hangIndent="6" style="hanging">
	<t hangText="Sleeping Proxy">	<vspace blankLines="1"/>
	    A 6BBR acts as a Sleeping Proxy if it answers ND Neighbor
	    Solicitation over the backbone on behalf of the Registered Node.
	</t>
	<t hangText="Unicasting  Proxy">	<vspace blankLines="1"/>
	    A Unicasting Proxy forwards NS messages to the
	    Registering Node, transforming Layer-2 multicast into unicast.
	</t>
	<t hangText="Routing proxy">	<vspace blankLines="1"/>
	    A routing proxy advertises its own MAC address as the TLLA
	    in the proxied NAs over the backbone, as opposed to
	    that of the node that performs the registration.
	</t>
	<t hangText="Bridging proxy">	<vspace blankLines="1"/>
	    A Bridging proxy advertises the MAC address
	    of the node that performs the registration as the TLLA in the
	    proxied NAs over the backbone. In that case, the MAC address and
	    the mobility of 6LN is still visible across the bridged
	    backbone fabric.   <!--  CEP: text moved to a better place -->
	</t>
	<t hangText="Primary BBR">	<vspace blankLines="1"/>
	    The BBR that will defend a Registered Address for the purpose of
	    DAD over the backbone.
	</t>
	<t hangText="Secondary BBR">	<vspace blankLines="1"/>
	    A BBR other than the Primary BBR to which an address is registered.
	    A Secondary Router MAY advertise the address over the backbone and
	    proxy for it.
	</t>
	</list>
    </t>
  </section>	<!-- end section = "Terminology"  -->

<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->

<section anchor='overview' title="Overview">
    <t>
	The services specified in this document assist a 6LN to move
	freely from an LLN anchored at one 6BBR
	to an LLN anchored at another 6BBR on the same backbone and
	keep any or all of the IPv6 addresses that the 6LN has formed.
<!--  CEP: Is this intended to include link-local and multicast addresses? -->
	<!--
	In a same fashion, a constrained 6LN with sleeping behavior that
	resides on the Backbone may move its registration to one or more
	different BBRs and keep its addresses with no disruption.
          -->
    </t>
    <figure anchor='figBackbone' title="Backbone Link and Backbone Routers">
    <artwork><![CDATA[
              |
            +-----+
            |     | Gateway (default) Router
            |     |
            +-----+
               |
               |           Backbone Link
         +-------------------------+----------------------+
         |                         |                      |
      +------+                 +------+                +------+
      | 6BBR |                 | 6BBR |                | 6BBR |
      |      |                 |      |                |      |
      +------+                 +------+                +------+
         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>
	Each Backbone Router (6BBR) maintains a Binding Table of its
	Registered Nodes. The Binding Tables form a distributed database
	of wireless 6LNs that reside on the LLNs or on the
	backbone, and use an extension to IPv6 ND to
	exchange that information across the Backbone as described below.
<!-- CEP: xref needed here. -->
    </t>

    <t>
	The Extended Address Registration Option (EARO) defined in <xref
	target="I-D.ietf-6lo-rfc6775-update"></xref>
	is used in the ND exchanges over the backbone between
	the 6BBRs to enable the registration for routing and proxy
	<!-- Neighbor Discovery operations by the 6BBR,
	     and the Extended ARO (EARO) -->
	services, as well as distinguish duplication from movement.
    </t>
    <t>
	Address duplication is detected using the ROVR field in the EARO.
	In case of conflicting registrations to multiple 6BBRs from the same
	node, the Transaction ID (TID) in the EARO
	enables 6BBRs to determine the latest registration for that 6LN.
    </t>
    <t>
	6BBRs perform ND proxy operations
	over the backbone, on behalf of their Registered Nodes.
	Registration to a proxy service is done via a NS/NA(EARO) exchange.
	6BBR operation resembles that of a
	<xref target="RFC6275">Mobile IPv6 (MIPv6)</xref> Home Agent.
	This enables mobility support for 6LNs; if they move outside of
	the network delimited by the Backbone link, then they make use of
	a Home Agent. Home Agent functionality can easily be collocated with
	a 6BBR on the same backbone interface of a router.
     </t>
     <t>
	The <xref target="RFC4429">Optimistic Duplicate Address Detection</xref>
	(ODAD) specification details how an address can be used before a
	Duplicate Address Detection (DAD) is complete, and mandates that an
	address that is TENTATIVE should not be associated to a Source
	Link-Layer Address Option in a Neighbor Solicitation message.
	This specification makes use of ODAD to create a temporary proxy state
	in the 6BBR until DAD is completed over the backbone. This way, the
	specification allows proxy state distribution across multiple 6BBR
	and co-existence with IPv6 ND over the backbone.
    </t>
</section>	<!-- end section = "Overview"  -->

<section anchor='opers' title="Backbone Router Routing Operations">
    <figure anchor='figBackboneRoute'
	title="Example Routing Configuration for 3 LLNs in the ML Subnet">
    <artwork><![CDATA[
               |
            +-----+
            |     | Gateway (default) Router
            |     |
            +-----+
               | /64
               |      Backbone Link
         +-------------------+-------------------+
         | /64               | /64               | /64
      +------+            +------+           +------+
      | 6BBR |            | 6BBR |           | 6BBR |
      |      |            |      |           |      |
      +------+            +------+           +------+
         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: N*/128        LLN: M*/128       LLN: P*/128
    ]]></artwork> </figure>

    <section anchor='bb' title="Over the Backbone Link">
    <t>
<!--  CEP:  Perhaps call it a "Proxy BR" -->
	A 6BBR is a specific kind of Border Router that performs
	proxy Neighbor Discovery on its backbone interface on behalf of
	registered 6LNs on its LLN interfaces.
    </t>
    <t>
	On the backbone side, the 6BBR advertises the prefixes of the LLNs
	for which it serves as a proxy.  Some restrictions of the attached
	LLNs will apply to the backbone.  In particular, the MTU SHOULD be set
	to the same value on the backbone and all attached LLNs.
<!--  CEP: I don't understand MUST.  And, please see below... -->
	The scalability of the multilink subnet <xref target="RFC4903"/>
	requires that broadcast operations are avoided as much as possible on
	the backbone as well.
<!-- CEP: This would contradict the sentence starting "In particular..."
	Unless configured
	otherwise, the 6BBR MUST use the same MTU that it learns from RAs over
	the backbone in its own RAs that it transmits across the LLN links.
     CEP: If left in, the sentence will requires a configuration variable. -->
    </t>
    <t>
	The 6BBR uses an EARO in the NS-DAD and the
	multicast NA messages that it generates over the Backbone Link on
	behalf of a Registered Node.  The 6BBR places an EARO in its unicast
	NA messages, if and only if the NS/NA that stimulates it had an
	EARO in it and the 'R' bit set.
    </t>
    <t>
	The 6BBR SHOULD use unicast or the solicited-node multicast
	address (SNMA) <xref target="RFC4291"/> to defend its Registered
	Addresses in its Binding Table over the backbone. In particular, the
	6BBR MUST join the SNMA group that corresponds to a Registered Address
	as soon as it creates an entry for that address, and maintain its SNMA
	membership as long as it maintains that entry.
    </t>
    <t>
	Optimistic DAD (ODAD) <xref target="RFC4429"/> SHOULD be supported
	by the 6BBRs in their proxy activity over the backbone.
	A 6BBR supporting ODAD MUST join the SNMA of a Tentative address.
    </t>
    <t>
	A 6BBR in Routing Proxy mode MAY advertise
	the Registered IPv6 Address with the 6BBR Link Layer Address, and
	update Neighbor Cache Entries (NCE) in correspondent nodes
	over the backbone, using gratuitous NA(Override). This method may fail
	if the multicast message is not received, and correspondent
	nodes may maintain an incorrect neighbor state, which they will
	eventually discover through Neighbor Unreachability Detection (NUD).
<!--  CEP: Is this a handover?  If so, many techniques are available.  -->
	For slow movements, the NUD procedure defined in
	<xref target="RFC4861"/> may time out too quickly, and the support of
	<xref target="RFC7048"/> is recommended in all 6LNs in the network.
    </t>
    <t>
	Multicast should be avoided as much as possible even on the backbone
	<xref target="I-D.ietf-mboned-ieee802-mcast-problems"/>.  Although
	hosts can participate using legacy IPv6 ND,
	all 6LNs connected to the backbone SHOULD support
	<xref target="I-D.ietf-6man-rs-refresh"/>, which also requires
	the support of <xref target="RFC7559"/>.
<!--  CEP: It should be explained why.  -->
<!--  CEP: This is a normative mandate on the 6man Internet Draft.
      Do you really want to make that dependency?  -->
    </t>
    </section>

    <section anchor='bblln' title="Proxy Operations Over the LLN Interface">
    <t>
	6LNs on the LLN follow <xref target="RFC6775"/> and
	do not depend on multicast RAs to discover routers.
	6LNs SHOULD accept multicast RAs <xref target="RFC7772"/>, but
	those are expected to be rare within in the LLN.
	Nodes SHOULD follow the <xref target="RFC6059"> Simple
	Procedures for Detecting Network Attachment in IPv6 </xref>
	(DNA procedures) to assert movements, and support <xref
	target="RFC7559">Packet-Loss Resiliency for Router Solicitations</xref>
	to make the unicast RS more reliable.
    </t>
<!--  CEP: Already said this...
	Pascal: this piece tells the story, the MUSt are somewhere else, but
	still good to say it
	CEP: O.K. but I think the document is really very very repetitive. -->

    <t>
   	A 6LN signals that it requires IPv6 ND proxy services from a 6BBR by
	registering the corresponding IPv6 Address with an NS(EARO) message
	with the 'R' flag set.  The 6LN that performs the registration
	(the Registering Node) may be the owner of the IPv6 Address (the
	Registered Node) or a 6LBR that performs the registration on its
	behalf.
    </t>

    <section anchor='rtr_proxy' title="Routing Proxy Operations">
    <t>
	When operating as a Routing Proxy, the BBR installs host routes
	(/128) to the Registered Addresses within the LLN, via the
	Registering Node as identified by the Source Address and the SLLA
	option in the NS(EARO) messages.
	In that case, the MAC address of the 6LN is not visible at
	Layer-2 over the backbone. The 6BBR
	installs a host route towards the Registered Node over
	the interface toward the 6LN, and routes unicast packets to the 6LN.
    </t>
    <t>
	The Routing Proxy 6BBR handles the ND protocol over the backbone on
	behalf of the Registered Nodes, using its own MAC address in the TLLA
	and SLLA options in proxied NS and NA messages. For each Registered
	Address, multiple peer Nodes on the backbone may have resolved the
	address with the 6BBR MAC address, maintaining that mapping
	in their Neighbor cache.
    </t>
    <t>
	For each Registered Address, the 6BBR SHOULD maintain a list of the
	peers on the backbone which have associated its MAC address with the
	Registered Address.  If that Registered Address moves to a different
	6BBR, the first 6BBR SHOULD unicast a gratuitous NA(Override) to each
	such peer, to supply the MAC address of the
	new 6BBR in the TLLA option for the Address.
<!--  CEP:  A 6BBR should always be able to maintain such a list!!
	If the 6BBR can not maintain that list, then it SHOULD remember whether
	that list is empty or not and if not, send a multicast NA(Override) to
	all 6LNs to update the affected Neighbor Caches with the information
	from the new 6BBR.
    PT: yes
  -->
    </t>
    </section>	<!-- end section = "Routing Proxy Operations"  -->

    <section anchor='bridge_proxy' title="Bridging Proxy Operations">
    <t>
	A Bridging Proxy can be implemented in a Layer-3 switch, or in a
	wireless Access Point that acts as an IPv6 Host.  In the latter case,
	the SLLA option in the proxied NA messages is that of the Registering
	Node, and the 6BBR acts as a Layer-2 bridge for unicast packets to the
	Registered Address. The MAC address in the S/TLLA is that of
	the Registering Node, which is not necessarily the Registered
	Node. When a 6LN moves within a LLN mesh, it may
	attach to a different 6LBR acting as Registering Node, and the
	MAC address advertised over the backbone might change.
    </t>
    <t>
	If a registration moves from one 6BBR to the next, but the Registering
	Node does not change, as indicated by the S/TLLA option in the ND
	exchanges, there is no need to update the Neighbor Caches of the peer's
	Nodes on the backbone.  On the other hand, if the LLA changes, the
<!--  CEP: Why would the LLA change?   -->
	6BBR SHOULD inform all the relevant peers as described above, to
	update the affected Neighbor Caches.  In the same fashion, if the
	Registering Node changes with a new registration, the 6BBR SHOULD also
	update the affected Neighbor Caches over the backbone.
<!--  CEP: Must specify how the update occurs.   -->
    </t>
    </section>	<!-- end section "Bridging Proxy Operations"  -->
    </section>	<!-- end section "Proxy Operations Over the LLN Interface"  -->
</section>	<!-- end section "Backbone Router Routing Operations"  -->

<section anchor='proxy' title="Backbone Router Proxy Operations">
<!--  CEP: Already said all of this in the Introduction.
	PT: not really, it is expanded here
	CEP: I meant the first sentence, which is temporarily deleted. -->
    <t>
<!--
	This specification enables a Backbone Router to proxy Neighbor
	Discovery operations over the backbone on behalf of the 6LNs that
	are registered to it, allowing any 6LN on the backbone to reach a
	Registered Node as if it was on-link.
  -->
	The LLNs attached to each 6BBR are
	considered different Links in a multi-link subnet.  The prefix that
	is used may still be advertised as on-link on the backbone to support
	legacy 6LNs.  Multicast ND messages are link-scoped and not forwarded
	across the backbone routers.
    </t>
    <t>
	By default, a 6BBR operates as a Sleeping Proxy, as follows:
<!--  CEP: I am wondering which of these are NOT done if the 6BBR is NOT
      	a "Sleeping Proxy".  -->
<!--  CEP: In other words, it seems to me that ALL 6BBRs need to do these. -->
	<list  style="symbols">
	<t> Create a new entry in a Binding Table for a new
	    Registered Address and ensure that the address is not a
	    duplicate over the backbone </t>
	<t> Defend a Registered Address over the backbone using NA messages
	    with the Override bit set on behalf of the sleeping 6LN </t>
<!--  CEP: The 6BBR should do this for *any* REACHABLE Registered Address -->
<!--       And anyway we do not have protocol to know whether or not the
           Registered Node is asleep.   -->
	<t> Advertise a Registered Address over the backbone using NA
	    messages, asynchronously or as a response to a Neighbor
	    Solicitation messages. </t>
	<t> To deliver packets arriving from the LLN, use Neighbor Solicitation
	    messages to look up the destination over the backbone. </t>
<!--  CEP: What about Bridging?  Woulr "Forward" still be an accurate word? -->
	<t> Forward packets between the LLN and the backbone. </t>
	<t> Verify liveliness when needed for a stale registration. </t>
        </list>
	A 6BBR may act as a Sleeping Proxy only for a Registered Address that
	is REACHABLE, or TENTATIVE in which case the answer is delayed.
	In any other state, the Sleeping Proxy operates as a Unicasting Proxy.
<!--  CEP: "Unicasting Proxy" occurs three times.  The term could be deleted
      	   in favor of simply stating that the 6BBR unicasts the messages.  -->
    </t>
    <t>
<!--  CEP: I think it is debatable whether the Multilink Subnet discussion
           is helpful.  Maybe it needs to be emphasized in the Introduction
	   and then deleted from the rest of the specification as much
	   as possible.    -->
	The 6BBR does not act on ND Messages over the backbone unless they are
	relevant to a Registered Node on the LLN side, saving wireless
	interference.  On the LLN side, the prefixes associated to the
	MultiLink Subnet are presented as not on-link, so address resolution
	for other hosts do not occur.
    </t>
    <t>
<!--  CEP: ** Why doesn't the 6BBR simply answer the lookup messages??  -->
<!--  PT: because the 6LN might effectively be gone; there can be an option
      to answer if the 6LN was seen very recently though -->
	As a Unicasting Proxy, the 6BBR forwards NS lookup messages to the
	Registering Node, transforming Layer-2 multicast into unicast.
	This is not possible in UNREACHABLE state, so the NS messages
	are multicasted, and rate-limited.  Retries are possible, using an
	exponential back-off to protect the medium.  In other states, the
	messages are forwarded to the Registering Node as unicast Layer-2
	messages. In TENTATIVE state, the NS message is either held till DAD
	completes, or dropped if DAD does not complete.
    </t>

<section anchor='primary' title="Primary and Secondary BBRs">
    <t>
<!--  CEP: Why not just say that the first 6BBR to associate its MAC
           address to the Registered Node is in charge of defending it?? -->
	A 6BBR MAY be primary or secondary.  The primary is the backbone router
	that has the highest EUI-64
	address of all the 6BBRs that share a registration for a same
	Registered Address, with the same ROVR and same Transaction ID, the
	EUI-64 address being considered as an unsigned 64bit integer.
	A given 6BBR can be primary for a given address and secondary for
	another address, regardless of whether or not the addresses belong
	to the same 6LN.  The primary Backbone Router is in charge of
	protecting the address for DAD over the Backbone.  Any of the Primary
	and Secondary 6BBR may claim the address over the backbone, since they
	are all capable to route from the backbone to the 6LN; the
	address appears on the backbone as an anycast address.
<!--  CEP: Figure 2 does not reflect this.  The synchronization required for
      	   the anycast group can't just be declared out of scope.  -->
	<!--  CEP: Maybe this will complicate security.  -->
    </t>
    </section>	<!-- end section = "Primary and Secondary BBRs"  -->

    <section anchor='binding' title="Binding Table">
    <t>
	Each 6BBR maintains a Binding Table, using IPv6 ND over the backbone
	to detect duplication.
	Another document <xref target="I-D.ietf-6lo-rfc6775-update"/>
	provides details about how the EARO is used between 6LRs and 6LBRs
	by way of DAR/DAC messages within the LLN.
	Addresses in a LLN that can be reachable from the backbone by way
	    of a 6BBR MUST be registered to that 6BBR.
    </t>
    <t>
	A false positive duplicate detection may arise over the backbone, for
	instance if a 6LN's Registered Address is registered to more than one
	LBR, or if the 6LN has moved. Both situations are handled by the 6BBR
	transparently to the 6LN. 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.  In the latter case the LBR that receives
	the newest registration becomes primary because of the TID.
<!--  CEP: But the primary/secondary distinction was described as optional. -->
    </t>
    <t>
	Only one 6LN may register a given Address at a particular 6BBR.
	However, that Registered Address may be registered to Multiple
	6BBRs for higher availability.
    </t>
    <t>
<!--  CEP:Need to check 6775update and delete the list items specified there.-->
	Over the LLN, Binding Table management is as follows:
	<list>
	<t> De-registrations (newer TID, same ROVR, null Lifetime) are
	    accepted and acknowledged with a status of 4 (TBD);
	    the entry is deleted; </t>
	<t> Newer registrations (newer TID, same ROVR, non-null Lifetime) are
	    acknowledged with a status of 0 (success); the binding is updated
	    with the new TID, the Registration Lifetime and the Registering
	    Node; in TENTATIVE state the
	    acknowledgement is held and may be overwritten; in other states the
	    Registration-Lifetime timer is restarted and the entry is placed
	    in REACHABLE state. </t>
	<t> Identical registrations (same TID, same ROVR) from a same
	    Registering Node are acknowledged with a status
	    of 0 (success).
<!--  CEP: The next sentence contradicts the last sentence.  Something is
      	   wrong here.   -->
	    If they are not identical, an error SHOULD
	    be logged.  In TENTATIVE state, the response is held
	    and may be overwritten, but it MUST be eventually produced and
	    it carries the result of the DAD process; </t>
<!--  CEP: 1-1 correspondence assumed between ROVR and Registering Nodes.  -->
	<t> Older registrations (older TID, same ROVR) from a
	    Registering Node are ignored; </t>
	<t> Identical and older registrations (not-newer TID, same ROVR) from
<!--  CEP: 1-1 correspondence assumed between ROVR and Registering Nodes.  -->
	    a different Registering Node are acknowledged with a status
	    of 3 (moved); this may be rate limited to protect the medium; </t>
	<t> Any registration for a different Registered Node (different
	    ROVR) are acknowledged with a status of 1 (duplicate).</t>
	</list>
    </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
	wireless Node to receive a response to its registration whether it
	completes successfully or not.
    </t -->
    </section>	<!-- end section = "Binding Table"  -->

<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->
<!-- **************************************************************** -->

    <section anchor='crea'
		title="Registration and Binding Table Entry Creation">
    <t>
	Upon receiving a registration for a new address with an NS(EARO) with
	the 'R' bit set, the 6BBR performs DAD over the backbone, placing the
	new address as target in the NS-DAD message. The EARO from the
	registration MUST be placed unchanged in the NS-DAD message, and an
	Neighbor Cache entry created in TENTATIVE state for a duration of
	TENTATIVE_DURATION. The NS-DAD message is sent multicast over the
	backbone to the SNMA associated with the registered address, unless
	that operation is known to be costly, and the 6BBR has an
	indication from another source (such as a Neighbor Cache entry) that
	the Registered Address was known on the backbone; in the latter case,
	an NS-DAD message may be sent as a Layer-2 unicast to the MAC Address
	that was associated with the Registered Address.
    </t>
    <t>
	In TENTATIVE state after EARO with 'R' bit set:
<!--  CEP: Does this imply that use of ODAD is mandated (not optional)? -->
	<list style="numbers">
	<t>
	    The entry is removed if an NA is received over the backbone for
	    the Registered Address with no EARO, or containing an EARO
	    with a status of 1 (duplicate) that indicates an existing
	    registration for another 6LN. The ROVR and TID fields in
	    the EARO received over the backbone are ignored.
<!--  CEP: Seems dangerous to ignore TID! -->
	    A status of 1 is returned in the EARO of the NA back to the
	    Registering Node;
	    <!--
		and the ROVR and TID fields in the EARO are obfuscated
		with null or random values to avoid network scanning and
		impersonation attacks.
	    --> </t>
	<t> The entry is also removed if an NA with an ARO option with a
	    status of 3 (moved), or a NS with an ARO option that indicates
	    a newer registration for the same Registered Node, is received
	    over the backbone for the Registered Address. A status of 3 is
	    returned in the NA(EARO) back to the Registering Node; </t>
	<t> When a registration is updated but not deleted, e.g. from a newer
	    registration, the DAD process on the backbone continues and the
	    running timers are not restarted; </t>
<!--  CEP: This is an unusual case, but the timers should be restarted. -->
	<t> Other NS (including DAD with no EARO) and NA from the backbone
	    are not acknowledged in TENTATIVE state.  To cover legacy 6LNs
	    that do not support ODAD, the list of their origins MAY be stored
	    and then, if the TENTATIVE_DURATION timer elapses, the 6BBR MAY
	    send each such legacy 6LN a unicast NA.  </t>
	<t> When the TENTATIVE_DURATION timer elapses, a status 0 (success)
	    is returned in a NA(EARO) back to the Registering Node(s), and
	    the entry goes to REACHABLE state for the Registration Lifetime.
	    The 6BBR MUST send a multicast
	    NA(EARO) to the SNMA associated to the Registered Address over
	    the backbone with the Override bit set so as to take over the
	    binding from other 6BBRs.  </t>
	</list>
    </t>
    </section>
	<!-- end section = "Registration and Binding Table Entry Creation"  -->

    <section anchor='defending' title="Defending Addresses">
    <t>
	If a 6BBR has an entry in REACHABLE state for a Registered Address:
	<list style="symbols">
	<t> If the 6BBR is primary, or does not support the function of
	    primary, it MUST defend that address over the backbone upon
	    receiving NS, either if the NS does not carry an EARO, or if
	    an EARO is present that indicates a different Registering Node
	    (different ROVR). The 6BBR sends a NA message with the Override
	    bit set and the NA carries an EARO if and only if the
	    NS-DAD did so.  When present, the EARO in the NA(Override) that is
	    sent in response to the NS(EARO) carries a status of 1
	    (duplicate), and the ROVR and TID fields in the EARO are
	    obfuscated with null or random values to avoid network scanning
	    and impersonation attacks.  </t>
	<t> If the 6BBR receives an NS(EARO) for a newer
	    registration, the 6BBR updates the entry and the routing state
	    to forward packets to the new 6BBR, but keeps the entry REACHABLE.
	    Afterwards, the 6BBR MAY use REDIRECT messages to reroute traffic
<!--  CEP: Need to define "REDIRECT" message.  -->
	    for the Registered Address to the new 6BBR.  </t>
	<t> If the 6BBR receives an NA(EARO) for a newer registration,
	    the 6BBR removes its entry and sends a NA(EARO) with a status of 3
	    (MOVED) to the Registering Node, if the Registering Node is
	    different from the Registered Node.  The 6BBR cleans up existing
	    Neighbor Cache entries in peer nodes as discussed in
	    <xref target="bb"/>, by unicasting to each such
	    peer, or one broadcast NA(Override).  </t>
	<t> If the 6BBR receives a NS(LOOKUP) for a Registered Address,
	    it answers immediately with an NA on behalf of the
	    Registered Node, without polling it. There is no need of an
	    EARO in that exchange.  </t>
	<t> When the Registration-Lifetime timer elapses, the entry goes
	    to STALE state for a duration of STABLE_STALE_DURATION in LLNs
	    that keep stable addresses such as LWPANs, and
<!--  CEP:  The BBR cannot necessarily know this unless there is additional
      	    information in the Registration.  -->
	    UNSTABLE_STALE_DURATION in LLNs where addresses are renewed
	    rapidly, e.g. for privacy reasons.  </t>
<!--  CEP: Suggest to have a single STALE_DURATION, and suggest timer
           values in the Protocol Constant section. -->
	</list>
    </t>
    <t>
	The STALE state enables tracking of the backbone peers that have a
	Neighbor Cache entry pointing to this 6BBR in case the Registered
	Address shows up later.  If the Registered Address is claimed by
	another 6LN on the backbone, with an NS-DAD or an NA, the 6BBR does
	not defend the address.
	In STALE state:
	<list style="symbols">
	<t> If STALE_DURATION elapses, the 6BBR removes the entry.  </t>
	<t> Upon receiving an NA(Override) the 6BBR removes its entry and
	    sends a NA(EARO) with a status of 4 (removed) to the Registering
	    Node.  </t>
	<t> If the 6BBR receives a NS(LOOKUP) for a Registered Address,
	    the 6BBR MUST send an NS(NUD) following rules in
<!--  CEP: This MUST contradicts an earlier "RECOMMEND".  -->
	    <xref target="RFC7048"/> to the Registering Node targeting
	    the Registered Address prior to answering.  If the NUD succeeds,
	    the operation in REACHABLE state applies.  If the NUD fails,
<!--  CEP:  If NUD fails, the entry should be removed.   -->
	    the 6BBR refrains from answering the lookup.
	    The NUD SHOULD be used by the Registering Node to indicate
	    liveness of the Registered Node, if they are different nodes. </t>
	</list>
    </t>
    </section>	<!-- end section = "Defending Addresses"  -->
</section>	<!-- end section = "Backbone Router Proxy Operations"  -->

<section title="Security Considerations">
    <t>
	This specification applies to LLNS in which the link layer is
	protected, either by means of physical or IP security for the
	Backbone Link or MAC sublayer cryptography.
<!--  CEP: Citation needed for possible security mechanisms.  -->
	In particular,
	the LLN MAC is required to provide secure unicast to/from the
	Backbone Router and secure Broadcast from the Backbone Router
	in a way that prevents tampering 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.
	Additional protection against address theft is provided by
	<xref target="I-D.ietf-6lo-ap-nd"/>, which guarantees the ownership
	of the ROVR.
    </t>
    <t>
	When the ownership of the ROVR cannot be assessed, this specification
	limits the cases where the ROVR and the TID are multicasted, and
	obfuscates them in responses to attempts to take over an address.
    </t>
</section>	<!-- end section = "Security Considerations"  -->

<section anchor="const" title="Protocol Constants">
      <t>This Specification uses the following constants:
	  <list  style="hanging">
	  <t hangText="TENTATIVE_DURATION:      ">800 milliseconds</t>
	  <t hangText="STABLE_STALE_DURATION:   ">24 hours</t>
	  <t hangText="UNSTABLE_STALE_DURATION: ">5 minutes</t>
	  <t hangText="DEFAULT_NS_POLLING:      ">3 times</t>
	  </list>
     </t>
</section>	<!-- end section = "Protocol Constants"  -->

<section title="IANA Considerations">
        <t>This document has no request to IANA. </t>
</section>	<!-- end section = "IANA Considerations"  -->

<section title="Future Work">
        <t> Future documents may extend this specification by allowing the
	    6BBR to redistribute host routes in routing protocols that would
	    operate over the backbone, or in MIPv6, or FMIP, or the
	    <xref target="RFC6830">Locator/ID Separation Protocol (LISP)</xref>
	    to support mobility on behalf of the 6LNs, etc... </t>
</section>	<!-- end section = "Future Work"  -->

<section title="Acknowledgments">
    <t>
	Kudos to Eric Levy-Abegnoli who designed the First Hop Security
	infrastructure at Cisco.
<!--  CEP:  Where is this relevant?  xref??  -->
<!--  CEP:  We did this for the [autoconf] WG 15 years ago.  -->
    </t>
</section>	<!-- end section = "Acknowledgments"  -->
</middle>

<back>

    <references title='Normative References'>
	&RFC2119;
	&RFC4291;
	&RFC4429;
	&RFC4861;
	&RFC4862;
	&RFC6059;
	&RFC6775;
	&RFC8200;
	<?rfc include='reference.I-D.ietf-6lo-rfc6775-update'?>
    </references>

    <references title='Informative References'>
<!--	&RFC3810;	-->
	&RFC3971;
	&RFC3972;
	&RFC4389;
	&RFC4903;
	&RFC4919;
	&RFC5415;
	&RFC6275;
<!--	&RFC6282;	-->
	&RFC6830;
	&RFC7048;
	&RFC7102;
<!--	&RFC7217;	-->
<!--	&RFC7428;	-->
	&RFC7559;
<!--	&RFC7668;	-->
	&RFC7772;
<!--	&RFC8105;	-->
<!--	&RFC8163;	-->
<!--	<?rfc include='reference.I-D.ietf-bier-architecture'?>	-->
<!--	<?rfc include='reference.I-D.ietf-6lo-nfc.xml'?>	-->
<!--
    <?rfc
      include='reference.I-D.popa-6lo-6loplc-ipv6-over-ieee19012-networks.xml'?>	-->
<!--	<?rfc include='reference.I-D.delcarpio-6lo-wlanah.xml'?>	-->
	<?rfc include='reference.I-D.yourtchenko-6man-dad-issues.xml'?>
	<?rfc include='reference.I-D.nordmark-6man-dad-approaches.xml'?>
	<?rfc include='reference.I-D.ietf-6man-rs-refresh.xml'?>
	<?rfc include='reference.I-D.ietf-6lo-ap-nd.xml'?>
	<?rfc include='reference.I-D.ietf-6tisch-architecture.xml'?>
<!--	<?rfc
	  include='reference.I-D.chakrabarti-nordmark-6man-efficient-nd.xml'?>
	<?rfc include='reference.I-D.vyncke-6man-mcast-not-efficient.xml'?>
	<?rfc include='reference.I-D.ietf-6tisch-terminology.xml'?>	-->
	<?rfc include='reference.I-D.ietf-mboned-ieee802-mcast-problems.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>
-->
      <reference anchor="IEEEstd8021">
         <front>
            <title>
		IEEE Standard for Information technology -- Telecommunications
		and information exchange between systems Local and metropolitan
		area networks Part 1: Bridging and Architecture
            </title>
            <author>
               <organization>
			IEEE standard for Information Technology</organization>
            </author>
            <date/>
         </front>
      </reference>

      <reference anchor="IEEEstd80211">
         <front>
            <title>IEEE Standard for Information technology --
		Telecommunications and information exchange between systems
		Local and metropolitan area networks-- Specific requirements
		Part 11: Wireless LAN Medium Access Control (MAC) and Physical
		Layer (PHY) Specifications
            </title>
            <author>
               <organization>
		IEEE standard for Information Technology</organization>
            </author>
            <date/>
         </front>
      </reference>

      <reference anchor="IEEEstd802151">
         <front>
            <title> IEEE Standard for Information Technology -
		Telecommunications and Information Exchange Between Systems -
		Local and Metropolitan Area Networks - Specific Requirements. -
		Part 15.1: Wireless Medium Access Control (MAC) and Physical
		Layer (PHY) Specifications for Wireless Personal Area Networks
		(WPANs)
            </title>
            <author>
            	<organization> IEEE standard for Information Technology
		</organization>
            </author>
            <date/>
         </front>
      </reference>

      <reference anchor="IEEEstd802154">
         <front>
            <title> IEEE Standard for Local and metropolitan area networks --
                Part 15.4: Low-Rate Wireless Personal Area Networks (LR-WPANs)
            </title>
            <author>
		<organization> IEEE standard for Information Technology
		</organization>
            </author>
            <date/>
         </front>
      </reference>
    </references>

    <section title="Changes from revision 07 to revision 08"
	anchor="changes_07_08">

  <t>
    This section lists the changes between draft-ietf-6lo-backbone-router
	revisions ...-07.txt and ...-08.txt.
    <list style="symbols">
    <t>
	Reorganized the order of presentation of some sections so that related
	material is closer together.
    </t>
    <t>
	Added "Future Work" section.
    </t>
    <t>
	Added this section detailing recent changes.
    </t>
    <t>
	Used '6LN' when LLN node is meant.
    </t>
    <t>
	Updated bibliographic citations.
    </t>

  </list></t>
</section>  <!-- End of section "Changes from revision 07 to revision 08" -->


</back>

</rfc>
