Energy and Bandwidth Based Link Stability Routing Algorithm for IoT

: Internet of Things (IoT) is becoming popular nowadays for col-lecting and sharing the data from the nodes and among the nodes using internet links. Particularly, some of the nodes in IoT are mobile and dynamic in nature. Hence maintaining the link among the nodes, efficient bandwidth of the links among the mobile nodes with increased life time is a big challenge in IoT as it integrates mobile nodes with static nodes for data processing. In such networks, many routing-problems arise due to difficulties in energy and bandwidth based quality of service. Due to the mobility and finite nature of the nodes, transmission links between intermediary nodes may fail frequently, thus affecting the routing-performance of the network and the accessibility of the nodes. The existing protocols do not focus on the transmission links and energy, bandwidth and link stability of the nodes, but node links are significant factors for enhancing the quality of the routing. Link stability helps us to define whether the node is within or out of a coverage range. This paper proposed an Optimal Energy and bandwidth based Link Stability Routing (OEBLS) algorithm, to improve the link stable route with minimized error rate and throughput. In this paper, the optimal route from the source to the sink is determined based on the energy and bandwidth, link stability value. Among the existing routes, the sink node will choose the optimal route which is having less link stability value. Highly stable link is determined by evaluating link stability value using distance and velocity. Residual-energy of the node is estimated using the current energy and the consumed energy. Consumed energy is estimated using transmitted power and the received power. Available bandwidth in the link is estimated using the idle time and channel capacity with the consideration of probability of collision.


Introduction
IoT is a self-configured network which does not need any pre-existent infrastructure. In this network, each node is free to move, which in turn makes the network to alter its topology constantly. In the case of wireless ad hoc networks [1], nodes dynamically create routes among themselves to form own wireless network while in IoT, nodes are free to move across anywhere at random and organize themselves at random. As a result, the topology undergoes significant and rapid change. Such a network may work in a self-organization and its application such as military battlefield, local level, collaborative work, Bluetooth sensor networks and personal area network. When IoT nodes has move from one place to another in these situations, the communication links between the inter-mediate nodes may fail frequently in network [2], thus affecting the routingperformance of the networks. The links changes spontaneously and reduces the Packet Delivery Ratio (PDR) [3] and also available bandwidth constraints the residual energy of the nodes [4][5][6].
The proposed Optimal Energy and Bandwidth based Link Stability routing (OEBLSR) algorithm works as follows. The source node n1 sends a Route-Request (RREQ) packet to the neighbor nodes within the transmission range; otherwise the RREQ packet is discarded and after retransmission by the source node the neighbor node receives it and the computes the available bandwidth greater than the required bandwidth and residual energy greater than threshold energy and also link stability based on the minimum value of the links in these link select minimum value of the links, based on these two conditions, the nodes are considered to be within the transmission range until they reach the destination-node. If the distance of the destination-node is only one hop, it transmits Route-Reply (RREP) to the primary source node; otherwise, the neighboring node forwards the RREQ packet to the destination node via intermediary nodes. This denotes the working mechanism of (OEBLSR) algorithm. In the design of this routing algorithm challenges: limited bandwidth, dynamic topology, overhead, energy constraints, transmission errors, high latency, processing capability.
Though many research articles have addressed the above issues, still there are some problems [7]. This paper addresses some of the above issues like packet losses and energy and bandwidth management by proposing an OEBLSR algorithm, which tries to increase the PDR by choosing a less congested route, to improve the Network Life Time (NLT). The objective of this research is to reduce packet loss, control overhead, energy and bandwidth consumption and increase PDR, residual energy and also NLT [8,9]. The work is organized such that Section 2 discusses the related works, Section 3 elaborates on the Optimal Energy and bandwidth oriented link stability based routing algorithm, and Section 4 compares the performances of the OEBLSR with the existing protocols and finally experimental results section followed by conclusion of this proposed work.

