Skip to main content

When to use RFC 6553, 6554 and IPv6-in-IPv6
draft-robles-roll-useofrplinfo-01

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft whose latest revision state is "Replaced".
Authors Ines Robles , Michael Richardson
Last updated 2015-09-14
Replaced by draft-ietf-roll-useofrplinfo, draft-ietf-roll-useofrplinfo, draft-ietf-roll-useofrplinfo, draft-ietf-roll-useofrplinfo, draft-ietf-roll-useofrplinfo, RFC 9008
RFC stream (None)
Formats
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-robles-roll-useofrplinfo-01
ROLL Working Group                                             M. Robles
Internet-Draft                                                  Ericsson
Intended status: Informational                             M. Richardson
Expires: March 17, 2016                                              SSW
                                                      September 14, 2015

              When to use RFC 6553, 6554 and IPv6-in-IPv6
                   draft-robles-roll-useofrplinfo-01

Abstract

   This document states different cases where RFC 6553, RFC 6554 and
   IPv6-in-IPv6 encapsulation is required to set the bases to help
   defining the compression of RPL routing information in LLN
   environments.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on March 17, 2016.

Copyright Notice

   Copyright (c) 2015 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Robles & Richardson      Expires March 17, 2016                 [Page 1]
Internet-Draft                  Useof6553                 September 2015

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   3
   2.  Terminology and Requirements Language . . . . . . . . . . . .   3
   3.  Sample/reference topology . . . . . . . . . . . . . . . . . .   4
   4.  Use cases . . . . . . . . . . . . . . . . . . . . . . . . . .   5
   5.  Storing mode  . . . . . . . . . . . . . . . . . . . . . . . .   7
     5.1.  Example of Flow from RPL-aware-leaf to root . . . . . . .   7
       5.1.1.  Summary of the use of headers . . . . . . . . . . . .   8
     5.2.  Example of Flow from root to RPL-aware-leaf . . . . . . .   8
       5.2.1.  Summary of the use of headers . . . . . . . . . . . .   8
     5.3.  Example of Flow from root to not-RPL-aware-leaf . . . . .   9
       5.3.1.  Summary of the use of headers . . . . . . . . . . . .   9
     5.4.  Example of Flow from not-RPL-aware-leaf to root . . . . .   9
       5.4.1.  Summary of the use of headers . . . . . . . . . . . .  10
     5.5.  Example of Flow from RPL-aware-leaf to Internet . . . . .  10
       5.5.1.  Summary of the use of headers . . . . . . . . . . . .  10
     5.6.  Example of Flow from Internet to RPL-aware-leaf . . . . .  11
       5.6.1.  Summary of the use of headers . . . . . . . . . . . .  11
     5.7.  Example of Flow from not-RPL-aware-leaf to Internet . . .  11
       5.7.1.  Summary of the use of headers . . . . . . . . . . . .  11
     5.8.  Example of Flow from Internet to not-RPL-aware-leaf . . .  12
       5.8.1.  Summary of the use of headers . . . . . . . . . . . .  12
     5.9.  Example of Flow from RPL-aware-leaf to RPL-aware-leaf . .  12
       5.9.1.  Summary of the use of headers . . . . . . . . . . . .  13
     5.10. Example of Flow from RPL-aware-leaf to not-RPL-aware-leaf  13
       5.10.1.  Summary of the use of headers  . . . . . . . . . . .  13
     5.11. Example of Flow from not-RPL-aware-leaf to RPL-aware-leaf  13
       5.11.1.  Summary of the use of headers  . . . . . . . . . . .  14
     5.12. Example of Flow from not-RPL-aware-leaf to not-RPL-aware-
           leaf  . . . . . . . . . . . . . . . . . . . . . . . . . .  14
       5.12.1.  Summary of the use of headers  . . . . . . . . . . .  14
   6.  Non Storing mode  . . . . . . . . . . . . . . . . . . . . . .  15
     6.1.  Example of Flow from RPL-aware-leaf to root . . . . . . .  15
       6.1.1.  Summary of the use of headers . . . . . . . . . . . .  15
     6.2.  Example of Flow from root to RPL-aware-leaf . . . . . . .  16
       6.2.1.  Summary of the use of headers . . . . . . . . . . . .  16
     6.3.  Example of Flow from root to not-RPL-aware-leaf . . . . .  16
       6.3.1.  Summary of the use of headers . . . . . . . . . . . .  16
     6.4.  Example of Flow from not-RPL-aware-leaf to root . . . . .  17
       6.4.1.  Summary of the use of headers . . . . . . . . . . . .  17
     6.5.  Example of Flow from RPL-aware-leaf to Internet . . . . .  17
       6.5.1.  Summary of the use of headers . . . . . . . . . . . .  18
     6.6.  Example of Flow from Internet to RPL-aware-leaf . . . . .  18
       6.6.1.  Summary of the use of headers . . . . . . . . . . . .  18
     6.7.  Example of Flow from not-RPL-aware-leaf to Internet . . .  18
       6.7.1.  Summary of the use of headers . . . . . . . . . . . .  19
     6.8.  Example of Flow from Internet to not-RPL-aware-leaf . . .  19

