Improving Energy Adaptivity of Constructive Interference-Based Flooding for WSN-AF

Constructive interference (CI) is a synchronous transmission technique for multiple senders transmitting the same packet simultaneously in wireless sensor networks (WSNs). CI enables fast and reliable network flooding in order to reduce the scheduling overhead of MAC protocols, to achieve accurate time synchronization, to improve link quality of lossy links, and to realize efficient data collection. By achieving microsecond level time synchronization, Glossy realizes millisecond level CI-based flooding and 99% reliability. However, Glossy produces substantial unnecessary data forwarding, which significantly reduces the network lifetime. This is a very critical problem, especially in energy-limited large-scale wireless sensor networks for agriculture and forestry (WSN-AF) system. In this paper, we present an energy adaptive CI-based flooding protocol (EACIF) by exploiting CI in WSN-AF. EACIF proposes a distributed active nodes selection algorithm (ANSA) to reduce redundant transmissions, thereby significantly reducing energy consumption and flooding latency. We estimate the performance of EACIF both with real data traces and with uniformly distributed topology. Simulation results show that EACIF achieves almost the same packet reception ratio (PRR) as Glossy (e.g., 99%), while reducing 63.96% energy consumption. EACIF also reduces 25% flooding latency. When the packet interval is 30 seconds, EACIF achieves 0.11% duty cycle.


Introduction
With the emergence of the Internet of Things (IoT) [1,2], wireless sensor networks for agriculture and forestry (WSN-AF) are becoming a research hotspot. WSN-AF systems can provide real-time field data, including environment temperature, relative humidity (RH), O 2 concentration, CO 2 concentration [3], and ethylene (C 2 H 4 ) concentration. The implementation of WSN-AF system demands forwarding data [4], synchronizing sensor nodes [5], creating data collection tree [6], locating the monitored objects [7], reprogramming the revised code [8], and so forth. All these common applications in WSNs depend on the service of network flooding which propagates a packet through the whole network.
Power consumption, latency, and reliability are three critical factors of flooding in wireless sensor networks (WSNs). Recently, constructive interference-(CI-) based flooding is emerging as a latency optimal and high reliability flooding technique. As a representative CI-based flooding protocol, Glossy [9] realizes 99th percentile packet reception ratio (PRR). Real testbed (MoteLab, Twist, and Local) experiments show that Glossy achieves millisecond level flooding latency which is almost 100 times faster than traditional flooding solutions [10,11]. Then a question arises: is Glossy energyefficient? Unfortunately, Glossy makes all nodes involved in the data forwarding, which directly triggers enormous number of superfluous data transmissions, eventually leading to unnecessary energy consumption and network life reduction. This is a very critical problem, especially in energylimited large-scale WSNs. One effective solution is to reduce redundant transmissions while maintaining the advantages of CI-based flooding.
A concurrent transmission scenario of CI-based flooding can be illustrated in Figure 1. In this example, 1, 2, 3, 4, 5 As the most common behavior of CI-based flooding, 1, 2, 3, 4, 5 are forwarding an identical packet to 1 simultaneously. In order to transfer as soon as possible, Glossy makes all the five senders in the radio on mode (dashed arrows in Figure 1) which is obviously unnecessary. In fact, an optimized forwarding set can be selected via lightweight communication between neighbors. Suppose that the residual energy of each node can be expressed as Er 1 , Er 2 , Er 3 , Er 4 , and Er 5 . The residual energy of each candidate sender and its neighbors is as follows: 1 = {Er 1 , Er 5 , Er 4 }, 2 = {Er 2 , Er 3 , Er 4 }, 3 = {Er 2 , Er 3 , Er 5 }, 4 = {Er 1 , Er 2 , Er 4 }, and 5 = {Er 1 , Er 3 , Er 5 }. Then we have Er 1 > Er 2 > Er 3 > Er 4 > Er 5 . Each node independently selects the node which has the largest residual energy from ( = 1, . . . , 5). For the example in Figure 1, 1 and 2 are selected as the final senders. 3, 4, and 5 can keep silent to save energy. As shown by the red arrows in Figure 1, we can achieve the same flooding performance but save 60% energy consumption compared with Glossy. In particular, all nodes have the same residual energy in the initial state. There are two disjoint forwarding sets { 1, 2} and { 4, 5}. Network lifetime can be greatly extended by energy adaptive scheduling { 1, 2} (red arrows in Figure 1) or { 4, 5} (green arrows in Figure 1) as the practical forwarding set.
Inspired by this insight, we propose an energy adaptive CI-based flooding protocol (EACIF) for WSN-AF. EACIF improves energy adaptive CI-based flooding through energy scheduling and topology control. Compared with the stateof-art CI-based flooding protocols, EACIF achieves lower energy consumption, lower latency, and the same coverage (i) We are the first to propose a lightweight distributed energy adaptive CI-based flooding protocol (EACIF) for WSNs. EACIF adapts to the network changes in residual energy and selects the optimized forwarding set via the communication between neighbors.
(ii) EACIF constructs a sparse topology for CI-based flooding via an approximate minimum connected dominating set (MCDS) algorithm, which can be completed approximately in ( ).
(iii) EACIF proposes a -covered mode switching algorithm (KMSA) for -covered UDG and theoretically derives the energy saving formula for CI-based flooding.
(iv) We simulate EACIF based on uniformly distributed topology and real topology. Simulation results show that EACIF can achieve the same reliability as Glossy, while reducing 63.96% energy consumption on the real trace.
The rest of the paper is organized as follows. We review the related work in Section 2. In Section 3, we analyze the process of CI-based flooding and present active nodes selection algorithm (ANSA) and -covered mode switching algorithm (KMSA). We evaluate the performance of EACIF in Section 4 and conclude the paper in Section 5.

