• 沒有找到結果。

ACM Int’l Workshop on Mobility Management and Wireless Access (ACM MobiWac)

Quick Convergecast in ZigBee/IEEE 802.15.4 Tree-Based

Convergecast is a fundamental operation in wireless sensor net-works. Existing convergecast solutions have focused on reducing latency and energy consumption. However, a good design should be compliant to standards, in addition to considering these factors.

Based on this observation, this paper defines a minimum delay bea-con scheduling problem for quick bea-convergecast in ZigBee/IEEE 802.15.4 tree-based wireless sensor networks and proves that this problem is NP-complete. Our formulation is also compliant with the low-power design of IEEE 802.15.4. We then propose opti-mal solutions for special cases and heuristic algorithms for general cases. Simulation results show that the proposed algorithms can indeed achieve quick convergecast.

Categories and Subject Descriptors

C.2.1 [[Computer-Communication Networks]: Network Archi-tecture and Design—Distributed networks, Wireless communica-tion; G.2.2 [Discrete Mathematics]: Graph Theory

General Terms

Algorithms, Design, Theory.

Keywords

convergecast, graph theory, IEEE 802.15.4, scheduling, wireless sensor network, ZigBee

1. INTRODUCTION

The rapid progress of wireless communication and embedded micro-sensing MEMS technologies has made wireless sensor net-works (WSNs) possible. A WSN consists of many inexpensive wireless sensors capable of collecting, storing, processing environ-mental information, and communicating with neighboring nodes.

Applications of WSNs include wildlife monitoring [1, 3], object tracking [9, 11], and dynamic path finding [8, 12].

Corresponding author.

Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee.

MobiWac’06, October 2, 2006, Torremolinos, Malaga, Spain.

Copyright 2006 ACM 1-59593-488-X/06/0010 ...$5.00.

Recently, many WSN platforms have been developed, such as MICA [4] and Dust Network [2]. For interoperability among differ-ent systems, standards such as ZigBee/IEEE 802.15.4 [5, 7] proto-cols have been developed. ZigBee/IEEE 802.15.4 specifies a global standard on physical, MAC, and network layers for WSNs requir-ing high reliability, low cost, low power, scalability, and low data rate.

Considering that data gathering is a major application of WSNs, convergecast has been investigated in several works [6, 10, 13, 16].

With the goals of low latency and low energy consumption, refer-ence [13] shows how to connect sensors as a balanced reporting tree and how to assign CDMA codes to sensors to diminish in-terference among sensors, thus achieving energy efficiency. The work [16] aims to minimize the overall energy consumption under the constraint that sensed data should be reported within specified time. Dynamic programming algorithms are proposed by assuming that sensors can receive multiple packets at the same time. As can be seen, both [13] and [16] are based on quite strong assumptions on communication capability of sensor nodes. In [10], the authors propose an energy efficient and low latency MAC, called DMAC.

Sensors are connected by a tree and stay in sleep mode for most of the time. When waking up, sensors are first set to the receive mode and then to the transmit mode. DMAC achieves low-latency by staggering wake-up schedules of sensors at the time instant when their children switch to the transmit mode. Similar to [10], ref-erence [6] arranges wake-up schedule of sensors by taking traffic loads into account. Each parent periodically broadcasts an adver-tisement containing a set of empty slots. Children nodes request empty slots according to their demands. Although these results [6, 10] are designed for quick convergecast, the solutions are not com-pliant to ZigBee/IEEE 802.15.4 standards.

This paper aims at designing efficient convergecast solutions for WSNs that are compliant with the ZigBee/IEEE 802.15.4 stan-dards. Assuming a tree topology, Fig. 1 shows the problem sce-nario. The network contains one sink (ZigBee coordinator), some full function devices (ZigBee routers), and some reduced function devices (ZigBee end devices). Each ZigBee router is responsible for collecting sensed data from end devices associated with it and relaying incoming data to the sink. According to specifications, a ZigBee router can announce a beacon to start a superframe. Each superframe consists of an active portion followed by an inactive portion. On receiving its parent router’s beacon, an end device has also to wake up for an active portion to sense the environment and communicate with its coordinator. However, to avoid collision with its neighbors, a router should shift its active portion by a cer-tain amount. Fig. 1 shows a possible allocation of active portions for routers A, B, C, and D. Assuming that routers relay packets in contention-free guarantee time slots (GTSs), the collected sensory

!"

Figure 1: An example of convergecast in a ZigBee/IEEE 802.15.4 tree-based network.

data of A in the k-th superframe can be sent to C via the GTS of C in the k-th superframe. However, because the active portion of B in the k-th superframe appears after that of C, the collected data of B in the k-th superframe can only be relayed to C along the GTS of C in the (k + 1)-th superframe. The delay can be eliminated if the active portion of B in the k-th superframe appears before that of C.

The delay is not negligible because of the low duty cycle design of IEEE 802.15.4. For example, in 2.4 GHz PHY, with 1.56% duty cycle, a superframe can be up to 251.658 seconds (with an active portion of 3.93 seconds). Clearly, for large-scale WSNs, the con-vergecast latency could be significant. The purpose of this paper is to solve the beacon scheduling problem to minimize the converge-cast latency. We prove that this problem is NP-complete by reduc-ing it to the 3-CNF-SAT problem. We show two special cases of this problem where optimal solutions can be found in polynomial time and propose some heuristic algorithms for general cases.

The rest of this paper is organized as follows. Section 2 briefly introduces IEEE 802.15.4 and ZigBee. The convergecast problem is formally defined in Section 3. Section 4 presents our converge-cast algorithms. Simulation results are given in Section 5. Finally, Section 6 concludes this paper.

2. OVERVIEW OF IEEE 802.15.4 AND ZIGBEE STANDARDS

IEEE 802.15.4 [7] specifies the physical and data link protocols for low-rate wireless personal area networks (LR-WPAN). In the physical layer, there are three frequency bands with 27 radio chan-nels. Channel 0 ranges from 868.0 MHz to 868.6 MHz, which provides a data rate of 20 kbps. Channels 1 to 10 work from 902.0

MHz to 928.0 MHz and each channel provides a data rate of 40 kbps. Channels 11 to 26 are located from 2.4 GHz to 2.4835 GHz, each with a data rate of 250 kbps.

IEEE 802.15.4 devices are expected to have limited power, but need to operate for a longer period of time. Therefore, energy conservation is a critical issue. Devices are classified as full func-tion devices (FFDs) and reduced funcfunc-tion devices (RFDs). IEEE 802.15.4 supports star and peer-to-peer topologies. In each PAN, one device is designated as the coordinator, which is responsible for maintaining the network. A FFD has the capability of becom-ing a coordinator or associatbecom-ing with an existbecom-ing coordinator. A RFD can only associate with a coordinator.

ZigBee defines the communication protocols above IEEE 802.15.4.

In its version 1.0, star, tree, and mesh topologies are supported. A ZigBee coordinator is responsible for initializing, maintaining, and controlling the network. In a star network, devices must directly connect to the coordinator. For tree and mesh networks, devices can communicate with each other in a multihop fashion. The net-work backbone is formed by one ZigBee coordinator and multiple ZigBee routers (which must be 802.15.4 FFDs). RFDs can only join the network as end devices by associating with the ZigBee co-ordinator or ZigBee routers. In a tree network, the coco-ordinator and routers can announce beacons. However, in a mesh network, regu-lar beacons are not allowed. Beacons are an important mechanism to support power management. Therefore, the tree topology is pre-ferred, especially when energy saving is a desired feature.

The ZigBee coordinator defines the superframe structure of a network. As shown in Fig. 2, the structure of superframes is con-trolled by two parameters: beacon order (BO) and superframe or-der (SO), which decide the length of a superframe and its active

Table 1: Relationship of BO − SO, duty cycle, and the number of active portions in a superframe.

Figure 2: IEEE 804.15.4 superframe structure.

potion, respectively. For a beacon-enabled network, the setting of BO and SO should satisfy the relationship 0 ≤ SO ≤ BO ≤ 14.

A non-beacon-enabled network should set BO = SO = 15 to in-dicate that superframes do not exist. Each active portion consists of 16 equal-length slots and can be further partitioned into a con-tention access period (CAP) and a concon-tention free period (CFP).

The CAP may contain the first i slots and the rest of the 16 − i slots belong to the CFP, where 1 ≤ i ≤ 16. Slotted CSMA/CA is used in CAP. FFDs which require fixed transmission rates can ask for guarantee time slots (GTSs) from the coordinator. A CFP can support multiple GTSs, and each GTS may contain multiple slots.

After the active portion, devices can go to sleep to save energy.

Since a device only needs to be active for 2−(BO−SO)portion of the time, changing the value of (BO − SO) allows us to adjust the on-duty time of devices. In a beacon-enabled network, routers do not have to choose the same time to start their active portions (and thus their superframes). Once the value of (BO − SO) is decided, each router can choose one of the 2BO−SOslots to send its beacon and start its active portion. Neighboring routers’ active portions should be shifted away from each other to avoid interference. This work is motivated by the observation that the specification does not clearly define how to choose locations of routers’ active portions to reduce convergecast latency. In our work, we consider two kinds of interference between routers. Two routers have direct interference if they can hear each others’s beacons. Two routers have indirect interference if they have at least one common neighbor. Both inter-ferences should be avoided when choosing routers’ active portions.

Table 1 lists possible choices of (BO − SO) combinations.

3. THE MINIMUM DELAY BEACON SCHEDULING (MDBS) PROBLEM

This section formally defines the convergecast problem in Zig-Bee network. Given a ZigZig-Bee network, we model it by a graph G = (V, E), where V contains all routers and the coordinator and E contains all symmetric communication links between nodes in V . The coordinator also serves as the sink of the network. End devices can only associate with routers, but are not included in V . From G, we can construct an interference graph GI = (V, EI), where edge (i, j) ∈ EIif there are direct/indirect interferences be-tween i and j. Also, there is a duty cycle requirement α for this network. From α and Table 1, we can determine the most appro-priate value of BO − SO. We denote by k = 2BO−SOthe number of active portions (or slots) per superframe. The beacon

schedul-ing problem is to find a slot assignment s(i) for each router i ∈ V , where s(i) is an integer and s(i) ∈ [0, k−1], such that router i’s ac-tive portion is in slot s(i) and s(i) 6= s(j) if (i, j) ∈ EI. Motivated by Brook’s theorem [14], which proves that n colors are sufficient to color any graph with a maximum degree of n, we would assume that k ≥ DI, where DIis the maximum degree of GI.

Given a slot assignment for G, the report latency from node i to node j, where (i, j) ∈ E, is the number of slots, denoted by dij, that node i has to wait to relay its collected sensory data to node j, i.e.,

dij= (s(j) − s(i)) mod k. (1) Note that the report latency from node i to node j (dij) may not by equal to the report latency from node j to node i (dji). Therefore, we can convert G into a weighted directed graph GD = (V, ED) such that each (i, j) ∈ E is translated into two directed edges (i, j) and (j, i) such that w((i, j)) = dijand w((j, i)) = dji. The report latency for each i ∈ V to the sink is the sum of report latencies of the links on the shortest path from i to the sink in GD. The latency of the convergecast, denoted as L(G), is the maximum of all nodes’

report latencies.

DEFINITION 1. Given G = (V, E), G’s interference graph GI = (V, EI), and k available slots, the Minimum Delay Beacon Scheduling (MDBS) problem is to find an interference-free slot as-signment s(i) for each i ∈ V such that the convergecast latency L(G) is minimized.

To prove that the MDBS problem is NP-complete, we define a de-cision problem as follows.

DEFINITION 2. Given G = (V, E), G’s interference graph GI = (V, EI), k available slots, and a delay constraint d, the Bounded Delay Beacon Scheduling (BDBS) problem is to decide if there exists an interference-free slot assignment for each i ∈ V such that the convergecast latency L(G) ≤ d.

THEOREM 1. The BDBS problem is NP-complete.

PROOF. First, given slot assignments for nodes in V , we can find the report latency of each i ∈ V by running a shortest path algorithm on GD. We can then check if L(G) ≤ d. Clearly, this takes polynomial time.

We then prove that the BDBS problem is NP-hard by reducing the 3 conjunctive normal form satisfiability (3-CNF-SAT) problem to a special case of the BDBS problem in polynomial time. Given any 3-CNF formula C, we will construct the corresponding G and GI. Then we show that C is satisfiable if and only if there is a slot assignment for each i ∈ V using no more than k = 3 slots such that L(G) ≤ 4 slots.

Figure 3: An example of reduction from the 3-CNF-SAT to the

Then we construct GIas follows.

1. Add all vertices and edges in G into GI.

2. Add edges (xi1, ¯xi1) and (xi2, ¯xi2) to GI, for i = 1, 2, ..., n.

3. Add edges (Cj, xi2) and (Cj, ¯xi2) to GI, for i = 1, 2, ..., n and j = 1, 2, ..., m.

Then we build a one-to-one mapping from each truth assignment of C to a slot assignment of G. We establish the following map-ping:

The above reduction can be computed in polynomial time. By the above reduction, vertices xi1 or ¯xi1, i = 1, 2, ..., n, that are assigned to slot 1 (resp. slot 2) will have a report latency of 2 (resp.

4) and vertices xi2or ¯xi2, i = 1, 2, ..., n, that are assigned to slot 1 (resp. slot 2) will have a report latency of 2 (resp. 1). Hence, for those vertices xi1, ¯xi1, xi2, and ¯xi2, i = 1, 2, ..., n, the longest report latency will be 4.

To prove the if part, we need to show that if C is satisfiable, there is a slot assignment such that k = 3 and L(G) ≤ 4. Since C satisfiable, there must exist an assignment such that each clause Cj, j = 1, 2, ..., m, is true. If a clause Cjis true, at least one variable in Cjis true. According to the reduction, Cjcan always find an edge (Cj, xi1) or (Cj, ¯xi1) with w((Cj, xi1)) = 1 or w((Cj, ¯xi1)) = 1, where i = 1, 2, ..., n. Thus, when C is satisfiable, the reporting latency for each clause is 3. This achieves L(G) = 4.

For the only if part, if each vertex Cj, j = 1, 2, ..., m, can find at least an edge with weight 1 to one of xi1and ¯xi1, for i = 1, 2, ..., n, to achieve a report latency of 3, it must be that each clause has at

Figure 4: Examples of optimal slot assignments for regular lin-ear and ring networks (h = 2). Dotted lines mean interference relations.

least one variable to be true. So formula C is satisfiable. Otherwise, the report latency of Cj, j = 1, 2, ..., m, will be 6.

For example, given C = (x1∨ ¯x2∨ ¯x3) ∧ (¯x1∨ ¯x2∨ x3) ∧ (x1 x2∨ ¯x3), Fig. 3 shows the corresponding G. The truth assignment (x1, x2, x3) = (T, F, T ) makes C satisfiable. According to the reduction and the mapping in the above proof, we can obtain the network G and its slot assignment as shown in Fig. 3 such that L(G) = 4.

4. ALGORITHMS FOR THE MDBS PROBLEM

4.1 Optimal Solutions for Special Cases

Optimal solutions can be found for the MDBS problem in poly-nomial time for regular linear networks and regular ring networks, as illustrated in Fig. 4. In such networks, each vertex is connected to one or two adjacent vertices and has an interference relation with each neighbor within h hops from it, where h ≥ 2. In a regular lin-ear network, we assume that the sink t is at one end of the network.

Clearly, the maximum degree of GIis 2h. We will show that an op-timal solution can be found if the number of slots k ≥ h + 1. The slot assignment can be done in a bottom-up manner. The bottom node is assigned to slot 0. Then, for each vertex v, s(v) = (k0+ 1) mod k, where k0is the slot assigned to v’s child.

THEOREM 2. For a regular linear network, if k ≥ h + 1, the above slot assignment achieves a report latency of |V | − 1, which is optimal.

PROOF. Clearly, the slot assignment is interference-free. Also the report latency of |V | − 1 is clearly the lower bound.

For a regular ring network, we first partition vertices excluding t into left and right groups as illustrated in Fig. 4(b) such that the left group consists of the sink node t and b|V |−12 c other nodes count-ing counter-clockwise from t, and the right group consists of those d|V |−12 e nodes counting clockwise from t. Now we consider the ring as a spanning tree with t as the root and left and right groups as two linear paths. Assuming that b|V |−12 c ≥ 2h and k ≥ 2h, the slot assignment works as follows:

1. The bottom node in the left group is assigned to slot 0.

2. All other nodes in the left group are assigned with slots in a bottom-up manner. For each node i in the left group, we let s(i) = (j + 1) mod k, where j is the slot of i’s child.

3. Nodes in the right group are assigned with slots in a top-down manner. For each node i in the right group, we let s(i) = (j − c) mod k, where j is the slot assigned to i’s parent and c is the smallest constant (1 ≤ c ≤ k) that ensures that s(i) is not used by any of its interference neighbors that have been assigned with slots.

It is not hard to prove the slot assignment is interference-free because nodes receives slots sequentially and we have avoided us-ing the same slots among interferus-ing neighbors. Although this is a greedy approach, we show that c is equal to 1 in step 3 in most of the cases except when two special nodes are visited. This gives an asymptotically optimal algorithm, as proved in the following theo-rem.

THEOREM 3. For a regular ring network, assuming that k ≥ 2h and b|V |−12 c ≥ 2h, the above slot assignment achieves a report latency L(G) = b|V |−12 c + h, which is optimal within a factor of 1.5.

PROOF. We first identify three nodes on the ring (refer to Fig. 4(b)):

• l1: the last node in the left group.

• r1: the first node in the right group.

• r2: the node that is h hops from l1counting clockwise.

The report latency of each node can be analyzed as follows. The parent of node x is denoted by par(x).

A1. For each node i in the left group except the sink t, the latency from i to par(i) is 1.

A2. The latency from r1to t is h.

A3. For each node i next to r1 in the right group but before r2

(counting clockwise), the latency from i to par(i) is 1.

A4. The latency from r2 to par(r2) is 1 if the ring size is even;

otherwise, the latency is 2.

A5. For each node i in the right group that is a descendant of r2, the report latency from i to par(i) is 1.

It is not hard to prove that A1, A2, and A3 are true. To see A4 and A5, we make the following observations. The function pari(x) is to apply i times the par() function on node x. Note that par0(x) means x itself.

O1. When the ring size is even, the equality s(pari−1(l1)) = s(pari(r2)) holds for i = 1, 2, ..., b|V |−12 c − h − 1. More specifically, this means that (i) l1 and par(r2) will receive the same slot, (ii) par(l1) and par2(r2) will receive the same slot, etc. This can be proved by induction by showing that the i-th descendant of t in the right group will be assigned the same slot as the (h + i − 1)-th descendant of t in the left group (the induction can go in a top-down manner). This property implies that when assigning a slot to r2 in step 3, c = 1 in case that the ring size is even. Further, the descen-dant of r2will be sequentially assigned to slots k − 1, k − 2, ..., k − h, which implies that c = 1 when doing the assign-ments in step 3. So properties A4 and A5 hold for the case of an even ring.

O2. When the ring size is odd, the equality s(pari(l1)) = s(pari(r2)) holds for i = 1, 2, ..., b|V |−12 c − h. This means that (i) par(l1) and par(r2) will receive the same slot, and (ii) par2(l1) and par2(r2) will receive the same slot, etc. Again, this can be proved by induction as in O1. This property implies that c = 2 when assigning a slot to r2in step 3, and c = 1 when

O2. When the ring size is odd, the equality s(pari(l1)) = s(pari(r2)) holds for i = 1, 2, ..., b|V |−12 c − h. This means that (i) par(l1) and par(r2) will receive the same slot, and (ii) par2(l1) and par2(r2) will receive the same slot, etc. Again, this can be proved by induction as in O1. This property implies that c = 2 when assigning a slot to r2in step 3, and c = 1 when

相關文件