Robles & Richardson      Expires March 17, 2016                 [Page 2]
Internet-Draft                  Useof6553                 September 2015

       6.8.1.  Summary of the use of headers . . . . . . . . . . . .  19
     6.9.  Example of Flow from RPL-aware-leaf to RPL-aware-leaf . .  19
       6.9.1.  Summary of the use of headers . . . . . . . . . . . .  20
     6.10. Example of Flow from RPL-aware-leaf to not-RPL-aware-leaf  20
       6.10.1.  Summary of the use of headers  . . . . . . . . . . .  20
     6.11. Example of Flow from not-RPL-aware-leaf to RPL-aware-leaf  20
       6.11.1.  Summary of the use of headers  . . . . . . . . . . .  21
     6.12. Example of Flow from not-RPL-aware-leaf to not-RPL-aware-
           leaf  . . . . . . . . . . . . . . . . . . . . . . . . . .  21
       6.12.1.  Summary of the use of headers  . . . . . . . . . . .  21
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  22
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .  22
   9.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .  22
   10. References  . . . . . . . . . . . . . . . . . . . . . . . . .  22
     10.1.  Normative References . . . . . . . . . . . . . . . . . .  22
     10.2.  Informative References . . . . . . . . . . . . . . . . .  23
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  23

1.  Introduction

   RPL [RFC6550] is a routing protocol for constrained networks.  RFC
   6553 [RFC6553] defines the "RPL option", carried within the IPv6 Hop-
   by-Hop header to quickly identify inconsistencies in the routing
   topology.  RFC 6554 [RFC6554] defines the "RPL Source Route Header",
   an IPv6 Extension Header to deliver datagrams within a RPL routing
   domain.

   Several discussions in the ROLL/6lo/6TiSCH Mailing Lists took place
   focusing in the definition of how to compress RPL Information in
   constrained environment.  ROLL Virtual Interim Meeting (02-2015)
   concluded that there is a need to define how to use [RFC6553],
   [RFC6554] and IP-in-IP encapsulation to be able to set the correct
   environment for compression.

   This document is going to be focused in data plane messages and how
   can be transmitted within the above mentioned RFCs.

2.  Terminology and Requirements Language

   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 RFC 2119 [RFC2119].

   Terminology defined in [RFC7102]

Robles & Richardson      Expires March 17, 2016                 [Page 3]
Internet-Draft                  Useof6553                 September 2015

3.  Sample/reference topology

   A RPL network is composed of a 6LBR (6LoWPAN Border Router), 6LR
   (6LoWPAN Router) and 6LN (6LoWPAN Node) as leaf logically organized
   in a DODAG structure (Destination Oriented Directed Acyclic Graph).

   RPL defines the RPL Control messages (control plane ), a new ICMPv6
   message with Type 155.  DIS, DIO and DAO messages are all RPL Control
   messages but with different Code values.

   RPL supports two modes of Downward traffic: Storing, it is fully
   stateful or Non-Storing it is fully source routed.  A RPL Instance is
   either fully storing or fully non-storing, i.e. a RPL Instance with a
   combination of storing and non-storing nodes is not supported with
   the current specifications.

   +--------------+
   | Upper Layers |
   |              |
   +--------------+
   |   RPL        |
   |              |
   +--------------+
   |   ICMPv6     |
   |              |
   +--------------+
   |   IPv6       |
   |              |
   +--------------+
   |   6LoWPAN    |
   |              |
   +--------------+
   |   PHY-MAC    |
   |              |
   +--------------+

                           Figure 1: RPL Stack.

Robles & Richardson      Expires March 17, 2016                 [Page 4]
Internet-Draft                  Useof6553                 September 2015

                                    +---------+
                                +---+Internet |
                                |   +---------+
                                |
                           +----+--+
                           |DODAG  |
                 +---------+Root   +----------+
                 |         |6LBR   |          |
                 |         +----+--+          |
                 |              |             |
                 |              |             |
                 |              |             |
           +-----+-+         +--+---+      +--+---+
           |6LR    |         |      |      |      |
     +-----+       |         |      |      |      |
     |     |       |         |      |      |      +------+
     |     +-----+-+         +-+----+      +-+----+      |
     |           |             |             |           |
     |           |             |             |           |
     |           |             |             |           |
   +-+---+     +-+---+      +--+--+       +- --+     +---+-+
   |Leaf |     |     |      |     |       |    |     |     |
   |6LN  |     |     |      |     |       |    |     |     |
   +-----+     +-----+      +-----+       +----+     +-----+

                    Figure 2: A reference RPL Topology.

4.  Use cases

   In data plane context a combination of RFC6553, RFC6554 and IP-in-IP
   encapsulation is going to be analyzed for the following traffic
   flows:

      -Flow from RPL-aware-leaf to root

      -Flow from root to RPL-aware-leaf

      -Flow from not-RPL-aware-leaf to root

      -Flow from root to not-RPL-aware-leaf

      -Flow from RPL-aware-leaf to Internet

      -Flow from Internet to RPL-aware-leaf

      -Flow from not-RPL-aware-leaf to Internet

Robles & Richardson      Expires March 17, 2016                 [Page 5]
Internet-Draft                  Useof6553                 September 2015

      -Flow from Internet to not-RPL-aware-leaf

      -Flow from RPL-aware-leaf to RPL-aware-leaf

      -Flow from RPL-aware-leaf to not-RPL-aware-leaf

      -Flow from not-RPL-aware-leaf to RPL-aware-leaf

      -Flow from not-RPL-aware-leaf to not-RPL-aware-leaf

   The applicability for Storing and Non-Storing (Non-S) modes for the
   previous cases is showed as follows:

