A distributed broadcast algorithm for duty-cycled networks with physical interference model

Broadcast is a fundamental operation in multi-hop wireless networks. Given a source node with a message to broadcast, the objective is to propagate the message to all nodes in an interference-free manner while incurring minimum latency. This problem, called Minimum-Latency Broadcast Scheduling (MLBS), has been studied extensively in wireless networks whereby nodes remain on all times and has been shown to be NP-hard. However, only a few studies have addressed this problem in the context of duty-cycled wireless networks, which unfortunately, remains NP-hard. In these networks, nodes do not wake up simultaneously, and hence, not all neighbors of a transmitting node will receive a broadcast message at the same time, meaning multiple transmissions may be necessary. Moreover, most of these studies addressed the MLBS problem over the idealistic protocol interference model. Henceforth, this paper considers MLBS for duty-cycled wireless networks under the physical interference model and presents an approximation algorithm called hexagon-based broadcast algorithm (HBA), which has a constant ratio in terms of broadcast latency and transmission times. We have evaluated HBA in different network configurations, and the results show that the latencies achieved by our algorithm are much lower than existing schemes. In particular, HBA manages to half the broadcast latency achieved by the state-of-the-art tree-based algorithm.


Introduction
Wireless sensor networks (WSNs) consist of numerous nodes deployed in a field. These nodes may be resource constrained in terms of battery lifetime, memory, and processor speed. In addition, they use multi-hop communications whereby sensed data are forwarded to one or more sinks/gateways via one or more nodes. Upon receiving the data, a sink/gateway may transmit a command to sensor nodes to affect their operating parameters; e.g., sampling frequency. Consequently, network-wide broadcast from a sink is a fundamental operation. Apart from that, broadcast is relied upon by several network protocols, such as routing [1], information dissemination [2], and resource/service discovery [3]. These protocols in turn help applications in disaster relief, military communication, rescue operation, and object detection [4]. For these applications, time is critical, and hence, a Minimum-Latency Broadcast Scheduling (MLBS) algorithm/protocol will be of great importance to their operation. Like many other communication protocols, any developed MLBS solution must deal with interference. Unfortunately, the MLBS problem for multi-hop wireless networks has been proven to be NP-hard [5], and researchers have proposed many approximation algorithms; see [4][5][6][7][8][9][10]. These algorithms, however, assume all nodes are always active and adopt highly theoretical disk graph models, in which the transmission and interference range is assumed to be a unit disk centered at each node. These works deal with interference through the RTS/CTS model or protocol interference model [11]. RTS/CTS model only considers the interference within a node's transmission range; that is, interference and transmission range are equal. On the other hand, the protocol interference model assumes that the interference range is larger than transmission range. Specifically, interference is assumed when nodes have overlapping interference range.
These 'interfered nodes' must therefore be scheduled in different time slots. The main drawback of these interference models is that they cannot model the case where many far-away nodes could still have non-negligible effect on reception. To this end, the physical interference model, also called SINR-based interference model, is more realistic, where the cumulative interference of many nodes outside the interference range is not neglected.
To date, only a few broadcast algorithms [7,12,13] have been designed for the MLBS problem under the physical interference model. Notably, there are even fewer works that address the MLBS problem in duty-cycled wireless networks. Briefly, in these networks, nodes are powered by batteries and are only awake for a fraction of the time [14]. Here, the duty cycle of a node is defined as the ratio between its active time and scheduling period, denoted as T. We note that they can employ a synchronous wakeup schedule; that is, nodes wake up at the same time. This means existing MLBS solutions for always on nodes are applicable. Unfortunately, doing so would require sensor nodes to coordinate and synchronize their wake-up time globally. This incurs high signaling overheads and energy that may severely shorten their operational lifetime. This paper, therefore, only considers wireless networks with an asynchronous schedule. Advantageously, Chin [15] showed that nodes only need to maintain the clock offset to each neighbor. To reduce signaling overheads even further, nodes can select a random sequence of wake-up times independently instead of having a coordinated wake-up schedule, which requires network-wide negotiation, where all nodes are awake. Figure 1 shows a sequence of four slots that repeat periodically. The grayed slots denote the wake-up times of a node. In this example, the node has picked slot '2' as its active time slot from a scheduling period T of 4, and hence, its duty cycle is 1 4 . In fact, in a duty-cycled WSN, all nodes will pick their own wake-up time upon network boot-up; in this example, a random slot in the range [1,4]. Once selected, a node then wakes up in its chosen slot every T slots. Given the wake-up schedule of nodes, a broadcasting node may have to transmit a message multiple times; i.e., all neighbors are unlikely to select the same slot to wake up. Consequently, any solutions to the MLBS problem in duty-cycled networks must first determine the wake-up times of neighbors, and in each wake-up time, it needs to ensure transmissions do not collide. Henceforth, this paper presents the design and evaluation of a novel approximation algorithm that is designed for duty-cycled networks under the physical interference model. Specifically, it contains the following contributions: 1. We propose the first distributed broadcast algorithm, called hexagon-based broadcast algorithm (HBA), for the problem at hand. It produces a constant approximation ratio a of terms of broadcast latency, where α is the path-loss exponent, β is the minimum SINR threshold required for a message to be decoded successfully, r max is the maximum transmission range, r is the transmission range of nodes, and T is the scheduling period. 2. The total number of transmissions in terms of broadcast messages produced by HBA is upperbounded by (T + 1)N H , where N H is the number of hexagons required to cover the entire network. 3. We evaluate HBA under different network parameters via simulation and show that that on average, our proposed algorithm has a much better performance in terms of broadcast latency than the tree-based algorithm [7]. The key reason is because our algorithm is able to schedule transmissions in multiple layers as opposed to layer by layer, as is done by [7].
The remainder of this paper is organized as follows. Section 2 lists related work. In Section 3, we introduce the network model, definitions, theories, and the problem formulation. In Section 4, we introduce our approximation algorithm, followed by its analysis in Section 5. Section 6 presents our research methodology and results. Lastly, Section 7 concludes the paper and presents future works.

