An Adaptive, Anycast MAC Protocol for Wireless

0 downloads 0 Views 281KB Size Report
that the maximum duty-cycle of these forwarding nodes is locally minimized .... channel for activities, analogous to the Low Power Listening. (LPL) approach in ...
A2-MAC: An Adaptive, Anycast MAC Protocol for Wireless Sensor Networks Hwee-Xian Tan and Mun Choon Chan Department of Computer Science School of Computing National University of Singapore {hweexian, chanmc}@comp.nus.edu.sg

Abstract—Energy constraints in wireless sensor nodes necessitate the design and development of energy-efficient MAC protocols to arbitrate access to the shared communication medium. While there exists a plethora of sensor MAC protocols, these protocols do not individually vary each sensor node’s duty-cycle according to local connectivity status to maximize energy savings. In this paper, we propose A2 -MAC - an Adaptive, Anycast MAC protocol for low-powered wireless sensor networks. In this protocol, each node wakes up independently and randomly within a duty-cycle. In addition, it adopts an anycast mechanism so that a node can transmit to any member in its forwarding set. There are 2 key mechanisms in A2 -MAC. First, each node adaptively varies its duty-cycle and set of forwarding nodes such that energy consumption can be locally minimized for a given local delay performance objective. Second, nodes cooperatively reduce the duty-cycles required depending on local network connectivity. By allowing nodes to operate with different duty-cycles depending on a local delay constraint and neighborhood connectivity status, A2 MAC is able to extend node lifetime substantially while providing good end-to-end delivery latency. Performance evaluation shows that A2 -MAC has much better energy-latency trade-off than X-MAC [1]. In terms of network lifetime, measured in terms of number of connected nodes over time, A2 -MAC substantially outperforms X-MAC and the optimal protocol in [2] where all nodes use the same duty-cycle.

I. I NTRODUCTION Advancements in wireless networking and technology have led to the proliferation of tiny computing and sensing devices which are capable of performing collaborative tasks such as tactical surveillance, environmental monitoring, intrusion detection and automation. These network elements are usually densely deployed to maximize sensing coverage and communicate with one another via multi-hop wireless links without centralized control. However, the inherent nature of wireless sensor networks, such as transient physical layer characteristics, intermittent connectivity, node failures and energy constraints, poses challenges to their successful deployment and operation. In particular, the severe energy limitation of sensor nodes has received much focus in the research community. To reduce energy consumption and prolong overall network lifetime, sensor networks are usually duty-cycled - each node wakes up and remains active only for a short period of time, and switches to low-power sleep mode for the rest of the time in order to conserve energy. The Medium Access Control (MAC) layer is responsible for arbitrating access to the shared

wireless medium in a fair and efficient manner. Typically, sensor MAC protocols incorporate periodic synchronous or asynchronous wakeup schedules into the medium access control operation, such that nodes need not monitor the channel continuously to receive data packets. Performance studies [1][3][4][5][6][7][8][9] have shown that while wakeup schedules are effective in reducing energy consumption in sensor networks due to the sporadic characteristics of sensor traffic, the delay incurred by waiting for the next-hop forwarding node to be awake, also called sleep latency, can be quite large. For example, a 1% duty-cycle could potentially reduce the energy consumption of a network by 99% when no traffic is being generated. However, the expected per-hop sleep latency of a packet is 50% of the cycle period, which can be up to a few seconds or more. The wakeup schedule is one of the key components in the design of a duty-cycled MAC. While synchronous schemes such as S-MAC [3][4], T-MAC [5], D-MAC [6] and RMAC [7] reduce energy consumption, these schemes require nodes to synchronize with each other, which can be complex and expensive especially in large multi-hop networks with clock drifts, low duty-cycles and packet loss. Reduction in sleep latency is thus achieved at the expense of substantial control overhead. On the other hand, asynchronous schemes such as B-MAC [8], X-MAC [1] and C-MAC [9] rely on preambles to coordinate access to the channel and do not require synchronization. Such schemes are energy-efficient for low duty-cycles but may result in long sleep latencies due to their asynchronous nature. In this paper, we propose A2 -MAC, an asynchronous MAC protocol for low-power and low duty-cycle wireless sensor networks. A2 -MAC utilizes a random wakeup schedule, adaptive anycast forwarders selection and adaptive duty-cycles based on the network topology. By using a random schedule, each node in A2 -MAC randomly and independently selects its wakeup schedule without the need for coordination and time synchronization. There are two key ideas in A2 -MAC. First, each node chooses its set of forwarding nodes such that the maximum duty-cycle of these forwarding nodes is locally minimized for a given delay performance objective. Second, nodes cooperatively reduce the duty-cycles required on their forwarding nodes whenever possible. The extent of

2