Related Work
Energy Efficient DSR Protocol (E2DSR) [10] is considered as an effective routing protocol where it has brought in a number of key parameters that constitute performance matrices used in the computation of energy consumption in MAN. Despite the fact that it has a much broader scope for research works. It is a prominent recent energy-aware routing protocol, designed for minimizing battery power consumption by modifying the DSREEDSR.
Minimum Energy Dynamic Source Routing Protocol (MEDSR) [11] is a good work to make DSR a powerful and energy-conscious routing protocol. The entire MEDSR strategy is built around two significant measures namely Link Power Adjustment and Route Discovery. The route Discovery process is further classified into two further sub-processes. Energy Saving Dynamic Source Routing (ESDSR) protocol is an alteration of DSR protocol. DSR has two significant phases namely route maintenance and the other being route discovery. When it wishes to transmit a packet, the source node checks for its route cache capacity. If the appropriate route is open, the source node includes all the routing information in the data packet before allocating it. If not, the source originates a route discovery process by broadcasting RREQ packets. The source address and destination address and also a unique number for identifying the request contain by a RREQ packet. In receipt of a RREQ packet, a node verifies its route cache.
Node connects its address to the routing record field of the RREQ packet, if it does not possess the routing information for the destination requested. After that, the specified packet is forwarded to its next to another or very nearby destination. RREP consists of nodal addresses that have been passing through by the route request packet, when the RREP packet is generated by the destination.
In RREQ flooding, current routing protocols [12] target to obtain multiple routes with lesser delay in transmission between nodes [13]. The number of intermediate node delays should be reduced when an RREQ packet reaches the destination, and nodes with high latency nodes should prevent entering the path. Due to failures in path and route design, the contact path will periodically split. Increase in the routing overhead and lowering the PDR as a result of these factors is observed. As a result, managing routing overhead is important for improving service efficiency [14,15].
Topology-based routing protocols establish a route using connection information, and the source node obtains the destination node's location, after which the node forwards the RREQ in the destination's direction. It is used to flood the RREQ packets only to the destination node, avoiding flooding the RREQ packets away from the destination.
Routing protocols depending on location of the destination node will be known to the source node [16,17]. This can also be used to flood an RREQ packet just in the direction of the destination. However, in certain cases, the position-based approach is inaccessible.
The Energy Efficient Delay Time Routing (EEDTR) protocol differs from the existing methods as follows. The neighbor node introduces a delay in sending the RREQ packet, which is inversely proportional to its remaining energy level. Based on this protocol, RREQ packet is either sent by the maximum remaining energy node with a smaller delay, or the minimum energy residual node with a longer delay. Hence, the sink node receives the RREQ packet forwarded by the maximum energy remaining intermediate relay nodes. As and when the RREQ packet gets received by sink node, a RREP packet is sent back to the route-initiated source node [18][19][20]. The modifications improve the battery life of the node for more time. Introducing delay in the network increases the end-to-end delay.
Hence, this study concentrates on choosing energy and bandwidth efficient routing paths based on the assessed link stability, with the objective of achieving an enhanced PDR and NLT by selecting energy based less congested route. Above link stability routing algorithm are not consider energy and bandwidth in these case reduced packet loss and end to end delay.

Optimal Energy and Bandwidth Based Link Stability Routing Algorithm
The Optimal Energy and Bandwidth based Link Stability Routing algorithm sends RREQ packet is routed to the neighboring nodes based on the available bandwidth and remaining energy. If the available bandwidth in the link between the neighbor nodes is greater than required bandwidth to transmit the packets and the residual energy of the node is greater than the threshold remaining energy then the RREQ packet is directed to its neighbor nodes. In the RREQ packet header, the additional fields such as residual energy, available bandwidth in the link and link stability values are inserted additionally to optimize the efficient link stability-based energy and bandwidth constrained route between source and the destination. The destination will choose the optimal route among the various existing based on the link stability value. The route related to maximum among the minimum link stability values of the all-possible routes identified by destination.
Hence, to find the efficient route between the sources to destination, it is important to estimate the available bandwidth in the link, residual energy of the node and link stability values. The following subsections will discuss the estimation of available bandwidth in the link, remaining energy of the node and link stability values one by one.