Related Work
Constructive interference (CI) is a physical layer phenomenon and was first experimentally discovered by Dutta et al. [12]. Subsequently, CI is used in backcast [13] to avoid broadcast storm problem. CI can be achieved by submicrosecond time synchronization of all coordinated senders. A typical scenario of CI is shown in Figure 2; 1, 2, and all employ IEEE 802.15.4 radios. The packets ( 1 and 2 ) with the same data are, respectively, transmitted from 1 and 2 to . can decode the 1 and 2 as one packet if the maximum temporal displacement Δ of 1 and 2 is no more than one chip period = 0.5 s. By implementing chip-level time synchronization on IEEE 802.15.4 radio, CI can greatly improve the efficiency of concurrent transmission in WSNs. Compared with the typical concurrent transmission technologies, capture effect (CE) [14] and message-in-message (MIM) [15], CI neither needs to set packet with strong signal International Journal of Distributed Sensor Networks 3 arrival first nor needs to add additional hardware detecting the signal strength. Recently, TriggerCast [16] improves CI technology by compensating synchronization errors caused by propagation delay and realizing link selections in the lossylink condition.
CI requires that multiple senders simultaneously transmit the same packet. This behavior is consistent with the characteristics of network flooding. Besides CI-based flooding, opportunistic flooding [17] also achieves fast network flooding by constructing a tree-based topology. Previous technologies such as CF [11] and RBP [10] schedule the data forwarding through link quality assessment. Moreover, when multiple sensor nodes simultaneously send an identical packet to the same destination, existing flooding solutions (RBP [10], FLASH [18], and CF [11]) need to dispatch the transmission order. Otherwise, it will cause mutual interference. The dispatch overhead should never be neglected in the large size of WSN-AF system. Fortunately, CI-based flooding can eliminate redundant dispatch overhead while increasing the flooding speed.
Glossy [9] achieves the synchronization condition (Δ ≤ 0.5 s) of CI by capturing interrupts of IEEE 802.15.4 radio. Accurate synchronization guarantees high reliability of CI-based flooding. However, Glossy produces considerable redundant packets during the flooding process. This leads to massive unnecessary energy consumption. LWB [19], Chaos [20], and Choco [21] build up level scheduling mechanism for data collection or dissemination based on Glossy. The above works [19][20][21] achieve low duty cycle and efficient network flooding. However, they do not fundamentally change the transmission mechanism of Glossy which brings unnecessary energy consumption. Splash [22] forms a parallel pipeline by scheduling channel switch between nodes on adjacent layers. Splash can achieve higher throughput than Glossy. However, frequent channel switching increases the cumulative synchronization error which decreases synchronization accuracy and reliability. Meanwhile, channel scheduling brings more energy consumption.
Recently, Wang et al. [23] prove that Glossy has a scalability problem. The PRR of Glossy is inversely proportional to the hops of independent paths. The reason is that independent paths increase cumulative synchronization errors. For example, the GreenOrbs project [3] is designed to deploy 1000 nodes in Tianmu Mountain, Jiaxing, China, for forest carbon sink. In order to achieve accurate data acquisition, GreenOrbs deploys 8∼20 neighbors (according to the diversity of node's communication range) for every sensor node. The drawback of scalability problem is more serious in such a high dense WSN-AF system. Wang et al. also propose SCIF protocol which leverages grid topology to reduce the number of independent paths. However, the grid topology increases the path length of CI-based flooding and therefore increases the network delay. CX [24] uses the changes of relay count to conduct link selection, to some extent, reducing the number of nodes involved in transmission. Due to the randomness of relay count, CX costs considerable computational overhead and energy consumption. Compared with the above CIbased flooding protocols, EACIF is an energy adaptive CIbased flooding mechanism. EACIF achieves high reliability,

EACIF Implementation
Enlightened by SCIF [23], we find that a sparse topology can help to achieve energy adaptive CI-based flooding. However, there are still some challenges. The first challenge is to guarantee full network coverage while achieving fast network flooding and high packet reception ratio (PRR). The second challenge is to achieve a lightweight distributed energy scheduling algorithm for redundancy cover sets. In this section, we introduce the implementation of EACIF. We analyse the state migration of CI-based flooding in Section 3.1. Then, we introduce the topology control algorithm in Section 3.2, followed by the design of -covered mode switching algorithm in Section 3.3. Moreover, we theoretically analyze the energy consumption of EACIF in Section 3.4.

The Analysis of CI-Based
Flooding. CI-based flooding is a network flooding technique based on the hierarchical model. In the first round, the initiator broadcasts a packet to its one-hop neighbors. Then, the one-hop neighbors will forward the received packets to the initiator and the two-hop neighbors in the second round. Every other round, nodes on each layer forward the flooding packet once. Each node stops forwarding packet if its transmission count reaches the transmission threshold. Key factors of CI-based flooding are listed in Table 1. represents the node that starts to send a packet and is the specific event of receiving packet. When the flooding begins, only the initiator can send packet. Let SF denote the node that becomes an initiator and SF let denote the node that becomes a receiver. SF and SF events are only triggered at the beginning of the network flooding process. Stop represents the external event stopping the network flooding.
is the transmission counter which records the number of transmissions of the current node.
is the transmission threshold.
indicates that the node fails to receive the packet. We use to denote the relay count which will be increased by one after each successful reception.
As Figure 3 shows, CI-based flooding has four correlative states including Radio off state, Standby state, Send state, and Receive state. When SF event happens, the initiator  transforms from Radio off state into Send state. Then the initiator triggers the event to send a flooding packet to its one-hop neighbors. When SF event happens, the nodes except the initiator enter the Standby state to wait for the incoming packets. When event happens, the node switches to Receive state and starts to decode the received packet. If the reception is successful, ++ is performed. Meanwhile, the node shifts to Send state for new transmitting round. In contrast, if happens (Δ ≥ 0.5 s), the node converts into Standby state for the next receiving round. After event is completed, the node has two candidate states: the Standby state and the Radio off state. If is less than , the node will turn to Standby state to wait for the new event. If reaches , the node will turn to Radio off state.  WSNs looping in Standby → Receive → Send until flooding ended. Each cycle has two "milliampere-level" states and one "microampere-level" state. As Figure 3 shows, each node in EACIF has two interconvertible modes: the active mode and the passive mode. In active mode, the node has the same state conversion schedule with Glossy, while the node in passive mode need not forward the received packet. If it has received the packet successfully, the node will turn to Radio off state to save energy. If the reception has failed, the node will turn to Standby state for the next event. Obviously, the more nodes in passive mode are, the more energy can be saved.
The scenario shown in Figure 4 illustrates the flooding process of EACIF when = 1. Suppose an evendistributed WSN which has 25 nodes. Here, node is the initiator; 1 , 2 , 3 , and 4 are working in active mode, while 1 , . . . , 20 are working in passive mode. When the 1st transmission round begins, broadcasts a packet to its onehop neighbors 1 , 2 , 3 , 4 , 1 , 2 , 3 , and 4 . Upon receiving the packet, 1 , 2 , 3 , and 4 enter the Radio off state to save energy. Only 1 , 2 , 3 , and 4 participate in the 2nd transmission round. All the peripheral nodes ( 5 , . . . , 20 ) are working in passive mode. It is not difficult to calculate that there are 80% nodes that can work in passive mode to save energy. However, Glossy makes all the 25 nodes work in active mode.

Topology Control Algorithm.
To save energy, one of the main challenges is to find the fewest nodes in active mode to cover the whole WSN. Then, we need to design an energydriven policy for mode scheduling. In order to complete these challenges, EACIF proposes a distributed algorithm to select the active nodes in a given topology and develops a mode scheduling policy based on residual energy.

Geometric Definitions.
We assume a WSN consisting of sensor nodes deployed in a two-dimensional plane. The Input: Given a node V of a unit disk graph ( , ), V ∈ . Output: The node type V , where Ψ denotes the set of node type and V ∈ Ψ. if RE V < then (17) b r e a k ; (18) end (19) ++; (20) end (21) if == then node set is defined as . A set of edges can be defined by the Euclidean distance of any two nodes. In this way, we can define a simple undirected graph ( , ). Suppose that the communication radius of all nodes is equal to one unit, we have the following definitions. Definition 1. In a simple undirected graph = ( , ), for ∀ , V ∈ , if ( , V) ∈ and ∃(| V| ⩽ 1), then is a unit disk graph UDG( , ).

Definition 2.
In UDG( , ), a subset of is a dominating set (DS) if any node V in either is in or is a neighbor of some node in .  We call the nodes in "active dominators" (AD). The gateway nodes converting DS to CDS are called "active gateways" (AG). The nodes outside CDS are called "passive dominatees" (PD).

Active Nodes Selection
Algorithm. Enlightened by Section 3.1, we consider to construct an approximate MCDS as a sparse backbone. In a previous work, Wan et al. [26] have proposed an effective MCDS generation algorithm for wireless ad hoc networks. However, Wan's approach does not optimize the residual energy. In this paper, we propose a distributed active nodes selection algorithm (ANSA) which generates an approximate MCDS according to node's residual energy.
Definitions 2 and 3 indicate that "active nodes" include the AD nodes and the AG nodes. Therefore, ANSA can be divided into two subalgorithms: AD election subalgorithm and AG election subalgorithm.
AD Election Subalgorithm. AD election subalgorithm constructs a CDS of a given topology. As Algorithm 1 shows, V denotes the type of node V. The type of V is AD if V equals 1, while V = 0 indicates that the node is a PD. If V is a AG, V equals 2. In the initial state, the type values of all nodes are zero. Any node V must broadcast its request to its onehop neighbors (QA(V) == True) if it wants to be a AG. The request packets contain the residual energy of node V. Then, its neighbor nodes ( V ) send response packets to V. When receiving the responses (RA(V) == True), V compares its residual energy (RE V ) with the residual energy set NE V . Node V is elected as AG if and only if V has the maximum residual 6 International Journal of Distributed Sensor Networks Input: Given node V of a unit disk graph ( , ). Output: The node type V , where Ψ denotes the set of node type and V ∈ Ψ.
(1) Suppose and respectively represent the sets of AD node and PD node; } be neighbors set of node V, where is V's neighbors number; (6) Let RE V be the residual energy of V, and be the threshold value of residual energy; (7) //PD processing. (8) if V ∈ then (9) //Node V broadcast the (AD, PD) pairs. (10) if (V) == then (11) (V) → V ; (12) end (13) // , are AD nodes connected by V. (22) if V received (V, , ) of then (23) / / is the candidate AG of V and . (24) T r a v e r s e (V, ); (25) if RE has the residual energy && RE ⩾ then (26) (V, , ) = True; (27) end (28) end (29) end Algorithm 2: AG election subalgorithm. energy. Finally, V sets its node type and triggers TA(V) event to send the declaring packets. After AD election subalgorithm, each node in ( , ) is either a AG or a PG.

