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]