Related works
To date, there are many approaches to address the MLBS problem in multi-hop wireless networks. The simplest by far is flooding [16], where each node simply re-transmits a received message to its neighbors unscrupulously. However, this causes broadcast storms [17] and is thus very costly and causes long latencies. Consequently, a number of researchers, e.g., [18][19][20], have proposed methods that improve the efficiency of broadcast. In this paper, we address a variant of the MLBS problem, which aims to find an efficient, interference-free schedule that yields the minimum broadcast latency.
For the MLBS problem under the RTS/CTS model, where it only considers interference or collision from senders inside a receiver's transmitting range, Gandhi et al. [5] presented an approximation algorithm with a constant approximation ratio of more than 400 for oneto-all broadcast. They then improve this ratio to 12 in [4]. Huang et al. [8] outlined three approximation algorithms for MLBS with latency of at most 24R, 16R, and R + O(log 2 R), respectively, and the omitted constant in O(log 2 R) exceeds 150 [4], where R is the theoretical lowerbound.
To the best of our knowledge, Chen et al. [6] are the first to study the MLBS problem under the protocol interference model, where the interference range is larger than transmission range. Huang et al. [7] propose a constant approximation algorithm with a ratio of 6 2 3 ( + 2) 2 for the MLBS problem, where is the ratio between the interference range and transmission range. Tiwari et al. [10] extend Huang et al. 's method to consider different transmission ranges and dimensions, i.e., 2D and 3D, and presented an approximation algorithm with a constant ratio of 2 4 3 for the 2D space, where γ is the ratio between the maximum and minimum transmission range. Tiwari et al. [10] also propose the first distributed algorithm for the MLBS problem under the protocol interference model. However, their distributed algorithm requires a node to exchange a significant number of control messages until all its neighbors receive the broadcast message, leading to an increase in energy consumption. Mahjourian et al. [9] study the conflict-aware broadcast problem whereby apart from the transmission and interference range, they also consider the carrier sensing range. They propose a constant approximation algorithm that has a ratio of O(max( , δ) 2 ), where δ is the approximation ratio between the carrier sensing and transmission range.
There are only handful works that have considered the MLBS problem with the physical interference model. Huang et al. [7] propose the first approximation algorithm for the MLBS problem under the physical interference model assuming each node is aware of its geographical location. Wan et al. [13] convert the network under the physical interference model into a disk graph and apply coloring methods to schedule simultaneous transmissions. Huang et al. [12] then extend the approach in [7] to consider a more realistic interference model, where a message is received successfully as per its SINR level.
Thus far, the aforementioned works assume an alwayson network, whereby all nodes remain awake indefinitely, meaning they do not employ any duty-cycle regime. To this end, only a handful of papers [21][22][23] have tried to address the MLBS problem in duty-cycled wireless networks, and even worse, all of these works only study the problem under the RTS/CTS model. Hong et al. [21] prove that the MLBS problem in duty-cycled wireless networks is NP-hard and proposed two approximation algorithms with an approximation ratio of O(( 2 + 1)T) and 24T +1 respectively, where is the maximum degree.
In [22], Jiao et al. propose an algorithm called OTAB and prove that OTAB has an approximation ratio of 17T. Also, they showed that the total number of transmissions scheduled by OTAB is at most 15 times larger than the minimum number of transmissions. Recently, Xu et al. [23] extended the pipelined broadcast scheme in [8] to consider duty-cycled WSNs. Their broadcast algorithm produces a latency of at most TR + TO(log 2 R), where the omitted constant in TO(log 2 R) also exceeds 150.
The aforementioned approaches rely on a tree constructed using breadth-first search (BFS), which in turn is used to schedule interfering transmissions layer by layer.
A key observation, however, is that transmissions in the next layer can only start when all nodes in the current layer have finished. In contrast, in our approach, HBA considers the set of all nodes holding a broadcast message at any point in time as potential transmitters. Consequently, HBA is able to schedule simultaneous transmissions in multiple layers of a BFS tree, which helps to reduce broadcast latency. Furthermore, HBA uses a coloring technique based on checking individual transmitters to ascertain whether they violate the interference-free conditions, which we will be precise in Theorem 1. These design features thus help increase the number of simultaneous interference-free transmissions in each time slot. In addition, except for [10], the aforementioned works are centralized and for always-on networks. However, the distributed algorithm in [10] is designed for always-on networks under the protocol interference model. More importantly, to the best of our knowledge, HBA is the first distributed solution for the MLBS problem in duty-cycled networks under the physical interference model.