AG Election
Subalgorithm. As Algorithm 2 shows, all PD nodes first broadcast their (AD, PD) pairs. Alzoubi et al. [27] have proved that a PD of UDG( , ) has at most five AD nodes. After gathering two-hop AD nodes information, a PD node V can broadcast AG request (QG( , V, )) applying to be AG between and ( and are AD nodes). Any two AD nodes may have an interval of one hop or two hops. If the interval is one hop ( → V → ) and V has the most residual energy, any of the two AD nodes ( or ) can trigger TG( , V, ) event. If the interval is two hops, QG( , V, ) and QG( , , ) are, respectively, sent to and . If V and have the maximum residual energy, they are both elected as AG nodes. Otherwise, and cooperatively select the AG nodes for three-hop path ( → V → → ) by Algorithm 2.
Time Complexity. As a distributed algorithm, the time complexity of a AD election algorithm is ( ). For a PD node, the time complexity of a AG election algorithm is ( ). For a AD node, the time complexity of a AG election algorithm is ( ) + ( ). Therefore, time complexity of ANSA can be approximated as ( ).

-Covered Mode Switching
Algorithm. According to Definition 4, a -covered UDG can generate groups of MCDS. -covered mode switching algorithm (KMSA) motivates us to design an energy adaption strategy for node's residual energy. As Algorithm 3 shows, every node V of a -covered UDG ( , ) holds a predefined residual energy threshold . If the residual energy of any node (generally AD node or AG node) is lower than , KMSA is triggered for a new MCDS building round. KMSA first empties the AD and AG sets and resets all the nodes' type to PD. Then, KMSA triggers Algorithms 1 and 2 to find new AD and AG sets. If the new and are not NULL, KMSA generates new MCDS which prolongs the lifetime of WSNs. However, if KMSA cannot find the new AD set or AG set, it will switch the type of all nodes to AD.