Estimate of Available Bandwidth in the Links
Estimation of existing bandwidth in the link is estimated using the two nodes in the link which involve the packet transmission. Hence, the available bandwidth in the link is estimated using the estimation of the bandwidth consumed by the emitter node and the receiver node. To predict the available bandwidth in the network, since each node realizes a different channel state, the obtainable bandwidth in the IoT network. To estimate the available bandwidth in the network it is important to define neighborhood obtainable bandwidth and local obtainable bandwidth. To establish this, there eight nodes constructed as shown in Fig. 1. The radio transmission range is 300 m while the range of the carrier-sensing is 450 m. Nodes N2, N3 and N4 are within the communication node range of N1. Nodes N6 and N7 are within the carrier sensing range of node N1, N5, N8 are out of range to node N1. Nodes N1, N5 and N6 are within communication range of node N2. Other nodes such as N3, N4 and N7, and N8 are out of range node N2. Nodes N1, N4, N6, and N7 are within the transmission range of the node N3. Nodes N1, N3, N7 are within the transmission range of node N4. Nodes N2, N8 are within transmission range of node N5. Nodes N2, N3, N8 are within the communication range of node N6. Node N1 is within the carrier sensing range of node N6. Other nodes such as N4, N5, N7 are out of range to node N6. Nodes N3, N4, N8 are within the communication range of node N7. Node N1 is within the carrier sensing range of node N7.
Other nodes such as N2, N5, N6 are out of range to node N7. 512 kbps CBR flow with packet size of 512 bytes are established between the pair of neighborhood nodes. At time t1, the first flow is established between node N1 to nodes N2, N3, N4 and the packets are transmitted. At time t2, the second flow is established between node N2 to nodes N5 and N6. At time t3, the third CBR flow is established between node N3 to nodes N4, N6 and N7. At time t4, the forth flow is established between node N4 and node N7. At time t5, the fifth CBR flow is established between nodes N5 and N8. Similarly at time t6 and t7, the sixth and seventh CBR flows are established between the nodes N6 and N8, N7 and N8. Tab. 1. illustrates the bandwidth consumptions of each flow. This paper considered 2Mbps bandwidth in the wireless channel.
At a node, the transmitting medium may be in one of four states: transmitting, receiving, idle, or noisy. In the noisy state, a node detects a busy carrier but is unable to decipher the packet's material. The sum of time spent in these states can be used to measure the usable bandwidth for an IoT node, as shown in Eqs. (1) and (2)