Robles & Richardson      Expires March 17, 2016                 [Page 6]
Internet-Draft                  Useof6553                 September 2015

   +-----------------+------+------+---------+-------+-------+---------+
   | Use Case        | RPI  | RH3  | IP-in-  | Non-S | Non-S | Non-S   |
   |                 | (RFC | (RFC | IP      | RPI   | RH3   | IP-in-  |
   |                 | 6553 | 6554 |         |       |       | IP      |
   |                 | )    | )    |         |       |       |         |
   +-----------------+------+------+---------+-------+-------+---------+
   | RPL-aware-leaf  | Yes  | ?    | Yes     | Yes   | ?     | Yes     |
   | to root         |      |      |         |       |       |         |
   | root to RPL-    | ?    | ?    | Yes     | ?     | ?     | Yes     |
   | aware-leaf      |      |      |         |       |       |         |
   | not-RPL-aware-  | Yes  | ?    | Yes     | Yes   | ?     | Yes     |
   | leaf to root    |      |      |         |       |       |         |
   | root to not-    | ?    | ?    | Yes     | ?     | ?     | Yes     |
   | RPL-aware-leaf  |      |      |         |       |       |         |
   | RPL-aware-leaf  | Yes  | ?    | Yes     | Yes   | ?     | Yes     |
   | to Internet     |      |      |         |       |       |         |
   | Internet to     | ?    | ?    | ?       | ?     | ?     | ?       |
   | RPL-aware-leaf  |      |      |         |       |       |         |
   | not-RPL-aware-  | ?    | ?    | yes     | ?     | ?     | Yes     |
   | leaf to         |      |      |         |       |       |         |
   | Internet        |      |      |         |       |       |         |
   | Internet to     | ?    | ?    | Yes     | ?     | ?     | Yes     |
   | not-RPL-aware-  |      |      |         |       |       |         |
   | leaf            |      |      |         |       |       |         |
   | RPL-aware-leaf  | Yes  | ?    | Yes     | Yes   | ?     | Yes     |
   | to RPL-aware-   |      |      |         |       |       |         |
   | leaf            |      |      |         |       |       |         |
   | RPL-aware-leaf  | ?    | ?    | Yes     | ?     | ?     | Yes     |
   | to not-RPL-     |      |      |         |       |       |         |
   | aware-leaf      |      |      |         |       |       |         |
   | not-RPL-aware-  | ?    | ?    | Yes     | ?     | ?     | Yes     |
   | leaf to RPL-    |      |      |         |       |       |         |
   | aware-leaf      |      |      |         |       |       |         |
   | not-RPL-aware-  | ?    | ?    | Yes     | ?     | ?     | Yes     |
   | leaf to not-    |      |      |         |       |       |         |
   | RPL-aware-leaf  |      |      |         |       |       |         |
   +-----------------+------+------+---------+-------+-------+---------+

   Table 1: Posibility to transmit in Storing or Non-Storing mode: RPI,
                        RH3, IP-in-IP encapsulation

5.  Storing mode

5.1.  Example of Flow from RPL-aware-leaf to root

   As states in Section 16.2 of [RFC6550]  a leaf node does not
   generally issue DIO messages, a leaf node accepts DIO messages (In
   inconsistency a leaf node generates DIO with infinite rank, to fix

Robles & Richardson      Expires March 17, 2016                 [Page 7]
Internet-Draft                  Useof6553                 September 2015

   it).  It may issue DAO and DIS messages though it generally ignores
   DAO and DIS messages.

   Related to RFC 6554 the Source Header route is added and removed by
   DODAG root.  RFC 6554 was created to strictly send information
   between RPL routers in the same RPL routing domain.

   In storing mode is suitable the use of RFC 6553 to send RPL
   Information through HBH field checking the routing table to find out
   where to send the message.  It may include IP-in-IP encapsulation to
   transmit information not related with the RPL domain.

   In this case the flow comprises:

   RPL-aware-leaf (6LN) --> 6LR --> root (6LBR)

   TODO: ADD explanation and picture based on the following table.

5.1.1.  Summary of the use of headers

   TODO: What about fragmentations headers?

                 +-------------------+-----+-----+------+
                 | Header            | 6LN | 6LR | 6LBR |
                 +-------------------+-----+-----+------+
                 | Inserted headers  | ?   | ?   | ?    |
                 | Removed headers   | ?   | ?   | ?    |
                 | Re-added headers  | ?   | ?   | ?    |
                 | Modified headers  | ?   | ?   | ?    |
                 | Untouched headers | ?   | ?   | ?    |
                 +-------------------+-----+-----+------+

    Storing: Summary of the use of headers from RPL-aware-leaf to root

5.2.  Example of Flow from root to RPL-aware-leaf

   In this case the flow comprises:

   root (6LBR)--> 6LR --> RPL-aware-leaf (6LN)

   TODO: ADD explanation and picture based on the following table

5.2.1.  Summary of the use of headers

   TODO: What about fragmentations headers?

Robles & Richardson      Expires March 17, 2016                 [Page 8]
Internet-Draft                  Useof6553                 September 2015

                 +-------------------+------+-----+-----+
                 | Header            | 6LBR | 6LR | 6LN |
                 +-------------------+------+-----+-----+
                 | Inserted headers  | ?    | ?   | ?   |
                 | Removed headers   | ?    | ?   | ?   |
                 | Re-added headers  | ?    | ?   | ?   |
                 | Modified headers  | ?    | ?   | ?   |
                 | Untouched headers | ?    | ?   | ?   |
                 +-------------------+------+-----+-----+

    Storing: Summary of the use of headers from root to RPL-aware-leaf