Power Consumption Model.
In this section, we first establish the model of power consumption for CI-based flooding and then analyse the energy saving by EACIF incovered UDG.
Referring to Section 3.1, we define the main specifications of CI-based flooding. The unit time power consumption of Standby state, Send state, and Receive state can be, respectively, described as , , and . The durations of Standby state, Send state, and Receive are , , and Input: Given a -covered UDG ( , ). Output: The set of node type Ψ, V ∈ Ψ.
(1) Let Ψ be the set of node type and V ∈ Ψ; (2) Let and be the sets of AD node and AG node; (3) Let AD and AG be the triggers of Algorithms 1 and 2; (4) Let RE V be the residual energy of V, and be the threshold value of residual energy; Algorithm 3: -covered mode switching algorithm.
. Other parameters include the packet length , the data transmission rate , and node number .
Glossy completes flooding after all nodes run cycles of Standby → Receive → Send. The power consumption of Glossy ( glossy ) can be expressed as The energy consumption of active nodes is the same as Glossy, while the passive nodes only need to run Standby → Receive once. The power consumption of EACIF ( eacif ) can be calculated as Here, is the number of active nodes. active and passive are the energy consumption of active nodes and passive nodes, respectively. The energy saving of EACIF ( saving ) can be calculated as Equation (3) shows that every passive node reduces ( −1) states, ( − 1) V states, and states. However, active nodes cannot save energy. EACIF can reduce energy consumption because it reduces the number of active nodes via ANSA algorithm. Moreover, suppose Ω = { 1 , 2 , . . . , } is the active nodes set for a -covered UDG.
Here, denotes the node number of active nodes in every cover set. EACIF's energy saving for -covered UDG KE saving can be calculated as Equation (4) indicates that the energy saving is proportional to the redundant MCDS number . Therefore, ECIF enables low-power network flooding in WSNs.