such reduction depends on local neighborhood connectivity. The primary difference between A2 -MAC and existing protocols is that A2 -MAC exploits the redundancy of a dense sensor network deployment. Each node is allowed to operate with a different duty-cycle according to the topology of its neighboring nodes and a local delay constraint. We compare A2 -MAC with X-MAC and the optimal protocol presented in [2] (hereafter referred to as opt-MAC for brevity) whereby all nodes use the same duty-cycle. In terms of energy-delay trade-off, our evaluation shows that A2 -MAC achieves much better energy-latency trade-off than the two other protocols. In terms of network lifetime, measured in terms of number of connected nodes over time, A2 -MAC also significantly outperforms opt-MAC [2] and X-MAC. The rest of this paper is organized as follows. Section II discusses related work. In Section III, we provide details of the basic components of A2 -MAC. Determination of forwarders and duty-cycles of A2 -MAC are explained in Section IV. Performance evaluation is presented in Section V. We conclude in Section VI. II. R ELATED W ORK In the pioneer work on sensor MAC protocols, Ye et al [3] identifies the main sources of energy consumption in any contention-based MAC protocol as: (i) collision; (ii) overhearing; (iii) control packet overhead; and (iv) idle listening. In particular, it is highlighted that nodes in a sensor network without energy awareness will expend most of their energy in idle listening due to the sporadic nature of the network traffic. Consequently, subsequent works on sensor MAC protocols have always incorporated some form of wakeup scheduling such that nodes do not remain awake throughout the entire network lifetime but wakeup at intervals for communication and to check for channel activity. Wakeup mechanisms can be broadly classified as: (i) ondemand; (ii) synchronous; and (iii) asynchronous. Sensor MAC protocols that make use of on-demand wakeup mechanisms [10] require out-of-band signaling (using a low power radio) in order to wake up the nodes in time for data reception. Synchronous wakeup schemes such as S-MAC [3], SMAC/AL [4], T-MAC [5], D-MAC [6] and R-MAC [7] are also known as scheduled rendezvous schemes - nodes wakeup during the same designated time slots for communication. Idle listening is greatly reduced since nodes will wake up and communicate only during the pre-assigned slots. However, tight time synchronization and pre-negotiation of schedules are necessary, which incurs high overheads. In [11], the authors formulate wakeup scheduling as a graph problem. For an arbitrary communication pattern, they assert that the schedule to minimize end-to-end delay is in general NP-hard. Heuristics are presented and used to obtain optimal schedules for the tree and ring topologies. In [12], a multiple-parents, synchronized schedule with multiple ladder schedules similar to D-MAC is presented to reduce latency for communications in data gathering and dissemination traffic patterns.

In asynchronous wakeup schemes such as B-MAC [8] and X-MAC [1] the schedules of the sender(s) and the receiver(s) are decoupled, thereby removing the need for any synchronization. Nodes wake up periodically to check for any channel activity - a technique commonly known as LPL (Low Power Listening). If channel activity is detected, the node remains awake to receive the incoming packet; otherwise, the node resumes sleeping. These asynchronous MAC protocols are unicast in nature and use the same duty-cycle for each node. Anycast MAC schemes, whereby a transmitting node sends a packet to any one of the members within a forwarding set, have also been proposed in the context of sensor networks. C-MAC [9] is one such asynchronous MAC protocol. More recently, Kim et al [2] presents opt-MAC, which is shown to perform better than C-MAC, and is an anycast forwarding scheme that combines MAC and routing functions to jointly optimize sleep-wake scheduling (wakeup probability). In optMAC, network lifetime is defined as time to first node failure. A key difference between these two protocols (opt-MAC and C-MAC) and A2 -MAC is that the latter varies dutycycles on a per-node basis, while the two protocols use the same duty-cycle for all nodes. As a result, A2 -MAC can achieve better energy-latency trade-offs. In addition, while opt-MAC can achieve slightly longer times to the first node failure with utilization of end-to-end connectivity information, significantly larger proportion of the nodes remain connected in A2 -MAC over time, even though only local information is used. In sensor networks where there is often sufficient node redundancy, we believe that the number of connected nodes over time is a more useful network lifetime measure than time to first node failure. Finally, [13] studies the impact of unreliable communication links on data forwarding in duty-cycled networks. With low duty-cycles, link quality measurements performed previously are likely to be outdated. The next-hop is selected from a candidate forwarding set and the metric can be used to minimize the expected delivery ratio, end-to-end delay or energy consumption. One interesting result as claimed by the authors is that opportunistic looping can potentially reduce the overall delay. However, ways to design the wakeup schedule or adapt the duty-cycle are not presented, but assumed to be given inputs to the problem. III. P ROTOCOL D ETAILS In this section, we detail the basic components of A2 -MAC, viz. random wakeup schedule, anycast MAC mechanism and interaction with the routing protocol. The key components, namely adaptive forwarding set and adaptive duty-cycle selection, will be presented in Section IV. A. Basic Mechanism The wakeup schedule of A2 -MAC is based on a slot model. It is important to highlight that it is not necessary to synchronize the slots among different nodes, as the slots are only meaningful locally and the interactions among nodes are based on an asynchronous model. Within each cycle, each node

3

S ... 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 f1 f2

7 8 9

0 1 2 3 4 5 6 7 8 9

3 4 5 6 7 8 9

0 1 2 3 4

0 1 2 3 4 5 6 7 8 9 0 inactive (sleep) slot

2ms

active (listening) slot

(a) (10, 1, 2ms) random wakeup function with 3 unsynchronized nodes. t0

t1

t2

t3

t4

t5

t6

t7

t8

Packet arrival @ slot t 3 of S S

P

P

P

P

DATA

f1 wakes up @ slot t 2 of f1 AP

f1 t7

t8

t9

t0

t1

t2

t3

AD t4

inactive (sleep) mode active (listening) mode

(b) Data transfer in Fig. 1.

A2 -MAC

between 2 unsynchronized nodes.

Random wakeup schedule of A2 -MAC