5.3.  Example of Flow from root to not-RPL-aware-leaf

   In this case the flow comprises:

   root (6LBR)--> 6LR --> not-RPL-aware-leaf (6LN)

   TODO: ADD explanation and picture based on the following table

5.3.1.  Summary of the use of headers

   TODO: What about fragmentations headers?

          +-------------------+------+-----+-------------------+
          | Header            | 6LBR | 6LR | not-RPL-aware 6LN |
          +-------------------+------+-----+-------------------+
          | Inserted headers  | ?    | ?   | ?                 |
          | Removed headers   | ?    | ?   | ?                 |
          | Re-added headers  | ?    | ?   | ?                 |
          | Modified headers  | ?    | ?   | ?                 |
          | Untouched headers | ?    | ?   | ?                 |
          +-------------------+------+-----+-------------------+

    Storing: Summary of the use of headers from root to not-RPL-aware-
                                   leaf

5.4.  Example of Flow from not-RPL-aware-leaf to root

   In this case the flow comprises:

   not-RPL-aware-leaf (6LN) --> 6LR --> root (6LBR)

   TODO: ADD explanation and picture based on the following table

Robles & Richardson      Expires March 17, 2016                 [Page 9]
Internet-Draft                  Useof6553                 September 2015

5.4.1.  Summary of the use of headers

   TODO: What about fragmentations headers?

          +-------------------+-------------------+-----+------+
          | Header            | not-RPL-aware 6LN | 6LR | 6LBR |
          +-------------------+-------------------+-----+------+
          | Inserted headers  | ?                 | ?   | ?    |
          | Removed headers   | ?                 | ?   | ?    |
          | Re-added headers  | ?                 | ?   | ?    |
          | Modified headers  | ?                 | ?   | ?    |
          | Untouched headers | ?                 | ?   | ?    |
          +-------------------+-------------------+-----+------+

     Storing: Summary of the use of headers from not-RPL-aware-leaf to
                                   root

5.5.  Example of Flow from RPL-aware-leaf to Internet

   RPL information from RFC 6553 should not go out to Internet.  The
   router should take this information out before send the packet to
   Internet.  The HBH Option is going to be analyzed in each node to the
   root.

   In this case the flow comprises:

   RPL-aware-leaf (6LN) --> 6LR --> root (6LBR) --> Internet

   TODO: ADD explanation and picture based on the following table

5.5.1.  Summary of the use of headers

   TODO: What about fragmentations headers?

            +-------------------+-----+-----+------+----------+
            | Header            | 6LN | 6LR | 6LBR | Internet |
            +-------------------+-----+-----+------+----------+
            | Inserted headers  | ?   | ?   | ?    | ?        |
            | Removed headers   | ?   | ?   | ?    | ?        |
            | Re-added headers  | ?   | ?   | ?    | ?        |
            | Modified headers  | ?   | ?   | ?    | ?        |
            | Untouched headers | ?   | ?   | ?    | ?        |
            +-------------------+-----+-----+------+----------+

       Storing: Summary of the use of headers from RPL-aware-leaf to
                                 Internet

Robles & Richardson      Expires March 17, 2016                [Page 10]
Internet-Draft                  Useof6553                 September 2015

5.6.  Example of Flow from Internet to RPL-aware-leaf

   In this case the flow comprises:

   Internet --> root (6LBR) --> 6LR --> RPL-aware-leaf (6LN)

   TODO: ADD explanation and picture based on the following table

5.6.1.  Summary of the use of headers

   TODO: What about fragmentations headers?

            +-------------------+----------+------+-----+-----+
            | Header            | Internet | 6LBR | 6LR | 6LN |
            +-------------------+----------+------+-----+-----+
            | Inserted headers  | ?        | ?    | ?   | ?   |
            | Removed headers   | ?        | ?    | ?   | ?   |
            | Re-added headers  | ?        | ?    | ?   | ?   |
            | Modified headers  | ?        | ?    | ?   | ?   |
            | Untouched headers | ?        | ?    | ?   | ?   |
            +-------------------+----------+------+-----+-----+

    Storing: Summary of the use of headers from Internet to RPL-aware-
                                   leaf

5.7.  Example of Flow from not-RPL-aware-leaf to Internet

   In this case the flow comprises:

   not-RPL-aware-leaf (6LN) --> 6LR --> root (6LBR) --> Internet

   TODO: ADD explanation and picture based on the following table

5.7.1.  Summary of the use of headers

   TODO: What about fragmentations headers?

Robles & Richardson      Expires March 17, 2016                [Page 11]
Internet-Draft                  Useof6553                 September 2015

     +-------------------+-------------------+-----+------+----------+
     | Header            | not-RPL-aware 6LN | 6LR | 6LBR | Internet |
     +-------------------+-------------------+-----+------+----------+
     | Inserted headers  | ?                 | ?   | ?    | ?        |
     | Removed headers   | ?                 | ?   | ?    | ?        |
     | Re-added headers  | ?                 | ?   | ?    | ?        |
     | Modified headers  | ?                 | ?   | ?    | ?        |
     | Untouched headers | ?                 | ?   | ?    | ?        |
     +-------------------+-------------------+-----+------+----------+

     Storing: Summary of the use of headers from not-RPL-aware-leaf to
                                 Internet

