The Orphan Problem in ZigBee- based Wireless Sensor Networks

Download Report

Transcript The Orphan Problem in ZigBee- based Wireless Sensor Networks

The Orphan Problem in ZigBeebased 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
1
Outline



Introduction
Problem definition
The proposed algorithm




Algorithm for the BDDTF problem
Algorithm for the EDMM problem
Simulation results
Conclusion
2
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
3
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
4
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
5
Large-scale tests by simulations
Assume Cm = Rm
A router at depth d serving as a left
There exists a loss of
address spaces
1  Rm Lm  d 1
1  Rm
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
6
An ZigBee address assignment example
Addr = 18
Cm = 5
Rm = 3
Lm = 2
Cskip=6
Addr = 14
For coord.
Addr = 15
Addr = 13
Cskip = 1
node B
Addr = 17
Addr = 0
Cskip = 6
Addr = 19
01
Total:21
7
13
19 20
7
Addr = 11
Addr = 12
Addr = 2
D
Addr = 7
Cskip = 1
Addr = 1
Cskip = 1
B
A
Addr = 5
Addr = 3
E
C
Addr = 8
Addr = 9
Addr = 10
ZigBee coordinator
ZigBee router
ZigBee end device
ZigBee router-capable device
Tree link
Communication link
A becomes an
orphan node !!
7
Orphan Problem:
A better assignment
Addr = 18
Cm = 5
Rm = 3
Lm = 2
Addr = 14
Addr = 15
Addr = 13
Cskip = 1
Addr = 17
Addr = 0
Cskip = 6
Addr = 19
Addr = 11
Addr = 12
Addr = 2
D
Addr = 7
Cskip = 1
Addr = 1
Cskip = 1
B
A
Addr =8
Addr = 5
Addr = 3
E
Addr =4
=8

C
Addr = 9
Addr = 10
This example shows that a better assignment can effectively
reduce orphan devices

A better assignment  can connect more zigbee devices
8
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
9
Outline



Introduction
Problem definition
The proposed algorithm




Algorithm for the BDDTF problem
Algorithm for the EDMM problem
Simulation results
Conclusion
10
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 routercapable 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
11
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 DegreeConstrained Spanning Tree (DCST) problem is to find a
spanning tree T 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|
12
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
Original T
V’r∪Ve
Gd
Cm = 4
Rm = 2
Lm = 2
13
The EDMM problem

Based on T, each vertex v∈V’r can accept at most Cv≧(CmRm) end devices
Cm = 4
Rm = 2
Lm = 2

Can accept
3 child end
devices
Can accept
2 child 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 Cv vertices in V’br
B A
D C
E
V’br
F G
14
The EDMM problem

Rule 2: From each vertex u∈Ve, generate a vertex u in Vbe
1
2
D C
E
B A
3
V’br∪Vbe
6
4
F G
7
5

Rule 3: From each edge (v, u) in Ed, connect each of the Cv
vertices generated in rule 1 with the vertex u generated in
rule 2. These edges form the set Ebd
A
1
Gb=({V’br∪Vbe}, Ebd)
B
2
C
3
D
4
E
5
F
6
G
7
15
Outline



Introduction
Problem definition
The proposed algorithm




Algorithm for the BDDTF problem
Algorithm for the EDMM problem
Simulation results
Conclusion
16
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
17
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
18
Centralized Algorithm for the BDDTF
problem
Rm=3
Lm=3
Rm=3
Lm=3
Initially, only t in T
t
Communication link
 Start Span phase:
form a BFS tree T’
rooted at t
t
T’
19
Centralized Algorithm for the BDDTF
problem
Rm=3
Lm=3
T’
will be pruned
Start prune phase:
Hascheck
morethis
than
Then
node 
Compare
association
priorities
no
prune
3 need
childtorouters
of t’s 5 children in T’
t
The result of this iteration
20
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
21
Distributed algorithm for the BDDTF
problem (DBS)

Our distributed algorithm for BDDTF will do a Depth-firstsearch 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


Probe Response


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
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()
22
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
23
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
A
1
A
1
B
2
B
2
C
3
C
3
D
4
D
4
E
5
E
5
F
6
F
6
G
7
G
7
A maximum matching on Gb
24
Distributed Algorithm for the EDMM
problem (Dist-Match)

We proposed a simple distributed matching algorithm



Greedy phase



Two phases: greedy phase followed by probing phase
Each orphan router will try to probe a 3-hop alternative path
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
25
Outline



Introduction
Problem definition
The proposed algorithm




Algorithm for the BDDTF problem
Algorithm for the EDMM problem
Simulation results
Conclusion
26

Network scenario



All router-capable devices
Number of nodes: 800
Network radius: 200 m



Tx range: 35 m
Cm=Rm=2, Lm=8
Random vs. regular networks
Dotted nodes are
orphan nodes !!
27
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 !!
28
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
29
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
30