divides its schedule into active (listening) and inactive (sleep) slots. During active slots, nodes wakeup and monitor the channel for activities, analogous to the Low Power Listening (LPL) approach in asynchronous MAC protocols such as BMAC and X-MAC. The remaining slots are inactive, where the node switches to low-powered sleep mode by default. We consider a random wakeup scheduling function, which can be represented as a (v, α, τ ) design, where v is the total number of slots in each cycle (which should be chosen to achieve a sleep latency constraint); α ≤ v is the number of active listening slots in each cycle; and τ is the duration of each slot in the duty-cycle. Each cycle length is hence given by v.τ . At the beginning of each cycle, each node randomly selects α out of v slots to be active in; thus, the probability that a node is active in any slot (awake probability) is αv . Compared to a synchronous schedule such as S-MAC, the number of active one-hop neighbors during an arbitrary active time slot in A2 -MAC is reduced (by a fraction of 1 − αv ), which effectively minimizes collisions and reduces overhearing. Figure 1(a) illustrates an instance of the (10, 1, 2ms) random wakeup function, whereby nodes S, f1 and f2 each randomly selects an average of 1 out of 10 available slots within a cycle to be active in. Note that in the example given, the slots of each node are unsynchronized with one another. These randomly selected active slots may change during each cycle and the schedule of each node is chosen randomly and independently of other nodes. No communication overhead is required to coordinate and synchronize the wakeup schedules. As we will explain later, this decoupling of schedules between the transmitter and receiver nodes also allows nodes to adapt their duty-cycles with greater ease. As the default active slots of each node are unlikely to overlap, in particular, when the duty-cycle is low, A2 -MAC utilizes a probing mechanism to guarantee communication

between the transmitter node and its next-hop forwarder (if one exists) within a single cycle period. In Figure 1(b), source node S wakes up at slot t1 according to its wakeup function in Figure 1(a) and resumes sleeping during slot t2 as it does not have any data to send. When a packet arrives at S at slot t3 , it switches to active (listening) mode and starts to probe its neighbors using short preambles P in every subsequent slot after the packet arrival, until it receives a preamble acknowledgement AP at slot t6 from its next-hop forwarder f1 that has woken up. Transmission is complete when S transmits the data packet to f1 during slot t7 and receives a corresponding data acknowledgement AD in slot t8 . The probing for active neighbors using preambles does not incur additional delays or overheads as compared to existing asynchronous MAC protocols, as all such protocols have to transmit preambles for up to the duration of a cycle period to guarantee transmission between any two nodes. When multiple forwarders wake up and detect preamble P at the same time, there may be a collision of AP s. When such a collision occurs, each forwarder will backoff for an interval randomly chosen between 0 and τ2 before retransmitting its AP . As the network duty-cycle (and traffic load) are expected to be low, the probability of collision will be low as well. For example, even when the average node density is 40 (very high node density) and the duty-cycle is 0.01 ( αv ), the collision probability in a single slot is about 9% 1 . When there is only one forwarding node, A2 -MAC behaves similarly to X-MAC. B. Advantages of Combining Anycast with Random Schedules While anycast has been applied in a number of sensor network protocols [9][14][15], they are mainly used to improve path diversity and provide multiple path routing. In C-MAC [9], the protocol in fact converges to an “optimal” unicast path over time. We argue that the anycast mechanism should be retained because, when combined with a properly designed (random) schedule, anycast provides advantages such as better robustness to intermittent link connectivity and reduction of end-to-end latency in a duty-cycled MAC. 1) Robustness to Intermittent Link Connectivity: Due to the transient nature of physical layer effects such as shadowing and fading, communication links between nodes in the network are often time-varying and unpredictable. This may cause the MAC layer to attempt multiple retransmissions across the same temporally-broken link before a link failure is ascertained and an alternative routing path is utilized (if any). Using an anycast mechanism, the node can select its forwarding node dynamically based on prevailing link conditions and application requirements. This achieves load balancing (especially if the next-hop node is an intermediate node for many routes), alleviates the effects of temporary link failures, as well as improves the delay and efficiency of the network. In addition, with a random schedule that distributes the availability of for1 As node density increases, the required duty-cycle decreases for a maximum delay bound. Section IV-B and Figure 4 detail the relationship among duty-cycle, number of forwarders (neighbors) and maximum delay bound.

4

warding nodes over time, the anycast mechanism can recover better from fading at the physical layer. 2) Reduction in Latency: As schedules are asynchronous and randomized, a packet can be transmitted across multiple hops in a single cycle with v time slots, in contrast to scheduled rendezvous schemes such as S-MAC [3] and R-MAC [7], whereby active slots are congregated together. Considering the (10, 1, 2ms)-design as shown in Figure 1(a), a packet can be transferred from node S to f1 in time slots t5 and t6 (of S), and node f1 to f2 at time slots t6 and t7 (of f1 ). While the number of transfers performed in each cycle will vary, it is highly likely that there will be a transfer of at least 2 hops in one cycle, resulting in lower end-to-end delay in A2 -MAC. Since the active listening slot positions in a cycle length are randomly chosen, the average waiting time (or sleep latency) Ti (measured in slots) of an arbitrary node i before one of its forwarders is awake is dependent on v and α, computed by: v Ti = P (1) j∈Fi αij + 1 where Fi is the forwarding set of node i; and αij is the awake probability (or duty-cycle) of each forwarder j ∈ Fi . C. Interaction with Routing Protocol A2 -MAC does not specify a particular routing protocol. Instead, what it needs from a routing protocol are: (1) a set of candidate forwarding nodes; and (2) a metric that indicates the progress that can be made if a particular forwarding (next-hop) node is selected. Such “progress” based routing metrics are very common and examples include hopcount to destination, geographical distance [15] and expected number of transmissions (ETX) [16]. To be concrete, we use the Maximum Forward Progress (MFP) [17] routing metric, which forwards packets based on the geographical locations of the nodes. Each node is assumed to have the location of the sink(s) and its own location, which can be obtained via GPS (Global Positioning System) or existing localization schemes. The preamble transmitted by a node contains both the locations of itself and the sink. This enables each one-hop neighbor to determine its eligibility in forwarding the packet to the destination. Upon receiving the preamble, each neighbor computes its geographical distance to the specified sink. Only neighbors with positive progress (closer to the sink than the transmitting source) are considered eligible forwarders. As no state information is required in MFP, this allows us to study the performance of A2 -MAC without routing overheads. IV. A DAPTATION IN A2 -MAC The key idea in A2 -MAC lies in its adaptive selection of the forwarding set and duty-cycle for each node. In Section IV-A, we present details on how the selection is performed, subject to a constraint on the rate of progress; in Section IV-B, we explain how the duty-cycle of each node should be set so that the maximum sleep latency is bounded. Finally, the ideas are put together in the adaptation algorithm in Section IV-C.