5.8.  Example of Flow from Internet to not-RPL-aware-leaf

   In this case the flow comprises:

   Internet --> root (6LBR) --> 6LR --> not-RPL-aware-leaf (6LN)

   TODO: ADD explanation and picture based on the following table

5.8.1.  Summary of the use of headers

     +-------------------+----------+------+-----+-------------------+
     | Header            | Internet | 6LBR | 6LR | not-RPL-aware 6LN |
     +-------------------+----------+------+-----+-------------------+
     | Inserted headers  | ?        | ?    | ?   | ?                 |
     | Removed headers   | ?        | ?    | ?   | ?                 |
     | Re-added headers  | ?        | ?    | ?   | ?                 |
     | Modified headers  | ?        | ?    | ?   | ?                 |
     | Untouched headers | ?        | ?    | ?   | ?                 |
     +-------------------+----------+------+-----+-------------------+

     Storing: Summary of the use of headers from Internet to not-RPL-
                                aware-leaf

5.9.  Example of Flow from RPL-aware-leaf to RPL-aware-leaf

   In [RFC6550] RPL allows a simple one-hop P2P optimization for both
   storing and non-storing networks.  A node may send a P2P packet
   destined to a one-hop neighbor directly to that node.  Section 9 in
   [RFC6550].

   In this case the flow comprises:

   6LN --> 6LR --> root (6LBR) --> 6LR --> 6LN

   TODO: ADD explanation and picture based on the following table

Robles & Richardson      Expires March 17, 2016                [Page 12]
Internet-Draft                  Useof6553                 September 2015

5.9.1.  Summary of the use of headers

          +-------------------+---------+-----+------+---------+
          | Header            | 6LN src | 6LR | 6LBR | 6LN dst |
          +-------------------+---------+-----+------+---------+
          | Inserted headers  | ?       | ?   | ?    | ?       |
          | Removed headers   | ?       | ?   | ?    | ?       |
          | Re-added headers  | ?       | ?   | ?    | ?       |
          | Modified headers  | ?       | ?   | ?    | ?       |
          | Untouched headers | ?       | ?   | ?    | ?       |
          +-------------------+---------+-----+------+---------+

     Storing: Summary of the use of headers for RPL-aware-leaf to RPL-
                                aware-leaf

5.10.  Example of Flow from RPL-aware-leaf to not-RPL-aware-leaf

   In this case the flow comprises:

   6LN --> 6LR --> root (6LBR) --> 6LR --> not-RPL-aware 6LN

   TODO: ADD explanation and picture based on the following table

5.10.1.  Summary of the use of headers

       +-------------------+-----+-----+------+--------------------+
       | Header            | 6LN | 6LR | 6LBR | not-RPL-aware 6LBR |
       +-------------------+-----+-----+------+--------------------+
       | Inserted headers  | ?   | ?   | ?    | ?                  |
       | Removed headers   | ?   | ?   | ?    | ?                  |
       | Re-added headers  | ?   | ?   | ?    | ?                  |
       | Modified headers  | ?   | ?   | ?    | ?                  |
       | Untouched headers | ?   | ?   | ?    | ?                  |
       +-------------------+-----+-----+------+--------------------+

    Storing: Summary of the use of headers from RPL-aware-leaf to not-
                              RPL-aware-leaf

5.11.  Example of Flow from not-RPL-aware-leaf to RPL-aware-leaf

   In this case the flow comprises:

   not-RPL-aware 6LN --> 6LR --> root (6LBR) --> 6LR --> 6LN

   TODO: ADD explanation and picture based on the following table

Robles & Richardson      Expires March 17, 2016                [Page 13]
Internet-Draft                  Useof6553                 September 2015

5.11.1.  Summary of the use of headers

       +-------------------+--------------------+-----+------+-----+
       | Header            | not-RPL-aware 6LBR | 6LR | 6LBR | 6LN |
       +-------------------+--------------------+-----+------+-----+
       | Inserted headers  | ?                  | ?   | ?    | ?   |
       | Removed headers   | ?                  | ?   | ?    | ?   |
       | Re-added headers  | ?                  | ?   | ?    | ?   |
       | Modified headers  | ?                  | ?   | ?    | ?   |
       | Untouched headers | ?                  | ?   | ?    | ?   |
       +-------------------+--------------------+-----+------+-----+

     Storing: Summary of the use of headers from not-RPL-aware-leaf to
                              RPL-aware-leaf

5.12.  Example of Flow from not-RPL-aware-leaf to not-RPL-aware-leaf

   In this case the flow comprises:

   not-RPL-aware 6LN --> 6LR --> root (6LBR) --> 6LR --> not-RPL-aware
   6LN

   TODO: ADD explanation and picture based on the following table