Performance
In this section, we evaluate EACIF in both real trace and uniformly distributed topology.

Topology Control Evaluation.
We first evaluate the topology control algorithm of Section 3.2 by MATLAB 7.11 platform. We use a real trace of previous work [28] which has 1052 nodes deployed in a ten-kilometer area. As Figure 5(a) shows, all nodes labeled as PD are represented by yellow. Figure 5(b) illustrates the node type after ANSA. The AD nodes are represented by red, while green denotes the AG nodes. Evaluation shows that ANSA selects 83 AD nodes, 275 AG nodes, and 694 PD nodes. The nodes in the active mode are only 34.03%. It is indicated that there are 65.97% nodes working in the passive mode to save energy. Figure 6 shows the evaluation of PRR. We define CI-based flooding parameters as follows: the length of packet payload is 32 bytes, the variance of clock frequency drift = 5ppm, the threshold of time displacement Δ = 0.5 s (for the IEEE 802.15.4 radio), and the period during one-hop packet reception and retransmission slot = 1.124 ms. In the real trace of Figure 5, we change the transmission distance from 40 m to 100 m. In the uniformly distributed topology, we increase the node number varying from 500 to 2000 (referring to the scale of existing WSN-AF system). All the simulation results are averaged by 100 times.

The PRR Evaluation.
As Figure 6(a) shows, the PRR of EACIF and Glossy are more than 97.1% ( = 1). When = 3, both EACIF and Glossy achieve a 99.9% stability. Simulation results of uniformly distributed topology also prove that EACIF can achieve high PRR (see Figure 6(b)). However, we also note that there are lower PRR values in individual samples, especially when    distance is 65 m ( = 1), one sample of 100 samples has 76.4th percentage of PPR (see Figure 6(a)). The reason is that EACIF reduces the amount of retransmission and also reduces opportunities to obtain the packets. The nodes in passive mode can only receive the packets from their parent nodes, while Glossy gives each node at least two chances of receiving packets, if the network degree is more than 2. Fortunately, the average PRR of EACIF is close to Glossy.