A. Forwarding Set and Duty-Cycle Selection The candidate set ℵi of an arbitrary node i is the set of onehop neighbors with positive progress towards the destination (sink). ℵi can be learnt via a simple neighbor discovery scheme during network initialization. In addition, a node i is considered to be an upstream node of j if packets are forwarded from i to the sink via j. For each candidate node j ∈ ℵi , we use dij to denote the progress made by i when it transmits its packet to the sink via j and αij ∈ (0, v] to denote the duty-cycle that is required of j by its upstream node i (in a cycle with v slots). The forwarding set Fi ⊆ ℵi is the set of neighbors in the candidate set which are selected to forward packets from i to the sink. The average progress made per hop Di is computed as: P j∈F (dij αij ) Di = P i (2) j∈Fi αij and the average rate of progress Vi is: Vi =

Di Ti

(3)

Let the minimum per-hop rate of progress needed to satisfy a desired delay constraint dmax be Vmin . This value can be derived by dividing the maximum “distance” from any node to the sink by dmax . To meet the rate of progress constraint, Fi and the associated duty-cycles should be chosen such that Vi ≥ Vmin . Generally, the inclusion of more forwarders will lead to a decrease in Ti . However, the inclusion of forwarders with small progress (low dij ) may decrease the average perhop progress and subsequently the rate of progress Vi . The objective of the selection process is to find the set of forwarders and their associated duty-cycles such that the largest duty-cycles among the forwarders is minimized while meeting progress constraint. We first present two Lemmas that are useful in the selection process. Lemma 1: Let the set of candidate nodes ℵi of node i be sorted in descending order of progress from 1 to |ℵi |. The optimal set of forwarders Fopt(i) ⊆ ℵi that minimizes maxj∈ℵi αij is the first ni forwarders with the largest progress. Proof: We prove Lemma 1 by contradiction. Suppose one of the forwarders in Fopt(i) is not one of the ni forwarders with the largest progress. We can simply swap this node with another node that is not in Fopt(i) and has larger progress. Lemma 2: In order to meet the one-hop rate of progress constraint Vmin , maxj∈Fi αij is minimized among all forwarders iff αij = αik ∀j, k ∈ Fi . Proof: Again, we prove Lemma 2 by contradiction. Suppose that the duty-cycles of the forwarding nodes in Fi are not equal, i.e., ∃αik 6= αij for some j, k ∈ Fi . Let j be the forwarder with the largest duty-cycle in Fi such that αij > αik ∀k ∈ Fi . If j has the largest progress among all the other forwarders such that dij > dik , then αij can always be reduced and the duty-cycle αik of another node k with smaller progress can be increased to ensure that Vi ≥ Vmin . Conversely, if j is not the node with the largest progress such

5

10 Node 1 Node 2

0.9

αij

0.8 0.7 0.6

minimum value of αij (%)

1

0.5

Fig. 3.

2 3 no. of forwarders ni

αij versus ni for two different nodes.

that dij < dik , then we can always increase the duty-cycle αik of another node k with larger progress to reduce αij . Lemmas 1 and 2 allow the search space of the combinations of forwarding sets and the duty-cycles of each node to be substantially reduced by considering only a smaller subset. In order to find the minimum maxj∈Fi αij , we first sort all the nodes in the candidate set ℵi in descending order of progress. Each candidate node is then incrementally added into the forwarding set Fi . We use Fi (ϕ) to denote the forwarding set containing the first ϕ nodes in ℵi with the most progress, where 1 ≤ ϕ ≤ |ℵi |. For each forwarding set Fi (ϕ) ⊆ ℵi obtained, we compute the minimum αij needed to ensure that Vi ≥ Vmin . After all the different forwarding sets are considered, the set resulting in the smallest αij is chosen. We illustrate the selection process using an example in Figure 2 with Vmin = 0.02 and v = 1. The four nodes labeled 3 to 6 are the potential forwarders for nodes 1 and 2. Node 1 has three candidate nodes such that ℵ1 = {3, 4, 5}, with corresponding progresses d13 = 1, d14 = 0.9 and d15 = 0.2. We compute the minimum duty-cycles required for the three forwarding set combinations, with the nodes in each combination arranged in descending order of progress, viz., {N3}, {N3, N4} and {N3, N4, N5}. Using {N3} and Equation 3 with Vi ≥ Vmin , α13 = 1. Using {N3, N4}, α13 = α14 = 0.5526. Finally, using {N3, N4, N5}, α13 = α14 = α15 = 0.619. Figure 3 shows the required duty-cycles for different numbers of forwarders used by Node 1. The minimum duty-cycle is obtained when only {N3, N4} are used as forwarders, resulting in α13 = α14 = 0.5526. Similarly, let the progress of the three forwarders of Node 2, ℵ2 = {4, 5, 6} be d24 = 1, d25 = 0.75 and d26 = 0.5. The duty-cycles required are α24 = 1, α24 = α25 = 0.6429 and α24 = α25 = α26 = 0.5556 respectively for the forwarding sets {N4}, {N4, N5} and {N4, N5, N6}. In this case, all three forwarders should be used to obtain the minimum duty-cycle. Note that the duty-cycles required of forwarder 4 by its upstream nodes 1 and 2 are different; hence the final dutycycle of Node 4 is α4 = max{α14 , α24 } = 0.5556. 2 2 In such cases, while node 4 has a duty cycle of α , it has to retain the 24 duty-cycle expected by node 1, by forwarding less frequently for node 1 at a α14 rate of α during its active slots. 24

