Abstract

The Internet of Things (IoT) and cloud computing are well developed and applied in different services. Among these services, some of them take latency and overhead as the metrics to evaluate the quality of services. This paper introduces how an opportunistic routing (OR) protocol reduces latency and overhead when it is applied in wireless sensor network (WSN) application among lightweight devices. OR mitigates the delay problem and balances the energy consumption and delay of the nodes in WSNs. However, OR, with the nature of broadcasting, can easily cause heavy overhead such as redundant data and control packets in the forwarding process. In the current solution, the number of candidates (potential forwarders) is not limited by the dynamics of forwarding process. Also, the overhead of establishing the candidate sets is high due to global information calculation. Therefore, a low-delay OR protocol with reducing overhead which designs the dynamic candidate area (DCA) to establish candidate sets is first proposed in this paper. The main work is as follows. (a) The duty cycle of a node is adjusted according to the distance between the node and sink node in the initialized network. (b) A method to establish dynamic candidate sets is proposed based on the adaptive duty cycle. Before and during the forwarding process, the dynamic candidate area is adjusted in time. (c) According to the feature of the candidate area, the corresponding routing metric is proposed to complete the cooperative communication among candidates. Through further theoretical analysis and simulations, the results indicate that this protocol achieves better performance in terms of transmission delay, data and control overhead, and network lifetime compared to the state-of-the-art solutions.

1. Introduction

In smart city, smart industry, smart healthcare, environmental protection, and military fields, the Internet of Things (IoT) and cloud computing have been widely used. Wireless sensor networks (WSNs) use easy-to-deploy and low-cost sensor nodes to meet communication requirements and collect and upload data. It is one of the most powerful ways for data acquisition in the era of cloud computing. In WSNs, due to the limited battery, storage, and computing capacity of sensor nodes, the focus of related research is often how to extend the lifetime of network. From the perspective of energy harvesting, some studies have proposed the methods to collect energy from the environment where the network is located. Additionally, there are also some ways to supplement energy for nodes through wireless charging. However, in some scenarios the requirements for replenishing energy cannot be met, because the environment in which the sensor network is located can be diversified. Duty cycling [1] can greatly reduce the energy consumption of sensor node idle listening, which has become a primary research direction.

Under the duty cycling mechanism, sensor nodes will periodically perform active/sleep scheduling and nodes will turn off their radio for sleep mode when there is no data transmission. Obviously, while the duty cycling reduces energy consumption, it also introduces a waiting delay for the receiving nodes to wake up during the data forwarding process. In order to reduce the sender’s waiting time, the literatures [25] consider applying the synchronous duty-cycled MAC protocols at the MAC layer. This type of protocols, with the communication among nodes and base station system scheduling, controls nodes to wake up synchronously or according to schedule during the forwarding process. However, this kind of node active/sleep scheduling costs a huge amount of control overhead due to time synchronization and reduces the network scalability. In asynchronous duty-cycled MAC (ADC), each sensor node has an independent active/sleep schedule. During the operation of the network, each node has a same or different duty cycle and wakes up at different time. When deterministic routing is used, it will be impossible to avoid the waiting time delay caused by sleeping nodes.

