Efficient Opportunistic Routing Protocol for Sensor Network in Emergency Applications

: Routing or forwarding information, such as the location of incidents and victims in a disaster, is significantly important for quick and accurate incident response. However, forwarding such information in disaster areas has been a challenging task for the Wireless Sensor Network as existing networks are affected (destroyed or overused) the disaster. Opportunistic information forwarding can play a vital role in such circumstances. Existing opportunistic routing protocols require huge message transmissions for cluster restoration, which is not energy efficient and results in packet loss. Hence, this paper introduces an energy efficient and reliable opportunistic density cluster-based routing protocol that opportunistically transmits data using a density-clustering protocol for emergency and disaster situations. Simulation results show that the proposed protocol outperforms some existing and well-known routing protocols in terms of network energy consumption, throughput and successful data transmissions.


Introduction
Mobile Wireless Sensor Networks (MWSN) had been popular for thousands of applications, including disaster recovery. It is evident that these networks are usually destroyed or inaccessible in disastrous situations (e.g., tornados, hurricanes, earthquakes and war) and emergency personnel do not get proper information for quick and proper incident responses. Hence, an alternative solution is greatly required in these types of emergency scenarios.
Traditional solutions [1][2][3][4] attempt to build up a Mobile Ad Hoc Network (MANET) by distributing antennas in the affected area. This may be a solution from a communication point of view but, in reality, the feasibility of these solutions for large-scale disasters tends to be zero. Other studies [5][6][7][8] suggest wireless opportunistic networks, which are formed using sensors that are used in everyday use devices and objects (e.g., smartphone, tablet, PDA, vehicles, appliances, furniture) for monitoring heart rate, temperature, humidity, pressure, accelerometers. The idea of building an opportunistic recovery network for communication using those sensors may save many lives in disastrous situations. Thus, this type of solution provides improvements and efficiency for emergency rescue teams.
Assuming the existence of a network with an end-to-end connection between the sender and receiver is far from the reality in a disaster scenario. Using the traditional data forwarding methods in such scenarios most likely results in a data delivery failure. Hence, a new type of data forwarding and routing protocol supporting delay tolerance and disruption is greatly required for such disastrous situations. Opportunistic forwarding is a protocol based on the mobility of nodes in a network where sensors can communicate properly and efficiently manage their energy consumption and forward information to the first responders. In this protocol, nodes carry stored messages while moving around and forward them whenever an opportunity arises. This opportunity is simply making a contact with a node that knows how to route the message closer to the desired receiver. Hence, a route is built dynamically from the sender to the receiver. Any node can possibly be the next hop in an opportunistic forwarding. Figure 1 demonstrates such an opportunistic network for disaster recovery. On the other hand, a type of edge computing [9,10] is emerging that integrates smart devices, e.g., sensors, with the opportunistic network, enabling local data processing along with processing data at the base station or central server. Though edge computing supports decentralized data processing, routing data is signification in such networks for disaster recovery. However, designing an efficient opportunistic routing protocol [8,[11][12][13][14][15][16][17][18][19][20][21][22] in terms of energy efficiency, reliability and successful message transmission is a major challenge because of the mobility of nodes (i.e., rescue team members), the low transmission ranges of devices (i.e., smartphones, sensors, Bluetooth). Hence, this paper introduces an opportunistic density cluster-based routing protocol (ODCR) for emergency/disastrous situations. This protocol supports the efficient management of the energy and an opportunistic communication aspect to tolerate delays and disruption and builds routes in a dynamic and infrastructure-less manner. The number of sensors and quantity of generated data extremely influences the performance of any routing protocol. Hence, we consider edge computing in sensors that reduce the amount of data transmitted. Moreover, we use a density-based clustering model in this routing protocol [7,[9][10][11][12] so that the number of nodes performing data collection and transmission reduces to achieve energy efficiency.
The proposed ODCR protocol uses opportunistic data forwarding and integrates both (i) density-based clustering and (ii) isolated nodes. In density-based clustering, each node is likely to reside in a cluster and exchanges information among the nodes in that cluster. On the other hand, isolated nodes (not part of a cluster) forward data packets opportunistically to a node among a number of nodes, based on their data delivery probability. Figures 2-4 illustrate such an opportunistic network based on the ODCR protocol, where both nodes in cluster and isolated nodes opportunistically create a data transmission path to forward data to the destination. This protocol forms clusters evaluating the Time to Return (TTR) parameter between nodes. The energy consumption of a node varies and depends on the role of each node in the cluster. We perform an experiment (simulation) on a realistic disaster area model [8] to measure the performance of the proposed opportunistic routing protocol. Simulation results show that the proposed ODCR protocol in opportunistic forwarding or routing, increases the network lifetime and throughput and reduces the packet loss ratio compared to well-known clustering and forwarding protocols, such as LEACH, TEEN and LORA [16,18,21]. In summary, the contributions of the paper are as follows.


This paper integrates edge computing with opportunistic networking for disaster recovery;  The sensors in the network process and aggregate data locally to reduce the amount of data transmitted;  The sensors create density-based clusters where sensors with the most neighboring nodes become cluster heads. This approach reduces the number of data collectors and transmitters and distributes energy consumption equally over sensor nodes;  The nodes, which are not part of any cluster (e.g., isolated nodes) opportunistically forward data to the forwarder nodes. These nodes, while moving, join to the cluster closest to them;  If any node moves out of a cluster due to mobility, the cluster restoration process starts based on the node's property, called the minimum period of connectivity (MPC). This property ensures an energy efficient cluster restoration process compared to the cluster restoration process of existing protocols, which involve all nodes in cluster restoration at the end of each round.
The rest of the paper is organized as follows. Section 2 presents the literature on existing opportunistic routing protocols. Section 3 presents the working principle of the proposed opportunistic density cluster-based routing protocol (ODCR). Section 4 evaluates the performance of the proposed ODCR protocol. Section 5 presents the network, energy and mobility models used in the experimental simulation along with experimental setup and results. Finally, Section 6 concludes the paper with suggested future research directions.

Related Work
The Low Energy Adaptive Clustering Protocol (LEACH) [18] is a well-known clustering protocol of sensor networks. In this protocol, the cluster head (CH) is randomly selected from all nodes based on a metric called probability of CH. Once clusters are constructed, the member nodes of each cluster transmit data to its CH using a time division multiple access (TDMA) scheme. The CH collects all data, aggregates and transmits them to the base station for further processing. In LEACH, the cluster member nodes transmit data periodically and the cluster formation takes place in every round, which is not energy efficient. In the Threshold Sensitive Energy Efficient Sensor Networks Protocol (TEEN) [16], each sensor node senses and transmits an event of interest (e.g., pressure, humidity) based on the minimum attribute value set into to the sensor. The next time the node senses and transmits another event of interest, if the attribute value changes by a certain threshold, that is set into the node. Hence, the number of sensed and transmitted events is less in the TEEN protocol. However, LEACH and TEEN protocols may not work well for emergency and disastrous situations.
The work done in [12] introduced an opportunistic routing protocol, namely EXOR. In this protocol, if the sender needs to transmit data to a destination it first transmits data to a node from its forwarding list, which has the least distance to the actual destination. Once the sender sends the data packet to all forwarding nodes, it determines the best forwarder based on the receiving ACK packet from the forwarder nodes. Although EXOR has higher throughput, it only uses the information during the time of transmission but does not use the updated information during transmission. Another work in [12] introduces an opportunistic routing that selects the next hop forwarding node based on the data delivery ratio and priority of nodes to transmit data.
In [12], the authors present a Trust Opportunity Forwarding Mechanism that considers both distance of forwarding nodes to the destination (cost) and the trust factor/degree. The trust factor of a node is calculated by neighboring nodes through direct observation or recommendations. A node is selected as a forwarder if it has better trust degree as well as less distance to the destination. On the other hand, among several routing protocols Social Relation Opportunistic Routing (SROR) identifies the forwarding nodes based on social relations and profiles among nodes. The work done in [20] introduces a planned opportunistic delay tolerant routing protocol by creating a subset of opportunistic links from source to destination, as opposed to a deterministic single copy or multiple copies of links between source to destination. This paper optimizes the multiple deterministic links to obtain only the best one in terms of lower data delivery rates. However, this approach does not employ clustering and is not efficient, as the creating paths require lot of computations and consumes energy of sensor nodes. The work done in [21] introduces LORA-a load-balancing opportunistic routing for asynchronous duty-cycled WSN. To avoid the flooding of packets from source nodes, through a number of preselected forwarder nodes, this approach creates candidate zones where all possible data forwarder candidates reside. The source node only chooses a candidate based on a metric calculated using direction distribution, transmission distance distribution, perpendicular distance distribution, and residual energy distribution. Again, this approach seems computationally expensive and does not allow clustering to achieve more energy efficiency. In opportunistic routing, each node decides about the forwarder node locally using greedy approaches and collects lot of information (i.e., overhead) for making such decision. To mitigate this problem, the work done in [22] introduces SeeR-a simulated annealing-based routing protocol for opportunistic mobile networks. This approach calculates a cost function for each node using information such as the hop-count and the average aggregated inter-contact time of the node. If the cost of a forwarder node is low, the sender transmits the data to that node. In this approach, a node does not track information about other nodes, thus, reducing privacy and security risks. However, this approach does not consider clustering. This work done in [23] introduces an opportunistic routing protocol (ORR) that finds the optimal number of forwarders based on a cost function using duty cycles and network topology. Moreover, this approach selects the forwarder from a list of forwarders with more residual energy.
Opportunistic networks use epidemic routing protocols [11] where a node broadcasts or forwards messages to all other nodes, which results in high message overhead. To mitigate this problem, the work done in [13] proposes an energy efficient opportunistic routing protocol where a node forwards a packet based on its remaining energy and delivery predictability factor. However, most routing protocols of opportunistic networks do not consider real-time message delivery. The work done by Santos et al. [14] introduces a real-time message propagation model with a maximum data transmission latency for opportunistic networks containing heterogeneous devices.
While existing works mostly consider delay tolerant networks (DTN) to forward messages opportunistically to the destination node, they do not consider transmitting messages to the first responders, governmental agency, hospitals and other related organizations in response to disaster situations. In [15], the authors introduce a routing protocol comprising DTN and an Information-Centric Network (ICN). The DTN transfers data to the destination and the ICN propagates interest messages to the responding authorities. However, these routing protocols may not work well in emergency or disastrous situations. Hence, an efficient opportunistic routing protocol is greatly required for emergency disastrous situations with a higher packet deliver ratio and lower latency.

Proposed Opportunistic Routing Protocol
The proposed opportunistic density cluster-based routing (ODCR) protocol uses density-based clustering as well as the opportunity to forward or broadcast its stored data to the nearby or closest node to the destination, as the nodes are mobile and may loss the network connectivity. The following subsections present the proposed ODCR protocol. Section 3.2 defines some terminologies that are used in the proposed ODCR protocol. Sections 3.2-3.4 present different phases of the ODCR protocol, such as cluster formation, routing and cluster restoration. Figure 2 illustrates the flowchart of the working principle of the proposed ODCR protocol. For each node x in network Figure 2. Flowchart of proposed approach.

Terminologies
Minimum Period of Connectivity-in opportunistic networks, the minimum period of connectivity (MPC) represents the connectivity strength between two nodes while they are moving. This property also represents successful data packet transmission by a node. The MPC (represented in time) between two nodes a and b is denoted as where Rc is the communication range of nodes a and b, d is the distance between a and b. is the velocity of node a and is the velocity of node b.
The Global Minimum Period of Connectivity (MPCg) is a predefined parameter given to the proposed protocol in order to set up a network having clusters with the same MPCg between its nodes.
Weight-the weight of a node represents whether the node is stable or not. Equations (2)-(4) calculate the weight of a node as follows.

Form Density-based Clusters
Initially, each node calculates its weight, defined by Equation (3). If the weight of a node x is close to zero, the minimum period of connectivity (MPC) of that node to all its neighbors is close to global MPC (MPCg). That means the node x is more stable and a good candidate to become CH. Once all opportunistic nodes or sensors calculate their weight based on Equations (2)-(4), they broadcast their weight. The node x with the minimum weight will elect itself as a CH and broadcasts a "hello" message to let other nodes know that x is a CH. Other nodes will join to a cluster whose CH is closer to the node. Thus, clusters of the network are constructed. Algorithm 1 presents the pseudocode to select CH, cluster members and border nodes of a cluster C.

Algorithm 1 (cluster formation)
Input: node x, MPCg, minimum number of nodes in a cluster (minNode). Output: a cluster with a cluster head CH. In Algorithm 1, each node x calculates its weight and number of neighboring nodes and broadcasts this to its neighboring nodes (presented in lines 1-2 of Algorithm 1). Then, the weight of the node x and all its nodes are compared. The node that has the lowest weight becomes the cluster head (CH) of cluster C (presented in lines 3-8 of the Algorithm 1). All other nodes y who are neighboring nodes of x but are not selected as the CH or member of any cluster will compare MPCx,y with global MPCg. If the MPCx,y of the node y is greater than or equal to MPCg, node y is included as a member node of cluster C (presented in lines 12-15 of the Algorithm 1). This process continues until all nodes become the CH or member node of a cluster or noise of a cluster.

Routing
Once clusters are constructed, nodes start to collect data and, hence, data transmission or routing starts. If a node becomes isolated from a cluster due to mobility (known as a noise node) cluster restoration is required before the node can transmit data. Scenario 1: Whenever a node x has some data to transmit, if it is a member node of a cluster, it transmits data to its CH. If node x is isolated or border node of a cluster it first tries to restore the connectivity (Section 3.4) and then transmits data. Otherwise, it opportunistically forwards data to a neighboring node. Scenario 2: Whenever a node x receives a data packet from other nodes, (1) if x is a member node of a cluster it communicates with the CH and transmits data to the CH. Then, the CH transmits data to the next hop towards the destination (2) if the node x is a border node, it is a noise, which is either a member of a cluster or not. If x is a member of a cluster it transmits data to the CH. If x is not a member of a cluster it must be within the communication range of two neighboring clusters. Then, the node x broadcasts a message to find out the closest neighboring cluster and joins a cluster by restoring connectivity (presented in Section 3.4). Scenario 3: The node might also loose contact with other nodes and become isolated. Figures 3-5 illustrate this scenario. In Figure 3, the node z is not a member of a cluster. Whenever it senses an event of interest or receives data from other nodes, it forwards data to the closest neighboring/forwarder node y. However, the node y is isolated and has no contact with other nodes. As the node y moves due to mobility and reaches the communication range of node x, it immediately forwards data to node x ( Figure 4). Then, node x, being a noise (border node trying to join to a cluster), forwards data to the member nodes and CH of a cluster towards the destination, as illustrated in Figure 5.   Forwarder node selection: During routing, a node may need to select a forwarder node. To do so, each node keeps the MPC value with all of its neighboring nodes and opportunistically forwards data to the neighboring node with the highest MPC. As this protocol is applicable to a disaster situation where all nodes are moving almost at the same speed towards the location of the emergency or disaster, they are more likely to keep communicating with a number of nodes. Thus, the source node that is the initiator of data transmission should be opportunistically able to transmit data to the destination by communicating with those nodes.

Cluster Restoration
As nodes are most likely mobile in opportunistic networks, they reach the border of the cluster or become isolated. Hence, cluster restoration is required. The border node x starts cluster restoration by finding the best candidate from its noise neighbors to communicate with for restoring connectivity to cluster C, as illustrated in Figures 6 and 7. We present two scenarios of cluster restoration below. Scenario 1: once the node x becomes a border node of cluster C, it must run an algorithm of cluster restoration or join other clusters that maintain the global MPC, increasing the communication range, Rc, of y as follows: where and are the velocity of the border nodes x and y of two neighboring clusters, d is the distance between nodes x and y, and Rc is the communication range of nodes in both clusters. Figure  6 demonstrates Scenario 1. In Scenario 1, we use Equation (5) to increase Rc to restore connectivity.   (Figure 7). In Scenario 2 (Figure 7), node x is considered as noise, xC, and is in the communication range of communication of both neighboring clusters. The cluster restoration approach tries to find the cluster that will establish connection with x first, i.e., find the minimum MPC between MPCx,y and getMPC (x, C). Then, this algorithm increases the Rc of this minimum to the level of the global MPCg. Thus, this guarantees a uniform period of connection in the network.
The cluster restoration process to repair connectivity between two clusters is launched by the border nodes of one of the clusters. The cluster, which has the CH with the minimum weight (calculated using Equations (2)-(4)) will normally activate its border node to establish the connectivity with the other cluster (Figure 7). Algorithm 2 presents the pseudocode of cluster restoration based on Scenarios 1 and 2.

Algorithm 2 (Cluster Restoration)
Input: y is a border point from a neighbor cluster to C, C is a cluster to be connected to y, MPCg is the minimal period of connectivity.

Performance Evaluation
This section presents the performance evaluation of the proposed ODCR protocol.

Computation Efficiency
The computational and message complexity of the proposed ODCR protocol is O(1) per node. Initially, each node broadcasts one message of its velocity and its position to neighbors. Then, once CHs are selected, each CH broadcasts one declaration message (such as the "hello message" presented above). When the k-hop nodes ( 1  k ) hear the declaration message they broadcast an acknowledgement message, join to the cluster and rebroadcast the declaration message to the k+1hop nodes to find the shorted path to the destination. Hence, it has been observed that each node sends, at most, three messages to perform the operation.

Energy Efficiency
In this section, we analyze the energy efficiency of the proposed ODCR protocol, well-known clustering protocols LEACH [18] and TEEN [19] and a very recent opportunistic routing protocol, called LORA [21].
The cluster formation phase is initiated in LEACH and TEEN protocols after a certain number of rounds where all nodes participate in the cluster restoration or reformation. On the other hand, cluster restoration is initiated in the proposed ODCR protocol only when a node becomes a border node or becomes isolated. In addition, only the border nodes and two neighboring CHs participate in this cluster restoration process. Other nodes remain in their cluster and do not participate in the cluster formation process.
Hence, the proposed ODCR protocol seems to be more energy efficient, lower packet loss ratio and higher throughput as compared to the existing LEACH and TEEN protocols. Let us assume that: The number of nodes in the network = n The number of clusters in the network = c Then, the average number of nodes in each cluster = The number of messages each node transmits and receives for cluster formation = m The average number of message transmission for cluster formation = × (6)

For cluster restoration in the ODCR protocol:
The number of nodes participate in cluster restoration = 3, where 3 < The average number of message transmissions in ODCR for cluster restoration Hence, the number of transmitted messages for cluster restoration is O(n). Comparing Equations (6) and (7), we expect that the average number of message transmissions in the ODCR protocol is much lower than that of the LEACH and TEEN protocols.
On the other hand, LORA [21] is a non-clustered multi-hop opportunistic routing protocol. Let us assume that the number of hops from source to destination in LORA where represents the number of forwarder nodes at hop i. The total number of message transmissions for selecting forwarder nodes will be about where represents the number of message transmissions for selecting forwarder nodes at hop i. If , … … ., represent the number of message transmissions for selecting the best forwarder node at hops 1, 2, ……. , h, respectively, the total number of message transmissions would be Hence, the selection of forwarder nodes for transmitting a data packet from the source to destination will be ( ). The process of selecting such a path with forwarder nodes occurs every time a node transmits data to the destination. Hence, it is more likely that the total number of message transmissions in the LORA protocol is much more than that in the proposed ODCR protocol. We will perform an experimental simulation to verify this.
As energy consumption of sensor nodes is directly proportional to the number of transmitted messages, the energy consumption of the ODCR protocol is expected to be much lower than that in the LEACH, TEEN and LORA protocols. Similarly, as the number of message transmissions is much more in LEACH, TEEN and LORA protocols, the probability of packet loss in these protocols will be higher than that of the proposed ODCR protocol.

Simulation Model, Setup and Results
We performed a simulation to evaluate the performance of the proposed ODCR opportunistic routing protocol and compare it with some existing well-known routing protocols. We used the network simulator NS-3 [12] to perform the simulation. The following sections present the energy, network and mobility models that are used in our simulation, along with the simulation setup and results.

Energy Model
Whenever nodes transmit and receive messages, the energy consumption of these nodes are calculated using Equations (11) and (12), as presented below.
Energy consumptions to transmit a packet of size n over distance d is given by: Energy required receiving a packet is: where elec  and fs  in Equations (11) and (12)  In the proposed ODCR protocol and existing LEACH, TEEN and LORA protocols, each node transmits and receives data packets during cluster formation, routing and cluster restoration phases. Based on this energy model, the energy consumptions of a node are directly proportional to the size of the data and the distance a data packet travels.

Network and Mobility Model
The sensor network comprising N nodes is represented by a graph G (V, E), where V represents a set of sensor nodes (vertices) and E represents a set of communication links (edges). Two nodes, u and v, communicate with each other if they are within communication range (Rc). This property is known as a Unit Disk Graph (UDG) of graph theory. However, since our work is proposed in the context of sensor-based opportunistic networks, we consider the "double range property" [24] in our experiment, defined as = × where ≥ 2 and Rs refers to the sensing range. We consider a 4.0 km 2 (approximately 2 km × 2 km) network size as it is a realistic area around disaster zones where rescue personnel need to be connected for recovery operations. Moreover, the mobility speed of rescue personnel is assumed to be about 5 meter/second or 300 meters/minute, considering the scenario that rescue personnel are moving slow or walking in a certain region of that area to perform the operation.
The random mobility of the nodes was generated using mobility generator BonnMotion [25], which places each node randomly in a position in the simulation area of size 2000 × 2000 meter 2 . The pattern of mobility is the Random Scenario (RS) provided by the mobility scenario generator BonnMotion [25]. The generated mobility patterns pause each node at its current location for a certain period before it moves to another randomly generated location at a random speed.
The IEEE 802.15.4 standard Zigbee protocol is used in the low data rate and powered sensors. We consider that sensors are used to create the opportunistic network in the simulation. We consider using the libelium Waspmote [26] that considers all parameters and specifications mentioned in [26] in our simulation. Table 1 lists the simulation parameters and their respective values.

5.3.. Performance Metrics
The performance metrics to measure the performance of the proposed ODCR protocol are defined as follows:  Energy consumption is the total energy consumed by the sensor nodes in the network over a number of rounds.  Throughput is the amount of data transmitted by a node per second. We calculate throughput in Gigabytes/second in this paper.  Packet delivery ratio is the ratio of the total number of packets delivered to the total number of packets transmitted.  Packet loss ratio is the ratio of the total number of packets lost to the total number of packets transmitted.

Simulation Results
Figures 8-11 illustrate the performance of the proposed ODCR opportunistic routing protocol in terms of network energy consumption, packet loss, throughput, and packet delivery ratio. Each simulation runs for 200 seconds. We evaluate the performance of the proposed ODCR protocol over a number of rounds. The output is the average of outputs received in a certain number of rounds.
In this simulation, energy consumption is calculated using the data transmission and reception energy consumptions of a node (Equations (11) and (12)), presented in the energy model, and the estimated number of message transmissions for each approach, analyzed in Section 4.2. Figure 8 demonstrates that the energy consumption of the proposed ODCR protocol is much lower than the existing TEEN and LEACH clustering protocols. This is because, using Equations 6 and 7, we find that the average message transmission in ODCR is much lower than that in the LEACH and TEEN protocols. Similarly, the number of message transmissions in the ODCR protocol is also lower than LORA protocol (as analyzed using Equation (10)). Hence, the network energy consumption in the proposed ODCR protocol is lower than that of the LORA protocol. Figure 9 demonstrates that the packet loss ratio of the proposed ODCR protocol is much lower than the existing LEACH [18], TEEN [20] and LORA [21] protocols because the proposed ODCR protocol can perform quicker cluster recovery due to node movements compared to the existing algorithms. Hence, the probability of packet loss is much lower in the ODCR protocol. More specifically, in the TEEN protocol, clusters are reconstructed only at the end of each round, regardless of whether any node moves out of the cluster in a round. In LEACH, clusters are reconstructed at the end of a certain number of rounds. Even if a number of nodes move out of clusters and become isolated or noise nodes, the clusters are not formed unless the number of rounds reaches a predefined value. Hence, the probability of packet loss is much higher in LEACH and TEEN protocols. This also results in a lower throughput in LEACH and TEEN protocols. On the other hand, in the LORA protocol, a candidate zone is constructed with a set of forwarder nodes for each hop. Moreover, the best forwarder is selected for each candidate zone to create a path from the source to the destination for transmitting data packets. As the nodes are mobile, the probability of moving the forwarder nodes in this preselected path is high. Hence, the probability of packet loss is also high in the LORA protocol.   Figure 10 demonstrates that the throughput of the proposed ODCR protocol is much higher than that of the LEACH, TEEN and LORA protocols. This is because the proposed ODCR protocol performs cluster recovery and creates clusters rapidly based on the worst-case scenario of node movements between two adjacent nodes. Existing protocols lose connectivity in such scenario, which is not the case for the proposed ODCR protocol. Similarly, Figure 11 illustrates that the ODCR protocol achieves higher packet delivery ratio compared to LEACH, TEEN and LORA protocols because the proposed ODCR protocol maintains connectivity in most of the mobility scenarios. In the simulation results, we found that, on average, the packet delivery ratio is almost 50% more in the ODCR protocol compared to the LEACH and TEEN protocols and about 15% more in the ODCR protocol compared to the LORA protocol. Table 2 compares several features of the existing LEACH, TEEN, LORA and proposed ODCR protocols.