6 4 2 0

1

Fig. 2. Example with duty-cycles of nodes and forwarders.

β=0.5% β=0.05% β=0.005%

8

0

5

10 15 no. of forwarders ni

20

Fig. 4. Minimum αij required to ensure that at least 1 forwarder will wake up with (1-β)% within a cycle with v slots.

When nodes are uniformly distributed in the network, ni tends to approach |ℵi |, particularly when the node density is high. When node distances are varied, ni tends to be smaller to avoid nodes without much progress (case of Node 1). B. Bounding the Maximum Waiting Time Consider a node i with ni forwarders; each forwarder is assumed to have the duty-cycle αij . Recall that αij ≤ v is a positive real number and indicates the expected number of active listening slots that are required of node j from its upstream node i within a P single cycle length. We notice that when j∈Fi αij is small, the maximum sleep latency for node i can be large. To bound the maximum sleep latency, the probability of having no forwarders wakeup in any slot within a cycle of v time slots should be less than a specified QoS threshold β, where 0 < β < 1. Therefore, the following must hold for all nodes i in the network: ni Y

(1 −

j=1

αij v ) ≤β v

(4)

P In the event that j∈Fi αij computed from Section IV-A does not meet this constraint, the values of all αij are increased proportionally so that the constraint can be met. Another way to explain the utility of anycast is to observe the duty-cycle requiredP of the set of forwarders to ensure that there are at least γ = j∈Fi αij active slots in a cycle with probability (1 − β). Taking an example where γ = 1 and β = 0.01, the αij required (assumed to be same for all forwarders) is 0.92 when ni = 5 and v = 100. When ni = 10, αij decreases to 0.46, which is significantly smaller than 0.92. Figure 4 illustrates the minimum value of αij (as a percentage of v) required for γ = 1 and varying values of ni and β. C. The Adaptation Algorithm The primary objective of A2 -MAC is to minimize the dutycycle of each node subject to one-hop rate of progress and maximum sleep latency constraints such that the number of alive nodes is maximized over time. This section describes the distributed adaptation algorithm that allows each node to act as a forwarder for other nodes, as well as an upstream node that depends on other forwarders to transmit its packets

6

to the sink. Adaptation is performed using: (i) Algorithm 1 (during network initialization and topological changes) that allows each node j to compute its forwarding set Fj and the duty-cycle αjk required of each forwarder k ∈ Fj ; and (ii) Algorithm 2 (only during network initialization) that allows each node j to determine its own duty-cycle αj . We denote the neighborhood of an arbitrary node j (including itself ) with determined and undetermined duty-cycles as Ndj and Nuj respectively. Initially, the duty-cycle of j is undetermined (j ∈ Nuj and Ndj = ∅). Each node j that executes Algorithm 1 commences by computing Qju and Qjd , the set of candidate nodes with undetermined and determined duty-cycles respectively (Step 2). The sets Qju and Qjd are computed locally and may be different from Nuj and Nud . Steps 3-5 are executed when adaptation is triggered by topological changes, and will be explained later. If there are candidate nodes in ℵj with determined duty-cycles, i.e. Qjd 6= ∅, j considers them in its forwarding set (Step 6). This is a key feature that is exploited in our algorithm as it can result in substantial reduction of duty-cycles required of other nodes in Qju without incurring additional costs. 3 If local constraints in Algorithm 1 are not met (Step 7), node ϕ j iteratively computes the minimum αjk required to satisfy both Vj > Vmin and Equation 4 (Step 15), while considering ϕ candidate nodes in Fj (ϕ) (Step 14). The forwarding set Fj (ϕ) includes the |Qjd | candidates with determined duty-cycles as well as the next ϕ − |Qjd | candidates with undetermined dutycycles and largest progress. The final required duty-cycle αjk ϕ and forwarding set Fj is the set Fj (ϕ) that provides minϕ αjk . In Algorithm 2, a node j determines its final duty-cycle: (i) after each of its upstream nodes i has computed the duty-cycle αij required of j by i (Step 3); and (ii) when j has the largest duty-cycle among Nuj (Step 5). The algorithm is guaranteed to terminate as during each while-loop iteration, at least 1 node network-wide will fix its duty-cycle (Step 6). When the duty-cycle of node j becomes determined and j moves from Nuj to Ndj , each of its upstream nodes i executes Algorithm 1 again to take the newly determined node into account when computing the duty-cycles required of its other forwarders. When adaptation is triggered by topological changes (e.g. node failure due to energy depletion), each upstream node j of the failed node q executes Algorithm 1 to update the required duty-cycles for the remaining forwarding nodes k ∈ Fj , k 6= q. It should be noted that at this time, Nuj = ∅ (Step 3), as all nodes should have determined their duty-cycles during network initialization. The computed αjk values are sent to each forwarding node j, which will then update and broadcast αj accordingly, to its neighbors. Algorithm 2 is not executed during topological changes to minimize excessive overheads. Note that the time to first node failure in A2 -MAC can be shorter than that computed in [2]. This is because the former considers only local constraints while the latter uses network connectivity information and end-to-end constraints. 3 Considering the network topology in Figure 2, once the larger α value 4 of 0.5556 is selected, α3 can be reduced slightly from 0.5526 to 0.551.

Algorithm 1 Computing Fj and αjk by each node j 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:

Input: Nuj ,TNdj , Vj = 0 T Qju = Nuj ℵj , Qjd = Ndj ℵj , if Nuj = ∅ {*during topological changes} then Qju = ℵj , Qjd = ∅, end if Compute Vj using Qjd as forwarding set if Qjd 6= ∅ if Vj ≥ Vmin and Equation 4 is satisfied then exit else ϕ = |Qjd |, Fj (ϕ) = Qjd while Qju 6= ∅ do ϕ=ϕ+1 dju u = node in Qju with largest progress S Qju = Qju \ {u}, Fj (ϕ) = Fj (ϕ) {u}, ϕ Calculate minimum αjk required using all k ∈ Fj (ϕ) to satisfy Vj ≥ Vmin and Equation 4 end while ϕ ϕ αjk = minϕ αjk ; Fj = Fj (ϕ) with minϕ αjk end if

Algorithm 2 Determining duty-cycle αj of each node j Input: Nuj , Ndj while j ∈ Nuj do Obtain αij ∀i with j ∈ ℵi using Algorithm 1 αj = maxi αij if @ p ∈ Nuj with αp > αj then S 6: Nuj = Nuj \ {j}, Ndj = Ndj {j} 7: end if 8: end while 1: 2: 3: 4: 5:

In addition, all nodes will deplete their energy at the same time as well (assuming that total energy consumption is dominated by idle listening) if the duty-cycle is the same for all nodes. As sensor networks are typically densely deployed with sufficient redundancy, the network performance is expected to degrade gracefully with node failures since some amount of failures are often unavoidable. Hence, an objective to increase lifetime of most nodes is more useful than time to first node failure as such an objective can better take advantage of the built-in redundancy available in dense sensor networks. V. S IMULATION E VALUATION We evaluate the performance of A2 -MAC using GloMoSim [18]. Results shown are the average of 20 runs. The common simulation parameters are listed in Table I 4 . All traffic arrivals follow a Poisson distribution. The routing protocol used to forward packets is MFP (Maximum Forward Progress); and the sink is placed at the top right-hand corner of the terrain. We compare A2 -MAC with X-MAC [1] and opt-MAC [2] as X-MAC is one of the most energy-efficient asynchronous unicast MAC protocols in existing literature, while opt-MAC 4 Based

on Chipcon CC2420 RF Transceiver specifications.

7

140

60 40 20 0 2

3

4 dmax (s)

5

0.6 0.4 0.2 0

6

1000

2000 3000 time (s)

percentage coverage (%)

opt-MAC X-MAC A2-MAC A2-MAC (p)

3000 2000 1000 2

3

4 dmax (s)

5

opt-MAC X-MAC A2-MAC A2-MAC (a)

0.6 0.4 0.2

4000

5000

0

1000

2000 3000 time (s)

4000

5000

(a) Percentage connectivity over time (dmax = 2) (b) Percentage connectivity over time (dmax = 5)

5000 4000

1 0.8

0 0

(a) Energy-Delay Tradeoff time to first node failure (s)

0.8

percentage connectivity (%)

80

opt-MAC X-MAC A2-MAC A2-MAC (a)

1

opt-MAC X-MAC A2-MAC

1 0.8

percentage coverage (%)

energy (J)

100

percentage connectivity (%)

opt-MAC X-MAC A2-MAC

120

0.6 0.4 0.2 0

6

1000

2000 3000 time (s)

4000

5000

(c) Percentage coverage over time (dmax = 2)

Fig. 5. Delay tradeoff of opt-MAC, X-MAC and A2 -MAC under varying delay constraints.

Fig. 6.

Parameter

Value

Transmission Range r

≈ 60 meters

Terrain Size A

250 m × 250 m

Bandwidth

250 kbps 60 bytes

Transmitting Itx

11.0 mA

Receiving Irx

19.7 mA

Idle Iidle

0.426 mA

Sleep Isleep

0.001 mA

A2 -MAC Time Slot Length τ

20 ms

A2 -MAC Cycle Length Lcycle

2s

0.6 0.4 0.2

0

1000

2000 3000 time (s)

4000

5000

(d) Percentage coverage over time (dmax = 5)

Performance of opt-MAC, X-MAC and A2 -MAC under varying delay constraints.

TABLE I S IMULATION PARAMETERS

Data Packet Size

0.8

0 0

(b) Time to First Node Failure-Delay Tradeoff

opt-MAC X-MAC A2-MAC

1

is optimal among approaches using the same duty-cycle for all the nodes and provides an average delay constraint. In Sections V-A to V-C, the energy consumption for packet transmission is assumed to be negligible as compared to the energy expended through long periods of idle listening in an extremely low duty-cycled network. In Section V-D and V-E, we compare the performance using higher traffic loads so that packet transmission consumes a significant amount of energy. A. Delay Tradeoffs We study the tradeoffs of opt-MAC, X-MAC and A2 -MAC in a network with 150 randomly placed nodes, providing an average node degree of dv ≈ 20. Figure 5 illustrates the performance of these protocols when the delay constraint dmax is varied from 2s to 6s. Generally, as dmax increases, each node

can sleep for a longer period while still satisfying the delay constraint. This leads to lower duty-cycles and hence lower energy consumption for each node, as can be seen from Figure 5(a). A2 -MAC achieves much better energy-delay tradeoffs as compared to opt-MAC and X-MAC, particularly for smaller values of dmax , which reflects tighter delay constraints (and thus higher energy expenditure). This improvement is due to its complementary use of random wakeup schedules, anycast, as well as adaptive forwarding set selection and adaptive dutycycling. In particular, A2 -MAC can achieve even better energydelay tradeoff than opt-MAC as the latter assigns the same (maximum) duty-cycle to all nodes in the network, which can arbitrarily increase energy consumption unnecessarily. Figure 5(b) shows the time to the first node failure for increasing dmax . While A2 -MAC is able to achieve the best energy-delay tradeoff, it does not globally optimize the time to the first node failure and performs slightly worse than optMAC (which is optimized for time to first node failure) in this aspect. However, it should be highlighted that in contrast with opt-MAC and X-MAC, whereby nodes are assigned the same duty-cycles and fail at somewhat the same rate, the nodes in A2 -MAC fail gracefully over time. Consequently, the time to network partition for A2 -MAC - denoted as A2 -MAC(p) - exceeds the time to first node failure of opt-MAC by 20% to 50%, and the network remains connected even when some nodes in the (typically dense) sensor network has failed. B. Connectivity and Coverage Figure 6 illustrates the connectivity and coverage of the network over time for dmax = 2s and 5s. The percentage con-