5.12.1.  Summary of the use of headers

   +--------------+-------------------+-----+------+-------------------+
   | Header       | not-RPL-aware 6LN | 6LR | 6LBR | not-RPL-aware 6LN |
   |              | src               |     |      | dst               |
   +--------------+-------------------+-----+------+-------------------+
   | Inserted     | ?                 | ?   | ?    | ?                 |
   | headers      |                   |     |      |                   |
   | Removed      | ?                 | ?   | ?    | ?                 |
   | headers      |                   |     |      |                   |
   | Re-added     | ?                 | ?   | ?    | ?                 |
   | headers      |                   |     |      |                   |
   | Modified     | ?                 | ?   | ?    | ?                 |
   | headers      |                   |     |      |                   |
   | Untouched    | ?                 | ?   | ?    | ?                 |
   | headers      |                   |     |      |                   |
   +--------------+-------------------+-----+------+-------------------+

     Storing: Summary of the use of headers from not-RPL-aware-leaf to
                            not-RPL-aware-leaf

Robles & Richardson      Expires March 17, 2016                [Page 14]
Internet-Draft                  Useof6553                 September 2015

6.  Non Storing mode

6.1.  Example of Flow from RPL-aware-leaf to root

   In non-storing mode the leaf node uses Hop-By-Hop option (RFC 6553)
   to indicate the routing information to send messages to the DODAG
   root, this message is going to be analyzed in each node until arrive
   the DODAG root.

   In this case the flow comprises:

   RPL-aware-leaf (6LN) --> 6LR --> root (6LBR)

   +------------------+
   |  Dispatch        |
   |                  |
   +------------------+
   |  LowPAN_HC       |
   |                  |
   +------------------+
   |  rpl_option      |
   |                  |
   +------------------+
   |   SHR            |
   |                  |
   +------------------+
   | IPv6 payload     |
   |                  |
   +------------------+

              Figure 3: From leaf to Root - Non-Storing Mode

   TODO: ADD explanation/fix picture based on the following table

6.1.1.  Summary of the use of headers

Robles & Richardson      Expires March 17, 2016                [Page 15]
Internet-Draft                  Useof6553                 September 2015

                 +-------------------+-----+-----+------+
                 | Header            | 6LN | 6LR | 6LBR |
                 +-------------------+-----+-----+------+
                 | Inserted headers  | ?   | ?   | ?    |
                 | Removed headers   | ?   | ?   | ?    |
                 | Re-added headers  | ?   | ?   | ?    |
                 | Modified headers  | ?   | ?   | ?    |
                 | Untouched headers | ?   | ?   | ?    |
                 +-------------------+-----+-----+------+

    Storing: Summary of the use of headers from RPL-aware-leaf to root

6.2.  Example of Flow from root to RPL-aware-leaf

   In this case the flow comprises:

   root (6LBR)--> 6LR --> RPL-aware-leaf (6LN)

   TODO: ADD explanation and picture based on the following table

6.2.1.  Summary of the use of headers

                 +-------------------+------+-----+-----+
                 | Header            | 6LBR | 6LR | 6LN |
                 +-------------------+------+-----+-----+
                 | Inserted headers  | ?    | ?   | ?   |
                 | Removed headers   | ?    | ?   | ?   |
                 | Re-added headers  | ?    | ?   | ?   |
                 | Modified headers  | ?    | ?   | ?   |
                 | Untouched headers | ?    | ?   | ?   |
                 +-------------------+------+-----+-----+

    Storing: Summary of the use of headers from root to RPL-aware-leaf

6.3.  Example of Flow from root to not-RPL-aware-leaf

   In this case the flow comprises:

   root (6LBR)--> 6LR --> not-RPL-aware-leaf (6LN)

   TODO: ADD explanation and picture based on the following table

6.3.1.  Summary of the use of headers

Robles & Richardson      Expires March 17, 2016                [Page 16]
Internet-Draft                  Useof6553                 September 2015

          +-------------------+------+-----+-------------------+
          | Header            | 6LBR | 6LR | not-RPL-aware 6LN |
          +-------------------+------+-----+-------------------+
          | Inserted headers  | ?    | ?   | ?                 |
          | Removed headers   | ?    | ?   | ?                 |
          | Re-added headers  | ?    | ?   | ?                 |
          | Modified headers  | ?    | ?   | ?                 |
          | Untouched headers | ?    | ?   | ?                 |
          +-------------------+------+-----+-------------------+

    Storing: Summary of the use of headers from root to not-RPL-aware-
                                   leaf

6.4.  Example of Flow from not-RPL-aware-leaf to root

   In this case the flow comprises:

   not-RPL-aware-leaf (6LN) --> 6LR --> root (6LBR)

   TODO: ADD explanation and picture based on the following table

6.4.1.  Summary of the use of headers

          +-------------------+-------------------+-----+------+
          | Header            | not-RPL-aware 6LN | 6LR | 6LBR |
          +-------------------+-------------------+-----+------+
          | Inserted headers  | ?                 | ?   | ?    |
          | Removed headers   | ?                 | ?   | ?    |
          | Re-added headers  | ?                 | ?   | ?    |
          | Modified headers  | ?                 | ?   | ?    |
          | Untouched headers | ?                 | ?   | ?    |
          +-------------------+-------------------+-----+------+

     Storing: Summary of the use of headers from not-RPL-aware-leaf to
                                   root

6.5.  Example of Flow from RPL-aware-leaf to Internet

   In this case the flow comprises:

   RPL-aware-leaf (6LN) --> 6LR --> root (6LBR) --> Internet

   TODO: ADD explanation and picture based on the following table

Robles & Richardson      Expires March 17, 2016                [Page 17]
Internet-Draft                  Useof6553                 September 2015