Opportunistic routing (OR) was first used in wireless mesh network [6]. Unlike traditional single routing, there is no fixed forwarder set for each node in opportunistic routing. Each node has a set of candidate nodes as potential forwarders. When a node is forwarding data packets, it can select the node with better real-time communication quality as its forwarding node. This feature in WSNs can not only reduce the delay caused by waiting for a single forwarder to wake up but also select the nodes with higher battery power or better link quality in communication. Therefore, it is promising to combine opportunistic routing and duty cycling in WSNs. Opportunistic routing protocols have already had specific research practices in duty-cycled WSNs [79]. Although opportunistic routing provides a set of candidates to solve the delay problem of waiting for a single forwarder to wake up, it also brings many new challenges. First of all, the size of candidate set is an important factor, affecting network delay and energy consumption performance. If there are more nodes in the candidate set, there will be more potential forwarders that can be selected by the sender. However, as the candidate set expands, the number of nodes that wake up at the same time will also increase, thereby increasing the data and control packet overhead. The generation of redundant data packets will greatly increase the energy consumption of network and affect the transmission quality of network. Conversely, the smaller the number of nodes in the candidate set is, the smaller the expected number of nodes in the active mode during forwarding process will be. Therefore, the waiting delay will increase and the performance of opportunistic routing will degrade to a deterministic routing. Actually, sender’s waiting delay and overhead of data and control packets are the most important issues in OR. Therefore, a reasonable size of candidate set has become a key in the success of opportunistic routing. Secondly, starting from ORW [10], the establishment of candidate sets in various opportunistic routing mainly includes global calculation and local calculation. Many studies have deduced the maximum number of candidate sets in different scenarios, but they depend on specific network conditions. The computational overhead of the network is high and the network scalability is weak. Therefore, it is also an important challenge to design an opportunistic routing protocol that reduces computing power and control overhead for future application in WSNs. This paper proposes a low-delay opportunistic routing protocol based on dynamic candidate area design, which is aimed at dynamically partitioning candidate area to establish candidate sets and update them in real time for reducing overhead. In this protocol, we take advantage of the energy distribution of sensor nodes in WSNs to reduce the transmission delay of the network through the adaptive duty cycle, without affecting the lifetime of the network. Also, adaptive duty cycle establishes the foundation of dynamic candidate area design.

Many papers focus on effectively combing the OR and duty cycling to achieve better network performance [1019]. In these papers, the researchers systematically proposed the OR protocol design based on the specific asynchronous duty-cycled MAC protocol. According to the actual routing process, OR protocol mainly includes two steps: designing a candidate set of forwarding nodes and selecting a unique forwarder. Among them, how to establish the candidate set for each node is the key point that every protocol designer needs to consider. The basic idea of establishing candidate sets is to use the global information of the network and the local information of each node to select an appropriate subset from the set of neighbor nodes. It should be noted here that candidate and forwarder sets are the same concept in most papers [712].

In the previous research, most protocols mainly design candidate sets based on global information. In ExOR [7], expected transmission distance is used to measure the distance between each node and the sink, which in turn serves as the metric rank of neighbor nodes. In 2012, ORW [10] first proposes OR combined with asynchronous duty-cycled on the basis of ExOR. ORW combines duty cycling on this basis and proposes the Expected Duty Cycle (EDC) as route metric. By calculating the EDC of each neighbor node, ORW adds the nodes that meet the requirements of the candidate set and selects the candidate node that wakes up firstly in the active mode to forward data packets. ORW firstly examines the improvement of network performance which is brought by the combination of OR and duty-cycled WSNs. However, calculating the EDC of each node requires a global, recursive calculation, and it does not consider the energy balance of the network which leads to calculation overhead and a decrease in the lifetime of the network. Similarly, on the basis of ORW, Meng successively proposes ORD [20] and ORR [21] protocols. ORD, adopting data aggregation, allows nodes to wait for a period of time before forwarding so as to receive data packets from multiple nodes, which achieves a trade-off between network energy consumption and delay. ORR, based on local information introduced in ORW, is combined with the remaining energy of the node to propose Forward Score (FS). In 2018, on the basis of ORR, Khan proposes MORR by taking the number of neighbor nodes and channel interference to select candidates on the basis of ORR [15]. In 2021, Weiqi proposed a piggybacking-based opportunistic routing protocol (PORA) [22] to improve the performance of the network. In PORA, value distribution and value distribution are proposed to evaluate the weight of each edge in the network. Base on the weight calculation, the Dijkstra shortest path algorithm is used to find a set of prioritized forwarders from a source node to sink node. And one of the forwarders is selected by forwarder coordination. With piggybacking mechanism, PORA achieves better performance in terms of energy consumption and packet delivery ratio. However, calculation for global information to establish weighted graph limits the scalability of the network and increases the overheads caused by global information communication.