8

nectivity is the ratio of nodes that remain alive and connected to the sink to the total number of nodes in the network. We assume that the sensing and communication ranges of a node are equal, and define the percentage coverage is the ratio of the terrain that is within the sensing range of a connected and alive node relative to the initial coverage area. Due to the unicast nature of X-MAC, nodes are unable to exploit the redundancy of their neighbors; hence, the percentage connectivity of X-MAC deteriorates very quickly over time. Although the anycast feature of opt-MAC allows it to reduce the maximum duty-cycle of the nodes, its network connectivity still deteriorates quickly as all nodes have the same maximum required duty-cycle. Figures 6(a) and 6(b) show that A2 -MAC has the best percentage connectivity over time as it: (i) minimizes the local maximum duty-cycle; and (ii) adaptively assigns (different) duty-cycles to each node based on its local topology. We note that the percentage of alive nodes in A2 -MAC - denoted as A2 -MAC(a) - is higher than the percentage connectivity. While these nodes that are still alive but disconnected from the sink cannot communicate with the sink, they are potentially useful as they can transmit the sensed data back to the sink when the network is repaired, or through techniques such as message ferrying. The percentage coverage of the network is shown in Figures 6(c) and 6(d). As A2 -MAC is able to achieve higher connectivity than both opt-MAC and X-MAC, its coverage is naturally better. Notice that in A2 -MAC, a very small percentage of the nodes remain connected and cover a small percentage of the network for a long time. These are mainly the nodes which are close to the sink and have little or no upstream nodes. Their energy consumption is extremely low as these nodes perform minimum packet relay and transmission. C. Random Topology with Varying Network Densities The performance of the MAC protocols in networks with varying densities and delay constraint dmax = 2s and 5s is shown in Figure 7. The network size is varied from 100 to 300 nodes to yield average node degrees dv from 15 to 45. Figure 7(a) indicates that the total energy expended by the entire network increases with increasing dv . Since X-MAC employs a unicast mechanism, the availability of increased redundancy (or neighbors) does not lower the duty-cycle of each node, resulting in an overall high energy consumption. By utilizing larger forwarding sets as dv increases, both optMAC and A2 -MAC are able to achieve very low energy consumption. The latter achieves the least energy consumption since it selects neighbors with relatively better rates of progress as forwarders, and also allows nodes to adapt (lower) their duty-cycles according to their local topologies. Figures 7(b) and 7(c) show the time to first node failure with increasing network density. The reduction in duty-cycles required via the use of more forwarders (increasing dv ) allows opt-MAC to increase the time to its first node failure slightly. A2 -MAC increases the time to first node failure (and time to network partition) most significantly as its anycast mechanism, adaptive selection of forwarding set and duty-cycles of nodes

maximizes the benefit of having higher network densities and redundancy. At higher dmax values, the time to first node failure is higher for opt-MAC than A2 -MAC for lower node density but at higher node density, A2 -MAC performs better. D. Random Topology with Varying Traffic Loads We evaluate the performance of the MAC protocols in a network with 100 randomly distributed nodes, varying traffic loads and dmax = 300ms. 50% of the nodes are randomly selected to generate data packets. The traffic arrival rate λa ranges from 20 to 120 pkts/hour at each source. As traffic load increases, the energy consumed by all the MAC protocols increases (Figure 8) correspondingly due to increased data transmissions. X-MAC employs a unicast technique and forwards packets to a pre-selected next-hop; hence a transmitter has to continuously transmit strobed preambles until a specific neighbor is awake, resulting in excessive overheads. By utilizing an anycast mechanism, both A2 -MAC and opt-MAC are able to reduce the number of control packets transmitted per data packet; thus reducing the overall energy consumption. Overall, the average energy savings of A2 -MAC (and opt-MAC) over X-MAC is approximately 40% to 50%. E. Random Topology with Intermittent Link Connectivity We evaluate the robustness of the MAC protocols in a random network with intermittent link connectivity. The network size is fixed at 100 nodes and 50% of the sensors are randomly as data sources. 10% of the links are randomly selected to have link error rates ranging from 10% to 50%. A link error rate of 0% indicates the absence of artificially induced link errors; dmax is set to 300ms when there is no link error. As opt-MAC utilizes a similar anycast approach as A2 -MAC to select forwarders, its performance in intermittently connected networks is very similar to A2 -MAC and will not be shown. As the link error rate increases, the number of retransmissions required per packet increases. This results in a corresponding increase in the energy consumption of the nodes for all the MAC protocols, as shown in Figure 9(a). In the presence of packet loss caused by link errors, X-MAC continues to retransmit unsuccessfully over the same link with poor quality, resulting in its high energy consumption. In contrast, when transmission to a particular neighbor is unsuccessful, A2 -MAC leverages on the availability of multiple forwarding nodes to counter link failures by transmitting the packet to another forwarding neighbor in the next active slot. By dynamically selecting the next-hops based on prevailing network conditions, A2 -MAC is more resilient to intermittent link failures, enabling it to achieve higher and more consistent throughputs than X-MAC, as illustrated in Figure 9(b). VI. C ONCLUSION The severe energy limitations in sensor nodes accentuates the need to design energy-efficient MAC protocols, typically in the form of duty-cycling, to reduce energy consumption and extend network lifetime. However, duty-cycling inevitably increases the latency incurred during packet transmissions, as

9