6.5.1.  Summary of the use of headers

            +-------------------+-----+-----+------+----------+
            | Header            | 6LN | 6LR | 6LBR | Internet |
            +-------------------+-----+-----+------+----------+
            | Inserted headers  | ?   | ?   | ?    | ?        |
            | Removed headers   | ?   | ?   | ?    | ?        |
            | Re-added headers  | ?   | ?   | ?    | ?        |
            | Modified headers  | ?   | ?   | ?    | ?        |
            | Untouched headers | ?   | ?   | ?    | ?        |
            +-------------------+-----+-----+------+----------+

       Storing: Summary of the use of headers from RPL-aware-leaf to
                                 Internet

6.6.  Example of Flow from Internet to RPL-aware-leaf

   In this case the flow comprises:

   Internet --> root (6LBR) --> 6LR --> RPL-aware-leaf (6LN)

   TODO: ADD explanation and picture based on the following table

6.6.1.  Summary of the use of headers

            +-------------------+----------+------+-----+-----+
            | Header            | Internet | 6LBR | 6LR | 6LN |
            +-------------------+----------+------+-----+-----+
            | Inserted headers  | ?        | ?    | ?   | ?   |
            | Removed headers   | ?        | ?    | ?   | ?   |
            | Re-added headers  | ?        | ?    | ?   | ?   |
            | Modified headers  | ?        | ?    | ?   | ?   |
            | Untouched headers | ?        | ?    | ?   | ?   |
            +-------------------+----------+------+-----+-----+

    Storing: Summary of the use of headers from Internet to RPL-aware-
                                   leaf

6.7.  Example of Flow from not-RPL-aware-leaf to Internet

   In this case the flow comprises:

   not-RPL-aware-leaf (6LN) --> 6LR --> root (6LBR) --> Internet

   TODO: ADD explanation and picture based on the following table

Robles & Richardson      Expires March 17, 2016                [Page 18]
Internet-Draft                  Useof6553                 September 2015

6.7.1.  Summary of the use of headers

     +-------------------+-------------------+-----+------+----------+
     | Header            | not-RPL-aware 6LN | 6LR | 6LBR | Internet |
     +-------------------+-------------------+-----+------+----------+
     | Inserted headers  | ?                 | ?   | ?    | ?        |
     | Removed headers   | ?                 | ?   | ?    | ?        |
     | Re-added headers  | ?                 | ?   | ?    | ?        |
     | Modified headers  | ?                 | ?   | ?    | ?        |
     | Untouched headers | ?                 | ?   | ?    | ?        |
     +-------------------+-------------------+-----+------+----------+

     Storing: Summary of the use of headers from not-RPL-aware-leaf to
                                 Internet

6.8.  Example of Flow from Internet to not-RPL-aware-leaf

   In this case the flow comprises:

   Internet --> root (6LBR) --> 6LR --> not-RPL-aware-leaf (6LN)

   TODO: ADD explanation and picture based on the following table

6.8.1.  Summary of the use of headers

     +-------------------+----------+------+-----+-------------------+
     | Header            | Internet | 6LBR | 6LR | not-RPL-aware 6LN |
     +-------------------+----------+------+-----+-------------------+
     | Inserted headers  | ?        | ?    | ?   | ?                 |
     | Removed headers   | ?        | ?    | ?   | ?                 |
     | Re-added headers  | ?        | ?    | ?   | ?                 |
     | Modified headers  | ?        | ?    | ?   | ?                 |
     | Untouched headers | ?        | ?    | ?   | ?                 |
     +-------------------+----------+------+-----+-------------------+

     Storing: Summary of the use of headers from Internet to not-RPL-
                                aware-leaf

6.9.  Example of Flow from RPL-aware-leaf to RPL-aware-leaf

   In this case the flow comprises:

   6LN --> 6LR --> root (6LBR) --> 6LR --> 6LN

   TODO: ADD explanation and picture based on the following table

Robles & Richardson      Expires March 17, 2016                [Page 19]
Internet-Draft                  Useof6553                 September 2015

6.9.1.  Summary of the use of headers

          +-------------------+---------+-----+------+---------+
          | Header            | 6LN src | 6LR | 6LBR | 6LN dst |
          +-------------------+---------+-----+------+---------+
          | Inserted headers  | ?       | ?   | ?    | ?       |
          | Removed headers   | ?       | ?   | ?    | ?       |
          | Re-added headers  | ?       | ?   | ?    | ?       |
          | Modified headers  | ?       | ?   | ?    | ?       |
          | Untouched headers | ?       | ?   | ?    | ?       |
          +-------------------+---------+-----+------+---------+

     Storing: Summary of the use of headers for RPL-aware-leaf to RPL-
                                aware-leaf

6.10.  Example of Flow from RPL-aware-leaf to not-RPL-aware-leaf

   In this case the flow comprises:

   6LN --> 6LR --> root (6LBR) --> 6LR --> not-RPL-aware 6LN

   TODO: ADD explanation and picture based on the following table

6.10.1.  Summary of the use of headers

       +-------------------+-----+-----+------+--------------------+
       | Header            | 6LN | 6LR | 6LBR | not-RPL-aware 6LBR |
       +-------------------+-----+-----+------+--------------------+
       | Inserted headers  | ?   | ?   | ?    | ?                  |
       | Removed headers   | ?   | ?   | ?    | ?                  |
       | Re-added headers  | ?   | ?   | ?    | ?                  |
       | Modified headers  | ?   | ?   | ?    | ?                  |
       | Untouched headers | ?   | ?   | ?    | ?                  |
       +-------------------+-----+-----+------+--------------------+

    Storing: Summary of the use of headers from RPL-aware-leaf to not-
                              RPL-aware-leaf