In the process of establishing candidate sets, some need to use global information through complex calculations. Some do not explicitly limit the size of the candidate set, which increases the possibility of packet redundancy overhead. And they all ignore the impact of duty cycling. With continuous evolution of the OR protocol in ADC-WSNs, it is gradually mature to use both global and local information to design candidate areas, in order to determine candidate sets. In 2017, Chen et al. proposes a lightweight OR protocol LWOF [8]. LWOF uses the conclusion in [23] to establish the candidate set by dividing a 60-degree sector-shaped candidate area, and it optimizes the length of the preamble in the MAC protocol according to the duty length. Although the LWOF protocol is only suitable for WSNs with high network density, how it designs areas is another effective solution to establish candidate sets without global computation. Therefore, the idea of candidate area is adopted in recent opportunistic routing protocols. For example, in 2019, Hawbani et al. propose the LORA protocol based on the Candidate Zone (CZ) [12]. LORA first calculates the width of the CZ according to the network density, and it uses the global information of the network to establish candidate sets. Then, it calculates the distribution of multiple dimensions as a metric to measure the forwarding priority of the candidates. Through the combination of global information and local information, LORA limits the size of the candidate set and achieves good performance in terms of transmission delay and energy consumption. But its multidimensional computation limits the scalability of the network and requires higher computational and control overhead, and there is the possibility of no subregions. In addition, Xiang et al. propose the ADCCOR [24] protocol in 2019. The ADCCOR combines the relationship between link quality and transmission radius to establish a candidate area that reaches a certain forwarding success probability. Because it adjusts the duty length of different nodes, ADCCOR requires additional communication overhead. In 2020, LEOR [3] proposed by Omid Abedi1 et al. constrains the range of the candidate area according to the distance progress [25] and dynamically adjusts the range during the forwarding process according to the number of the wake-up candidates. Receiver node’s duty cycle became longer because of adaptivity, so the nodes far from sender and near to receiver should be selected, which leads to high power transmission. How it restricts the scope of the forwarding area will lead to unbalanced network energy consumption in the case of constant data at a fixed node.

In addition to local geographic information and link quality information, Qaisar introduced a trust-based load-balanced OR (TORP) [26] for security information. The candidates in TORP are prioritized on the basis of a trusted OR metric based on the average of two probability distributions: the direct trust distribution and the recommended trust distribution. With local security information, TORP increase the throughput and packet delivery ratio. In 2021, Shen proposed LDC-COR [27] considering link correlation. LDC-COR firstly assigns nodes with low correlation to a common group and schedules the nodes within this group to wake up simultaneously for forwarding packets in a common cycle. Then, LDC-COR takes account of both link correlation and link quality to improve the expected transmission count (ETX). Also, LDC-COR only requires the information of one-hop neighboring nodes which introduces minimal communication overhead. As a result, LDC-COR reduces the energy consumption with a slight increase of end-to-end delay. Besides, it makes the networks hard to respond dynamically if we consider the traditional approaches. Machine learning (ML) can be applied to solve the routing issues in WSNs [28]. For example, Donta et al. propose a delay-aware data fusion (DADF) [29] approach to achieve the trade-off between the delay and energy while this approach performs the data fusion in 2022. They conduct the simulation tests in various scenarios to evaluate the performance of their work.

In general, the existing schemes do not comprehensively consider the dynamics of the forwarding process and the duty length of nodes to limit the size of the candidate set. In addition, global metrics are centrally computed in the sink node [12] and the overhead of establishing candidate sets based on global information is not considered in most literatures. Therefore, this paper proposes a low-delay OR protocol with reducing overhead. The protocol efficiently establishes candidate sets by dynamically partitioning the candidate area and designing the corresponding routing metric according to the characteristics of the division of the candidate area.

3. System Model and Problem Formulation

The network is deployed in a circular area with a radius of . We assume that the sink node is located at the center of the circle, and the rest of the sensor nodes are randomly and statically distributed in this area. They make up the entire network set , . The communication radius of sensor nodes (including sink node) is , and all sensor nodes are homogeneous. Except for the sink node, its energy is not limited, and the battery capacity of the remaining nodes is a fixed value . A node can obtain its own location information through GPS or other methods, and the Euclidean distance between node and node is . All nodes whose distance to node is less than the communication radius constitute the neighbor node set , . Table 1 lists the notations used in this article.