Flooding Latency Evaluation.
For each node, the flooding latency is defined as the duration from SF event to the first successful event (see Table 1). Figure 7(a) shows the flooding latency of 1052 nodes in real trace ( = 3). In EACIF, the latency of 263 nodes is less than 1 ms and 11.2 ms is needed for all nodes to receive packets, while Glossy spends 25% time more on flooding the whole network. Figure 7(b) plots the flooding latency of a uniformly distributed network with 2000 nodes. Using EACIF, 125-node latency is less than 1 ms. In uniformly distributed topology, Glossy spends 27% time more than EACIF. Although Glossy is a fast CI-based flooding protocol, our evaluation results show that EACIF can flood much more quickly. This is because EACIF reduces retransmissions by constructing a sparse network topology. The simulation results indicate that EACIF can effectively resolve the scalability problem in largescaled WSNs.

Energy Consumption Evaluation.
We use the average radio on time to evaluate the energy consumption of EACIF. Figure 8(a) shows the average radio on time of real trace. When the transmission distance is increased from 40 m to 100 m, the average radio on time of Glossy changes from 22.4 ms to 19.7 ms, while the average radio on time in EACIF changes from 15.1 ms to 7.1 ms. When the transmission distance is 100 m, EACIF can save 63.96% more energy consumption than Glossy. Figure 8(a) indicates that EACIF's effect of energy saving is proportional to network density. Simulation results verify the indication of (4).
In Figure 8(b), the node number increases from 500 to 2000. The average radio on time of Glossy has 31.2% increasement. It means that Glossy suffers scalability problem. However, the average radio on time of EACIF has a slight decrease. When the node number is 2000, the average radio on time of EACIF is 11.2 ms. We assume that a WSN-AF system sends a packet every 30 seconds. The duty cycle of EACIF is 0.11%.

Conclusions and Future Work
In this paper, we introduce EACIF, the first work to improve energy adaptivity of CI-based flooding. We first implement ASNA to construct a sparse backbone on a given topology. Then, we propose KMSA algorithm to control the flooding process. We experimentally validate the performance of EACIF on real trace and the uniformly distributed topology. Simulation results indicate that EACIF can efficiently reduce redundancy retransmissions and significantly reduce energy consumption. Our future work includes the performance measurements of EACIF in real-world large-scale WSN-AF and the exploitation of EACIF in wireless time synchronization and remote reprogramming.