Internet DRAFT - draft-ladas-manet-m-cml
draft-ladas-manet-m-cml
Network Working Group A. Ladas
Internet Draft D. G C
Intended status: Experimental N. Weerasinghe
Expires: April 21,2019 C. Politis
WMN Research Group
Kingston University London, UK
October 22, 2018
Multipath ChaMeLeon (M-CML): A multipath hybrid routing protocol for
MANETs
draft-ladas-manet-m-cml-01.txt
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), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
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."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
This Internet-Draft will expire on April 21,2019.
Copyright Notice
Copyright (c) 2018 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.
Ladas et al. Expires April 21, 2019 [Page 1]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
Abstract
This document describes the multipath ChaMeLeon (M-CML) routing
protocol designed for Mobile Ad hoc Networks (MANETs). M-CML is a
multi-path, hybrid routing protocol operating within a defined area
denoted as the Critical Area (CA) in which the MANET is temporarily
deployed during the post-disaster phase. The main concept behind M-
CML is the adaptability of its routing mechanisms towards changes in
the physical and logical state of a MANET. For autonomous
communications in MANET, it is likely that the network size varies
whenever additional devices join or subset of them leave the
network. In addition, battery depletion of lightweight mobile
communication devices will stipulate another reason for changes in
the network size. As a result, the M-CML approach adapts its routing
mechanism according to changes in the network scenario within a
predefined CA. For small networks, M-CML routes data proactively
using the Optimized Link State Routing version v2 (OLSRv2) protocol
whereas for larger networks it utilizes the reactive Ad hoc On-
Demand Distance Vector Version 2 (AODVv2) Routing protocol. The
oscillation phase is the intermediate phase in which the transition
of routing protocol occurs. M-CML creates multi-path routes for
nodes with disjoint paths which increases the network reliability.
Table of Contents
1. Introduction...................................................3
2. Conventions used in this document..............................3
2.1. M-CML terminology used in this document...................3
3. Applicability..................................................4
4. Protocol Overview..............................................4
4.1. Proactive Routing.........................................4
4.2. Monitoring and Analysis...................................5
4.3. Adaptive Component........................................6
4.4. Oscillation Phase.........................................7
5. Protocol Operation.............................................8
5.1. M-Phase...................................................8
5.2. P-Phase...................................................8
5.3. R-Phase...................................................9
5.4. O-Phase...................................................9
5.5. Algorithm for M-CML ......................................9
5.5.1. Protocol Operation..................................10
6. M-CML Packet and Message Formats..............................11
6.1. Packet Format............................................11
6.2. Change Phase (CP) Message................................11
6.3. Hop Count Request (HCReq) Message........................11
6.4. Hop Count Response (HCRep) Message.......................12
7. M-CML tables..................................................12
7.1. M-CML Change Phase table.................................12
8. M-CML Timers..................................................12
8.1. Oscillation timer........................................12
9. Constants.....................................................13
Ladas et al. Expires April 21, 2019 [Page 2]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
9.1. Network Threshold Values.................................13
9.2. Oscillation Interval (Osc_Interval)......................13
9.3. Parameter Values.........................................14
10. Message Emission and Jitter..................................14
11. IPv6 Considerations..........................................14
12. Security Considerations......................................14
13. IANA Considerations..........................................15
14. Conclusions..................................................15
15. References...................................................15
15.1. Normative References....................................15
15.2. Informative References..................................16
16. Acknowledgments..............................................16
1. Introduction
The protocol discussed in this document is a multipath hybrid
routing protocol for MANETs. It consists of four phases of
operation, which are considered to be Monitoring, Proactive,
Oscillation and Reactive phases. The Proactive Phase, i.e., p-phase
and Reactive Phase, i.e., the r-phase operates in the same way as
the core functions of [3] and [6], respectively, and are discrete
from each other. This draft focuses on the optimization of the p-
phase by proposing a new route computation approach compared with
[4] for multipath operation. By applying this multipath approach,
our main aim is to ensure load balancing, improve QoS and delay,
provide reliable communication among the nodes and maximize network
life. In this draft, the r-phase of M-CML is not multipath, it is
simply an on-demand route computation. M-CML makes no assumptions
about the underlying link layer.
2. Conventions used in this document
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 [1].
2.1. M-CML terminology used in this document
This section defines terminology associated with M-CML that is not
already defined in or that differs from the meaning of the
terminology in [3],[6],[8] and [12].
o The p-phase is based on MP-OLSRv2 Routing Protocols. The routing
process is based on the specification [4],[6].
o The m-phase is the monitoring state of the routing node in which
it monitors various network parameters, for example, network
density, traffic pattern, energy consumption etc., based on which
next routing phase is determined.
Ladas et al. Expires April 21, 2019 [Page 3]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
o Proactive Route Computation Terminology - The route computation
process that is going to be used in M-CML is based on an Advanced
Relay Routing (ARR) approach.
o The r-phase remains the same as defined in AODVv2 [3].
3. Applicability
The design of M-CML has been constructed to provide robust and
efficient communication for wireless networks, by exploiting the
multi-path information transfer and optimal combination of the two
routing approaches. The autonomous nature of MANETs is very suitable
for a variety of scenarios, especially when multiple disjoint paths
exist within the CA . Also, in such a context, the number of MANET
nodes varies depending on different parameters.
o Battery power constraint of mobile nodes is a very important
consideration. Node failure as a consequence of battery depletion
MAY result in network segmentation.
o Nodes MAY join or leave the network at anytime and at any random
location.
o A certain quality of service (QoS) level has to be maintained to
allow for multimedia communication. Mainly, certain delay bounds
have to be established while also maintaining effective routing
by minimizing battery consumption.
M-CML has the ability to adapt its routing behavior on-the-fly
according to the changes in MANET size. Therefore, it is a more
suitable routing alternative than individual routing approaches for
small, large as well as variable sized MANETs operating in a defined
CA. Moreover, the M-CML also adapts within the high level of node
mobility, which makes it applicable in the very dynamic network
topology.
4. Protocol Overview
This protocol is designed to work as a multi-path, hybrid and
adaptive routing protocol for MANETs. The normal mode of operation
is under one of the stable phases. The default operating phase is
the p-phase. This section describes the various processes and
structures introduced by M-CML.
4.1. Proactive Routing
As soon as the MANET is implemented in the CA, a default routing
mode in M-CML is the p-phase, irrespective of the network scenario.
Ladas et al. Expires April 21, 2019 [Page 4]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
4.2. Monitoring and Analysis
The monitoring phase (m-phase) is triggered soon after the p-phase
starts in section 4.1., i.e., it runs simultaneously with the p-
phase. The m-phase is initiated when a control message is received
by the monitoring module in the routing node [9]. However, m-phase
is triggered in regular intervals even when M-CML runs either in p-
phase or r-phase (but it is disabled in o-phase). The node MUST
perform the following tasks.
1. Send a copy of the packet to the monitor part of the module. The
monitoring component has a network size part that MUST check the
number of nodes in the network. This is accomplished differently
depending on the current stable phase of operation (as described
later).
2. Send the packet to the regular control message processing by the
stable phase, as described in [3] or section 5.2, which is the
current active routing part.
In the m-phase, the network size is estimated as follows. The m-
phase and the p-phase (where the OLSRv2 routing algorithm is active)
run concurrently, this task consists of calculating the number of
reachable hosts from the routing table as defined in [6]. This
calculation is done by counting the number of rows in the proactive
routing table. Each row includes fields of possible destination
nodes, the next hop to reach the destination as specified in the
possible destination field and its distance from the current source
node. These field values are computed using periodical Topology
Control (TC) and HELLO message broadcasts by each node in the
network. If the number of nodes is found to exceed the NST, this
monitor part must contact the L-NST part of the Adaptive Component.
In the r-phase (where the AODVv2 routing algorithm is active), the
number of nodes in the network is estimated using the maximum value
of the hop count from a source node to a destination. As defined in
[3], a source finds a route to a destination 'on-demand' by flooding
a Route Request (RReq) packet throughout the network using an
expanding ring approach until a RRep is received from the
destination.
The monitor function in the source node must use this RRep message
to obtain the value of Hop Count (HC) towards the destination node.
It then compares this with the U-NST, which is calculated according
to the relationship defined in section 9.1. The monitor function
MUST act as follows:
1. If HC in RRep is greater or equal to U-NST, it decides that the
NST is not exceeded.
2. If HC in RRep is less than the U-NST, the data packets are
transmitted through the established route. After data
Ladas et al. Expires April 21, 2019 [Page 5]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
transmission, the CMLv2 Hop Count Request (HCReq) packet described
in section 6.3. MUST be generated and flooded in the network to
probe for the network HC (as opposed to destination HC). The HC is
said to be less than the NHT, if after
RREQ_WAIT_TIME*DISCOVERY_ATTEMPTS_MAX, no HCRep has been received.
If the HC is less than the U-NST, the monitor function decides
that the r-phase NST (calculated using the relationship in section
9.1.), has been exceeded and calls the U-NST part of the Adaptive
component.
If a node receives HCReq, it must first make sure that the
sequence number of the packet is greater than that stored in the
Change Phase (CP) table for the same originator address. Then, it
checks if the TTL = 0. If the latter is true, it MUST store HCReq
originator IP and packet sequence number information in the CP
table and send back an HCRep to the originator, as described in
section 6.4. Otherwise, it decreases the TTL value and floods back
the HCReq packet in the network. It then generates and floods its
own HCReq to probe for the HC with TTL value set to NHT. The value
of the originator address of the original HCReq packet (triggering
the probing locally) is stored in the CP table along with the
sequence number.
The message type field is set equal to the value of message type
"HCReq" as which is equal to '9' as mentioned in section 13. If
for that particular HCReq, an HCRep is received, the node must
send an additional HCRep to that HCReq originator address.
If a node receives a M-CML CP Packet described in section 6.2, it
MUST flood the packet in the network after decreasing its TTL
count. Then, the active routing algorithm part of the node MUST
call the relevant Adaptive part from its Adaptive component.
4.3. Adaptive Component
The Adaptive component, when activated by the m-phase (i.e., a CP
packet is received), the component MUST make sure the following:
1. The Adaptive part ID used in the calling message is valid.
2. The Adaptive part ID corresponds to the appropriate part with
respect to the active routing component if contacted from the
monitor part as described in the above section.
3. In the case where the CP packet requires that an inappropriate(see
point 2 above) Adaptive part be contacted, this action is ignored
and the CP is flooded back in the network.
Any of the activated Adaptive part, subsequent to the above steps,
MUST change operation to o-phase as it is explained in section 4.4.
Ladas et al. Expires April 21, 2019 [Page 6]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
In any other situation, the Adapt function terminates and the
appropriate stable phase operation is resumed.
4.4. Oscillation Phase
In the o-phase, the Adaptive component checks the o-phase validity
time, "Osc_Interval" of the oscillation timer described in section
8.1, is first checked. If the timer is still valid, the o-phase
variable in the core is cleared and consequently the stable phase of
operation is maintained. If the timer has expired, the o-phase
variable is set and:
1. If the routing algorithm ID (RID) is set to OLSRv2:
The OLSRv2 mechanism will continue to operate. At the same time,
the node will check the number of nodes in the network as
described in section 4. for 2 * TC_Intervals (TC_Interval is
described in [6]). If the number of nodes is then found to be
greater than L-NST at least once, the o-phase switches to r-phase
and resets the oscillation timer. It also generates and floods a
CMLv2 CP Packet. The CP packet includes its address as originator
address and its incremented sequence number. The CP field value of
the M-CML packet is set as "AODVv2 RID".
Otherwise, the node returns to operating in the p-phase.
2. If the routing algorithm ID (RID) is set to AODVv2:
The routing mechanism of AODVv2 will continue to operate. At the
same time, the Monitor and Adaptive component will check the HC of
the network using two more HCReq packets, as described in section
6.3., waiting for RREQ_WAIT_TIME * DISCOVERY_ATTEMPTS_MAX
(RREQ_WAIT_TIME and DISCOVERY_ATTEMPTS_MAX are explained in [3])
each time. If in at least one occurrence, no HCRep is obtained for
the HCReq with TTL=U-NHT, it is implied that the network size is
smaller than the NST. In this case, the o-phase switches to p-
phase by clearing the o-phase variable and setting the RID to the
OLSRv2 RID. The oscillation timer is also reset. It also generates
and floods a M-CML CP packet. The CP packet includes its address
as originator address and its incremented sequence number. The
value of the CP field in the packet is set to "OLSRv2 RID".
Otherwise, stable r-phase routing is resumed.
3. If this phase shift is initiated using a M-CML CP packet:
The node core MUST check the value of the sequence number in the
packet and compare it to any stored sequence number having the
same originator address in the CP table. If no match is found in
the CP table, a new entry is created with the aforementioned
values obtained from the CP packet before further processing.
Otherwise, if a match is found and the packet sequence number is
Ladas et al. Expires April 21, 2019 [Page 7]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
less than the sequence number stored in the table, the message is
silently discarded and the node returns to the stable phase
specified by its core RID variable.
For non-discarded packets, the node MUST check the CP field value
in the CP packets and compare it with its own RID:
1. If they are equal, the CP packet is silently discarded and the
node returns to the phase specified by its core RID.
2. If they are not equal, the o-phase changes the RID to the value
specified in the CP field of the CP message and resets the
oscillation timer.
In both cases, the CP packets are flooded back in the network.
5. Protocol Operation
This section describes the behavior M-CML MUST follow in the m-
phase, p-phase, r-phase and o-phase.
5.1. M-Phase
In the m-phase, the node core receives packets with all message
types but only processes packets with message types [1-2] and routes
data packets as described in [8]. It also processes packets with
message types 9-11 as described in this draft. In addition, it sends
a copy of the packet to the Monitor component each time a TC routing
packet is received. In this phase, NST is equal to U-NST to cater
for group oscillation.
5.2. P-Phase
The proactive phase, i.e., p-phase, of M-CML is based on [4],[6] but
the source to destination route is computed differently. According
to [4], when a packet has to be forwarded from the source to the
destination, the source node acquires a path from the Multi-path
Routing Set, storing the path information in the datagram header as
source routing header. Each of the intermediate nodes, is listed in
the source routing header and it forwards the packet to the next hop
as indicated in the source routing header.
In our approach, each node, upon receiving a packet, computes all
the disjoint paths to the destination node. The next step is to
check if it is on the best (or 2nd, or 3rd, and so on, best) path to
the final destination. If this is valid, the packet is forwarded.
The routing decision for determining the best path will be taken by
using the Expected Transmission Count ETX) [7] metric. If the number
of paths is higher than 3, then the 3 best routes are selected
according to the ETX metric. So, regarding this approach the
Ladas et al. Expires April 21, 2019 [Page 8]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
decision of which path(s) is going to be selected is taken according
to the ETX metric instead of using the hop count metric.
5.3. R-Phase
In the r-phase, the node core receives packets with all message
types but processes only packets with message types 5-8 and routes
data packets as specified in [3]. It also processes packets with
message types 9-11 as described in this document. In addition, it
sends a copy of the packet to the Monitor component each time it
receives RRep routing packets as a source node. In this phase, NST
is equal to L-NST to cater for group oscillation.
5.4. O-Phase
In this subsection we describe the oscillation problem and the
operation of the o-phase as a mechanism to counteract oscillation
effects in MANETs that use the CMLv2 protocol. The basic operations
of the current stable phase still apply in the o-phase. However,
there are added phase dependent sampling processes to check for
oscillation instances.
5.5. Algorithm for M-CML
M-CML is characterized by two major modifications compared to M-CML
aiming to improve its operational efficiency. The first addition is
the incorporation of optimal M-CML configurations in the new version
and the second is the proposal of a new logic on the routing
algorithm which calculates the multiple paths in a more efficient
manner.
Multipath routing protocols can be employed to tackle challenges
created by link instabilities caused by environmental conditions.
However, it is obvious that implementing a routing protocol
operating in a multipath manner has some significant drawbacks
related to higher duplicate data packet generation, traffic
congestion in the network and high energy consumption. On this note,
we have modified the operation of our M-CML routing protocol in a
way of taking advantage of the multiple routes only if it is
absolutely necessary. Our main aim is to establish the way the
multipath method is performed, reduce the generation of redundant
duplicate packets, and apply the improved algorithm on top of the
changes that we considered in the previous section. In order to
further develop the operational efficiency of CMLv2, an extended
version of CMLv2 is named as M-CML. Here, M-CML protocol exploits
the attributes of CMLv2's system model and aims to enhance its
performance by applying the following changes:
Following up the analysis of M-ML in the p-phase, i.e., the default
phase, M-CML selects the optimal configuration set, with the view of
handling the generated routing load more effectively in the network.
Ladas et al. Expires April 21, 2019 [Page 9]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
M-CML employs the improved multipath algorithm for selectively
calculating multiple paths in a more efficient way, acting as a
single path or multipath routing protocol depending on the quality
of the links. This way, we aim to reduce improvident emission of
duplicate packets which impacts the network congestion and the
nodes' energy consumption.
The proposed algorithm describes the technique to add a new entry M-
CML's routing table. In particular, the set of next hop addresses
are listed in an ascending order based on their ETX values. Upon
transmitting data packets from source to destination, a gateway list
is responsible for allocating the corresponding routing entry to the
relevant destination, then parsing the ETX values which have been
listed in ascending order and finally transmitting the information
according to the two minimum ETX values.
Each time a node requests for a route towards the destination, it
first calculates all next hops corresponding to that destination. In
the case that there is not any available next hop, the packet is
eventually dropped. Otherwise, node either transmits data using the
two minimum values of ETX following the initial approach of M-CML,
or dynamically decides to transmit data using a single path only if
the ETX value is on its minimum value, i.e., ETX=1. This can reduce
the unnecessary copies of the same packets which are distributed
throughout the network due to the multipath attributes of the
protocol and, at the same time, confine the energy consumption.
Moreover, during the scenarios where the distance among source and
destination is limited and the successful delivery of HELLO messages
is high, we aim to eliminate the improvident emission of redundant
information.
5.5.1. Protocol Operation
M-CML proposes a twofold solution to the oscillation problem.
Appropriate NSL values (acting as NST) can restrain the effects of
group oscillations whereas the right "Osc_Interval" value for the
oscillation timer limits the impact of frequent oscillations.
In addition, during the o-phase, the monitor component samples more
instances of the 'number of nodes' count or the network HC
(depending on the current stable phase of operation) as described in
section 4. In this way, it can confirm whether the NST or NHT has
actually been exceeded. Otherwise, it determines that an oscillation
has occurred and the stable phase of operation is resumed. If the
NST is found to have been actually exceeded in the o-phase, the
appropriate part of the Adaptive component (identified as explained
above) resets the oscillation timer and generates CP packets. These
CP packets are flooded into the network to alert neighboring nodes
of such a phase shift. The o-phase is then terminated by the
Adaptive Component part that then shifts routing operation to the
relevant stable phase of operation.
Ladas et al. Expires April 21, 2019 [Page 10]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
Furthermore, during the o-phase, the core and active Adaptive
component part are responsible for phase shifting if a valid CP
packet is received from a neighboring node (as explained above). In
such a case, it floods back the CP packet in the network.
Furthermore, during the o-phase, the core and active Adaptive
component part are responsible for phase shifting if a valid CP
packet is received from a neighboring node (as explained above). In
such a case, it floods back the CP packet in the network. If the
protocol phase changes from p-phase to r-phase, and a HELLO packet
is received, the information about next hop is stored in the routing
table. A TC packet information is used to either reset a timeout in
the routing table or populate routing table information for
potential data to be sent. In the case where the transition occurs
from the r-phase to the p-phase, and RREQ are requested, if the
destination is already in the routing table, a RREP is sent back
with this information. Otherwise, the RREQ is stored until 2
*TC_INTERVAL before sending a RREP.
6. M-CML Packet and Message Formats
6.1. Packet Format
The basic layout of a M-CML packet is as recommended in [12]. The
message type field indicates the type of message found in the
"MESSAGE" section. This could be a M-CML message or messages from
[6] or [3] or the CP message.
6.2. Change Phase (CP) Message
The Change Phase (CP) field contains the RID to which the originator
node has shifted to and subsequently requests neighbor nodes to
shift to.
The Change Phase message format is shown below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
| CP containing RID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
6.3. Hop Count Request (HCReq) Message
The HCReq message has an empty message body. It can be identified as
a CML packet with:
o Message Type - The value of message type is set to 9.
Ladas et al. Expires April 21, 2019 [Page 11]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
o TTL - The TTL value is set to NHT.
6.4. Hop Count Request (HCRep) Message
The message format for the HCRep message is:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination IP address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
o Destination IP address - Originator IP address in corresponding
HCReq packet.
o Destination Sequence Number - Originator Sequence Number of
corresponding HCReq packet.
7. M-CML tables
7.1. M-CML Change Phase table
The M-CML CP Table fields are listed below:
o Originator IP Address - The IP address of the node which generated
the packet.
o Originator Sequence Number - The Sequence number of the message
that was sent by the node which generated the packet. This is
incremented monolithically for each message generated by a node.
o Message Type - The message type value of the message through which
the table row was populated.
8. M-CML Timers
8.1. Oscillation timer
The Oscillation timer is used in the o-phase to prevent phase shifts
within the time period of "Osc_Interval". This timer prevents phase
shift due to frequent oscillations.
Ladas et al. Expires April 21, 2019 [Page 12]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
9. Constants
9.1. Network Threshold Values
The Network threshold values for M-CML are described below:
o NST - The theoretical Network size threshold "Nt" of a network
depends on the number of nodes N in the network, the critical area A
of the network and the radio coverage area of each node. NST marks
the point after which a reactive routing approach will be more
effective (in terms of end to end packet delivery latency) and
efficient (in terms of battery usage) compared to a reactive routing
approach.
Below the NST point, proactive routing approaches outperform
reactive routing approaches.
o U-NST - The Upper limit network size threshold "Nu" is given by:
Nu = Nt + Nosc
where "Nosc" is the number of nodes in the network which are
expected to oscillate.
When operating in the p-phase the actual value of NST is equal to
"Nu".
o L-NST - The Lower limit network size threshold "Nl" is given by:
Nl = Nt - Nosc
When operating in the r-phase the actual value of NST is equal to
"Nl".
o NHT - The network hop threshold value "Nht" is directly
proportional to the square root value of the NST:
Nht = Function (sqrt (Nt))
The optimal values for "Nt", "Nosc", "Nu", "Nl" and "Nht" as well as
an accurate relationship between NST and NHT can be derived through
experimentation and mathematical modeling for a given critical area,
'A' and node coverage radius 'R'.
9.2. Oscillation Interval (Osc_Interval)
The Osc_Interval is a time period for which no phase shift is
allowed. While the U-NST and L-NST values cater for group
oscillations, the Osc_Interval prevents unnecessary phase shift
overheads due to regular oscillations. Thus, the Osc_Interval SHOULD
be set according to the time period of node oscillations. The
optimal value for Osc_Interval can be derived through
Ladas et al. Expires April 21, 2019 [Page 13]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
experimentation and mathematical modeling for a given critical area,
'A' and node coverage radius 'R'.
9.3. Parameters Value
Parameter values used by the M-CML protocol and also defined in [3]
and [6] are:
Parameter Name Value
---------------------- -----
RREQ_WAIT_TIME 2 seconds
DISCOVERY_ATTEMPTS_MAX 3 attempts
RREQ_HOLDDOWN_TIME 10 seconds
HELLO_INTERVAL 2 seconds
TC_INTERVAL 5 seconds
10. Message Emission and Jitter
Synchronization of control messages SHOULD be avoided as mentioned
in [2].
11. IPv6 Considerations
All the operations and parameters described in this document can be
used for both IP version 4 and IP version 6. For IPv6 networks, the
IPv4 addresses in M-CML packets and messages need to be replaced by
IPv6 addresses. The packet and message sizes will also increase
accordingly.
12. Security Considerations
M-CML does not specify any security countermeasures. Security
Threats for OLSRv2 are described in IETF draft, Security Threats for
the Optimized Link State Routing Protocol Version 2 (OLSRv2) [10]
and for the Ad-Hoc On-demand Distance Vector Version 2 (AODVv2)[3]
which are applicable to MCML.
M-CML Packet/Message Format follow the Generalized Mobile Ad Hoc
Network (MANET) Packet/Message Format proposed in [12]. Hence the
security mechanisms suggested in [12] and [15] can be directly
applied to this protocol. The network performance can also be
affected by artificial manipulation of metric values. More specific,
if a link is, artificially, advertised with a higher value, the
amount of incoming traffic may be reduced. A malicious node, might
decrease or increase the value of the advertised links, in order to
increase or decrease the data traffic. Thus, a malicious node can
Ladas et al. Expires April 21, 2019 [Page 14]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
potentially affect data throughput, by not sending data from good
links and vice versa.
13. IANA Considerations
The IANA consideration section is required as recommended by [11]
and [13]. The following values for the corresponding message types
would be required:
Message Type Value
-------------------- -----
HELLO_MESSAGE = 1
TC_MESSAGE = 2
ROUTE REQUEST (RREQ) = 3
ROUTE REPLY (RREP) = 4
ROUTE ERROR (RERR) = 5
ROUTE-REPLY ACK (RREP-ACK) = 6
HOP COUNT REQUEST (HCREQ) = 7
HOP COUNT REPLY (HCREP) = 8
CHANGE PHASE (CP) = 9
14. Conclusions
This I-D introduced the M-CML routing protocol. Here, M-CML is a
routing protocol which combines the functionalities of Multipath
OLSRv2 and AODVv2 protocols in an adaptive and hybrid manner. The
motivation behind M-CML is the enhancement and the increase of the
reliability and robustness of the networks. The main features of
MCML include the Adaptive Module, which monitors and adapts, within
m-phase, to the changing network state, the p-phase which computes
multiple routes according to the link quality metric (ETX), the r-
phase which is computes multiple routes in an on-demand manner. In
the next release, M-CML will be enhanced by removing the o-phase and
will operate as a single protocol. Furthermore, M-CML will consider
various route optimization to improve the mobility support.
15. References
15.1. Normative References
[1] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
Ladas et al. Expires April 21, 2019 [Page 15]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
[2] Clausen, T., Dearlove, C., and B. Adamson, "Jitter
considerations in MANETs", RFC 5148, March 2008.
[3] Perkins, et al., "Dynamic MANET On-demand (AODVv2) Routing",
IETF Draft, December 2014.
[4] Yi,J. and Parrein,B., "Multi-path Extension for the Optimized
Link State Routing Protocol version 2 (OLSRv2) ", IETF Draft,
October 2014.
[5] Macker, J. and S. Corson, "Mobile Ad hoc Networking (MANET):
Routing Protocol Performance Issues and Evaluation
Considerations", RFC 2501, January 1999.
[6] Clausen, T., Dearlove, C., Jacquet, P., Herberg, U., "The
Optimized Link State Routing Protocol Version 2", RFC 7181,
April 2014.
[7] Vasseur, JP., Kim, M., Pister, K., Dejean, N., Barthel, D.,
"Routing Metrics Used for Path Calculation in Low? Power and
Lossy Networks", RFC 6551, March 2012.
[8] Ramrekha, A., Panaousis, E., Politis, C., "ChaMeLeon (CML): A
hybrid and adaptive routing protocol for Emergency
Situations", IETF Draft March 2011.
[9] Ladas, A., Deepak, G.C., Pavlatos, N. and Politis, C., 2018.
"A selective multipath routing protocol for ubiquitous
networks" Ad Hoc Networks, 77, pp.95-107, August 2018.
15.2. Informative References
[10] Clausen, T., Herberg, U., Yi, J., "Security Threats for the
Optimized Link State Routing Protocol version 2 (OLSRv2) ",
IETF Draft, August 2014.
[11] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA
Considerations Section in RFCs", RFC 5226, BCP 26, May 2008.
[12] Clausen, T., Dean, J., Dearlove, C., and Adjih, C."Generalized
MANET Packet/Message Format", RFC 5444, March 2009.
[13] Chakeres, I., "IANA Allocations for MANET Protocols", RFC
5498, March 2009.
[14] Clausen, T. and C. Dearlove, "Representing multi-value time in
MANETs", RFC 5497, March 2009.
[15] Herberg, U., Dearlove, C., Clausen, T., "Integrity Protection
for the Neighborhood Discovery Protocol (NHDP) and Optimized
Link State Routing Protocol Version 2 (OLSRv2)", RFC 7183,
April 2014.
Ladas et al. Expires April 21, 2019 [Page 16]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
16. Acknowledgments
The authors wish to acknowledge the support of the Engineering and
Physical Science Research Council (EPSRC) Project DARE (Distributed
Autonomous Resilient Emergency Management System) under the grant
agreement number EP/P028764/1. Framework Program and all the
partners in SALUS (Security And InteroperabiLity in Next Generation
PPDR CommUnication InfrastructureS)project with contract number
313296 and also the support of the ICT European 7th Framework
Program and all partners in PROACTIVE PRedictive reasOning and
multi-source fusion empowering AntiCipation of attacks and Terrorist
actions In Urban EnVironmEnts with contract number 285320.
This document was prepared using 2-Word-v2.0.template.dot.
Authors' Addresses
The following researchers who have contributed to this I-D are
members of the Wireless Multimedia and Networking (WMN) Research
Group at Kingston University London:
Alexandros Ladas
Researcher
Researcher, WMN Research Group
Kingston University London, UK, KT1 2EE
Phone: (+44) 02084177025
Email: k1242116@kingston.ac.uk
Deepak G C
Research Fellow, WMN Research Group
Kingston University London, UK, KT1 2EE
Phone: (+44)02084177025
Email: d.gc@kingston.ac.uk
Nuwan Weerasinghe
Researcher, WMN Research Group
Kingston University London, UK, KT1 2EE
Ladas et al. Expires April 21, 2019 [Page 17]
Internet-Draft Multipath ChaMeLeon (M-CML) October 2018
Phone: (+44) 02084177025
Email: n.weerasinghe@kingston.ac.uk
Christos Politis
Head of WMN Research Group
Kingston University London, UK, KT1 2EE
Phone: (+44) 02084172653
Email: c.politis@kingston.ac.uk
Ladas et al. Expires April 21, 2019 [Page 18]