In the proposed protocol, data forwarding between nodes is based on the BoX-MAC protocol. As an asynchronous duty-cycled MAC protocol, the active/sleep scheduling of each node is independent. We use duty length to represent the number of slots contained in each node’s cycle. Assuming that the duty length is , then the duty cycle of each node is , which means that every time slots, the node wakes up randomly in one of the time slots. When a node is forwarding packets, it will continue to send data packets until a neighbor node in the candidate set wakes up or the forwarding times out. The node without data to forward will wake up periodically according to its own duty cycle and check whether there is data packet transmission in the channel when waking up. During the active mode, if no data packet transmission is detected, the node will enter the sleep mode. If a data forwarding request is detected, the node will send an ACK. The sender analyzes the received ACKs to determine whether there is a neighbor node belonging to its candidate set to wake up.

The proposed protocol is mainly to lower the end-to-end delay and overhead from redundant data packets. In duty-cycled WSNs, delay mainly includes two parts: transmission delay and sender waiting delay . According to previous literature, the influence of the distance between the forwarding nodes of the same hop node on the transmission delay is often ignored, so the transmission delay mainly depends on the number of multiple hop transmissions. Different from single routing protocol, opportunistic routing protocol also introduces sender waiting delay in the forwarding process. Sender waiting delay refers to the time sender that waits for a node in the candidate set to wake up. The end-to-end multihop delay from the source node to the sink node equals to the accumulation of single-hop delay.

In the forwarding process of opportunistic routing, when multiple candidates are awake at the same time, they will all receive data packets from the sending node. Although only one forwarding node will be selected from the wake-up nodes after the candidate coordination, the overhead caused by redundancy of the data packets will inevitably occur in this process, because the remaining nodes will discard the data packets they receive. Based on the above analysis, the expected number of redundant data packets during a single-hop forwarding process is calculated by

Among them, is the probability that nodes wake up at the same time. And means that the data packets received by the remaining nodes are all redundant data packets when nodes wake up at the same time. Then, , stands for the sum of the expected redundant data packets generated by the final single data packet sent from the source node to the sink node.

4. Low-Delay Opportunistic Routing with Reducing Overhead (LDORRO) Protocol

Before we introduce each part of the protocol, we take a source node to send a data packet as an illustrative example to show the process of the entire protocol.

A source node calculates its own duty length according to the duty length broadcast by the sink node and its own geographic location information at the adaptive duty cycle stage. According to the calculated duty length, the node can further calculate the angle value of its own candidate area, which corresponds to the angle of the fan-shaped area shown in Figure 1. That is the angle value of the initial candidate area. Then, the node will enter periodic active/sleep scheduling until it collects data packets from the environment. The node holding the data packets will continue to send the preamble until it receives ACKs from the nodes in the current candidate area. Within a certain time, if the corresponding ACK is not received, will increase the angle of the candidate area and continue to send the preamble. If it receives ACKs from nodes in the candidate set, it will select a single forwarder from multiple awakened candidates according to the predesigned metric as the final forwarding one. The above process will be repeated until the data packet is forwarded to the sink node.

4.1. Network Initialization

In the proposed opportunistic routing protocol, first, we need to adjust the duty length of each node according to the distance between the node and the sink node. The farther the node is from the sink node, the longer the active time of the node in each cycle.

Since we take the sink node as the center of the network, we divide the entire network into a number of rings with as the diameter of ring. As stated in [24], it may not be possible to divide the network evenly into multiple rings. We call the ring closest to the sink node as ring 0, like [24] do, from inside to outside, in order of ring . After dividing the networks, we can calculate the ring in which each node is located and update the duty length of each node. What needs to be pointed out is we only update the duty length of different nodes during the network initialization, which is different from the traditional adaptive duty cycle approaches [30]. It reduces the additional overhead caused by multiple updates and we can make up for the shortcomings of this simplified operation through proposed dynamic candidate area design.

After the network is deployed, node determines the ring , where it is located according to the distance between it and the sink node by (1). For nodes located at ring 0, that is, the nodes located within the distance between themselves and the sink node which is less than the communication radius , to be specific, the following equation is for reference.

Then, the sink node first broadcasts a duty length as the initial value of each node. After receiving the broadcast duty length, updates its duty length according to