Network model
We assume nodes are placed on an Euclidean plane. Let d(u, v) be the Euclidean distance between node u and v. We also assume the power level assignment is uniform, whereby all senders transmit with power level P. We adopt the following standard SINR-based interference model [24]. Here, a node v receives a message successfully from a sender u if and only if the following condition holds: where V denotes the set of nodes in the network, α is the path-loss exponent that is normally between 2 and 6, β denotes the minimum SINR required for a message to be received successfully which is greater than 1, N is the ambient noise; and w∈V \{u,v} P d(w, v) −α is the interference experienced by node v from nearby nodes. We assume time is slotted. Each time slot is assumed to be of sufficient duration to transmit or receive a broadcast message. To this end, the network is locally synchronized at the slot level. As shown in [25], this can be achieved by local synchronization techniques, such as FTSP [26], which can yield an accuracy of 2.24 μs using only a few small packet exchanges among neighboring nodes every 15 min. It is important to note that this accuracy is sufficient as the active duration of each node is typically above 10,000 μs [27,28]. Moreover, transmissions are not required to start at the beginning of each slot, meaning nodes do not need strict synchronization in order to communicate.
A scheduling period has T slots of fixed, equal length. We will index each slot by 1, 2, 3, · · · , T. The duty cycle is thus defined as the ratio between active time and T. For example, if T = 10, a 10% duty cycle means nodes are only awake in one slot. Similar to [29,30] and [22], each node v selects one active time slot from [ 1, 2, 3 . . . , T] randomly and independently and wakes up at its chosen time slot to receive a message; i.e., sensor nodes operate using an asynchronous schedule. If node v wants to transmit a message, it wakes up at the slot in which the receiver is awake.
We remark that the process of determining slot boundaries and a schedule, see Section 3.2, requires only local communication. This means nodes only need to communicate with their direct neighbors, as opposed to all nodes, in order to determine the start and end of a slot and also to learn the wake-up time of their neighbors. These design decisions thus help improve the scalability of the proposed solution, especially with respect to communication cost.
Lastly, we assume that each node is aware of its location. This can be achieved by using localization methods such as those in [31]. Note, we assume localization errors are bounded by . Also, nodes know the location of the base station, which is located at position (0, 0).

Definitions and theories
We define the transmission graph which is the maximum transmission range in the absence of interference from other simultaneous transmissions. Let r min be the length of the longest edge in the minimum spanning tree of G T . In other words, r max and r min are the maximum and minimum r such that transmission graph G T is connected, i.e., r min ≤ r ≤ r max . Let N 1 (u) denote the set of onehop neighbors of node u, i.e., should share at least one common one-hop neighbor with u and r < d(u, v) ≤ 2r.
In a distributed environment, we assume each node knows the ID, position, and active time slot of its twohop neighbors. This information can be gathered readily from any local broadcast techniques, e.g., [32,33] or [34], in the network establishment stage. Incidentally, these techniques are the first to achieve local broadcast under the SINR-based interference model. Note, in practice, the required information can be embedded in HELLO messages sent out by nodes during neighbor discovery. That is, a node ' A' only needs to include its ID and selected wake-up slot in its HELLO message. A neighbor that receives this message records the embedded information and included this in its own HELLO message. Hence, node A's information has propagated two hops. One way to schedule the transmission of HELLO messages is to use the method in [15]. Each node has a broadcast slot whereby it transmits a HELLO message and all its neighbors receive. If each node has k neighbors, in the worst case, a node needs to transmits at most two times. That is, it first transmits its own ID and selected slot. The next HELLO message is transmitted only when it has received the HELLO message from all neighbors.
A link (u, v) is defined as the transmission from sender u to receiver v, where (u, v) ∈ E T (r). Let L denote a set of links in G T . Set L is said to be independent in the SINR-based interference model if all senders in L transmit simultaneously; all transmissions can be received successfully by receivers in L. The next theorem gives the sufficient condition for L to be independent, and its proof can be found in the Appendix.