150 100 50 0

opt-MAC X-MAC A2-MAC 2 A -MAC (p)

3000 2500 2000 1500 1000 500

10

20 30 node degree dv

40

Fig. 7.

20 30 node degree dv

3000 2000

20

30 node degree dv

40

(c) Time to first node failure (dmax = 5)

Performance of opt-MAC, A2 -MAC and X-MAC with varying network densities and dmax = {2, 5}. 100

4000

opt-MAC X-MAC A2-MAC

120

throughput (bps)

energy (J)

3900

160

80

60

80

40 60 80 100 packet rate (pkts/hr/source)

120

Fig. 8. Performance of opt-MAC, X-MAC and A2 MAC with varying traffic loads.

0

10

20 30 link error rate (%)

(a) Energy Consumption Fig. 9.

3800 X-MAC A2-MAC

3700 3600 3500

X-MAC A2-MAC

40

40 20

4000

40

(b) Time to first node failure (dmax = 2)

240 200

opt-MAC X-MAC A2-MAC 2 A -MAC (p)

5000

1000 10

(a) Energy consumption per node (dmax = 2)

energy (J)

3500

time to first node failure (s)

opt-MAC X-MAC A2-MAC

200 energy (J)

time to first node failure (s)

250

3400 40

50

0

10

20 30 link error rate (%)

40

50

(b) Throughput

Performance of X-MAC and A2 -MAC with intermittent link connectivity.

transmitters now have to wait for the next-hops to be awake before data communication can commence. In this paper, we propose A2 -MAC - an adaptive, anycast-based MAC protocol which utilizes a random wakeup schedule for duty-cycling. The random scheduling adopted in A2 -MAC removes the need for any synchronization overheads and allows it to operate asynchronously. A2 -MAC makes use of an anycast mechanism to reduce packet delays by allowing a node to select multiple one-hop neighbors as the next-hop destination. A2 -MAC is able to dynamically adapt its forwarding set and duty cycle according to network topology and a given per-hop delay or rate of progress. This enables A2 -MAC to achieve energy efficiency with low end-to-end delay, as well as better network lifetime measured in terms of number of connected nodes over time. We show through simulations that A2 MAC performs significantly better than existing asynchronous sensor MAC protocols such as X-MAC and opt-mac which is designed to optimize time to first node failure. R EFERENCES [1] M. Buettner, G. Yee, E. Anderson, and R. Han, “X-MAC: A Short Preamble MAC Protocol For Duty-Cycled Wireless Networks,” in SenSys, 2006. [2] J. Kim, X. Lin, N. Shroff, and P. Sinha, “On maximizing the lifetime of delay-sensitive wireless sensor networks with anycast,” in INFOCOM, 2008. [3] W. Ye, J. Heidemann, and D. Estrin, “An Energy-Efficient MAC Protocol for Wireless Sensor Networks,” in INFOCOM, 2002. [4] ——, “Medium Access Control with Coordinated Adaptive Sleeping for Wireless Sensor Networks,” IEEE ACM Transactions on Networking, vol. 12, no. 3, 2004.

[5] T. van Dam and K. Langendoen, “An Adaptive Energy-Efficient MAC Protocol for Wireless Sensor Networks,” in SenSys, 2003. [6] G. Lu, B. Krishnamachari, and C. Raghavendra, “An Adaptive EnergyEfficient and Low-Latency MAC for Data Gathering in Sensor Networks,” in International Workshop on Algorithms for Wireless, Mobile, Ad Hoc and Sensor Networks (WMAN), 2004. [7] S. Du, A. K. Saha, and D. B. Johnson, “RMAC: A Routing-Enhanced Duty-Cycle MAC Protocol for Wireless Sensor Networks,” in INFOCOM, 2007. [8] J. Polastre, J. Hill, and D. E. Culler, “Versatile Low Power Media Access for Wireless Sensor Networks,” in SenSys, 2004. [9] S. Liu, K. W. Fan, and P. Sinha, “CMAC: An Energy Efficient MAC Layer Protocol Using Convergent Packet Forwarding for Wireless Sensor Networks,” in SECON, 2007. [10] E. Shih, P. Bahl, and M. J. Sinclair, “Wake on Wireless: an Event Driven Energy Saving Strategy for Battery Operated Devices,” in MobiCom, 2002. [11] G. Lu, N. Sadagopan, B. Krishnamachari, and A. Goel, “Delay efficient sleep scheduling in wireless sensor networks,” in INFOCOM, 2005. [12] A. Keshavarzian, H. Lee, and L. Venkatraman, “Wakeup scheduling in wireless sensor networks,” in Mobihoc, 2006. [13] Y. Gu and T. He, “Data forwarding in exremely low duty-cycle sensor networks with unreliable communication links,” in Sensys, 2007. [14] S. Jain and S. R. Das, “Exploiting Path Diversity in the Link Layer in Wireless Ad Hoc Networks,” in WOWMOM, 2005. [15] M. Zorzi and R. R. Rao, “Geographic random forwarding (GeRaF) for ad hoc and sensor networks: multihop performance,” IEEE Transactions on Mobile Computing, vol. 2, no. 4, 2003. [16] D. Couto, D. Aguayo, J. Bicket, and R. Morris, “A high throughput path metric for multi-hop wireless routing,” in MOBICOM, 2003. [17] W. Ye, J. Heidemann, and D. Estrin, “Performance of Energy-Aware and Link-Adaptive Routing Metrics for Ultra Wideband Sensor Networks,” Mobile Networks and Applications, vol. 11, no. 4, 2006. [18] X. Zeng, R. Bagrodia, and M. Gerla, “GloMoSim: A Library for Parallel Simulation of Large-Scale Wireless Networks,” in 12th Workshop on Parallel and Distributed Simulation, 1998.