In equation (2), the nodes in ring 0, their duty length is consistent with the received value . The node located in the th ring calculates the difference between ring and ring 0 in terms of energy consumption, and then, it adjusts its own duty length according to the difference. To simply evaluate the difference, we calculate the total transmit energy consumption and the received energy consumption for nodes on ring 0. Then, we can calculate the proportion of low power consumption that the excess energy consumption is sufficient to support. Finally, we get the decreased duty length without affecting the lifetime of the network since we take advantage of the energy distribution. After all nodes have calculated their own duty length, the node duty length initialization is completed.

4.2. Candidate Selection

The design of the dynamic candidate area is mainly embodied at two stages. And the basic idea of this dynamic design is simplified as follows. (1) Before sender forwarding, the size of the candidate area is designed according to the duty length of the node. (2) When forwarding, the size of the forwarding area is dynamically adjusted according to the waiting time of the node.

After the node initialization is completed, the duty length of nodes on different rings is different. Thanks to this operation, we make full use of the characteristics of energy distribution in the WSNs to reduce the transmission delay without changing the whole lifetime of the network. To further reduce the transmission delay near the sink node, we adjusted the initial candidate area of the nodes on different rings according to the duty length of the node.

As discussed in [1], in our protocol, we adopt a fan-shaped candidate area design for each node based on the research in [8]. Before sender forwarding, the fan-shaped candidate area is calculated, for each node, according to the number of rings where it is located. The design of the candidate area is mainly derived from reducing the sender waiting time. And that is to ensure that the time of waiting for the first node to wake up when the nodes on different rings are forwarded is consistent. Consequently, the angle of each node’s candidate area is calculated by equation (6) before it starts to forward packets.

where is the initial angle; here, we choose the angle of the candidate area of the nodes on the outermost ring as the initial angle. From (3), it can be found that of the fan-shaped candidate area is proportional to the duty length of the node. Since the nodes in the outermost ring have the biggest duty length, the angle of the candidate area is the smallest, which means the candidate area is the smallest. This design not only considers the duty length of the outermost node but also constrains the range of the outermost node forwarding node selection. Just as the purpose of calculating the direction distribution and perpendicular distribution of each node in [12], we give a higher priority to the nodes that are closer to the sink and central line. And the nodes in the ring that is closest to the sink node have the largest forwarding angle, which is also conducive to reducing the delay problem caused by the small duty length of the nodes in the inner rings.

When a node needs to forward data, the node will select a fan-shaped area corresponding to the angle as the candidate area according to its own initial angle, as shown in Figure 2. Specifically, when a node is forwarding, it will first continue to send the preamble. If its neighboring node receives the preamble signal when it wakes up, it will calculate whether it is located in the forwarding area according to the forwarding angle value carried in the preamble. This calculation process relies on the geographic location information and the forwarding angle value of the sink node, the sending node, and the neighbor node that received the preamble. The geographic location of the sink node can be obtained through the initial network broadcast, and the geographic location information of the sending node and the current forwarding angle range can be obtained from the preamble.

When a neighboring node judges that it meets the receiving conditions, the node will send an ACK to inform the sending node. At the same time, it will remain awake until the sending node successfully forwards or the waiting time expires.

At this time, according to the duration of sending the preamble by the sending node and the number of ACK received during this period, it is further judged whether it is necessary to dynamically adjust the size of the forwarding area. If there is a wake-up node in its candidate area, the sending node can select one of the nodes as the final forwarding node to complete the forwarding task.

4.3. Candidate Coordination

Candidate coordination is to select the final and only forwarder from multiple candidates. Reasonable candidate coordination should consider the energy consumption difference and transmission delay among nodes to ensure that only one node is responsible for the forwarding task. Since we have restricted the selection of candidate nodes from the perspective of forwarding when designing the candidate area, we consider more energy consumption and forwarding distance factors. According to (7), we calculate the metric of each candidate and select the node with the largest metric among the wake-up nodes as the forwarding node.

is the residual energy of node , and is the average energy level of wake nodes in candidate area. The distance between sender and candidate is , while describes the average forwarding progress of wake nodes in the candidate area.

