< draft-qasem-roll-rpl-load-balancing-01.txt   draft-qasem-roll-rpl-load-balancing-02.txt >
roll roll
Internet-Draft M.Qasem Internet-Draft M.Qasem
Intended Status: Standards Track A.Al-Dubai Intended Status: Standards Track A.Al-Dubai
Expires: February 10, 2018 I.Romdhani Expires: May 2, 2018 I.Romdhani
B.Ghaleb B.Ghaleb
Edinburgh Napier University Edinburgh Napier University
August 9, 2017 J. Hou
R. Jadhav
Huawei Technologies
October 29, 2017
Load Balancing Objective Function in RPL Load Balancing Objective Function in RPL
draft-qasem-roll-rpl-load-balancing-01 draft-qasem-roll-rpl-load-balancing-02
Abstract Abstract
This document proposes an extended Objective Function(OF) that This document proposes an extended Objective Function(OF)that
balances the number of children nodes of the parent nodes to avoid balances the number of child nodes of the parent nodes to avoid the
the overloading problem and ensure node lifetime maximization in the overloading problem and ensure node lifetime maximization in the IPv6
IPv6 Routing Protocol for Low-Power and Lossy Networks (RPL). The Routing Protocol for Low-Power and Lossy Networks (RPL). The standard
standard OFs are used to build a Destination Oriented Directed OFs are used to build a Destination Oriented Directed Acyclic Graph
Acyclic Graph (DODAG) where the bottleneck nodes may suffer from (DODAG) where the bottleneck nodes may suffer from unbalanced traffic
unbalanced traffic load. As a result, a part of the network may be load. As a result, a part of the network may be disconnected as the
disconnected as the energy of the overloaded preferred parent node energy of the overloaded preferred parent node will drain much faster
will drain much faster than other candidate parents. Thus, a new RPL than other candidate parents. Thus, a new RPL metric has been
metric has been introduced to balance the traffic load over the introduced to balance the traffic load over the network. Finally, the
network. Finally, the potential extra overhead has been mitigated potential extra overhead has been mitigated using a new utilization
using a new utilization technique. technique.
Status of this Memo Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as other groups may also distribute working documents as
Internet-Drafts. Internet-Drafts.
skipping to change at page 2, line 30 skipping to change at page 2, line 33
Table of Contents Table of Contents
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1 Terminology . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1 Terminology . . . . . . . . . . . . . . . . . . . . . . . . 3
2 DODAG construction in a nutshell . . . . . . . . . . . . . . . 4 2 DODAG construction in a nutshell . . . . . . . . . . . . . . . 4
3 Load balancing in RPL . . . . . . . . . . . . . . . . . . . . . 4 3 Load balancing in RPL . . . . . . . . . . . . . . . . . . . . . 4
4 The proposed objective function . . . . . . . . . . . . . . . . 6 4 The proposed objective function . . . . . . . . . . . . . . . . 6
4.1 Balancing the load traffic . . . . . . . . . . . . . . . . . 6 4.1 Balancing the load traffic . . . . . . . . . . . . . . . . . 6
4.2 A new utilization technique for DIO message . . . . . . . . 6 4.2 A new utilization technique for DIO message . . . . . . . . 6
4.3 The Selected Parent Option . . . . . . . . . . . . . . . . . 7 4.3 Proposed New Metric for Parent Selection . . . . . . . . . . 7
5 Security Considerations . . . . . . . . . . . . . . . . . . . . 7 5 Security Considerations . . . . . . . . . . . . . . . . . . . . 9
6 IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 8 6 IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 9
7 References . . . . . . . . . . . . . . . . . . . . . . . . . . 8 7 References . . . . . . . . . . . . . . . . . . . . . . . . . . 9
7.1 Normative References . . . . . . . . . . . . . . . . . . . 8 7.1 Normative References . . . . . . . . . . . . . . . . . . . 9
7.2 Informative References . . . . . . . . . . . . . . . . . . 9 7.2 Informative References . . . . . . . . . . . . . . . . . . 10
Appendix A. . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Appendix A. . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 9 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 10
1 Introduction 1 Introduction
IPv6 Routing Protocol for LLNs (RPL) [RFC6550] defined two OFs to IPv6 Routing Protocol for LLNs (RPL) [RFC6550] defined two OFs to
optimize the path selection towards the root node, namely, the OF optimize the path selection towards the root node, namely, the OF
zero (OF0) [RFC6552], and the Minimum Rank with Hysteresis OF zero (OF0) [RFC6552], and the Minimum Rank with Hysteresis OF
(MRHOF)[RFC6719]. The Destination Oriented Directed Acyclic Graph (MRHOF)[RFC6719]. The Destination Oriented Directed Acyclic Graph
(DODAG) construction is built by the RPL OF, that specify how nodes (DODAG) construction is built by the RPL OF, that specify how nodes
select the preferred parent node by translating one or more metrics select the preferred parent node by translating one or more metrics
into the rank value. into the rank value.
skipping to change at page 5, line 34 skipping to change at page 5, line 34
Figure 2 depicts the selection of the preferred parent for those nodes Figure 2 depicts the selection of the preferred parent for those nodes
are within the first hop from nodes A or B. Clearly, node A has more are within the first hop from nodes A or B. Clearly, node A has more
children as it is surrounded by the nodes (N,M,F,G,E,P). Despite the children as it is surrounded by the nodes (N,M,F,G,E,P). Despite the
fact that A has more children, it dominates the shred nodes (C,D,R,J) fact that A has more children, it dominates the shred nodes (C,D,R,J)
that are also located within the shared area of node B (i.e., within the that are also located within the shared area of node B (i.e., within the
transmission range of A and B). That unbalanced parent selection transmission range of A and B). That unbalanced parent selection
approach in RPL left node B only with two children, while node A has ten approach in RPL left node B only with two children, while node A has ten
children. children.
+----------------------------------------------------+ +----------------------------------------------------+
| Parent | Children nodes | Shared nodes | | Parent | Child nodes | Shared nodes |
| nodes | |between A and B | | nodes | |between A and B |
|----------------------------------------------------| |----------------------------------------------------|
| A | N,M,F,G,E,P,C,D.R,J | C,D,R,J | | A | N,M,F,G,E,P,C,D.R,J | C,D,R,J |
|----------------------------------------------------| |----------------------------------------------------|
| B | H,K | C,D,R,J | | B | H,K | C,D,R,J |
+----------------------------------------------------+ +----------------------------------------------------+
Figure 2: The selection of the preferred parents Figure 2: The selection of the preferred parents
It is notable that the connection of all nodes through A is fragile as It is notable that the connection of all nodes through A is fragile as
skipping to change at page 7, line 36 skipping to change at page 7, line 36
overcome this problem, LB-OF using a new technique is proposed as overcome this problem, LB-OF using a new technique is proposed as
detailed below. In LB-OF algorithm, the received DIO from the child node detailed below. In LB-OF algorithm, the received DIO from the child node
is counted by the preferred parent node. Each DIO contains the IP is counted by the preferred parent node. Each DIO contains the IP
address of the chosen preferred parent as detailed in section 4.3. Thus, address of the chosen preferred parent as detailed in section 4.3. Thus,
for each received DIO, the node matches its own IP address with the for each received DIO, the node matches its own IP address with the
preferred parent IP address which is inserted in the DIO message, then preferred parent IP address which is inserted in the DIO message, then
increments the number of children by ONE for this node if there is a increments the number of children by ONE for this node if there is a
matching. matching.
Hence, this technique evades increasing any extra overhead, Hence, this technique evades increasing any extra overhead,
additionally, the coming DIOs from the children nodes has been utilized additionally, the coming DIOs from the child nodes has been utilized to
to allow each preferred parent to distinguish the number of its children allow each preferred parent to distinguish the number of its children
during the DODAG construction stage to optimize the routing. during the DODAG construction stage to optimize the routing.
4.3 The Selected Parent Option 4.3 Proposed New Metric for Parent Selection
Typically, the DIO carries the RPL InstanceID, DODAG identifier, version Typically, the DIO carries the RPL InstanceID, DODAG identifier, version
number, Rank and the OF that has been used to calculate the rank, in number, Rank and the OF that has been used to calculate the rank, in
addition to others identifiers [RFC6550]. However, the option field addition to other identifiers [RFC6550]. This section introduces the
within DIO message could be utilized to inject the selected parent number of child nodes as a new metric/constraint in the DAG Metric
address, and its format is as shown in Figure 3. Container, which includes the selected parent address in the option
field within the DIO message. The newly added information is 2 octets
5 Security Considerations named by Child Node Count (CNC) which is per this document defined in
the DAG Metric Container.
Since the routing metrics/constraints are carried within RPL message,
the security routing mechanisms defined in [RFC6550] apply here.
6 IANA Considerations The Child Node Count (CNC) object is used to provide information related
to the number of child nodes in the DIO source node, and may be used as
a metric or as constraint.
The IANA defined in [RFC6551] apply here according to [RFC5226]. The CNC object MAY be present in the DAG Metric Container. There MUST
NOT be more than one CNC object as a constraint per DAG Metric
Container, and there MUST NOT be more than one CNC object as a metric
per DAG Metric Container. The format of the CNC object body is as
follows:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Option Length | Flags | | | Flags |P| CNC | CNC_MAX | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| | | |
+ + + +
| | | |
+ Parent Address + + Parent Address +
| | | |
+ +-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: Format of the Selected Parent Option Figure 3: Child Node Count Object Body Format
Flags field (8 bits). The following one bits of the CNC object are
currently defined:
'P'flag: Parent Address State. This, if set to 1, indicates there is a
parent address field in the CNC object.
CNC: 8-bits. The Child Node Count is encoded in 8 bits in unsigned
integer format, expressed in number count, representing the number of
child nodes.
MAX_CNC: 8-bits. The Maximum Child Node Count is encoded in 8 bits. The
MAX_CNC field indicates the maximum number of children a node can hold.
This parameter is set by implementers based on neighbor cache entry or
the size limit of routing table. Nodes should not hold child nodes more
than MAX_CNC.
Parent Address (optional): 128-bit IPv6 address of parent node. This
field is only present when the'P'flag is set to 1.
In the storing mode, DAO can be used for child nodes registration while
No-PathDAO can be used for de-registration, and this gives a way to
count the number of child nodes. Thus, to minimize traffic load, the
Parent Address field in the CNC object should not be present in the
storing mode.
In the non-storing mode, NS/NA could be an optional way for child node
counting. When the 'P' flag is set, the Parent Address in the CNC object
should be used for child node counting according to the technique
illustrated in section 4.2.
When this CNC metric is used, RANK computing reflects the ability of
each node to hold more child nodes. Also, a new way for the RANK
computing has been suggested: RANK = CNC / CNC_MAX * 255. A node with
smaller RANK has high priority to accept new child nodes, a node with
RANK = 255 should not hold new child nodes any more.
5 Security Considerations
Since the routing metrics/constraints are carried within RPL message,
the security routing mechanisms defined in [RFC6550] apply here.
6 IANA Considerations
IANA is requested to allocate a new value for the new metric type "CNC"
in the Routing Metric/Constraint Type in the DAG Metric Container.
7 References 7 References
7.1 Normative References 7.1 Normative References
[RFC6550] Winter, T., Ed., Thubert, P., Ed., Brandt, A., Hui, J., [RFC6550] Winter, T., Ed., Thubert, P., Ed., Brandt, A., Hui, J.,
Kelsey, R., Levis, P., Pister, K., Struik, R., Vasseur, Kelsey, R., Levis, P., Pister, K., Struik, R., Vasseur,
JP., and R. Alexander, "RPL: IPv6 Routing Protocol for JP., and R. Alexander, "RPL: IPv6 Routing Protocol for
Low-Power and Lossy Networks", RFC 6550, March 2012. Low-Power and Lossy Networks", RFC 6550, March 2012.
skipping to change at page 10, line 4 skipping to change at page 10, line 43
Phone: +44 131 455 2796 Phone: +44 131 455 2796
Email: a.al-dubai@napier.ac.uk Email: a.al-dubai@napier.ac.uk
Imed Romdhani Imed Romdhani
Edinburgh Napier University Edinburgh Napier University
10 Colinton Road, EH10 5DT, Edinburgh, UK 10 Colinton Road, EH10 5DT, Edinburgh, UK
Phone: +44 131 455 2726 Phone: +44 131 455 2726
Email: i.romdhani@napier.ac.uk Email: i.romdhani@napier.ac.uk
Baraq Ghaleb Baraq Ghaleb
Edinburgh Napier University Edinburgh Napier University
10 Colinton Road, EH10 5DT, Edinburgh, UK 10 Colinton Road, EH10 5DT, Edinburgh, UK
Email: b.ghaleb@napier.ac.uk Email: b.ghaleb@napier.ac.uk
Jianqiang Hou (editor)
Huawei Technologies
101 Software Avenue,
Nanjing 210012
China
Phone: +86-15852944235
Email: houjianqiang@huawei.com
Rahul Arvind Jadhav
Huawei Technologies
Kundalahalli Village, Whitefield,
Bangalore, Karnataka 560037
India
Phone: +91-080-49160700
Email: rahul.ietf@gmail.com
 End of changes. 16 change blocks. 
43 lines changed or deleted 97 lines changed or added

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