Theorem 1.
In order for set L to be independent, it is sufficient for one of the following to be true: 1. The mutual distances of senders are all greater than ρr; 2. The mutual distances of receivers are all greater than ρr.
where ρ = 1 + In practice, ρ is a small constant. Consider α = 4 and β = 1. Figure 2 indicates the relationship between r/r max and ρ. We see that when r/r max ≤ 0.8, ρ is smaller than 4.
We remark that in practice, there will be localization errors. They can be incorporated by requiring the mutual distance between nodes to be at least ρr + . Recall that is the maximum localization error. The incorporation of localization error also increases the distance between hexagons (explained later) with the same color and thereby ensuring the transmissions from nodes in these hexagons are interference free.
Tessellation is a way to partition a plane into equal (or similar) pieces. In Figure 3, we see a regular hexagonal tessellation. We assume sensor nodes are pre-programmed with this information before deployment and then using their location determine the hexagon they are in. Given this tessellation, we can now proceed to color it using  [7,12] and [10]. Without loss of generality, in this paper, we will employ the following 3k 2 coloring method when scheduling broadcast. As we will see later, the color of a hexagon will be used to achieve interference-free transmissions in Section 4.2, where nodes located in hexagons with a different color are not allowed to transmit or receive simultaneously.
We are given a natural number k and a hexagonal tessellation with a hexagon radius of r/2, where r is the transmission range in G T . Define two vectors x = (3 √ 3r/4, 3r/4) and y = (3 √ 3r/4, −3r/4). These vectors have a length of 3r/2. Repeat the following process, see Algorithm 1, for all colors; here, color is an integer in the range [ 1, 3k 2 ]; i.e., 1 ≤ color ≤ 3k 2 . Start from an uncolored hexagon with centre h and then assign all hexagons with center at h+ak x +bk y with color, where a, b ∈ Z. For instance, suppose k = 2. We need to assign the same value color to all hexagons with center h+3a x+3b y where a, b ∈ Z. This process repeats until color = 3k 2 = 12. The result of 12 coloring is shown in Figure 3. Note, h + ak x + bk y is a function of a and b; both of which can be arbitrary integers, e.g., a = 1, b = −1, if there exists a hexagon in the network with center h + ak x + bk y.
According to Theorem 1 and Lemma 1, in order to apply Algorithm 1 under the SINR-based interference model, we need to set (3k − 2)r/2 = ρr. In other words, k = 2(ρ + 2)/3 . Based on the transmission graph G T , a hexagon is said to be covered by a node v ∈ V T , if and only if node v's neighbors are in the said hexagon, excluding v. To distinguish nodes on the edges of hexagons, we assume each hexagon is left half open and right half close, with the topmost node included and the bottommost node excluded.

Problem formulation
where each B i (respectively, R i ) is the set of nodes that send (respectively, receive) the message at time slot t i + k i T, where t i is the active time slot of nodes in R i . Given a wireless network with duty cycle and a source node s ∈ V , the broadcast problem is to find a forwarding schedule, that satisfies the following constraints: (i) each node v ∈ B i must have been in R j , with j < i; that is, node v must receive the message before it sends, (ii) all transmissions from set B i to R i must be interference free under SINR-based interference model, (iii) m i=1 R i = |V | and t m + k m T − (t 1 + k 1 T) is minimum. In other words, find an interference-free broadcast schedule that guarantees all nodes in V receive the broadcast message interferencefree in minimum time.

A distributed broadcast scheduler
We now present our distributed hexagon broadcast scheduling algorithm (HBA). We first describe HBA followed by our theoretical analysis confirming its O(1)approximation ratio in terms of broadcast latency.