To summarize, the above process can be illustrated by Algorithm 1. From the pseudocode of LDORRO, we can see that the time complexity and space complexity of the algorithm are both O(). LDORRO’s time complexity depends on the number of candidates and the routing metric calculation for each candidate. Because each candidate can locally calculate the routing metric, the time complexity is only O(). In LWOF, it selects candidates with fixed candidate area, and the time complexity is O(1) [8]. It does not consider the residual energy and duty length of nodes. Compared with LEOR [3], LEOR also constructs the dynamic candidate sets with O() time complexity. In terms of space complexity, each node only needs to store the residual energy value, position, and the number of its neighbors’ packets. The space complexity is also O(). It is a lightweight opportunistic routing algorithm. Therefore, it can solve the issue which is raised by the limited computing and memory resources of sensor nodes.

  When network is deployed do
1:    Sink node broadcasts ,
2:    For each node such as do
3:      Get and calculate , by (5) and (6)
4:      Establish candidate set by
5:    End for
6:  End
7:  For each node such as do
8:    If gets packet in buffer (generated or received) do
9:   If is a neighbor node of the sink node do
10:    Send data packets to sink node
11:  Else do
12:   Send preamble to data packet to
13:  If received ACKs from do
14:   Calculate the metrics of nodes which send ACKs
15:   Select one node such as as forwarder
16:  Else do
17:    recalculates and rebuilds
18:  End if
19: End for
4.4. Correctness

In this section, it proves that the protocol we proposed can ensure the stability of the transmission delay and rationally reveal our dynamic candidate area design ideas. Also, we analyze the performance of LDORRO in terms of delay and overhead.

Theorem 1. Given network density , the candidate area , and transmission delay , if the active/sleep scheduling between different nodes meets the exponential distribution, the probability that the time waiting for the first node in the candidate area to wake up is less than or equal to can be formulated as follows.

Proof. When the wake-up time difference between nodes meets exponential distribution, we assume that the wake-up time difference between any two nodes is an exponentially distributed random variable, and its average value is the , where is the duty-cycled period and is the number of nodes in the candidate set of sender . Then, we can view the wake-up sequence of a group of nodes as the Poisson process. For example, the candidates are , and the corresponding wake-up process is a Poisson process.
Since the network density is , the number of candidates in the candidate area can be calculated according to (9). Therefore, according to the exponential distribution and the nature of the Poisson process, within the time , the probability of at least 1 of the candidates being awakened is shown in (10). From (9) and (10), we can prove Theorem 1 obviously.

Theorem 2. Given the network density , the transmission delay , and the probability that the time waiting for the first node in the forwarding area to wake up is less than or equal to , the duty length of the candidate node is proportional to the fan-shaped candidate area angle .

Proof. According to Theorem 1, when we fix some variables in (10), we can deduce the relationship of several other variables. Here, we derive the relationship between the size of the candidate set and the duty length of a given delay and network density, while maintaining the same probability . The reason why the above variables are fixed is consistent with the commonly used network scenarios in WSNs. For example, the application of WSNs often needs to meet the given delay requirements. And the nodes in WSNs are static and randomly distributed as assumed in this article.

For nodes and located in different rings, (11) and (12) describe the probability and that at least one node wakes up within the same given time when they start opportunistic forwarding.

In our network, in order to keep the same in sender waiting time of nodes in different ring, we set to obtain new equation (13). In (13), we will further observe the relationship between the candidate area angle and the duty length that satisfies equation (11).

For the sector-shaped candidate area, the relationship between and the candidate area angle is described by (14). And according to node’s duty length and time slot, the period can be calculated by (15).

Bringing (9), (14), and (15) into (13), we get the relationship between the angle of the fan-shaped candidate area and the duty length, that is, it satisfies the proportional relationship in equation (17).

5. Results and Discussion

In the simulation, nodes are randomly distributed in a circular area with the radius of 100 m, and the sink node is located in the center of the circular area. Here, we implement the BoX-MAC protocol at the simulation level: each node randomly selects a slot to wake up within the duty length, and the size of each slot is 10 ms. The initial battery power of each node is 50 mJ, and its transmit power, low-power listening, and sleep mode power are shown in Table 2. A data packet is generated from a random node every 0.1 s in the network, and the size of the data packet is 36 bytes. Table 2 shows the main relevant parameters used in the simulation.

