300 likes | 315 Views
The Orphan Problem in ZigBee-based Wireless Sensor Networks. IEEE Trans. on Mobile Computing (also in MSWiM 2007) Meng-Shiuan Pan and Yu-Chee Tseng Department of Computer Science National Chiao Tung University, Taiwan. Outline. Introduction Problem definition The proposed algorithm
E N D
The Orphan Problem in ZigBee-based Wireless Sensor Networks IEEE Trans. on Mobile Computing (also in MSWiM 2007) Meng-Shiuan Pan and Yu-Chee Tseng Department of Computer Science National Chiao Tung University, Taiwan
Outline • Introduction • Problem definition • The proposed algorithm • Algorithm for the BDDTF problem • Algorithm for the EDMM problem • Simulation results • Conclusion
Introduction • ZigBee is a developing standard which is considered to satisfy the needs of WSN • In ZigBee, when forming a network, devices are said to join the network if it can receive a network address • Each device tries to associate to the ZigBee coordinator or a ZigBee router • A ZigBee coordinator or router will decide whether to accept devices according to its capacity • The capacity of a ZigBee device relates to the ZigBee address assignment
ZigBee address assignment • In ZigBee, network addresses are assigned to devices by a distributed address assignment scheme • ZigBee coordinator determines three network parameters • the maximum number of children (Cm) of a ZigBee router • the maximum number of child routers (Rm) of a parent node • the depth of the network (Lm) • A parent device utilizes Cm, Rm, and Lm to compute a parameter called Cskip • which is used to compute the size of its children’s address pools
Real implementation Assuming Cm=Rm, 49 nodes on a 360x360 cm2 sending field TX range is 100 ~ 200 cm Although small Rm can lead to fewer orphans, it also results in longer end-to-end delay
Large-scale tests by simulations Assume Cm = Rm A router at depth d serving as a left There exists a loss of address spaces This is why a larger part of network at (d) is unable to join the network (Rm, Lm) are equal to (a) (4, 7), (b) (3, 9), and (c-d) (2, 15). There are 461, 341, 120, and 351 orphan nodes, respectively
node B 7 An ZigBee address assignment example Cskip=6 Total:21 20 0 1 7 13 19 For coord. A becomes an orphan node !!
Orphan Problem:A better assignment • This example shows that a better assignment can effectively reduce orphan devices • A better assignment can connect more zigbee devices Addr =8 Addr =8 Addr =4
Contributions • Model an orphan problem in ZigBee networks by two subproblems • The Bounded-Degree-and-Depth-Tree Formation (BDDTF) problem • The End-Device Maximum-Matching (EDMM) problem • Prove the BDDTF problem is NP-complete • Propose a network formation algorithm, which can effectively reduce the number of orphan devices
Outline • Introduction • Problem definition • The proposed algorithm • Algorithm for the BDDTF problem • Algorithm for the EDMM problem • Simulation results • Conclusion
Problem definition • Given Cm, Rm, and Lm and coordinator t , we model the orphan problem by two subproblems: • BDDTF (for routers) • EDDM (for end devices) • In the BDDTF problem, we consider only router-capable devices • Given Gr=(Vr, Er) • The goal is to assign parent-child relationships to nodes such that as many nodes can join the network as possible • A node in Vr can have at most Rm child devices and • The depth of the tree should be smaller than Lm
NP Completeness for BDDTF problem • It has been shown that the Degree-Constrained Spanning Tree problem is NP-C • Given G = (V, E) and a positive integer K≦|V|, the Degree-Constrained Spanning Tree (DCST) problem is to find a spanning treeT of G such that no vertex in T has a degree larger than K • THEOREM 1. The BDDTF problem is NP-complete • PROOF. • 1) Given a tree T in Gr, we can check if T satisfies the constraints of Rm and Lm and if T contains more than N nodes in polynomial time • 2) The DCST problem can be reduced to a special case of the BDDTF problem when Rm = K, Lm∞, and N = |Vr|
The EDMM problem • Goal: to connect end devices to the tree T constructed earlier satisfying the ZigBee definition. • The goal is to connect as many end devices to T as possible • We model the sensor network by a graph • Gd= ({ V’r ∪Ve}, Ed) Routers, excluding the ones at depth Lm, in T All end devices Comm. link between V’r and Ve Cm = 4 Rm = 2 Lm = 2 Original T V’r∪Ve Gd
The EDMM problem • Based on T, each vertex v∈V’rcan accept at most Cv≧(Cm-Rm) end devices • From Gd, we construct a bipartite graph Gb=({ V’br∪Vbe}, Ebd) as follows • Rule 1: From each vertex v∈V’r, generate Cvvertices in V’br Can accept 3 child end devices Can accept 2 child end devices Cm = 4 Rm = 2 Lm = 2 A B V’br C D E G F
The EDMM problem • Rule 2: From each vertex u∈Ve, generate a vertex u in Vbe • Rule 3: From each edge (v, u) in Ed, connect each of the Cvverticesgenerated in rule 1 with the vertex u generated in rule 2. These edges form the set Ebd 1 A B V’br∪Vbe 3 2 6 C D E 4 7 G F 5 1 A 2 B 3 C Gb=({V’br∪Vbe}, Ebd) 4 D 5 E 6 F 7 G
Outline • Introduction • Problem definition • The proposed algorithm • Algorithm for the BDDTF problem • Algorithm for the EDMM problem • Simulation results • Conclusion
Centralized BDDTF Algorithm (SP) • In our algorithm, we decide to connect or disconnect a node according to its association priority • The priority assignment is based on forming BFS trees from Gr • priority(x) > priority(y) if(subtree_size(x) > subtree_size(y)) • priority(x) > priority(y) if(subtree_size(x) = subtree_size(y) and potential_parents(x) <potential_parents(y)) • A node takes a tree neighbor as its potential parent if this neighbor has a smaller hop count distance to the root of the BFS tree than its
Centralized BDDTF Algorithm (cont.) • Initially, T contains only the coordinator t • Then in each iteration, there are two phases: Span and Prune • In the Span phase: we will pick a node in T, say x, and span from x a subtree T’ to include as many nodes not in the tree T as possible. Then we attach T’ to T to form a larger tree • In the Prune phase: some of the newly added nodes in T’ may be trimmed to satisfy ZigBee definition • The resulting tree is then passed to the next iteration for another Span and Prune phases
Centralized Algorithm for the BDDTF problem Rm=3 Lm=3 Rm=3 Lm=3 Initially, only t in T Start Span phase: form a BFS tree T’ rooted at t t t Communication link T’
Centralized Algorithm for the BDDTF problem Rm=3 Lm=3 T’ will be pruned Start prune phase: Compare association priorities of t’s 5 children in T’ Has more than 3 child routers Then check this node no need to prune t The result of this iteration
Centralized Algorithm for the BDDTF problem Rm=3 Lm=3 Can connect this two nodes 2nd iteration: Start Span phase from this node 3rd iteration: Start Span phase from this node The resulting tree
Distributed algorithm for the BDDTF problem (DBS) • Our distributed algorithm for BDDTF will do a Depth-first-search followed by a Breadth-first-like Search • Depth-first search tries to form some long, thin backbones, which are likely to pass through high-node-density areas • Depth Probing • The coordinator t will flood a Probe(sender_addr, current_depth, Lm) packet • Each node will set its parent to sender_addr, and curretn_depth to current_depth + 1 • Probe Response • After the depth probing, each node reports to its parent a Report packet containing 1) the size of the subtree rooted by itself and 2) the height of the subtree rooted by itself • Backbone Formation • After t receives all its children’s report, it will choose at most Rm children with the larger subtree sizes as backbone nodes by sending Backbone() messages • When a node receive a Backbone(), it further invites its child with the tallest subtree into the backbone by sending Backbone()
Distributed algorithm for the BDDTF problem (DBS) • From these backbones, we span the tree in a breadth-first-like manner • BFS-like spanning • The coordinator can broadcast beacons to start the network • A backbone node must associate with its parent on the backbone, and its parent must accept the request • For each non-backbone node • Compete with each other by its association priority • Association priority is defined by the size of the subtree rooted by this node
Centralized Algorithm for the EDMM problem • Given a Gd= ({ V’r ∪Ve}, Ed), a solution for the EDMM problem can be obtained by applying a bipartite maximum matching algorithm 1 A 1 A 2 B 2 B 3 C 3 C 4 D 4 D 5 E 5 E 6 F 6 F 7 G 7 G A maximum matching on Gb
Distributed Algorithm for the EDMM problem (Dist-Match) • We proposed a simple distributed matching algorithm • Two phases: greedy phase followed by probing phase • Each orphan router will try to probe a 3-hop alternative path • Greedy phase • The routers will accept end devices which have less potential associable routers • Potential parent are the neighbor routers which still have capacity to accept more end devices • Probing phase • For an orphan end device e, it can send a Probe() packet to any neighboring router r • If r has a child end device having other potential parent, r will send another Probe() packet to disassociate it • If r receives Probe_Ack(), e will associate with r
Outline • Introduction • Problem definition • The proposed algorithm • Algorithm for the BDDTF problem • Algorithm for the EDMM problem • Simulation results • Conclusion
Tx range: 35 m • Cm=Rm=2, Lm=8 • Random vs. regular networks • Network scenario • All router-capable devices • Number of nodes: 800 • Network radius: 200 m Dotted nodes are orphan nodes !!
Impact of Rm and Lm on the BDDTF Problem • Network scenario • All router-capable devices • Number of nodes: 800 • Network radius: 200 m • Tx range: 35 m • Vary Rm and Cm The proposed scheme can effectively reduce the number of orphan routers with a smaller Rm or Lm Increasing Lm can more effectively reduce orphan routers as opposed to increasing Rm !!
The EDMM Problem • Network scenario • Number of nodes: 800 • Number of end devices: 8000 • Network radius: 200 m • Tx range of routers: 35 m, Tx range of end devices: varied (15 ~ 30 m) • Cm=15, Rm=3, and Lm=8 • Use the proposed scheme to connect routers all routers can join the network
Conclusions • In this paper, we have defined an orphan problem in ZigBee-based wireless sensor networks. • This is the first work that models the orphan problem in ZigBee networks • The proposed network formation strategy is compliant to the standard and can be implemented easily