Broadcast structure
HBA starts by constructing a broadcast structure T b before using the color of hexagons to derive a broadcast schedule such that nodes located in hexagons with a different color are not allowed to transmit or receive simultaneously.
Firstly, we describe the construction of T b ; see Algorithm 2 for details. Each node first tessellates the network into equal hexagons with a radius of r/2 and then gives a 3( 2(ρ + 2)/3 ) 2 coloring to all hexagons (lines 5 and 6 in Algorithm 2). Note, as the radius of each hexagon is r/2, the maximum distance in each hexagon is r; that is, nodes located in the same hexagon are one-hop neighbors of each other.
Tessellate the plane into equal hexagons with radius r/2, one of which is centered at (0, 0) 6: Apply Algorithm 1 to color all hexagons by setting k = 2(ρ + 2)/3 7: Mark all hexagons as uncovered 10: while H 2 (v) = ∅ do 11: u ← a node in H 1 (v) covering most uncovered hexagons (break ties based on smaller ID) 12: for each uncovered hexagon covered by u do 13: w ← a node with smallest ID among nodes in this uncovered hexagon and N 1 (u) 14: Mark this uncovered hexagon as covered 17: end for 18: end while 19: end for 20 Next, based on two-hop neighbors information, node v places into set H 1 (v) neighbors that are in the same hexagon as itself and adds into set H 2 (v) nodes in the other hexagons that are the one-hop neighbors of nodes in H 1 (v) (lines 7 and 8 in Algorithm 2). Note that set H 1 (v) includes node v. Since nodes in H 1 (v) are one-hop neighbors with each other and they are aware of two-hop neighbors information, nodes in the same hexagon will produce the same H 1 and H 2 sets.
To reduce the number of transmissions, HBA selects a set of nodes from H 1 (v) that covers all neighboring hexagons containing a neighbor; i.e., the selected nodes are neighbors of nodes in H 2 (v). Ideally, we want the chosen set to have a small cardinality. Specifically, HBA, applies line 9 to 18 in Algorithm 2 to produce the broadcast structure where V b contains nodes used to relay broadcast messages, i.e., providers and receptors, and E b indicates the set of links between a provider and its corresponding receptor. Here, provider is a node selected from H 1 (v) and is used for relaying a broadcast message to its corresponding receptors; while a receptor is a node chosen from set H 2 (v) and is used to transmit a broadcast message to all other nodes in its hexagon.
Initially, HBA marks all hexagons as uncovered and then repeats the following iterations until H 2 (v) is empty. It first picks a node u ∈ H 1 (v) that covers the most uncovered hexagons (line 11 in Algorithm 2), and labels u as a provider. The next step is to select one corresponding receptor of u from each uncovered hexagon. Specifically, for each uncovered hexagon, HBA will choose as the corresponding receptor a node w with the smallest ID among nodes in N 1 (u); see line 13 in Algorithm 2. Then, it includes link (u, w) in the set E b and removes nodes in H 1 (w) from H 2 (v), i.e., H 2 (v)\{H 1 (w) ∩ H 2 (v)} (lines 14 and 15 in Algorithm 2). It then marks the uncovered hexagon as covered. Note, provider u and its corresponding receptor w are located in different hexagons, and provider u (respectively, receptor w) has only one corresponding receptor w (respectively, provider u) in the hexagon including w (respectively, u).
After the execution of Algorithm 2, we have the broadcast structure T b , where V b contains providers and receptors, and E b indicates the link of a provider and its corresponding receptors.
We now use Figure 4 as an example to illustrate the operation of Algorithm 2. We only consider the broadcast structure of the hexagon with color 5. Recall that nodes in the same hexagon produce the same broadcast structure T b . Hence, in the following description, we illustrate Algorithm 2 from the perspective of node v 1 . It starts by constructing the set H 1 (v 1 ) and H 2 (v 1 ) based on its two-hop neighbors information. We thus have H 1 (v 1 ) = Node v 1 is first selected as the provider from H 1 (v 1 ) as it covers the most uncovered hexagons, i.e., hexagons with node v 4 , v 5 , v 6 , and v 10 . Next, node v 4 , v 5 , v 6 , and v 10 are selected as the corresponding receptors of v 1 and are removed from  Figure 4. For the hexagon with color 5, the set of providers is {v 1 , v 2 , v 3 }.
The aforementioned T b construction process yields the following property. Figure 3, for a given hexagon H with radius of r/2, it has at most 18 hexagons around it with a minimum distance less than r; that is, nodes in H can cover at most 18 hexagons. Hence, this lemma holds.

