draft-ietf-roll-nsa-extension-07.txt   draft-ietf-roll-nsa-extension-08.txt 
ROLL R. Koutsiamanis, Ed. ROLL R.-A. Koutsiamanis, Ed.
Internet-Draft G. Papadopoulos Internet-Draft G.Z. Papadopoulos
Intended status: Standards Track N. Montavont Intended status: Standards Track N. Montavont
Expires: September 10, 2020 IMT Atlantique Expires: 28 September 2020 IMT Atlantique
P. Thubert P. Thubert
Cisco Cisco
March 9, 2020 27 March 2020
Common Ancestor Objective Function and Parent Set DAG Metric Container Common Ancestor Objective Function and Parent Set DAG Metric Container
Extension Extension
draft-ietf-roll-nsa-extension-07 draft-ietf-roll-nsa-extension-08
Abstract Abstract
Packet Replication and Elimination is a method in which several Packet Replication and Elimination is a method in which several
copies of a data packet are sent in the network in order to achieve copies of a data packet are sent in the network in order to achieve
high reliability and low jitter. This document details how to apply high reliability and low jitter. This document details how to apply
Packet Replication and Elimination in RPL, especially how to exchange Packet Replication and Elimination in RPL, especially how to exchange
information within RPL control packets to let a node better select information within RPL control packets to let a node better select
the different parents that will be used to forward the multiple the different parents that will be used to forward the multiple
copies of a packet. This document also describes the Objective copies of a packet. This document also describes the Objective
skipping to change at page 1, line 42 skipping to change at page 1, line 42
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on September 10, 2020. This Internet-Draft will expire on 28 September 2020.
Copyright Notice Copyright Notice
Copyright (c) 2020 IETF Trust and the persons identified as the Copyright (c) 2020 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents (https://trustee.ietf.org/
(https://trustee.ietf.org/license-info) in effect on the date of license-info) in effect on the date of publication of this document.
publication of this document. Please review these documents Please review these documents carefully, as they describe your rights
carefully, as they describe your rights and restrictions with respect and restrictions with respect to this document. Code Components
to this document. Code Components extracted from this document must extracted from this document must include Simplified BSD License text
include Simplified BSD License text as described in Section 4.e of as described in Section 4.e of the Trust Legal Provisions and are
the Trust Legal Provisions and are provided without warranty as provided without warranty as described in the Simplified BSD License.
described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Common Ancestor AP Selection Policies . . . . . . . . . . . . 4 3. Common Ancestor AP Selection Policies . . . . . . . . . . . . 4
3.1. Common Ancestor Strict . . . . . . . . . . . . . . . . . 5 3.1. Common Ancestor Strict . . . . . . . . . . . . . . . . . 5
3.2. Common Ancestor Medium . . . . . . . . . . . . . . . . . 6 3.2. Common Ancestor Medium . . . . . . . . . . . . . . . . . 6
3.3. Common Ancestor Relaxed . . . . . . . . . . . . . . . . . 6 3.3. Common Ancestor Relaxed . . . . . . . . . . . . . . . . . 6
4. Common Ancestor Objective Function . . . . . . . . . . . . . 6 4. Common Ancestor Objective Function . . . . . . . . . . . . . 6
4.1. Usage . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4.1. Usage . . . . . . . . . . . . . . . . . . . . . . . . . . 8
5. Node State and Attribute (NSA) object type extension . . . . 9 5. Node State and Attribute (NSA) object type extension . . . . 9
5.1. Usage . . . . . . . . . . . . . . . . . . . . . . . . . . 11 5.1. Usage . . . . . . . . . . . . . . . . . . . . . . . . . . 11
6. Controlling PRE . . . . . . . . . . . . . . . . . . . . . . . 11 6. Controlling PRE . . . . . . . . . . . . . . . . . . . . . . . 12
7. Security Considerations . . . . . . . . . . . . . . . . . . . 11 7. Security Considerations . . . . . . . . . . . . . . . . . . . 12
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 12 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 12
9.1. Informative references . . . . . . . . . . . . . . . . . 12 9.1. Informative references . . . . . . . . . . . . . . . . . 12
9.2. Other Informative References . . . . . . . . . . . . . . 13 9.2. Other Informative References . . . . . . . . . . . . . . 14
Appendix A. Implementation Status . . . . . . . . . . . . . . . 13 Appendix A. Implementation Status . . . . . . . . . . . . . . . 14
Appendix B. Choosing an AP selection policy . . . . . . . . . . 15 Appendix B. Choosing an AP selection policy . . . . . . . . . . 16
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 16 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17
1. Introduction 1. Introduction
Networks in the industrial context must provide stringent guarantees Networks in the industrial context must provide stringent guarantees
in terms of reliability and predictability, with this domain being in terms of reliability and predictability, with this domain being
one of main ones addressed by Deterministic Networking [RFC8557]. one of main ones addressed by Deterministic Networking [RFC8557].
Packet Replication and Elimination (PRE) Packet Replication and Elimination (PRE)
[I-D.papadopoulos-6tisch-pre-reqs] is a technique which allows [I-D.papadopoulos-raw-pareo-reqs] is a technique which allows
redundant paths in the network to be utilized for traffic requiring redundant paths in the network to be utilized for traffic requiring
higher reliability. Allowing industrial applications to function higher reliability. Allowing industrial applications to function
over wireless networks requires the application of the principles and over wireless networks requires the application of the principles and
architecture of Deterministic Networking [RFC8655]. This results in architecture of Deterministic Networking [RFC8655]. This results in
designs which aim at optimizing packet delivery rate and bounding designs which aim at optimizing packet delivery rate and bounding
latency. Additionally, nodes operating on battery need to minimize latency. Additionally, nodes operating on battery need to minimize
their energy consumption. their energy consumption.
As an example, to meet this goal, IEEE Std. 802.15.4 [IEEE802154] As an example, to meet this goal, IEEE Std. 802.15.4 [IEEE802154]
provides Time-Slotted Channel Hopping (TSCH), a mode of operation provides Time-Slotted Channel Hopping (TSCH), a mode of operation
which uses a common communication schedule based on timeslots to which uses a common communication schedule based on timeslots to
allow deterministic medium access as well as channel hopping to work allow deterministic medium access as well as channel hopping to work
around radio interference. However, since TSCH uses retransmissions around radio interference. However, since TSCH uses retransmissions
in the event of a failed transmission, end-to-end latency and jitter in the event of a failed transmission, end-to-end latency and jitter
performance can deteriorate. performance can deteriorate.
Furthermore, the 6TiSCH working group, focusing on IPv6 over IEEE Furthermore, the 6TiSCH working group, focusing on IPv6 over IEEE
Std. 802.15.4-TSCH, has worked on these issues and produced the Std. 802.15.4-TSCH, has worked on these issues and produced the
"6TiSCH Architecture" [I-D.ietf-6tisch-architecture] to address that "6TiSCH Architecture" [I-D.ietf-6tisch-architecture] to address that
case. Building on this architecture, "Exploiting Packet Replication case. Building on this architecture, "Exploiting Packet Replication
and Elimination in Complex Tracks in 6TiSCH LLNs" and Elimination in Complex Tracks in LLNs"
[I-D.papadopoulos-6tisch-pre-reqs] leverages PRE to improve the [I-D.papadopoulos-raw-pareo-reqs] leverages PRE to improve the Packet
Packet Delivery Ratio (PDR), to provide a hard bound to the end-to- Delivery Ratio (PDR), to provide a hard bound to the end-to-end
end latency, and thus to limit jitter. latency, and thus to limit jitter.
PRE is a general method of maximizing packet delivery rate and PRE is a general method of maximizing packet delivery rate and
potentially minimizing latency and jitter, not limited to 6TiSCH. potentially minimizing latency and jitter, not limited to 6TiSCH.
More specifically, PRE achieves controlled redundancy by laying More specifically, PRE achieves controlled redundancy by laying
multiple forwarding paths through the network and using them in multiple forwarding paths through the network and using them in
parallel for different copies of a same packet. PRE can follow the parallel for different copies of a same packet. PRE can follow the
Destination-Oriented Directed Acyclic Graph (DODAG) formed by RPL Destination-Oriented Directed Acyclic Graph (DODAG) formed by [RPL]
from a node to the root. Building a multi-path DODAG can be achieved from a node to the root. Building a multi-path DODAG can be achieved
based on the RPL capability of having multiple parents for each node based on the RPL capability of having multiple parents for each node
in a network, a subset of which is used to forward packets. In order in a network, a subset of which is used to forward packets. In order
to select parents to be part of this subset, the RPL Objective to select parents to be part of this subset, the RPL Objective
Function (OF) needs additional information regarding the multi-path Function (OF) needs additional information regarding the multi-path
nature of PRE. This document describes an OF which implements multi- nature of PRE. This document describes an OF which implements multi-
path routing for PRE and specifies the transmission of this specific path routing for PRE and specifies the transmission of this specific
path information. path information.
This document describes a new Objective Function (OF) called the This document describes a new Objective Function (OF) called the
Common Ancestor (CA) OF. A detailed description is given of how the Common Ancestor (CA) OF (see Section 4). A detailed description is
path information is used within the CA OF and how the subset of given of how the path information is used within the CA OF and how
parents for forwarding packets is selected. This specification the subset of parents for forwarding packets is selected. This
defines a new Objective Code Point (OCP) for the CA OF. specification defines a new Objective Code Point (OCP) for the CA OF.
For the path information, this specification focuses on the For the path information, this specification focuses on the
extensions to the DAG Metric Container [RFC6551] required for extensions to the DAG Metric Container [RFC6551] required for
providing the PRE mechanism a part of the information it needs to providing the PRE mechanism a part of the information it needs to
operate. This information is the RPL [RFC6550] parent address set of operate. This information is the [RPL] parent address set of a node
a node and it must be sent to potential children of the node. The and it must be sent to potential children of the node. The RPL DIO
RPL DIO Control Message is the canonical way of broadcasting this Control Message is the canonical way of broadcasting this kind of
kind of information and therefore its DAG Metric Container [RFC6551] information and therefore its DAG Metric Container [RFC6551] field is
field is used to append a Node State and Attribute (NSA) object. The used to append a Node State and Attribute (NSA) object. The node's
node's parent address set is stored as an optional TLV within the NSA parent address set is stored as an optional TLV within the NSA
object. This specification defines the type value and structure for object. This specification defines the type value and structure for
the parent address set TLV. the parent address set TLV (see Section 5).
2. Terminology 2. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119]. document are to be interpreted as described in [RFC2119].
The draft uses the following Terminology: The draft uses the following Terminology:
Packet Replication and Elimination (PRE): A method which consists of Packet Replication and Elimination (PRE): A method which consists of
transmitting multiple copies of a packet using multi-path transmitting multiple copies of a packet using multi-path
forwarding over a multi-hop network and which consolidates forwarding over a multi-hop network and which consolidates
multiple received packet copies to control flooding. See multiple received packet copies to control flooding. See
"Exploiting Packet Replication and Elimination in Complex Tracks "Exploiting Packet Replication and Elimination in Complex Tracks
in 6TiSCH LLNs" [I-D.papadopoulos-6tisch-pre-reqs] for more in LLNs" [I-D.papadopoulos-raw-pareo-reqs] for more details.
details.
Parent Set (PS): Given a RPL node, the set of its neighbor nodes Parent Set (PS): Given a RPL node, the set of its neighbor nodes
which participate in the same RPL DODAG and which can potentially which participate in the same RPL DODAG and which can potentially
take the role of the node's preferred parent. take the role of the node's preferred parent.
Alternative Parent (AP): A RPL parent in the parent set of a node Alternative Parent (AP): A RPL parent in the parent set of a node
which is used to forward a packet copy when replicating packets. which is used to forward a packet copy when replicating packets.
Alternative Parent (AP) Selection: The mechanism for choosing the Alternative Parent (AP) Selection: The mechanism for choosing the
next hop node to forward a packet copy when replicating packets. next hop node to forward a packet copy when replicating packets.
skipping to change at page 5, line 16 skipping to change at page 5, line 14
All three policies apply their corresponding common ancestor All three policies apply their corresponding common ancestor
criterion to filter the list of candidate neighbours in the criterion to filter the list of candidate neighbours in the
alternative parent set. alternative parent set.
3.1. Common Ancestor Strict 3.1. Common Ancestor Strict
In the CA Strict OF the node will check if its Preferred Grand Parent In the CA Strict OF the node will check if its Preferred Grand Parent
(PGP), the PP of its PP, is the same as the PP of the potential AP. (PGP), the PP of its PP, is the same as the PP of the potential AP.
( R ) root ( R ) root
. PS(S) = {A, B, C, D} . PS(S) = {A, B, C, D}
. PP(S) = C . PP(S) = C
. PP(PP(S)) = Y . PP(PP(S)) = Y
. .
PS(A) = {W, X} PS(A) = {W, X}
( W ) ( X ) ( Y ) ( Z ) PP(A) = X ( W ) ( X ) ( Y ) ( Z ) PP(A) = X
^ ^ ^^ ^ ^ ^^^^ ^ ^ ^^ ^ ^ ^^ ^ ^ ^^^^ ^ ^ ^^
| \ // | \ // || \ / || PS(B) = {W, X, Y} | \ // | \ // || \ / || PS(B) = {W, X, Y}
| // | // || / || PP(B) = Y | // | // || / || PP(B) = Y
| // \ | // \ || / \ || | // \ | // \ || / \ ||
| // \ | // \ || / \ || PS(C) = {X, Y, Z} | // \ | // \ || / \ || PS(C) = {X, Y, Z}
( A ) ( B ) ( C ) ( D ) PP(C) = Y ( A ) ( B ) ( C ) ( D ) PP(C) = Y
^ ^ ^^ ^ ^ ^ ^^ ^
\ \ || / PS(D) = {Y, Z} \ \ || / PS(D) = {Y, Z}
\ \ || / PP(D) = Z \ \ || / PP(D) = Z
\ \ || / \ \ || /
\----\\ || / || Preferred Parent \----\\ || / || Preferred Parent
( S ) source | Potential Alternative Parent ( S ) source | Potential Alternative Parent
Figure 1: Example Common Ancestor Strict Alternative Parent Selection Figure 1: Example Common Ancestor Strict Alternative Parent
policy Selection policy
For example, in Figure 1, the source node S must know its grandparent For example, in Figure 1, the source node S must know its grandparent
sets through nodes A, B, C, and D. The Parent Sets (PS) and the sets through nodes A, B, C, and D. The Parent Sets (PS) and the
Preferred Parents (PS) of nodes A, B, C, and D are shown on the side Preferred Parents (PS) of nodes A, B, C, and D are shown on the side
of the figure. The CA Strict parent selection policy will select an of the figure. The CA Strict parent selection policy will select an
AP for node S for which PP(PP(S)) = PP(AP). Given that PP(PP(S)) = AP for node S for which PP(PP(S)) = PP(AP). Given that PP(PP(S)) =
Y: Y:
o Node A: PP(A) = X and therefore it is different than PP(PP(S)) * Node A: PP(A) = X and therefore it is different than PP(PP(S))
o Node B: PS(B) = Y and therefore it is equal to PP(PP(S)) * Node B: PS(B) = Y and therefore it is equal to PP(PP(S))
* Node D: PS(D) = Z and therefore it is different than PP(PP(S))
o Node D: PS(D) = Z and therefore it is different than PP(PP(S))
node S can decide to use node B as its AP node, since PP(PP(S)) = Y = node S can decide to use node B as its AP node, since PP(PP(S)) = Y =
PP(B). PP(B).
3.2. Common Ancestor Medium 3.2. Common Ancestor Medium
In the CA Medium OF the node will check if its Preferred Grand Parent In the CA Medium OF the node will check if its Preferred Grand Parent
(PGP), the PP of its PP, is contained in the PS of the potential AP. (PGP), the PP of its PP, is contained in the PS of the potential AP.
Using the same example, in Figure 1, the CA Medium parent selection Using the same example, in Figure 1, the CA Medium parent selection
policy will select an AP for node S for which PP(PP(S)) is in PS(AP). policy will select an AP for node S for which PP(PP(S)) is in PS(AP).
Given that PP(PP(S)) = Y: Given that PP(PP(S)) = Y:
o Node A: PS(A) = {W, X} and therefore PP(PP(S)) is not in the set * Node A: PS(A) = {W, X} and therefore PP(PP(S)) is not in the set
o Node B: PS(B) = {W, X, Y} and therefore PP(PP(S)) is in the set * Node B: PS(B) = {W, X, Y} and therefore PP(PP(S)) is in the set
o Node D: PS(D) = {Y, Z} and therefore PP(PP(S)) is in the set * Node D: PS(D) = {Y, Z} and therefore PP(PP(S)) is in the set
node S can decide to use node B or D as its AP node. node S can decide to use node B or D as its AP node.
3.3. Common Ancestor Relaxed 3.3. Common Ancestor Relaxed
In the CA Relaxed OF the node will check if the Parent Set (PS) of In the CA Relaxed OF the node will check if the Parent Set (PS) of
its Preferred Parent (PP) has a node in common with the PS of the its Preferred Parent (PP) has a node in common with the PS of the
potential AP. potential AP.
Using the same example, in Figure 1, the CA Relaxed parent selection Using the same example, in Figure 1, the CA Relaxed parent selection
policy will select an AP for node S for which PS(PP(S)) has at least policy will select an AP for node S for which PS(PP(S)) has at least
one node in common with PS(AP). Given that PS(PP(S)) = {X, Y, Z}: one node in common with PS(AP). Given that PS(PP(S)) = {X, Y, Z}:
o Node A: PS(A) = {W, X} and the common nodes are {X} * Node A: PS(A) = {W, X} and the common nodes are {X}
o Node B: PS(B) = {W, X, Y} and the common nodes are {X, Y} * Node B: PS(B) = {W, X, Y} and the common nodes are {X, Y}
o Node D: PS(D) = {Y, Z} and the common nodes are {Y, Z} * Node D: PS(D) = {Y, Z} and the common nodes are {Y, Z}
node S can decide to use node A, B or D as its AP node. node S can decide to use node A, B or D as its AP node.
4. Common Ancestor Objective Function 4. Common Ancestor Objective Function
An OF which allows the multiple paths to remain correlated is An OF which allows the multiple paths to remain correlated is
detailed here. More specifically, when using this OF a node will detailed here. More specifically, when using this OF a node will
select an AP node close to its PP node to allow the operation of select an AP node close to its PP node to allow the operation of
overhearing between parents. For more details about overhearing and overhearing between parents. For more details about overhearing and
its use in this context see Section 4.3. "Promiscuous Overhearing" its use in this context see the "Promiscuous Overhearing" Section 4.3
in "Exploiting Packet Replication and Elimination in Complex Tracks of [I-D.papadopoulos-raw-pareo-reqs]. If multiple potential APs
in 6TiSCH LLNs" [I-D.papadopoulos-6tisch-pre-reqs]. If multiple match this condition, the AP with the lowest rank will be registered.
potential APs match this condition, the AP with the lowest rank will
be registered.
The OF described here is an extension of the The Minimum Rank with The OF described here is an extension of The Minimum Rank with
Hysteresis Objective Function [RFC6719] (MRHOF). In general, this OF Hysteresis Objective Function [MRHOF]. In general, this OF extends
extends MRHOF by specifying how an AP is selected. Importantly, the MRHOF by specifying how an AP is selected. Importantly, the
calculation of the rank of the node through each candidate neighbor calculation of the rank of the node through each candidate neighbor
and the selection of the PP is kept the same as in MRHOF. and the selection of the PP is kept the same as in MRHOF.
The ways in which the CA OF modifies MRHOF in a section-by-section The ways in which the CA OF modifies MRHOF in a section-by-section
manner follows in detail: manner follows in detail:
MRHOF Section 3. "The Minimum Rank with Hysteresis Objective [MRHOF], Section 2: "Terminology". Term "Selected Metric":
The CA OF uses only one metric, like MRHOF, for rank calculation,
with the same MRHOF semantics. For selecting the AP, the PS TLV
(stored in the DIO Metric Container Node State and Attribute (NSA)
object body, see Section 5) is used. This additional NSA metric
is disregarded for the purposes of rank calculation.
[MRHOF], Section 3 "The Minimum Rank with Hysteresis Objective
Function": Function":
Same as MRHOF extended to AP selection. Minimum Rank path Same as MRHOF extended to AP selection. Minimum Rank path
selection and switching applies correspondingly to the AP with the selection and switching applies correspondingly to the AP with the
extra CA requirement of having some match between ancestors. extra CA requirement of having some match between ancestors.
MRHOF Section 3.1. "Computing the Path Cost": Same as MRHOF [MRHOF], Section 3.1 "Computing the Path Cost":
extended to AP selection. If a candidate neighbor does not Same as MRHOF extended to AP selection. If a candidate neighbor
fulfill the CA requirement then the path through that neighbor does not fulfill the CA requirement then the path through that
SHOULD be set to MAX_PATH_COST, the same value used by MRHOF. As neighbor SHOULD be set to MAX_PATH_COST, the same value used by
a result, the node MUST NOT select the candidate neighbor as its MRHOF. As a result, the node MUST NOT select the candidate
AP. neighbor as its AP.
MRHOF Section 3.2. "Parent Selection": Same as MRHOF extended to AP [MRHOF], Section 3.2 "Parent Selection":
selection. To allow hysteresis, AP selection maintains a Same as MRHOF extended to AP selection. To allow hysteresis, AP
variable, cur_ap_min_path_cost, which is the path cost of the selection maintains a variable, cur_ap_min_path_cost, which is the
current AP. path cost of the current AP.
MRHOF Section 3.2.1. "When Parent Selection Runs": Same as MRHOF. [MRHOF], Section 3.2.1 "When Parent Selection Runs":
Same as MRHOF.
MRHOF Section 3.2.2. "Parent Selection Algorithm": Same as MRHOF [MRHOF], Section 3.2.2 "Parent Selection Algorithm":
extended to AP selection. If the smallest path cost for paths Same as MRHOF extended to AP selection. If the smallest path cost
through the candidate neighbors is smaller than for paths through the candidate neighbors is smaller than
cur_ap_min_path_cost by less than PARENT_SWITCH_THRESHOLD (the cur_ap_min_path_cost by less than PARENT_SWITCH_THRESHOLD (the
same variable as MRHOF uses), the node MAY continue to use the same variable as MRHOF uses), the node MAY continue to use the
current AP. Additionally, if there is no PP selected, there MUST current AP. Additionally, if there is no PP selected, there MUST
NOT be any AP selected as well. Finally, as with MRHOF, a node NOT be any AP selected as well. Finally, as with MRHOF, a node
MAY include up to PARENT_SET_SIZE-1 additional candidate neighbors MAY include up to PARENT_SET_SIZE-1 additional candidate neighbors
in its alternative parent set. The value of PARENT_SET_SIZE is in its alternative parent set. The value of PARENT_SET_SIZE is
the same as in MRHOF. the same as in MRHOF.
MRHOF Section 3.3. "Computing Rank": Same as MRHOF. [MRHOF], Section 3.3 "Computing Rank":
Same as MRHOF.
MRHOF Section 3.4. "Advertising the Path Cost": Same as MRHOF.
MRHOF Section 3.5. "Working without Metric Containers": [MRHOF], Section 3.4 "Advertising the Path Cost":
Same as MRHOF.
[MRHOF], Section 3.5 "Working without Metric Containers":
It is not possible to work without metric containers, since CA AP It is not possible to work without metric containers, since CA AP
selection requires information from parents regarding their parent selection requires information from parents regarding their parent
sets, which is transmitted via the NSA object in the DIO Mectric sets, which is transmitted via the NSA object in the DIO Mectric
Container. Container.
MRHOF Section 4. "Using MRHOF for Metric Maximization": [MRHOF], Section 4 "Using MRHOF for Metric Maximization":
Same as MRHOF. Same as MRHOF.
MRHOF Section 5. "MRHOF Variables and Parameters": Same as MRHOF [MRHOF], Section 5 "MRHOF Variables and Parameters":
extended to AP selection. The CA OF operates like MRHOF for AP Same as MRHOF extended to AP selection. The CA OF operates like
selection by maintaining separate: MRHOF for AP selection by maintaining separate:
AP: Corresponding to the MRHOF PP. Hysteresis is configured for AP: Corresponding to the MRHOF PP. Hysteresis is configured for
AP with the same PARENT_SWITCH_THRESHOLD parameter as in MRHOF. AP with the same PARENT_SWITCH_THRESHOLD parameter as in MRHOF.
The AP MUST NOT be the same as the PP. The AP MUST NOT be the same as the PP.
Alternative parent set: Corresponding to the MRHOF parent set. Alternative parent set: Corresponding to the MRHOF parent set.
The size is defined by the same PARENT_SET_SIZE parameter as in The size is defined by the same PARENT_SET_SIZE parameter as in
MRHOF. The Alternative parent set MUST be a non-strict subset MRHOF. The Alternative parent set MUST be a non-strict subset
of the parent set. of the parent set.
cur_ap_min_path_cost: Corresponding to the MRHOF cur_ap_min_path_cost: Corresponding to the MRHOF
cur_min_path_cost variable. To support the operation of the cur_min_path_cost variable. To support the operation of the
hysteresis function for AP selection. hysteresis function for AP selection.
MRHOF Section 6. "Manageability": Same as MRHOF. [MRHOF], Section 6 "Manageability":
Same as MRHOF.
MRHOF Section 6.1. "Device Configuration": Same as MRHOF. [MRHOF], Section 6.1 "Device Configuration":
Same as MRHOF.
MRHOF Section 6.2. "Device Monitoring": Same as MRHOF. [MRHOF], Section 6.2 "Device Monitoring":
Same as MRHOF.
4.1. Usage 4.1. Usage
All OF policies apply their corresponding criterion to filter the All OF policies apply their corresponding criterion to filter the
list of candidate neighbours in the alternative parent set. The AP list of candidate neighbours in the alternative parent set. The AP
is then selected from the alternative parent set based on Rank and is then selected from the alternative parent set based on Rank and
using hysteresis as is done for the PP in MRHOF. It is noteworthy using hysteresis as is done for the PP in MRHOF. It is noteworthy
that the OF uses the same Objective Code Point (OCP): TBD1 for all that the OF uses the same Objective Code Point (OCP): TBD1 for all
policies used. policies used.
skipping to change at page 9, line 8 skipping to change at page 9, line 16
policies or other ones not described here, depending on requirements. policies or other ones not described here, depending on requirements.
It is optional for all nodes to use the same AP selection policies. It is optional for all nodes to use the same AP selection policies.
Different nodes may use different AP selection policies, since the Different nodes may use different AP selection policies, since the
selection policy is local to each node. For example, using different selection policy is local to each node. For example, using different
policies can be used to vary the transmission reliability in each policies can be used to vary the transmission reliability in each
hop. hop.
5. Node State and Attribute (NSA) object type extension 5. Node State and Attribute (NSA) object type extension
In order to select their AP node, nodes need to be aware of their In order to select their AP node, nodes need to be aware of their
grandparent node sets. Within RPL [RFC6550], the nodes use the DODAG grandparent node sets. Within [RPL], the nodes use the DODAG
Information Object (DIO) Control Message to broadcast information Information Object (DIO) Control Message to broadcast information
about themselves to potential children. However, RPL [RFC6550], does about themselves to potential children. However, [RPL], does not
not define how to propagate parent set related information, which is define how to propagate parent set related information, which is what
what this document addresses. this document addresses.
DIO messages can carry multiple options, out of which the DAG Metric DIO messages can carry multiple options, out of which the DAG Metric
Container option [RFC6551] is the most suitable structurally and Container option [RFC6551] is the most suitable structurally and
semantically for the purpose of carrying the parent set. The DAG semantically for the purpose of carrying the parent set. The DAG
Metric Container option itself can carry different nested objects, Metric Container option itself can carry different nested objects,
out of which the Node State and Attribute (NSA) [RFC6551] is out of which the Node State and Attribute (NSA) [RFC6551] is
appropriate for transferring generic node state data. Within the appropriate for transferring generic node state data. Within the
Node State and Attribute it is possible to store optional TLVs Node State and Attribute it is possible to store optional TLVs
representing various node characteristics. As per the Node State and representing various node characteristics. As per the Node State and
Attribute (NSA) [RFC6551] description, no TLV has been defined for Attribute (NSA) [RFC6551] description, no TLV has been defined for
skipping to change at page 9, line 48 skipping to change at page 10, line 27
+ + + +
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| DAGMC Type (2)| DAGMC Length | | | DAGMC Type (2)| DAGMC Length | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| | | |
// DAG Metric Container data // // DAG Metric Container data //
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: Example DIO Message with a DAG Metric Container option Figure 2: Example DIO Message with a DAG Metric Container option
Figure 2 shows the structure of the DIO Control Message when a DAG Figure 2 shows the structure of the DIO Control Message when a DAG
Metric Container option is included. The DAG Metric Container option Metric Container option is included. The DAG Metric Container option
type (DAGMC Type in Figure 2) has the value 0x02 as per the IANA type (DAGMC Type in Figure 2) has the value 0x02 as per the IANA
registry for the RPL Control Message Options, and is defined in registry for the RPL Control Message Options, and is defined in
[RFC6550]. The DAG Metric Container option length (DAGMC Length in [RPL]. The DAG Metric Container option length (DAGMC Length in
Figure 2) expresses the DAG Metric Container length in bytes. DAG Figure 2) expresses the DAG Metric Container length in bytes. DAG
Metric Container data holds the actual data and is shown expanded in Metric Container data holds the actual data and is shown expanded in
Figure 3. Figure 3.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Routing-MC-Type|Res Flags|P|C|O|R| A | Prec | Length (bytes)| |MC |Routing-MC-Type|Res Flags|P|C|O|R| A | Prec | Length (bytes)| |MC
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Res | Flags |A|O| PS type | PS Length | | | Res | Flags |A|O| PS type | PS Length | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |NSA +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |NSA
| PS IPv6 address(es) ... | | PS IPv6 address(es) ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: DAG Metric Container (MC) data with Node State and Figure 3: DAG Metric Container (MC) data with Node State and
Attribute (NSA) object body and a TLV Attribute (NSA) object body and a TLV
The structure of the DAG Metric Container data in the form of a Node The structure of the DAG Metric Container data in the form of a Node
State and Attribute (NSA) object with a TLV in the NSA Optional TLVs State and Attribute (NSA) object with a TLV in the NSA Optional TLVs
field is shown in Figure 3. The first 32 bits comprise the DAG field is shown in Figure 3. The first 32 bits comprise the DAG
Metric Container header and all the following bits are part of the Metric Container header and all the following bits are part of the
Node State and Attribute object body, as defined in [RFC6551]. This Node State and Attribute object body, as defined in [RFC6551]. This
document defines a new TLV, which CAN be carried in the Node State document defines a new TLV, which MAY be carried in the Node State
and Attribute (NSA) object Optional TLVs field. The TLV is named and Attribute (NSA) object Optional TLVs field. The TLV is named
Parent Set and is abbreviated as PS in Figure 3. Parent Set and is abbreviated as PS in Figure 3.
PS type: The type of the Parent Set TLV. The value is TBD2. PS type: The type of the Parent Set TLV. The value is TBD2.
PS Length: The total length of the TLV value field (PS IPv6 PS Length: The total length of the TLV value field (PS IPv6
address(es)) in bytes. The length is an integral multiple of address(es)) in bytes. The length is an integral multiple of
16, the number of bytes in an IPv6 address. 16, the number of bytes in an IPv6 address.
PS IPv6 address(es) One or more 128-bit IPv6 address(es) without any PS IPv6 address(es) One or more 128-bit IPv6 address(es) without any
skipping to change at page 11, line 44 skipping to change at page 12, line 24
Architecture [RFC8655]. Architecture [RFC8655].
7. Security Considerations 7. Security Considerations
The structure of the DIO control message is extended, within the pre- The structure of the DIO control message is extended, within the pre-
defined DIO options. The additional information are the IPv6 defined DIO options. The additional information are the IPv6
addresses of the parent set of the node transmitting the DIO. This addresses of the parent set of the node transmitting the DIO. This
use of this additional information can have the following potential use of this additional information can have the following potential
consequences: consequences:
o A malicious node that can receive and read the DIO can "see" * A malicious node that can receive and read the DIO can "see"
further than it's own neighbourhood by one hop, learning the further than it's own neighbourhood by one hop, learning the
addresses of it's two hop neighbors. This is a privacy / network addresses of it's two hop neighbors. This is a privacy / network
discovery issue. discovery issue.
o A malicious node that can send DIOs can use the parent set * A malicious node that can send DIOs can use the parent set
extension to convince neighbours to route through itself, instead extension to convince neighbours to route through itself, instead
of the normal preferred parent they would use. However, this is of the normal preferred parent they would use. However, this is
already possible with other OFs (like OF0 [RFC6552] and MRHOF already possible with other OFs (like [OF0] and [MRHOF]) by
reporting a fake rank value in the DIO, thus masquerading as the
[RFC6719]) by reporting a fake rank value in the DIO, thus DODAG root.
masquerading as the DODAG root.
8. IANA Considerations 8. IANA Considerations
This proposal requests the allocation of a new value TBD1 from the This proposal requests the allocation of a new value TBD1 from the
"Objective Code Point (OCP)" sub-registry of the "Routing Protocol "Objective Code Point (OCP)" sub-registry of the "Routing Protocol
for Low Power and Lossy Networks (RPL)" registry. for Low Power and Lossy Networks (RPL)" registry.
This proposal also requests the allocation of a new value TBD2 for This proposal also requests the allocation of a new value TBD2 for
the "Parent Set" TLV from the Routing Metric/Constraint TLVs sub- the "Parent Set" TLV from the Routing Metric/Constraint TLVs sub-
registry from IANA. registry from IANA.
9. References 9. References
9.1. Informative references 9.1. Informative references
[I-D.ietf-6tisch-architecture] [I-D.ietf-6tisch-architecture]
Thubert, P., "An Architecture for IPv6 over the TSCH mode Thubert, P., "An Architecture for IPv6 over the TSCH mode
of IEEE 802.15.4", draft-ietf-6tisch-architecture-28 (work of IEEE 802.15.4", Work in Progress, Internet-Draft,
in progress), October 2019. draft-ietf-6tisch-architecture-28, 29 October 2019,
<https://tools.ietf.org/html/draft-ietf-6tisch-
architecture-28>.
[I-D.papadopoulos-6tisch-pre-reqs] [I-D.papadopoulos-raw-pareo-reqs]
Papadopoulos, G., Montavont, N., and P. Thubert, Papadopoulos, G., Koutsiamanis, R., Montavont, N., and P.
"Exploiting Packet Replication and Elimination in Complex Thubert, "Exploiting Packet Replication and Elimination in
Tracks in 6TiSCH LLNs", draft-papadopoulos-6tisch-pre- Complex Tracks in LLNs", Work in Progress, Internet-Draft,
reqs-02 (work in progress), July 2018. draft-papadopoulos-raw-pareo-reqs-01, 2 January 2020,
<https://tools.ietf.org/html/draft-papadopoulos-raw-pareo-
reqs-01>.
[MRHOF] Gnawali, O. and P. Levis, "The Minimum Rank with
Hysteresis Objective Function", RFC 6719,
DOI 10.17487/RFC6719, September 2012,
<https://www.rfc-editor.org/info/rfc6719>.
[OF0] Thubert, P., Ed., "Objective Function Zero for the Routing
Protocol for Low-Power and Lossy Networks (RPL)",
RFC 6552, DOI 10.17487/RFC6552, March 2012,
<https://www.rfc-editor.org/info/rfc6552>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>. <https://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,
<https://www.rfc-editor.org/info/rfc6550>.
[RFC6551] Vasseur, JP., Ed., Kim, M., Ed., Pister, K., Dejean, N., [RFC6551] Vasseur, JP., Ed., Kim, M., Ed., Pister, K., Dejean, N.,
and D. Barthel, "Routing Metrics Used for Path Calculation and D. Barthel, "Routing Metrics Used for Path Calculation
in Low-Power and Lossy Networks", RFC 6551, in Low-Power and Lossy Networks", RFC 6551,
DOI 10.17487/RFC6551, March 2012, DOI 10.17487/RFC6551, March 2012,
<https://www.rfc-editor.org/info/rfc6551>. <https://www.rfc-editor.org/info/rfc6551>.
[RFC6552] Thubert, P., Ed., "Objective Function Zero for the Routing
Protocol for Low-Power and Lossy Networks (RPL)",
RFC 6552, DOI 10.17487/RFC6552, March 2012,
<https://www.rfc-editor.org/info/rfc6552>.
[RFC6719] Gnawali, O. and P. Levis, "The Minimum Rank with
Hysteresis Objective Function", RFC 6719,
DOI 10.17487/RFC6719, September 2012,
<https://www.rfc-editor.org/info/rfc6719>.
[RFC8557] Finn, N. and P. Thubert, "Deterministic Networking Problem [RFC8557] Finn, N. and P. Thubert, "Deterministic Networking Problem
Statement", RFC 8557, DOI 10.17487/RFC8557, May 2019, Statement", RFC 8557, DOI 10.17487/RFC8557, May 2019,
<https://www.rfc-editor.org/info/rfc8557>. <https://www.rfc-editor.org/info/rfc8557>.
[RFC8655] Finn, N., Thubert, P., Varga, B., and J. Farkas, [RFC8655] Finn, N., Thubert, P., Varga, B., and J. Farkas,
"Deterministic Networking Architecture", RFC 8655, "Deterministic Networking Architecture", RFC 8655,
DOI 10.17487/RFC8655, October 2019, DOI 10.17487/RFC8655, October 2019,
<https://www.rfc-editor.org/info/rfc8655>. <https://www.rfc-editor.org/info/rfc8655>.
[RPL] 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,
<https://www.rfc-editor.org/info/rfc6550>.
9.2. Other Informative References 9.2. Other Informative References
[IEEE802154] [IEEE802154]
IEEE standard for Information Technology, "IEEE Std IEEE standard for Information Technology, "IEEE Std
802.15.4 Standard for Low-Rate Wireless Personal Area 802.15.4 Standard for Low-Rate Wireless Personal Area
Networks (WPANs)", December 2015. Networks (WPANs)", December 2015.
9.3. URIs
[1] https://github.com/ariskou/contiki/tree/draft-koutsiamanis-roll-
nsa-extension
[2] https://code.wireshark.org/review/gitweb?p=wireshark.git;a=commit
;h=e2f6ba229f45d8ccae2a6405e0ef41f1e61da138
Appendix A. Implementation Status Appendix A. Implementation Status
A research-stage implementation of the PRE mechanism using the A research-stage implementation of the PRE mechanism using the
proposed extension as part of a 6TiSCH IOT use case was developed at proposed extension as part of a 6TiSCH IOT use case was developed at
IMT Atlantique, France by Tomas Lagos Jenschke and Remous-Aris IMT Atlantique, France by Tomas Lagos Jenschke and Remous-Aris
Koutsiamanis. It was implemented on the open-source Contiki OS and Koutsiamanis. It was implemented on the open-source Contiki OS and
tested with the Cooja simulator. The DIO DAGMC NSA extension is tested with the Cooja simulator. The DIO DAGMC NSA extension is
implemented with a configurable number of parents from the parent set implemented with a configurable number of parents from the parent set
of a node to be reported. of a node to be reported.
skipping to change at page 15, line 10 skipping to change at page 15, line 27
Radio Links: Every 60 s, a new Packet Delivery Rate is randomly Radio Links: Every 60 s, a new Packet Delivery Rate is randomly
drawn for each link, with a uniform distribution spanning the 70% drawn for each link, with a uniform distribution spanning the 70%
to 100% interval. to 100% interval.
Traffic Pattern: CBR, S sends one non-fragmented UDP packet every 5 Traffic Pattern: CBR, S sends one non-fragmented UDP packet every 5
seconds to R. seconds to R.
PS extension size: 3 parents. PS extension size: 3 parents.
Routing Methods: Routing Methods: * RPL: The default RPL non-PRE implementation in
Contiki OS.
* RPL: The default RPL non-PRE implementation in Contiki OS.
* 2nd ETX: PRE with a parent selection method which picks as AP * 2nd ETX: PRE with a parent selection method
the 2nd best parent in the parent set based on ETX. which picks as AP the 2nd best parent in the parent set based
on ETX.
* CA Strict: As described in Section 3.1. * CA Strict: As described in Section 3.1.
* CA Medium: As described in Section 3.2. * CA Medium: As described in Section 3.2.
Simulation results: Simulation results:
+-----------+---------------+-----------------+---------------------+ +---------+-------------------+-------------------+---------------+
| Routing | Average | Average | Average | | Routing | Average Packet | Average Traversed | Average |
| Method | Packet | Traversed | Duplications/packet | | Method | Delivery Rate (%) | Nodes/packet (#) | Duplications/ |
| | Delivery Rate | Nodes/packet | (#) | | | | | packet (#) |
| | (%) | (#) | | +=========+===================+===================+===============+
+-----------+---------------+-----------------+---------------------+ | RPL | 82.70 | 5.56 | 7.02 |
| RPL | 82.70 | 5.56 | 7.02 | +---------+-------------------+-------------------+---------------+
| 2nd ETX | 99.38 | 14.43 | 31.29 | | 2nd ETX | 99.38 | 14.43 | 31.29 |
| CA Strict | 97.32 | 9.86 | 18.23 | +---------+-------------------+-------------------+---------------+
| CA Medium | 99.66 | 13.75 | 28.86 | | CA | 97.32 | 9.86 | 18.23 |
+-----------+---------------+-----------------+---------------------+ | Strict | | | |
+---------+-------------------+-------------------+---------------+
| CA | 99.66 | 13.75 | 28.86 |
| Medium | | | |
+---------+-------------------+-------------------+---------------+
Table 1
Links: Links:
o Contiki OS DIO DAGMC NSA extension (draft-koutsiamanis-roll-nsa- * Contiki OS DIO DAGMC NSA extension (draft-koutsiamanis-roll-nsa-
extension branch) [1] extension branch) (https://github.com/ariskou/contiki/tree/draft-
koutsiamanis-roll-nsa-extension)
o Wireshark dissectors (for the optional PS TLV) - currently merged * Wireshark dissectors (for the optional PS TLV) - currently merged
/ in master [2] / in master (https://code.wireshark.org/review/gitweb?p=wireshark.
git;a=commit;h=e2f6ba229f45d8ccae2a6405e0ef41f1e61da138)
Appendix B. Choosing an AP selection policy Appendix B. Choosing an AP selection policy
The manner of choosing an AP selection policy is left to the The manner of choosing an AP selection policy is left to the
implementation, for maximum flexibility. implementation, for maximum flexibility.
For example, a different policy can be used per traffic type. The For example, a different policy can be used per traffic type. The
network configurator can choose the CA Relaxed policy to increase network configurator can choose the CA Relaxed policy to increase
reliability (thus producing some flooding) for specific, extremely reliability (thus producing some flooding) for specific, extremely
important, alert packets. On the other hand, all normal data traffic important, alert packets. On the other hand, all normal data traffic
skipping to change at page 16, line 22 skipping to change at page 17, line 11
Finally, a network configurator may provide the CA policies with a Finally, a network configurator may provide the CA policies with a
preference order of Strict > Medium > Relaxed as a means of falling preference order of Strict > Medium > Relaxed as a means of falling
back to more flood-prone policies to maintain reliability. back to more flood-prone policies to maintain reliability.
Authors' Addresses Authors' Addresses
Remous-Aris Koutsiamanis (editor) Remous-Aris Koutsiamanis (editor)
IMT Atlantique IMT Atlantique
Office B00 - 126A Office B00 - 126A
2 Rue de la Chataigneraie 2 Rue de la Chataigneraie
Cesson-Sevigne - Rennes 35510 35510 Cesson-Sevigne - Rennes
FRANCE France
Phone: +33 299 12 70 49 Phone: +33 299 12 70 49
Email: aris@ariskou.com Email: aris@ariskou.com
Georgios Papadopoulos Georgios Papadopoulos
IMT Atlantique IMT Atlantique
Office B00 - 114A Office B00 - 114A
2 Rue de la Chataigneraie 2 Rue de la Chataigneraie
Cesson-Sevigne - Rennes 35510 35510 Cesson-Sevigne - Rennes
FRANCE France
Phone: +33 299 12 70 04 Phone: +33 299 12 70 04
Email: georgios.papadopoulos@imt-atlantique.fr Email: georgios.papadopoulos@imt-atlantique.fr
Nicolas Montavont Nicolas Montavont
IMT Atlantique IMT Atlantique
Office B00 - 106A Office B00 - 106A
2 Rue de la Chataigneraie 2 Rue de la Chataigneraie
Cesson-Sevigne - Rennes 35510 35510 Cesson-Sevigne - Rennes
FRANCE France
Phone: +33 299 12 70 23 Phone: +33 299 12 70 23
Email: nicolas.montavont@imt-atlantique.fr Email: nicolas.montavont@imt-atlantique.fr
Pascal Thubert Pascal Thubert
Cisco Systems, Inc Cisco Systems, Inc
Building D Building D
45 Allee des Ormes - BP1200 45 Allee des Ormes - BP1200
MOUGINS - Sophia Antipolis 06254 06254 MOUGINS - Sophia Antipolis
FRANCE France
Phone: +33 497 23 26 34 Phone: +33 497 23 26 34
Email: pthubert@cisco.com Email: pthubert@cisco.com
 End of changes. 68 change blocks. 
187 lines changed or deleted 200 lines changed or added

This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/