Abstract
Broadcast is widely used in applications in wireless sensor networks (WSNs). In the last decade, the broadcast problem in WSNs has been well studied. However, few of existing broadcasting strategies have considered the scenarios with sleeping schedules, which have been emerging as a prevalent energy-saving method for WSNs. In WSNs with sleeping schedule, each node switches on and off periodically, rendering the broadcast problem more difficult. To handle the periodical sleep issue, we focus on designing effective sleeping schedule-aware broadcast algorithms. We practically propose SALB, a sleeping schedule-aware local broadcast algorithm. In SALB, a typical local algorithm for constructing connected dominating set is employed to form the broadcast backbone. To guarantee proper transmission of broadcast messages, a sleep-aware forwarding mechanism is implemented. Moreover, heuristic strategies are used to decrease the number of transmissions and the broadcast latency. Theoretical analysis shows that the number of transmissions for SALB is within 4(min(Δ,
1. Introduction
Energy is regarded as scarce resource in wireless sensor networks (WSNs). It is shown that most energy is wasted in sensor node's idle listening. To handle this issue, sleeping schedule has been proposed to preserve energy in WSNs. With sleeping schedule, each node is switched on and off periodically. Nodes turn on to detect object and receive and forward data and then turn to sleep to save energy. As a simple yet efficient method, sleeping scheduling has been widely used in WSN applications like environment monitoring and object tracking applications [1].
Broadcast is a fundamental operation in WSNs for routing discovery, information dissemination, and so on [2]. Naive broadcast methods such as flooding always lead to massive redundancy and intolerable latency, wasting the energy dramatically [2]. In order to design energy-efficient broadcast algorithms, a lot of effort has been devoted to reduce data transmission and broadcast latency. For instance, many MCDS-based approaches are proposed to minimize transmission redundancy [3–7]. And lots of coloring-based collision-avoiding approaches are used to reduce latency [8–10].
In this paper, we focus on the sleeping schedule-ware broadcast problem in WSNs, which is quite different from that in traditional WSNs. In traditional WSNs, each node is assumed to be nonsleeping. Based on the broadcast nature of wireless medium, a node can deliver one broadcast message to all its neighbors by one transmission. While in the WSNs with sleeping schedule, each node can only receive messages when it is active, so not all neighbors of a senor node can receive the broadcast message by one transmission. This difference renders the broadcast problem more difficult in such situations. Existing broadcast algorithms did not consider the sleeping schedule issues and thus are not suitable.
To solve the sleeping schedule-aware broadcast problem, we practically propose a local algorithm in this paper, namely, the sleeping schedule-aware local broadcast (SALB) algorithm. In SALB, we first use a typical local MCDS construction algorithm to form a virtual broadcast backbone. With this virtual backbone, we design an active slot-based forwarding mechanism for each node, which guarantees the success of broadcast and can help reduce transmission redundancy and latency. The numbers of transmissions for SALB are within
The rest of this paper is organized as follows. We review the related work in Section 2 and present the models and assumption in Section 3. SALB is proposed in Section 4. We evaluate its performance in Section 5 and discuss the tradeoff between the number of transmissions and the broadcast latency in Section 6. In Section 7, we conclude this paper.
2. Related Work
Data-transmission issues in duty-cycled WANETs have recently attracted much of researchers' attention. Dousse et al. [11] established a bound on the transmission latency of sensor networks with uncoordinated schedule. Lu et al. proved the NP-hardness of minimizing end-to-end communication delay in low-duty-cycle sensor networks in [12]. Cao et al. proposed the pipeline forwarding pattern for sensor networks with a sleeping schedule to decrease the delay [13]. Keshavarzian et al. analyzed the delay of several known wake-up patterns and proposed a new multiparent scheduling pattern for sensor networks in [14]. Gu and He proposed a dynamic data forwarding scheme for extremely low-duty-cycle sensor networks based on the expected latency and reliability model [15]. However, these works mainly focus on the latency issue caused by the sleep schedule, and none of them refer to the broadcast problem.
Since broadcast plays an important role in WSNs, a lot of research work has been done on this area. The simplest approach for broadcast is blind flooding, where each node is obligated to forward a packet upon receiving it for the first time. However, it has been shown that blind flooding can lead to serious redundancy and collisions, a situation known as broadcast storm [2]. Therefore, great effort has been made by improving the flooding approach to reduce broadcast redundancy and collisions, as well as broadcast latency. For example, [2, 16] proposed probabilistic forwarding methods to avoid massive redundant transmissions. Based on the construction of virtual broadcast backbone and broadcasting along the backbone, [3–7] proposed different technologies to reduce broadcast redundancy. Specifically, much recent research has been done to minimize the broadcast transmissions and minimize the broadcast latency based on different network models. Generally, both the minimum transmission broadcast problem and the minimum latency broadcast problem are NP-hard, and a lot of efficient algorithms have been proposed [3–10].
Recently, some researches focusing on the sleeping schedule-aware broadcast problem have emerged. Wang et al. discussed the broadcast problem in duty-cycle sensor networks in [17]. Hong et al. proposed a series of work on the minimum-redundancy broadcast problem for duty-cycle wireless ad hoc networks [18, 19]. The other topic of minimum-latency broadcast problem has been investigated in [20, 21]. However, none of them proposes a local algorithm for sensor network considering both transmission and latency issues of broadcast.
3. Model and Assumption
We assume that n sensors node are deployed in a two-dimensional plane with equal maximum transmitting range of one unit. The network can be modeled as a connected UDG
The notations used in this paper are listed in Table 1.
Notations.
3.1. Problem Formulation
We consider the multisource broadcast in this paper, in which each node in the network is possible to broadcast the data packets to all the other nodes. In the general WSN, with the benefit of broadcasting nature of wireless media, each node can broadcast the data packets to all neighbor nodes with only one transmission. As a result, the objective of traditional broadcasting algorithm is to determine the forwarding nodes in broadcasting. Each forwarding node retransmits the data packets once after receiving them to complete the broadcasting process. However, considering the effect of sleeping schedule, the active time-slots of nodes are always different. A node cannot guarantee that all its neighbors are able to receive the data package successfully with one transmission. As a result, the broadcasting problem becomes different from the traditional WSN and thus is needed to be redefined. We define a broadcast backbone
Definition 1 (the sleeping schedule-aware broadcast (SA-broadcast)).
Given a WSN with sleeping schedule which is modeled as a
Different broadcasting algorithms have different broadcast backbones and broadcast schedules, which determine the number of transmissions and the broadcast latency. Finally we present a useful definition.
Definition 2 (inversion).
Given a data transmitting node sequence
When node a receives a data package at time-slot
4. Local Algorithm for SA-Broadcast Problem
In this section, we introduce the details of the proposed SALB algorithm. The design of SALB algorithm consists of two parts: construction of a broadcast backbone and the active time-slot-oriented forwarding mechanism.
4.1. Construction of Broadcast Backbone
Among existing broadcast backbone constructing algorithms, the MCDS is proved to have the minimum forwarding nodes, performing well in reducing both transmission and latency [24]. Therefore, we would like to use a MCDS as the broadcast backbone. Many MCDS constructing algorithms have been proposed so far, like [25–28]. Among them, a widely used local algorithm for mobile ad hoc networks proposed by Alzoubi et al. in [25] has constant message complexity and constant approximation ratio. Therefore, we employ this algorithm with some modification here to construct the broadcast backbone of SALB.
As described in [7, 25], the construction of broadcast backbone can consist of two phases: dominator election and dominator connection. The elected dominators and connectors form a connected dominating set (CDS), acting as the broadcast backbone. In the construction phase of the broadcast backbone, we assume that all nodes are in the active state. After the construction, each node will become a dominator, a dominate, or a connector. According to [25], there must be a dominator within three hop distance of any dominator. During the broadcast, each dominator delivers message to its neighbors, and connectors relay messages among dominators. Each node maintains a forwarding node list FWD_LIST, containing the IDs of destination nodes and their active time-slots. The FWD_LIST will be used in designing the forwarding mechanism.
4.1.1. Electing Dominators
We assume that each node in the network obtains all its 1-hop neighbors' ID and active time-slot by exchanging beacon messages. To reduce inversions in the broadcast process, we would like to make the active time-slot of each dominator smaller than its neighbors'. Let A Blank node becomes a dominator if it has the largest η among all its Blank 1-hop neighbors and then broadcast a message IamDominator (ID, i) with its ID and active time-lot i (ID is used to break the tie). A Blank node becomes a dominator if there are no Blank nodes nor dominators in its 1-hop neighbors (knowledge from the received IamDominatee message) and then broadcast the IamDominator(ID, i) message. A Blank node becomes a dominatee if it receives a IamDominator message and then broadcast message IamDominatee(ID, i).
After election, if a dominator u has the largest ID among all its dominatee v's neighbor dominators, it stores the ID and the schedule of active time-slots of v in its FWD_LIST. Each dominatee then records all of its dominator's IDs and active time-slots in its FWD_LIST.
4.1.2. Connecting Dominators
Here we present the modified dominator connecting phase based on the algorithm from [25]. For each dominator, we call the connecting nodes adjacent to its 2-hop dominators the 1-hop connectors and the connecting nodes 2-hop away from its 3-hop dominators the 2-hop connectors.
First we connect dominators with its 2-hop neighbor dominators. After the election phase, each dominatee v broadcasts an ANNOUNCE message containing the IDs of nodes in
// (1) If (2) For each dominatee in HOP1_LIST, compute the number n of dominators in (3) Choose the dominatee with largest n as 1-hop connector; (4) Remove the item of v from the HOP1_LIST, and remove all dominators connected by v from
Algorithm 1
After choosing its 1-hop connector, each dominator puts the ID of its 1-hop connectors and the connected dominators in
Next we connect the dominator and its 3-hop neighbor dominators. After a dominator u broadcasts the IDs of all nodes in
When dominator u receives the ANNOUNCE from dominatee v, it checks the special dominators inside the message. If there are nodes in the message which are neither 2-hop neighbor dominators of u nor the special dominators for the 2-hop neighbor dominators of any node in
// (1) Find (2) Mark (3) Store (4) Go to Step 1. until
Algorithm 2
After that, each 2-hop connector stores the information of its isolated dominators in HOP1_CONN message and delivers the message to its 1-hop connectors. When these 1-hop connectors receive the message, they store the ID, as well as the active time-slots of the source 2-hop connectors and the isolated dominators they needs to connect to in FWD_LIST.
4.2. Active Time-Slot-Oriented Forwarding Mechanism
In a conventional WSN, broadcast can be finished if each node in the broadcast backbone forwards the packet to all its neighbor nodes only once receiving a packet. However, in a network with sleeping schedule, nodes have to forward the packet according to the schedule of active time-slots of all its receivers. Therefore, to execute the broadcast operation correctly, we have to design the forwarding mechanism for nodes in the broadcast backbone, that is, broadcast schedule. To distinguish the packets from the same source node or different source nodes, each broadcast packet includes the ID of its source node, as well as an increasing sequence number SEQ which is maintained by the source node. Based on the FWD_LIST list kept by each node, the forwarding mechanism for a node when receiving a broadcast packet is shown in Algorithm 3.
(1) If the packet is not received for the first time, then it is just dropped and the following steps are skipped. // According to the ID and SEQ of the packet. (2) Let from; (3) (4) If (5) For each node (6) If
Algorithm 3
When a connector or dominator node s starts a broadcast operation, it keeps
5. Performance Evaluation
In this section, we first present theoretical analysis of the transmission number, broadcast latency, and the complexity of SALB. Then, we conduct simulations to evaluate the performance of SALB.
5.1. Theoretical Analysis
Since the broadcast virtual backbone of SALB is a CDS, if each node in the virtual backbone succeeds in delivering broadcast messages to its neighbor nodes, all nodes in the network are guaranteed to receive the broadcast message. Based on this fact, with the active slot-based forwarding mechanism, SALB obviously provides correct broadcasting operation. Next we give two theorems on broadcast transmission and latency of SALB.
Assuming the minimum number of transmission to complete a broadcast in the network is
Theorem 3.
The numbers of transmissions of SALB are bounded by
Proof.
Assume that the WSN is modeled as a UDG
Let the size of MCDS of G be
Theorem 3 shows that in situations with sparse node density or short sleeping scheduling period, the broadcast transmission of SALB will be closer to the optimal value.
Next we analyze the broadcast latency of SALB. Denoting the minimum broadcast latency in a WSN with sleeping schedule by
Theorem 4.
The broadcast latency of SALB is bounded by
Proof.
Denote the virtual broadcast backbone constructed in SALB by B. B is a connected dominating set of the UDG G corresponding to the WSN. By adding edges connecting each dominator and its dominatees in B, we obtain a new graph

Latency analysis of SALB.
Based on the above conclusion, we further analyze the broadcast latency of SALB. Assume Figure 1 describing a network with sleeping schedule, and let
The minimum broadcast latency
The construction of virtual broadcast backbone dominates the time and message complexities of SALB algorithm. According to [7, 25], the time and message complexities of the CDS constructing algorithm we used in forming the virtual backbone of SALB are both
5.2. Simulation Results
We conduct simulations to evaluate the performance of SALB on a costumed simulator developed using PARSEC [29], which is a C-based distributed discrete-event simulation language. In simulations, the network is randomly deployed in a 200 m * 200 m dimension area. To maintain reasonable network connectivity, the radio radius of each node is set to 35 m, resulting in at least 0.5 nodes/100 m2 and a node degree of at least 19 in the following experiments. Each node randomly chooses an active time-slot from T. All results are average of ten runs. In each run, the broadcast source node is chosen randomly.
We first observe the broadcast transmission of SALB. In this simulation, we compared SALB with the modified classical tree-based broadcast scheme [30], namely the Tree-algorithm. The Tree-algorithm can be stated as follows: generate a spanning tree of the network G rooted in the source node s and the broadcast finishes when each node on this tree sends message to all its children according to their active time-slots. Obviously total transmission of Tree-algorithm is exactly

Impact of network size on transmission.

Impact of |T| on transmission.
We then evaluate the broadcast latency of SALB. Without considering the collision of wireless channel, if each node retransmits the broadcast message as long as receiving it, the broadcast will finish within the minimum latency, namely, OPT. We compare the broadcast latency of SALB with OPT in the following simulations. First we fix

Impact of network size on latency.

Impact of network size on ratio to OPT.

Impact of |T| on latency.

Impact of |T| on latency ratio to OPT.
6. Discussion
In the design of SALB algorithm, we apply a heuristic strategy to decrease the number of transmissions and the broadcast latency. However, the two objectives always conflict with each other. Next we will illustrate an example. We consider a network shown as in Figures 8 and 9. The period of sleeping schedule

Relationship of latency and transmission (a).

Relationship of latency and transmission (b).
7. Conclusion
In this paper, we studied the broadcasting problem while considering sleeping schedule in WSN. First we formulated the sleeping schedule-aware broadcast algorithm. Then we proposed a local broadcast algorithm SALB. In SALB, we modified a classical local algorithm for constructing connected dominating set to form the broadcast backbone and designed a forwarding mechanism to handle the periodically sleeping issue of nodes. We proved that the number of transmission of SALB is within
Footnotes
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Acknowledgments
This work is partly supported by the National Natural Science Foundation of China (Grant nos. 61202417, 61073028, and 61021062), the General Program of Science and Technology Development Project of Beijing Municipal Education Commission (Grant no. KM201411232013), and the Project of Shandong Province Higher Educational Science and Technology Program under Grant no. J13LN13.