Broadcast scheduling
In this section, we describe the protocol used to broadcast a message from the source node s to all other nodes in G T , see Algorithm 3. for each hexagon H assigned to frame F i do 8: w ←NIL 9: for t ← 1 to T do S p (t) ← u | u is a provider with m and yet to send m to its receptor v ∈ S r (t)} 12: Node w sends an ACK at AF of F 1 i (t) 13: S p (t) sends a REQUEST at the sub-time slot allocated by H among BF of F 1 i (t) 14: v ∈ S r (t) sends an ACK after receiving a REQUEST from its provider u ∈ S p (t), if v has not heard an ACK from other receptors in H 15: Node u sends message m to v ∈ S r (t) at F 2 i (t) 16: w ← v Node w broadcasts message m in F 3 i 20: end for 22: Lat ← Lat + 3T and i ← (i + 1) mod 3k 2 23: end while HBA schedules the transmission of nodes in G T in two phases. In phase 1, the algorithm only considers nodes in V b . Specifically, for each hexagon, denoted by H, HBA schedules the transmisison from a provider u to its corresponding receptor v in H, where (u, v) ∈ E b . In phase 2, HBA allows a receptor v in H to transmit a broadcast message received in phase 1 to all other nodes in H. Furthermore, HBA schedules all tranmissions based on hexagons' color, where those with a different color are not permitted to transmit or receive simultaneously.
We divide time into different frames. A hexagon with the color value of i is assigned to the ith frame, denoted by F i , where 1 ≤ i ≤ 3k 2 ; recall that 3k 2 is the number of colors used by Algorithm 1. As shown in Figure 5a, each frame F i consists of three sub-frames, i.e., F 1 i , F 2 i , and all other nodes in H. Specifically, phase 1 is conducted in F 1 i and F 2 i , and phase 2 is carried out in F 3 i . Let c be the color of the hexagon containing source node s. Therefore, node s initiates the broadcast by transmitting a message m to all nodes in its hexagon in frame F c . After that, HBA, see Algorithm 3, starts from frame F i , where i is initially set to (c + 1) mod 3k 2 ; that is, it starts from the next frame of F c (line 4 in Algorithm 3). Then, HBA repeats the following iterations until all nodes in the network receive the broadcast message.
In phase 1, for each hexagon H assigned to frame F i , i.e., they have color i, let S r (t) denote the set of receptors in H with active time slot t, and S p (t) denotes the set of providers that have received broadcast message m before but have yet to send m to their corresponding receptors in S r (t) (lines 10 and 11 in Algorithm 3), where 1 ≤ t ≤ T. Recall that these providers will have to wake up at time t to communicate with the receptors in S r (t). Let F 1 i (t) be the time slot t of sub-frame F 1 i , where 1 ≤ t ≤ T. Denote by w a receptor in H that received a REQUEST message from its corresponding provider before F 1 i (t), and w is initially set to null. For any receptor v ∈ S r (t), v first listens to the channel for an ACK message from a receptor w when it wakes up at time slot F 1 i (t) (line 12 in Algorithm 3). This ACK is sent in the AF slot; see Figure 5b. Then, for any provider u ∈ S p (t), it will send a REQUEST message to its receptor v ∈ S r (t) asking it to receive a broadcast message in sub-frame F 2 i (line 13 in Algorithm 3). When receptor v receives the REQUEST message from provider u, if v has not received any ACK message from other receptors in H, node v replies with an ACK message to u. Otherwise, it does not respond to REQUEST messages (line 14 in Algorithm 3). As shown in line 16 of Algorithm 3, the selected receptor v is assigned to w, and it is responsible for sending an ACK message in subsequent AF slots in F 1 i (t) (line 12 in Algorithm 3). This ensures all nodes waking up in subsequent slots are aware that a w node is available and thus stop responding to REQUEST messages.
We now discuss how providers in S p (t) transmit their REQUEST message in an interference-free manner. For each time slot in F 1 i (t), we further divide it into two parts, AF and BF; see Figure 5b. As mentioned earlier, AF is used by receptors in S r (t) to listen to the channel for an ACK message and for node w, if present, to transmit an ACK. The second part, namely BF, is divided into 18 sub-time slots, which is equal to the number of hexagons around H that have a minimum distance less than r; cf. Lemma 2. We allocate these 18 sub-time slots to these neighboring hexagons according to their ID or color. Hence, a provider u ∈ S p (t) is only able to send a REQUEST message to its corresponding receptor v ∈ S r (t) in the sub-time slot corresponding to its hexagon. A receptor v is then required to reply with an ACK message in the same sub-time slot. As shown in Figure 5b, we assume each sub-time slot is sufficient to receive a REQUEST message and transmit an ACK message for receptor v.
During time slot t of sub-frame F 2 i , denoted by F 2 i (t), where 1 ≤ t ≤ T, the broadcast message m is transmitted from the provider u to receptor v with active time slot t (line 15 in Algorithm 3). Note, only one provider u is selected in F 1 i to relay the broadcast message in sub-frame F 2 i to hexagon H. In phase 2, after receiving the broadcast message m, receptor v will broadcast message m to all other nodes in the same hexagon as v, i.e., H, in sub-frame F 3 i . The broadcast is carried out when these nodes wake up (line 19 in Algorithm 3). Finally, HBA updates i to (i + 1) mod 3k 2 and repeats the above steps until all nodes receive the broadcast message m.
We now illustrate the operation of Algorithm 3 using Figure 4. Consider the hexagon with color 8. Assume receptors v 6 , v 11 , and v 12 have the same active time slot of t, and their corresponding providers, v 1 , v 13 , and v 14 , have received a broadcast message m, which it has yet to send to v 6 , v 11 , and v 12 . Hence, as per Algorithm 3, we get S r (t) = {v 6 , v 11 , v 12 } and S p (t) = {v 1 , v 13 , v 14 }. Nodes in S r (t), which are in hexagon 8, execute Algorithm 3 in frame F 8 . In the AF sub-time slot of F 1 8 (t), receptors in S r (t) listen to the channel for an ACK message. Suppose that no ACK message is sent at AF by a node w. Also, in this case, we assume that the transmitting order of providers is v 1 , v 13 , and v 14 . As mentioned, the sub-time slots in BF can be assigned as per hexagon ID or color. In this example, provider v 1 first sends a REQUEST to v 6 . On receiving this REQUEST, v 6 replies with an ACK immediately. After receiving this ACK from v 6 , provider v 1 knows receptor v 6 is ready to receive the broadcast message m and will transmit m to v 6 in sub-frame F 2 8 . Other receptors, namely v 11 and v 12 , will also receive the ACK from v 6 , meaning they will not respond to any REQUEST from their respective provider; i.e., v 13 and v 14 provider v 1 sends m to v 6 . In sub-frame F 3 8 , receptor v 6 broadcasts m to nodes v 11 and v 12 .

