Optimizing RPL performance based on the selection of best route between child and root node using E-MHOF method

Received Feb 17, 2020 Revised Jun 14, 2020 Accepted Jun 31, 2020 IETF has proposed the routing protocol for low power and lossy networks (RPL) for IOT as view as light weight routing protocol. In RPL, the objective function (OF) is used to select the best route between child and root node. Several researches have been conducted in order to, enhance OF according to number parameters such as number of hops, remaining energy and expected number of transmissions (ETX), without a consideration to other challenges such as congestion node problem and latency. So, to overcome these challenges a new technique called “Enhance-minimum rank with hysteresis objective function (MHOF)” is proposed in this paper, to select the ideal path between the child and root node. The technique is consisted of three layers: parent selection layer in which parent is selected based on three parameters (ETX, RSSI and nodes’ residual energy), path selection layer in which the best route is chosen according to the minimum of (average ETX value) and maximum of (average remaining energy value) of all nodes in the selected route. The last layer is child node minimization, which utilized to solve the congestion node energy problem by using two parameters (RSSI reference and threshold value). The proposed method has been implemented and evaluated by using Cooja simulator software. The simulation results have shown that selected path with E-MHOF is increased the network lifetime and reduced latency in comparison with MHOF.


INTRODUCTION
In the current century, a huge revolution has taken place on the network development beginning with internet and ending with internet of things (IoT) [1]. Most of the development processes have been foucsed on using network with low cost and minimum energy usage. Also, enabling devices in the network to perform tasks instead of humans [2]. IoT is consisted of smart devices of "things" such as (vehicles or mobile devices) communicate with each other via internet. Many of the connections between any pair of smart things are conducted by protocol called "routing protocol for low power and lossy networks" (RPL), which is distance vector routing protocol that founds destination oriented directed acyclic graphs (DODAG) via utilizing different type objective functions (OFs). In order, to select the best route between the source node and root node in the network.
One of the challenges issue in IoT, is the limitations of "low power and lossy networks" LLNs, such as low power battery, small storage memory and short transmission range of the smart device in  [3,4]. Therefore, many researchers are take in account these challenges when developing IoT [5][6][7][8]. Either by reducing traffic load on the parent node in RPL, or via selecting the optimal route with high quality among multi-path to the destination. Also, node congestion in RPL is considered a common challenge, since many nodes can send data through one node (parent) in the route to the root node. Therefore, congestion is happend and caused packets losses and maximizes latency in the first place. The common solution for optimizing network lifetime and reducing node congestion problem is traffic balancing. This can be achieved either by providing multipath routing or optimizing OF in the way of parent selection process [9]. However, in the proposed method of this research, a load balancing solution in LLN is utlized in order to solve the congestion node problem and enhancing network lifetime. In this method, the routing path will be selected based on average value of (expected number of transmissions (ETX), remaining energy) of all the nodes that constructs the route from the child node via the parent to the root node. Also, each child node selects their parent node based on "minimum rank with hysteresis objective function" (MHOF) but based on two parameters ("Received Single Strain Indicator" (RSSI) reference and threshold value) to choose the best parent. The rest of this paper organizes as follows: section 2 explores the related work, section 3 describes RPL routing protocol. While, section 4 covers the proposal method to select the optimal route between child node and root node, whereas section 5 presents the simulation implementation results of the proposed method. Finally, section 6 elaborates study conclusion.

RELATED WORK
Many of the techniques have been used to enhance the performance of RPL based on the selection of the best parent. As view to, optimize the IoT networks' energy consumption. The [10] study, used method to select the optimal routes to the target node via using metrics (such as individual node transmit power, received power and ETX) in the objective functions. In other words, they calculated the whole network energy consumption based on the individual node energy consumption. Also, study [11] is proposed energy efficient (ER-RPL) protocol to reduce power usage of the node. In this protocol only a limited number of nodes called "reference node" are used, to specify the routing path between leaf node and root node. While, Mohammed et al [12], are presented in their study a new technique to select a dynamic parent in RPL, based on (recently load packets and remaining energy) of each node that form the path from child node toward the sink node.
Whilst, in study [13] is reduced energy consumption via minimizing the latency of packet transmission. They are restricted energy usage of the nodes, that near each other in the same area. Besides, avoiding bottleneck traffic load by sending data from different parents to the sink node. In another study [14], Alvi et al are proposed a new OF for RPL, in which the best parent is selected based on the route quality (measured by ETX) and length (calculated by number of hops). So as to reduce the number of parent selection process in order to, enhance the network energy usage. In study [15], the researchers are used, fuzzy logic to select best routing path based on three metrics: remaining energy, ETX and load of data in the route, as view to reduce energy usage. Also, [16] authors are presented a new OF called OF-EC to select the best parent via utilizing three metrics (HOP count, ETX and node residual energy). As well study [17], are presented a new OF called "OFRRT-FUZZY" via utilizing fuzzy logic based on three metrics (RSSI, node residual energy and throughput) to improve the (0OF) performance in RPL. So, three metrics are used as input to fuzzy logic in order, to get the ideal path as output. Whereas, Jamil et al [18], are proposed a new OF called expected lifetime (ELT), in which they depend on the node energy usage in active mode. In other word, efficient energy usage of ELT is evlaued with two OFs (MRHOF and 0OF) according to the distance between the child node and root node.
In research [19], the authors used load balancing technique to optimize the RPL energy usage. The core idea of their mechanism is about disabling a child node from transmit data to the parent, when it parent has a higher number of child nodes. Furthermore, it enable child to join parent that has minimum child nodes, instead of join parent that have lowest rank value and maximium number of child nodes. Also, in study [20] proposed a method to reduce traffic packets congestion via averting forwarding of data packets through congest node. They achieved that in two steps: firstly, the congest node is specifyed based on (buffer size and data packets delivery rate) and alleviates congestion in the next step, via changing routing path to avert congestion. Whilst, Kheaksong et al [21], are used another method of chosen parent in RPL to alleviate congestion according to three criteria involving ETX, reaming energy and hop count to optimize the load balancing and increasing network lifetime. Also, in study [22] authors are utilized a new technique to avoid congestion in RPL. in this technique a node remaining time is used, which is the time that node required to loss all of it residual energy (i.e. time to die). Thus, they allocate congestion nodes and diffusion traffic load uniformly through energy congestion nodes according to the nodes' remaining time.