6.11.  Example of Flow from not-RPL-aware-leaf to RPL-aware-leaf

   In this case the flow comprises:

   not-RPL-aware 6LN --> 6LR --> root (6LBR) --> 6LR --> 6LN

   TODO: ADD explanation and picture based on the following table

Robles & Richardson      Expires March 17, 2016                [Page 20]
Internet-Draft                  Useof6553                 September 2015

6.11.1.  Summary of the use of headers

       +-------------------+--------------------+-----+------+-----+
       | Header            | not-RPL-aware 6LBR | 6LR | 6LBR | 6LN |
       +-------------------+--------------------+-----+------+-----+
       | Inserted headers  | ?                  | ?   | ?    | ?   |
       | Removed headers   | ?                  | ?   | ?    | ?   |
       | Re-added headers  | ?                  | ?   | ?    | ?   |
       | Modified headers  | ?                  | ?   | ?    | ?   |
       | Untouched headers | ?                  | ?   | ?    | ?   |
       +-------------------+--------------------+-----+------+-----+

     Storing: Summary of the use of headers from not-RPL-aware-leaf to
                              RPL-aware-leaf

6.12.  Example of Flow from not-RPL-aware-leaf to not-RPL-aware-leaf

   In this case the flow comprises:

   not-RPL-aware 6LN --> 6LR --> root (6LBR) --> 6LR --> not-RPL-aware
   6LN

   TODO: ADD explanation and picture based on the following table

6.12.1.  Summary of the use of headers

   +--------------+-------------------+-----+------+-------------------+
   | Header       | not-RPL-aware 6LN | 6LR | 6LBR | not-RPL-aware 6LN |
   |              | src               |     |      | dst               |
   +--------------+-------------------+-----+------+-------------------+
   | Inserted     | ?                 | ?   | ?    | ?                 |
   | headers      |                   |     |      |                   |
   | Removed      | ?                 | ?   | ?    | ?                 |
   | headers      |                   |     |      |                   |
   | Re-added     | ?                 | ?   | ?    | ?                 |
   | headers      |                   |     |      |                   |
   | Modified     | ?                 | ?   | ?    | ?                 |
   | headers      |                   |     |      |                   |
   | Untouched    | ?                 | ?   | ?    | ?                 |
   | headers      |                   |     |      |                   |
   +--------------+-------------------+-----+------+-------------------+

     Storing: Summary of the use of headers from not-RPL-aware-leaf to
                            not-RPL-aware-leaf

Robles & Richardson      Expires March 17, 2016                [Page 21]
Internet-Draft                  Useof6553                 September 2015

7.  IANA Considerations

   There are no IANA considerations related to this document.

8.  Security Considerations

   TODO.

9.  Acknowledgments

   This work is partially funded by the FP7 Marie Curie Initial Training
   Network (ITN) METRICS project (grant agreement No.  607728).

   The authors would like to acknowledge the review, feedback, and
   comments of Thomas Watteyne, Xavier Vilajosana, Robert Cragie and
   Pascal Thubert

   To be completed with additional Acknowledgments.

10.  References

10.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <http://www.rfc-editor.org/info/rfc2119>.

   [RFC6550]  Winter, T., Ed., Thubert, P., Ed., Brandt, A., Hui, J.,
              Kelsey, R., Levis, P., Pister, K., Struik, R., Vasseur,
              JP., and R. Alexander, "RPL: IPv6 Routing Protocol for
              Low-Power and Lossy Networks", RFC 6550,
              DOI 10.17487/RFC6550, March 2012,
              <http://www.rfc-editor.org/info/rfc6550>.

   [RFC6553]  Hui, J. and JP. Vasseur, "The Routing Protocol for Low-
              Power and Lossy Networks (RPL) Option for Carrying RPL
              Information in Data-Plane Datagrams", RFC 6553,
              DOI 10.17487/RFC6553, March 2012,
              <http://www.rfc-editor.org/info/rfc6553>.

   [RFC6554]  Hui, J., Vasseur, JP., Culler, D., and V. Manral, "An IPv6
              Routing Header for Source Routes with the Routing Protocol
              for Low-Power and Lossy Networks (RPL)", RFC 6554,
              DOI 10.17487/RFC6554, March 2012,
              <http://www.rfc-editor.org/info/rfc6554>.

Robles & Richardson      Expires March 17, 2016                [Page 22]
Internet-Draft                  Useof6553                 September 2015

10.2.  Informative References

   [RFC7102]  Vasseur, JP., "Terms Used in Routing for Low-Power and
              Lossy Networks", RFC 7102, DOI 10.17487/RFC7102, January
              2014, <http://www.rfc-editor.org/info/rfc7102>.

Authors' Addresses

   Maria Ines Robles
   Ericsson
   Hirsalantie 11
   Jorvas  02420
   Finland

   Email: maria.ines.robles@ericsson.com

   Michaelbl C. Richardson
   Sandelman Software Works
   470 Dawson Avenue
   Ottawa, ON  K1Z 5V7
   CA

   Email: mcr+ietf@sandelman.ca
   URI:   http://www.sandelman.ca/

Robles & Richardson      Expires March 17, 2016                [Page 23]