Distance-based backoff
Recall that the BF portion of F 1 i (t) is divided into 18 sub-time slots. A possible optimization to shorten BF is by employing a distance-based backoff method. When a provider wants to send a REQUEST message, it first backs off for a period of time. This backoff duration depends on the distance between the provider and the hexagon containing its corresponding receptor. The smaller the distance, the shorter the backoff duration. Specifically, assume that a network operator decides to reduce the BF duration to T backoff . This so called backoff time bound can be divided into W ≤ 18 sub-time slots. Note, each sub-time slot is sufficient for transmitting an ACK and receiving a REQUEST message. Let d be the distance between a provider u and the centre of hexagon H containing u's receptor. We get d ≥ √ 3r/4 because u is not included in H, and the distance between H's edge and H's centre is √ 3r/4. Denote by q the ratio between √ 3r/4 and d, i.e., q = √ 3r 4d , where q ≤ 1. For provider u, it computes its backoff duration t backoff using the following equation, where X is random period of the time generated from the range − T backoff W , T backoff W for 1 ≤ W (1 − q) ≤ W −1 and from range 0, T backoff W for W (1 − q) = 0. The random value X reduces the chance of interference when two or more providers have the same q.

Analysis
The following set of theorems assert the correctness and approximation ratio of HBA in terms of broadcast latency and transmission times.

Theorem 2. HBA yields a correct and interference-free broadcast schedule.
Proof 2. According to Theorem 1, transmissions are interference free as long as the mutual distance between transmitters or receivers is larger than ρr. Hence, we only need to prove that simultaneous transmissions carried out by HBA are separated by ρr.
Recall that in G T , by design, the mutual distance between hexagons sharing the same color is larger than ρr. Theorem 3. HBA produces a constant approximation for the MLBS problem with a ratio of 9 2(ρ + 2)/3 2 T in terms of broadcast latency. Proof 3. The theoretical lower-bound of the MLBS problem is R, i.e., the radius of the network with respect to the source node s. To compare the broadcast latency of HBA algorithm with the theoretical lower-bound R, we consider the BFS tree of the transmission graph G T rooted at s. This tree divides the network into layers L 1 , L 2 , · · · , L R . Let t i denote the maximum reception time of nodes in L i , where 1 ≤ i ≤ R. Then, we prove for each layer L i , we have t i ≤ t i−1 + 9 2(ρ + 2)/3 2 T. We prove this by induction. L 1 only contains source node s, and thus t 1 = 0. Nodes in L 2 are the one-hop neighbors of s. Thus, for L 2 , it holds true because it takes a frame, i.e., 3T, for node s to broadcast the message m to L 2 , i.e., t 2 = t 1 + 3T. Then, we also prove this is true for layer i, where 3 ≤ i ≤ R. Recall that nodes in L i are the one-hop neighbors of L i−1 . After t i−1 , receptors in L i will take at most 3 2(ρ + 2)/3 2 frames to get the message m from providers in L i−1 and broadcast m to other nodes in L i , where 3 2(ρ + 2)/3 2 is the maximum color number used by Algorithm 1. Note, a frame contains 3T time slots. Thus, for each layer L i , t i ≤ t i−1 +9 2(ρ + 2)/3 2 T. After (R−1)3 2(ρ + 2)/3 2 frames, nodes in L R will receive the broadcast message m. Hence, the broadcast latency of HBA is upper-bounded by (R − 1)9 2(ρ + 2)/3 2 T < 9 2(ρ + 2)/3 2 TR.