RESEARCH METHOD
The research method is built according to load balancing technique to avert traffic congestion and reducing both nodes' energy consuming and latency. So as to achieve that technique three layers are used in the study method which are: − Parent selection − Routing path selection − Child node minimization.

Parent selection
Each child node select one node as parent according to the calculation of three parameters ETX, remaining energy and RSSI. The ETX is the retransmission counter that required to deliver packet to the destination node. Thus, minimum ETX value means the destination node is the best one to be select as parent. The ETX is computed via using (1) [26]. where _ , is the prospect of received packet from neighbor and _ , is the prospect of getting an acknowledgment successfully. While, remaining energy parameter is calculated by using (2) [15].
For RSSI parameter computation, both (RSSI threshold and RSSI reference) values [9] are used to select parent, The is the neighbors of node A, is calculated by enabling all nodes in the network to send DIO messages with higher transmission power without any transmission control. Where PS, is the set of candidate parents for node (A). While, RSSI threshold (th), is used to adjust size of DODAO sub tree and advert load balancing through increasing (th) value, to enable child node (A) to change its current parent with other one from PS. To illustrate, in Figure 2 the PS of node 5 are nodes (3 and 8) and best parent is node 8, because it has minimum ETX value and maximum remaining energy in compare with node 3. When node 8 received many messages from neighbors (i.e RSSI reference become higher), in that case th value increased in order to enable node 5 to select another parent for instance node 3.

Routing path selection
In this layer after parent selection, the routing path from child node to the root node through parent is selected based on the minimum of (average of ETX value) and maximum (average of remaining energy (RE) value) of all the nodes in the selected route. For instance, as shown in Figure 2, the best route from node 5 to the root is the path 5->8->4->1->root because the average value of ETX=3 and RE=4.75 in comparison with path 5->3->1->root. Where average value of ETX=4 and RE=4.1. Even though, hop counter for the first path is more than the second path.

Child node minimization
The third layer of this method is used to handle the congestion node energy problem. The congestion node is spcified based on the node buffer size and packets delivery ratio (PDR). For example, in Figure 3, packects are sent from three nodes 9, 10 and 11 to the parent node 6. So, node 6 buffer sized became full or PDR maximized. Consequently, node 6 is considered as congestion node in that case, to handle this problem the RSSI th value is increased. In order, to enable node 9 to change its current parent from node (6 to 4) using it PS according to the ETX and RE values, that are calculated in the parent selection layer. Thus, the number of child nodes are minimized for node 6.

RESULTS AND DISCUSSIONS
The Cooja simulator with operating system Contiki is utilized to implement the study method and evaluate the RPL performance in the IoT. In the simulator, the network is consisted of 25 nodes (1 root node and 24 parent and child node). The nodes are deployed randomly in (400mx400m) area. Also, all the nodes have the same coverage range. See the Table 1, which illustrates the simulator parameters. So, to evaluate performance of RPL in the network based on the energy consuming and latency parameters. Two scenarios, are implemented in this study. in the first scenario, standard RPL is implmented based on MHOF to select both parent and routing route from child to root node. While, the second scenario is used RPL with Enhance-MHOF (E-MHOF) via utilizing the three layers of the proposed technique in this study. For RE paramerter, the nodes are consumed more energy in scenario one in comparison with scenario two as shown in Figure 4. Where, the average energy usage of nodes in E-MHOF is 0.63 Joule, while in MHOF is 1.12 Joule. since the best route in E-MHOF is selected based on minimizing the number of children for each parent via using RSSI threshold value, Consequently, the congestion node scenario is alleviated in this way. Moreover, the best route is the one that have highest average value of nodes' remaining energy and minimum average ETX value of all the nodes that forms it from child toward the root node. Also, ETX value is reduced for all the nodes on the selected path from leaf node to the root node, when using scenario two in comparison with first scenario as shown in Figure 5. For route quality evaluation, latency is increased in scenario one when using MHOF as shown in Figure 6, which shows that E-MHOF utilized less time to convey data packets from each child node to the root node. Where, the total delay value of E-MHOF is 135.33 milliseconds, whereas in MHOF is 530.36 milliseconds.

CONCLUSION
In this study, a new mechanism for routing path selection between child and root node, has been proposed to optimize the RPL routing protocol performance in IoT network. The method is composed of three layers: a parent selection layer that is based on three metrics (ETX, RSSI and nodes' residual energy), a routing path selection layer, in which the best route from child to the root node is chosen according to the minimum average value of the nodes' ETX value and maximum average value of nodes' remaining energy. While, the child node minimization layer is used to handle the congestion node problem via using RSSI reference and threshold value.
However, two scenarios have been implemented by using Cooja simulator software, the first scenario is used to run standard RPL with MHOF and the second scenario is used to implement RPL based on the E-MHOF. The simulation results have been shown that nodes in E-MHOF used less energy in comparison with MHOF. Also, the routing path in E-MHOF take less time for data transmisstion in contrast to the routing path in MHOF.