In order to analyze the performance of the routing protocol, we mainly simulate the following metrics.

Average delay: after simulating a specified number of times, we calculate the average transmission time required for a single randomly generated data packet to be sent from the source node to the sink node.

Average number of redundant data packets: these metrics reflect the overhead of redundant data packets. During the transmission of a single data packet, all awoken candidates will hear and receive it due to the nature of broadcast. The average number of redundant data packets increases per hop. Similarly, we conduct multiple simulations for the generation of a single random data packet.

Energy consumption: the overall energy consumed by the network when a specified number of data packets are randomly generated and forwarded to the sink node during a simulation period.

According to the application scenarios of our protocol and the idea of dynamically adjusting the forwarding area, we mainly compared with the two existing protocols: LWOF and LEOR.

LWOF: LWOF is a lightweight opportunistic routing protocol. It uses the design forwarding area to establish a candidate set and then selects the first awakened node in the set as the final only forwarding node. The defect of LWOF is that the size of the forwarding area is fixed, and the forwarding area of each node is a fan-shaped area with an angle of 60 degrees. It can only be used in extremely dense WSNs. In addition, LWOF does not use metric to prioritize candidates, resulting in an unbalanced energy consumption of the network.

LEOR: LEOR establishes a set of candidates in the design forwarding area and also designs the selection of candidate nodes for metric optimization. LEOR’s forwarding area design is mainly to limit the size of the forwarding set and ensure a certain forwarding process. The initial forwarding area of each node is an annular area with an inner radius of and an outer radius of . And LEOR also considers the dynamics of the forwarding area. When no candidates wake up within the waiting time, LEOR will adjust the size of the forwarding area. The main drawback is that the design of the forwarding area does not incorporate the duty length of the node, and the initial forwarding area size of different nodes is the same, which leads to a decrease in network performance.

The simulation results show that, compared with LEOR and LWOF, our proposed routing protocol has achieved better results in reducing delay and reducing overhead. Under different network densities, our proposed protocol reduces the delay of 10 percent on average and reduces the number of redundant data packets of 15 percent. In terms of energy consumption, we have achieved a better energy balance above the similar energy consumption level, as well as the other performance advantages mentioned above. In the simulation, we studied the influence of different node numbers and different node communication distances on each simulation metric.

5.1. Average Delay

In order to evaluate the delay under different opportunistic routing protocols in different scenarios, we separately studied the influence of the number of nodes in the network and the communication distance of nodes on the delay in Figures 3 and 4. Here, we mainly compare the average delay of sending a single data packet from the source node to the sink node multiple times in different scenarios. First, when the communication distance of the node remains unchanged (20 m), the relationship between the delay and the number of nodes in the network is shown in Figure 3. It can be seen in the figure that as the number of nodes continues to increase, the time delay shows a downward trend. This is because although different routing protocols restrict the size of the candidate set, the size of the candidate set will still increase in varying degrees as the network density increases. The increase of the candidate set increases the probability of awaken nodes in the same time, thereby reducing the waiting delay in the opportunistic routing process. When the number of nodes continues to increase, the performance of LWOF gradually approaches LDORRO. This is because when the network density is large, the probability that LDORRO needs to dynamically adjust the forwarding area during the forwarding process is reduced, and the forwarding area sizes of LWOF and LDORRO will be more consistent. A closer effect has been achieved in terms of time delay. Compared with LEOR and LDORRO, when the number of nodes is small, the effect of the forwarding area established by LEOR is significantly worse, and the waiting time delay is longer. This is because when the network density is low, LEOR screens forwarding nodes according to the threshold radius, which causes its forwarding set to drop extremely, and the threshold radius needs to be changed many times, resulting in too long waiting time for the sender. In Figure 4, when we keep the number of nodes (200) constant, as the communication radius of nodes increases, the end-to-end delay also shows a decreasing trend due to the decrease of hops from source node to sink node. As the increase of the communication radius, the candidate set keeps increasing, so the gap between the three protocols also decreases. However, LDORRO still achieves the best time delay effect by adjusting the duty cycle and designing the dynamic candidate area.