Link Available Bandwidth Estimation
To accomplish the usage of combinatorial tools, the time is assumed to be discrete [7]. The following notations as. (B s (respectively B r ) represents the accessible bandwidth for nodes (respectively r) which is measured using the approach discussed in Section 3.1. B (s,r) represents the actual bandwidth available over the link (s, r). This represents the original bandwidth that can be achieved without downgrading the close flows. b (s,r) represents the bandwidth available that is estimated on link (s, r). If B s is nil or near to zero value, s either tries not to gain access to the relevant medium or already starts emitting frames at a rate that results in saturation of the radio medium. We can state this as B (s,r) ≤ min (B s , B r ).
The probability of the medium being available simultaneously both at the receiver and emitter ends P b (s,r) = i at a given time unit can be evaluated by Eq. (3):

Accessible Bandwidth Estimation
The accessible bandwidth existing between two of the neighbor nodes s and r can be observed by the below Eq. (4) where E b (s,r) is the bandwidth that is accessible on link (s, r) estimated by constantly monitoring the wireless channel and blinking receiver and emitter values using a probabilistic method, p is the probability of collision that is measured on the Hello-packets that are received and then rescaled to a desired packet size.

Residual Energy Estimation
Each node in the IoT computes its power consumed and determines the residual energy intermittently. The power needed for communication is given by the Eq. (5).
Consumed energy = P t * T where Pt denotes communicating power and communication time is denoted as T. The power required for reception of a packet is given by Eq. (6).
Consumed energy = P r * T where Pr is the reaction power and T is the response time. The value T can be calculated as Hence, the residual energy as shown in Eq. (8) of every IoT node can be computed using Eq. (6) or Eq. (7). Other two modes namely sleep and idle modes are not considered for scope in this work.

Estimating Link Stability Value
Assume two mobile nodes N 1 and N 2 within the communication range R as shown in Fig. 2. Consider the present coordinate for N 1 is (x 1 , y 1 ) and (x 2 , y 2 ) be that for N 2 . The distance between the IoT node N 1 and IoT node N 2 is given by Eq. (9) as shown below Suppose N 1 move in θ 1 direction with v 1 velocity and N 1 move in θ 2 direction with v 2 velocity.
2π ≥ θ1, θ2 ≥ 0 After T period of time, N 1 and N 2 move a distance d 1 and d 2 , the new coordinate will be (x 1new , y 1new ) and (x 2new , y 2new ) correspondingly. The distance d i is given by Eq. (10) as shown below.
where V iF and V iF represent the initial and final values of velocities pertaining IoT nodes. The values of the new set of coordinates (x inew ) and (y inew ) are given by Eqs. (11) and (12) respectively.
The distance between the IoT node N 1 and IoT node N 2 in the coordinate is given by Eqs. (13) and (14) as shown below: The prerequisite for connection between N 1 and N 2 is: retransmission range (R) ≥ distance between N 1 and N 2 (D (N 1 , N 2 ).
The link-stability between N 1 and N 2 after T time period by Eq. (15) Fig. 2 shows the sample network to explain the proposed protocol. In this example network, totally eight nodes are considered and the estimated available bandwidth (Bw a ) between two neighbour nodes are represented as Bw ij where i and j are the two neighbour nodes. For example Bw 12 is the estimated available bandwidth between two neighbour nodes such as node N 1 and N 2 . Similarly, LS ij represents estimated link based stability value between the nodes i and j. For example, LS 25 represents estimated link stability value between nodes N 2 and N 5 . E ri is the residual energy of the node i. For example, E r6 is the residual energy of the node N 6 . Bw r represents bandwidth required to transmit a packet. E th is the threshold energy level which determines whether the node is having sufficient energy to transmit a packet. If the remaining energy (E ri ) of a node is less than the threshold energy (E th ) level then that node could not forward the packets to its neighbour. Similarly, if the required bandwidth (Bw r ) is greater than the available estimated bandwidth (Bw ij ) then the packets could not be forwarded. This process continues till reaching the destination node. In this proposed IoT network shown in Fig. 2, it is assumed available estimated bandwidth between the nodes N3 and N6(Bw36) is less than the required bandwidth, and the residual energy of IoT node N4(Er4) is lower than energy threshold value.

Working Model for OEBLSR
In the route discovery of the proposed approach, the RREQ packet is forwarded depending on the remaining energy of the node and estimated available bandwidth in the link. Once the RREQ packet is reached to the destination, and if the multiple paths are existed, then the destination node will decide the optimal route based on the estimated link stability value. The source node is interested to send the packets to the destination and in turn, the process of route discovery is initiated. In this example, network assume source node is N1 and destination node is N8. all other nodes such as N2-N7 are intermediaries between source and destination. Nodes N2-N4 are neighbor nodes to source node N1. Also they are in transmitting and carrier sensing range to node N1. Before transmitting RREQ packets to its neighbor nodes, node N1compares the residual energy of the neighbor nodes with the threshold energy level Eth and estimated available bandwidth in the link with the required bandwidth to transmit the packet. If the residual energy present in the neighbor nodes is higher than threshold energy level and the estimated available bandwidth is greater than the required bandwidth then RREQ packet is forwarded to its neighbor nodes. When the RREQ packet is forwarded, the primary source node also appends the link stability value between the related neighbor nodes in the header of the RREQ packet. According to this example network, the neighbors nodes N2 and N3 are satisfying the requirement to forward to RREQ packet. But the neighbor node N4 is having insufficient energy level that is its residual energy less than threshold energy level. Hence source node N1 transmits RREQ packet only to its neighbor nodes N2 and N3, not to N4 because of not satisfying criteria. This is illustrated in the following Fig. 3.
Nodes N5 and N6 are the neighbor nodes to node N2 and similarly nodes N4, N6 and N7 are the neighbor nodes to N3. As the estimated available bandwidths Bw25 and Bw26 are greater than the required bandwidth to transmit the packets and the residual energy levels of nodes N5 and N6 (Er5 and Er6) are greater than threshold energy level, the RREQ packet is forwarded to the neighbor nodes N5 and N6. In the case of node N3, the available estimated bandwidth BW36 is less than the required bandwidth to transmit the packets, the node N3 could not forward RREQ packet to its neighbor N6. Similarly the residual energy of node N4(Er4) < energy threshold value, RREQ packet is not forwarded to N4 from N3. Hence N3 is forwarding RREQ packet to its neighbor node N7 because of it satisfying the required criteria. This is shown in Fig. 4.
The neighbor node of the nodes N5-N7 is node N8 which is the destination node. Hence RREQ packet is simply forwarded to the destination. This is shown in Fig. 5 below.  According to the proposed algorithm, the destination node has to decide the optimal path among the various exist path. As per the example network, the destination receives RREQ packet from the nodes N5-N7. Hence three possible routes are existing from source to destination will select the optimal route among the existing three various routes based on the link stability values present in the header of the RREQ packets which traversed in those routes.
Among the various existing routes, in each route, the minimum link stability value is to be found out. In this network, as three routes exist, three minimal link stability values are selected in those existing routes. Among these three minimal link stability values, the optimal path is decided by the destination node, by selecting the related route which contains maximum among the minimum link stability values. Using this optimal route, the reply packet pertaining to the route will be sent by the destination node to the source. The selection of optimal route consists of better residual energy, estimated available bandwidth and link stability values. Due to this reason, throughput of the network, bandwidth utilization and energy optimization are improved. The flow diagram of the proposed protocol is depicted in Fig. 6. The flow diagram depicting the working of the OEBLSR is depicted in Fig. 7.

Experimental Results and Discussion
The proposed OEBLSR algorithm experiments were performed using NS-3 simulator for IoT networks considered parameter as shown in Tab. 2. The proposed approach was simulated with the random-way-point mobility approach for IoT. The various Quality of Service (QoS) parameters considered are residual energy, packet delivery ratio, control overhead, speed, etc. Fig. 8 shows the graphical representation between the varying number of IoT nodes and the average residual energy in mwhr for OEBLSR and other existing protocols. The EEDSR algorithm is depicted in red. As the number of IoT nodes increases from 10 to 100, the average residual energy was sensed to be 1799 mwhr for OEBLSR for IoT. The residual energy for OEBLSR is relatively higher compared to other approaches. For EEDSR, the same was observed to be 1561 mwhr and for AODV it was 1390 mwhr. Hence proposed OEBLSR shows 29.45% improvement over AODV and 17.16% over EEDSR.  Fig. 9 depicts the graphical representation between the changing count of IoT nodes and the delay average in ms for OEBLSR and other existing protocols. It can be seen that the end-to end delay also increases with the increase in the number of nodes as the individual node delays get compounded. However the end-to-end delay for OEBLSR is relatively less compared to other approaches. It must be noted that there is no cap over the maximum number of IoT nodes. When the number of IoT nodes increases from 10 to 100, the end-to-end delay average was observed as 216 ms for OEBLSR algorithm in IoT. It was observed as 306 ms for EEDSR and for AODV it was 400 ms. Hence the proposed OEBLSR shows 46% improvement over AODV and 22.4% over EEDSR.   Fig. 11 shows the graphical representation between the changing count of IoT nodes and the control over head for OEBLSR and existing contemporary protocols. It can be seen that the control overhead of OEBLSR is less than other contemporary approaches. As the overhead is less, the performance will be enhanced further. As the number of nodes increases, the OEBLSR overhead value is still lesser compared to other approaches showing greater degree of scalability. When the number of IoT nodes increases from 10 to 100, the average control overhead was detected to be 489 for OEBLSR for IoT, while the same was observed to be 682 for EEDSR and 806 for AODV. Hence proposed OEBLSR shows 39.3% improvement over AODV and 23.9% over EEDSR.   . 12 shows the graphical comparison between the varying node speed (m/s) and average residual energy in mwhr for OEBLSR and existing protocols. In the scenario, minimum speed considered is 2 m/s that is 7.2 kmph and the maximum speed of the IoT node is 2 m/s that is 36 kmph. When the speed increases from 2 to 10 m/s, the average residual energy was detected to be 2701 mwhr for OEBLSR for IoT, while the same was observed to be 2243 mwhr for EEDSR and 1995 mwhr for AODV. As the residual energy becomes high more energy is available for disposal and hence becomes an important performance measure. Hence proposed OEBLSR shows 35.4% improvement over AODV and 12.4% over EEDSR. Fig. 13 shows the graphical representation between the changing speed of nodes (m/s) and end to end delay in ms for OEBLSR and existing protocols. In the scenario, minimum speed considered is 2 m/s that is 7.2 kmph and the maximum speed of the IoT node is 2 m/s that is 36 kmph. When the speed increases from 2 to 10m/s, the average end to end delay was detected to be 742 ms for OEBLSR for IoT, while the same was observed to be 842 ms for EEDSR and 892 ms for AODV. Hence proposed OEBLSR shows 11.2% improvement over AODV. It can also be observed that the end to end delay of OEBLSR is relatively less compared to AODV and EEDSR. As a result the transmission speed is high. 14 shows the graphical representation between the changing speed of nodes (m/s) and the PDR for OEBLSR and existing protocols. In the scenario, minimum speed considered is 2 m/s that is 7.2 kmph and the maximum speed of the IoT node is 2 m/s that is 36 kmph. When the speed increases from 2 to 10 m/s, the average PDR was identified to be 90.6% for OEBLSR for IoT, while the same was observed to be 79.3% for EEDSR and 68.6% for AODV. Hence proposed OEBLSR shows 32.1% improvement over AODV and 15.6% over EEDSR.

Conclusion
The proposed method compares the energy and bandwidth estimation technique based on neighbor nodes. It uses each node's medium occupancy and their probabilistic combinations to account for RREQ packets. Estimation of the collision probability and any other additional overhead is performed by the retransmissions. When the communicating channel is busy, this technique uses the energy and bandwidth efficient routing algorithm for increasing PDR. The channel idle time and collision is reduced and it promotes faster medium contention for neighboring nodes. It is observed that, the accuracy of bandwidth estimation is improved significantly in comparison with existing methods. The performance of OEBLSR approach was compared with other contemporary approaches such as AODV and EEDSR. The QoS parameters considered included available residual energy, packet delivery ratio, end to end delay and control overhead. It was observed that the OEBLSR approach outperformed the other two contemporary approaches as indicated by the graphical plots. Future work will be towards applying the OEBLSR for a larger set of IoT nodes and estimating the efficiency. Also, the OEBLSR approach will be applied to advanced IoT systems catering to different domains and the performance will be evaluated.