Evaluation
In this section, we outline the research methodology used to evaluate the performance of HBA. In our experiments, we measure each algorithm against two metrics: broadcast latency and number of transmissions. In our experiments, we fix α = 4, β = 1 and r max = 100 m. We place wireless nodes in a square area of 700 × 700 m 2 randomly, while changing the number of nodes, transmission range r, and scheduling period T. In addition, we ensure that the resulting WSN is connected. For each experiment, we change one network configuration while the other two remain unchanged. Each experiment is conducted on 50 randomly generated topologies. Moreover, for each topology, we run the algorithms ten times; for each run, we select a source node uniformly and randomly. Hence, each result is an average of 50 × 10 simulation runs.

Performance of HBA
In Figure 6a,b, we delineate the broadcast latency and number of transmissions for different number of nodes, respectively. The value of r is fixed at 50 m, and T is set to 10. As shown in Figure 6a, we see that the broadcast latency of HBA decreases as the number of nodes increases. The reason is as follows. For a fixed area, the network becomes denser when the number of nodes becomes larger. As a result, when the network becomes denser, there are more links and path lengths become shorter. However, we observe that the number of transmissions increases with higher number of nodes in Figure 6b. The reason is that more hexagons will be filled with nodes when the number of nodes becomes larger, and hence, more transmissions are required to propagate the broadcast message to these hexagons. Figure 6c,d shows the performance of HBA under different r/r max , where r is the transmission range in G T , and r max is the maximum transmission range with a fixed value of 100 m. In this experiment, the number of nodes is fixed to 400, T is set to 10, and r ranges from 50 to 90 m. As shown in Figure 6c, the broadcast latency decreases when r ranges from 50 to 80 m. This is because a larger transmission range r leads to more links and higher connectivity. As a result, HBA is able to find shorter broadcast paths. On the other hand, according to Theorem 1, a larger r also prevents more nodes from transmitting simultaneously, which will result in longer broadcast paths. Hence, when the transmission range r exceeds 80 m in Figure 6c, the broadcast latency starts to increase. We see that in Figure 6d the number of transmissions decreases with increasing r. This is because the number of hexagons used to cover the network becomes smaller when r becomes larger. Hence, there are fewer transmissions when r is large. Figure 6e,f depicts the performance of HBA for different scheduling periods T. The value of T ranges from 5 to 25 (r = 50 m and the number of nodes is set to 400). Note that the broadcast latency and number of transmissions increase with higher T values. A larger T will result in larger frames and thereby leads to higher broadcast latency. Consequently, for each hexagon, a receptor needs to transmit more times to its neighbors with different active time slots.

Performance of HBA versus tree-based algorithm
In this section, we compare HBA against the tree-based algorithm [7] for always-on networks. Recall that the tree-based algorithm [7] is the first centralized method designed for always-on networks under SINR-based interference model. In this respect, we note that HBA is the first distributed algorithm designed for duty-cycle networks under the SINR-based interference model. In order to compare HBA faithfully against the tree-based algorithm [7], the scheduling period used by HBA is set to 1, i.e., T = 1, meaning HBA also works in the always-on mode.
As shown in Figure 7a, the broadcast latency of the treebased algorithm is around two times larger than that of HBA. This is mainly because the tree-based algorithm is conducted layer by layer based on the BFS tree and nodes in lower layers are prevented from transmitting until all nodes in the current layer have finished their transmissions even though these transmissions do not cause any interference; instead, transmissions in HBA is handled in a greedy manner, which allow nodes to transmit as long as they do not result in interference. In addition, we observe that the number of transmissions experienced by a b c d e f nodes using HBA is about 50% more than that of the treebased algorithm. This is because the tree-based algorithm determines the transmitting nodes in the maximum independent set centrally. This, however, does not consider the cost of requiring all nodes to synchronize their wake-up schedule and collating such information centrally.

Conclusions
In this paper, we have studied the minimum latency broadcast scheduling problem in duty-cycled WSNs. To achieve interference-free broadcast, we designed a novel algorithm, called HBA, for nodes that employ a random duty-cycle schedule. We prove that HBA provides a correct and interference-free schedule, produces a low broadcast latency, and has low overheads. Our simulation results show HBA to have better performance in terms of broadcast latency than the tree-based algorithm [7]. As a future work, we are currently looking into implementing HBA in the more realistic and probabilistic interference model where a message can be received successfully with varying probability as per SINR levels.
Endnote a A ρ-approximation algorithm, with approximation ratio ρ > 1, if given a problem instance I to minimize and with optimal solution OPT(I), produces a solution that is bounded by ρ · OPT(I). concentric rings ring k with width ρr. Ring ring k contains all senders w of links in L satisfying kρr ≤ d(w, u) < (k + 1)ρr. The first ring ring 0 only contains sender u. We now consider all senders w ∈ ring k for some integer k > 0.