At the same time, in order to prove the superiority of LDORRO candidate node selection, we also calculated the distance from the candidate nodes in different candidate sets to the central line (the connection between the sink node and the sender node) in the simulation. In Figure 5, it can be seen that since LWOF establishes the smallest and densest candidate regions, its value is the smallest, while LDORRO also achieves a smaller average value by virtue of the design of dynamic candidate regions. Compared with LWOF, LDORRO can dynamically adjust the size of the candidate region when the number of nodes is small so that LDORRO can obtain better end-to-end latency performance when the number of nodes is small.

5.2. The Number of Redundant Packets

We compare the number of redundant data packets generated by the three routing protocols in the forwarding process under different network densities. In Figure 6, as the number of nodes in the network increases, the number of redundant data packets will inevitably increase. However, thanks to the design of the dynamic candidate area, LDORRO has achieved a better effect of limiting the size of the candidate set and reducing the number of redundant data packets. When the number of nodes increases, the probability that the sender will wake up the node during the forwarding task also increases, so the probability of dynamically increasing the size of the candidate area decreases. Therefore, when the number of nodes continues to increase and the network density continues to rise, LDORRO can effectively slow down the surge of redundant data packets through this lightweight design method. In contrast, although LEOR also uses a threshold radius to limit the size of the candidate set, it does not use the local information of the node, which results in poor results. As far as LWOF is concerned, due to its fixed and small candidate area, it always maintains a small number of redundant data packets, but it brings an increase in delay. However, LDORRO can maintain a similar level of data packet redundancy while reducing time delay. This is due to the idea of dynamically increasing the candidate area. When there are fewer wake-up nodes, appropriately increasing the set of candidates will not increase the number of redundant data packets to a large extent, but it can well reduce the network transmission delay.

5.3. Energy Consumption

Finally, we analyze the performance of LDORRO in terms of energy consumption from two aspects: the overall energy consumption level of the network and the energy consumption difference between nodes in Figures 7 and 8. As the number of nodes increases, the total energy consumption of nodes increases. The total energy consumption for forwarding a certain number of data packets shows an upward trend in Figure 7. This is mainly due to the increase in the total number of nodes, which does not mean that the energy consumption level of each node has increased. For LDORRO, although the waiting delay of forwarding is reduced, it does not gain an advantage in total energy consumption. This is because LDORRO dynamically increases the size of the candidate set during the forwarding process, resulting in more nodes participating in the forwarding process. Therefore, more nodes will stay awake and receive related data packets. Although the energy consumption of sending the preamble of the sender is reduced, the energy consumption of the all the candidates is increased. Compared with LEOR, when the number of nodes increases, the benefits of the waiting delay of LDORRO gradually lose the advantage of energy consumption, so the energy consumption is higher than that of LEOR.

In terms of energy consumption balance, we calculate the CDF function of the node’s residual energy level after transmitting a certain number of data packets, as shown in Figure 8. It can be seen from the figure that LDORRO achieves better energy balance compared with LEOR. After forwarding 1000 data packets, the residual energy of nodes with LDORRO is kept between 4 mJ and 8 mJ. However, the residual energy levels of the nodes are different and the residual energy of the nodes is too high or too low with LEOR.

6. Conclusions

We propose a low-delay opportunistic routing with reducing overhead (LDORRO) in WSNs. First, we initialize the network by dividing it into different rings and adopt adaptive duty cycle to reduce transmission delay in this protocol. Then, we construct dynamic candidate sets for each node to reduce the overhead of data and control packets. Finally, we design the routing metric for the candidate coordination which is used to select the final forwarding node among candidates. The simulation results prove our progress in these areas. In this protocol, we only calculate the routing metric by residual energy and distance of nodes in a traditional way. In future work, we will consider combining artificial intelligence to optimize the design of routing metric.

Data Availability

The simulation data used to support the findings of this study are included within the article.

Conflicts of Interest

The authors declare that there is no conflict of interest regarding the publication of this paper.

Acknowledgments

This work was supported by the National Natural Science Foundation of China under Grant 61821001 and 62090010.