This action might not be possible to undo. Are you sure you want to continue?
IEEE 802.15.4/ZigBee Networks with
Deterministic Guarantee of RealTime Flows
MyungGon Park, KangWook Kim, and ChangGun Lee
School of Computer Science and Engineering
Seoul National University
Seoul, Korea
Email: {mgpark, kwkim}@rubis.snu.ac.kr, cglee@snu.ac.kr
3
4
2
5
1
3
4
6
2
5
1
6
GTS for 3
GTS for 2
3
2
1
3
4
6
5
4
6
5
3
2
1
(2) power configuration
− routing decision −
(1) cluster−tree construction
(3) duty−cycle scheduling
end−to−end delay
network lifetime
GTS for 3
GTS for 5
GTS for 4
f1
f1
f2
f2
cluster3
cluster3
cluster4
cluster4
SD3
SD4
BI3
BI4
Figure 1. A holistic optimization of a ZigBee network
Abstract—IEEE 802.15.4 is a global standard designed
for emerging applications in lowrate wireless personal area
networks (LRWPANs). The standard provides nice features
such as a beaconenabled mode and guaranteed time slots
for realtime data delivery. However, how to optimally operate
those features is still an open issue. For the optimal operation
of the features, this paper proposes a holistic optimization
method that jointly optimizes three crossrelated problems:
(1) clustertree construction, (2) nodes’ power conﬁguration,
and (3) dutycycle scheduling. Our holistic optimization method
ﬁnds the solution for the three problems such that all the real
time packets can be delivered within their deadlines in the
most energyefﬁcient way. Our simulation study shows that,
comparing with existing methods, our holistic optimization
can guarantee the ontime delivery of all realtime packets
while signiﬁcantly saving the energy and hence signiﬁcantly
increasing the network lifetime.
Keywordsrealtime; sensor network; holistic optimization
I. INTRODUCTION
IEEE 802.15.4 is a global standard for emerging ap
plications in lowrate wireless sensor networks. Its target
ing applications include health monitoring, disaster detec
tion/reporting, target tracking, and factory automation. In
those applications, a number of realtime data ﬂows are
ongoing and their timesensitive packets need to be deter
ministically delivered ontime. This real time guarantee must
be provided with an energyefﬁcient manner such that the
network lifetime can be maximized. Such energyefﬁcient
realtime guarantee is important because the replacement of
batteries of sensor nodes is not only very cumbersome but
also practically impossible in some applications such as a
densely deployed largescale sensor network.
For the energy efﬁciency and the realtime guarantee, the
beaconenabled mode of IEEE 802.15.4 provides nice fea
tures such as synchronized operations with small duty cycles
and guaranteed time slots for collisionfree transmissions.
However, how to optimally utilize those features is still an
open issue. In this paper, we propose a holistic approach to
optimally conﬁguring the IEEE 802.15.4/ZigBee clustertree
network jointly addressing the three crossrelated problems:
(1) logical clustertree construction, (2) power conﬁgura
tion for nodes, and (3) dutycycle scheduling of clusters.
Consider a sensor network that has six ZigBee nodes and
two realtime data ﬂows as shown in Figure 1. In order to
guarantee the endtoend deadline of every data packet of the
given ﬂows, we ﬁrst have to construct the logical clustertree
such that packets can be routed along the tree structure. This
problem of logical clustertree construction is directly related
to the power conﬁguration problem of all nodes since the
powers of child and parent nodes need to be properly conﬁg
ured such that their RF signals are bidirectionally reachable.
Once a clustertree is determined, we also have to determine
the duty cycle scheduling of all the clusters such that each
node in a cluster can send a packet using its dedicated
GTS (guaranteed time slot) within the cluster’s active period
called a SD (superframe duration), which periodically comes
at every BI (beacon interval). This dutycycle scheduling
problem should also determine the lengths of SDs and BIs
of all the clusters and allocations of GTSs to all the nodes.
Thus, the dutycycle scheduling problem is interdependent
with the clustertree construction. Furthermore, the resulting
clustertree and dutycycle scheduling affect the endto
end delay of all the realtime ﬂows. Also, the resulting
powerconﬁguration and dutycycle scheduling affect the
overall energy consumption and in turn the network lifetime.
Therefore, we need to jointly address all the three problems
together in order to guarantee all the realtime ﬂows in
the most energy efﬁcient way, as we propose in this paper.
Existing works try to solve only a part of these three cross
related problems. For example, Han addresses only the duty
cycle scheduling problem assuming that the logical cluster
tree and power conﬁgurations are already given [1]. Ergen
et al. presents an energy efﬁcient routing method with delay
guarantee for wireless sensor networks assuming that duty
cycle scheduling and power conﬁgurations are already given
[2]. However, none of existing works propose a holistic
solution for optimally solving all the three crossrelated
problems together.
The rest of this paper is organized as follows: The next
section surveys the related work. Then, Section III overviews
the IEEE 802.15.4/ZigBee standard and formally deﬁnes the
problem to be addressed in this paper. Section IV proposes
our holistic optimization framework. Section V presents our
experiments. Finally, Section VI concludes this paper.
II. RELATED WORK
Recently, the issues for realtime data delivery has been
extensively addressed in different settings of wireless sensor
networks. In a broad scope, realtime MAC protocols, real
time routing protocols, and realtime MAC/routing cross
layer protocols are proposed. For example, the implicit
EDF [3] is a hard realtime MAC protocol that provides a
collisionfree realtime packet scheduling scheme exploiting
the periodic nature of realtime data ﬂows. The dualmode
realtime MAC protocol [4] provides both bounded worst
case delays for realtime packets and good average delays
for besteffort packets by switching between protected and
unprotected modes. On the other hand, RPAR [5] is an exam
ple of realtime routing protocols that meets the application
speciﬁed delay bound requirements at a low energy cost
by dynamically conﬁguring transmission power and routing
decisions. Ergen et al. [2] propose another routing method
that ﬁnds the optimal routing paths for realtime data ﬂows
in a way of maximizing the network lifetime. The method
uses a linear programming formulation to ﬁnd the optimal
routing solution assuming that the power conﬁguration and
the network topology are given as inputs. SPEED [6] is an
example of MAC/routing crosslayer protocols that support
realtime packet deliveries. SPEED is designed to provide
soft endtoend deadline guarantees by enforcing a uniform
packet delivery speeds all over the entire network through
feedback control in the MAC layer and geographic packet
forwarding in the routing layer. MMSPEED [7] extends
the SPEED protocol by providing multiple speeds in order
to provide service differentiations for different classes of
realtime ﬂows. All the above methods, however, are de
signed for sensor network settings far different from IEEE
802.15.4/ZigBee standard. Thus, they cannot be applied to
build the optimal IEEE 802.15.4/ZigBee network. More
importantly, even in this broad scope, there is no exist
ing work that holistically optimizes topology construction,
power conﬁguration, and packet scheduling, all together.
In the speciﬁc scope of the IEEE 802.15.4/ZigBee stan
dard [8], Koubˆ aa et al. propose algorithms to schedule SD’s
of all the clusters in a collisionfree way for the given
values of SDs and BIs for all the clusters [9]. However,
they do not address how to optimally determine the SD
and BI values for all the cluster. In [1], Han addresses the
optimal dutycycle scheduling problem, that is, optimally
ﬁnding the SD, BI values and also GTS allocations for
guaranteeing all the realtime ﬂows while maximizing the
network lifetime. Han’s approach, however, addresses only
the dutycycle scheduling problem assuming that the cluster
tree topology and power conﬁgurations are given as inputs.
None of the IEEE 802.15.4/ZigBee related work addresses
the holistic optimization problem that considers clustertree
construction, power conﬁguration, and dutycycle schedul
ing, all together.
III. IEEE 802.15.4/ZIGBEE OVERVIEW AND PROBLEM
DESCRIPTION
The IEEE 802.15.4/ZigBee standard provides a beacon
enabled mode for energyefﬁcient delivery of realtime
packets. In the beaconenabled mode, all the ZigBee nodes
ﬁrst need to form a logical clustertree network. As an
example, Figure 2(a) shows physical deployments of ZigBee
nodes, denoted by N
1
, N
2
, · · · , N
8
. The nodes form a logical
clustertree as in Figure 2(b) where N
1
, N
2
, and N
3
form
a cluster with N
3
as the cluster head, N
7
and N
8
form
another cluster with the head of N
7
, and N
3
, N
4
, N
5
, N
6
,
and N
7
form an upper level cluster with the head of N
4
.
This tree formation is necessary in two folds: (1) routing
of packets and (2) scheduling of packets. First, the routing
path of a packet from a source node N
s
and a destination
node N
d
is simply determined along the structure of the
clustertree. For example, the routing path from N
5
to N
2
is N
5
→ N
4
→ N
3
→ N
2
. Second, the packet transmission
times are scheduled in a clusterbased collisionfree manner.
More speciﬁcally, each cluster periodically has its dedicated
active duration called SD (Superframe Duration) which is
disjoint with other clusters’ SDs as shown in Figure 2(c).
Only within the cluster’s SD, all the nodes of the cluster
wake up and communicate each other. For this, the head of
each cluster sends a beacon frame at every beacon period
BI as shown in Figure 2(c). With the beacon frame, all
the nodes belong to the cluster synchronize. Each beacon
period BI
k
of a cluster k is composed of the cluster’s active
period SD
k
and its inactive period as shown in Figure 3. The
SD
k
contains a contention access period (CAP
k
), in which
nodes compete in a slotted CSMA/CA manner for non real
time packets, and a contentionfree period (CFP
k
), in which
nodes transmit their realtime packets with their dedicated
guaranteed time slots (GTS
k
s).
As such, IEEE 802.15.4/ZigBee standard provides base
line features for routing and scheduling realtime packets.
However, for the proper operation of the ZigBee network,
we still have to ﬁnd the optimal conﬁguration of all the
operating parameters for
• clustertree construction
• BIs, SDs for all the clusters and GTS allocations for
the member nodes and
• power conﬁguration of all the nodes such that the
desired clustertree can be formed.
In order to formally deﬁne this holistic optimization
problem, we give necessary deﬁnitions and notations in the
following:
clustertree construction related deﬁnitions: A cluster tree
is represented by the parentchild relation ω
ij
for every pair
of two nodes N
i
and N
j
, which is deﬁned as follows:
ω
ij
=
_
1 if N
i
is the parent of N
j
0 otherwise
.
beacon frames
N1
N1
N2
N2
N3
N3
N4
N4
N5
N5
N6
N6
N7
N7
N8
N8
fa
fa
cluster3
cluster3
cluster7
cluster7
cluster4
cluster4
SD3
BI3
(a) physical placement of nodes
(b) logical clustertree view
(c) clusters’ SD scheduling
Figure 2. An example ZigBee network
Inactive period
CAP
k
Beacon frame
Superframe duration (SD
k
)
Beacon interval (BI
k
)
CFP
k
GTS
k
1
GTS
k
2
GTS
k
3
Figure 3. Beacon interval (BI) and superframe duration (SD) concepts
In the example of Figure 2(b), ω
31
and ω
45
are 1 while
ω
13
, ω
25
and ω
52
are 0. With this ω
ij
notation, a node
N
i
and all its direct child nodes N
j
s for which ω
ij
= 1
form a cluster. For the cluster, N
i
is called the head while
all its child nodes N
j
s are called members. Thus, we use
the cluster head’s id as the cluster’s id. For the example of
Figure 2(b), we have three clusters, that is, cluster
3
with
head N
3
, cluster
7
with head N
7
, and cluster
4
with head
N
4
.
dutycycle scheduling related deﬁnitions: As mentioned in
Figure 2(c), each cluster
k
’s activity window is characterized
by the superframe duration SD
k
and the beacon period
BI
k
. The length of BI
k
and SD
k
are determined by two
parameters, beacon order (BO) and superframe order (SO),
respectively, as follows:
BI
k
= aBaseSuperframeDuration · 2
BO
k
SD
k
= aBaseSuperframeDuration · 2
SO
k
_
for 0 ≤ SO
k
≤ BO
k
≤ 14,
where aBaseSuperframeDuration denotes the minimum
length of the superframe, corresponding to SO
k
= 0.
This duration is ﬁxed to 960 symbols (a symbol cor
responds to 4 bits) by the standard. This value corre
sponds to the ﬁxed duration of 15.36 ms, assuming a 250
kbps in the 2.4 GHz frequency band. We call this ﬁxed
aBaseSuperframeDuration a slot. Thus, the problem of
determining the lengths of BI
k
and SD
k
for every cluster
k
is to determine the integer values of BO
k
and SO
k
in the
range from 0 to 14.
The head node and all the member nodes of cluster
k
are allowed to transmit their packets only for the duration
of SD
k
. The slots in a part of SD
k
, denoted by CAP
k
in
Figure 3, are accessed by the cluster’s nodes in a contention
based manner for non realtime packets. For the non real
time packets, it is required to provide the minimum capacity,
denoted by MIN
nonRealTime
, that is,
CAP
k
BI
k
≥ MIN
nonRealTime
,
where CAP
k
is an integer multiple of a slot. In this paper,
we consider only realtime packets and hence assume that
MIN
nonRealTime
= 0. However, our proposed optimization
framework works for any value of MIN
nonRealTime
.
For the nodes that deliver realtime data ﬂows, we have
to allocate a GTS
k
s (guarantee time slots) as in Figure 3.
The length of a GTS allocated to a node N
i
in cluster
k
is
denoted by GTS
i
k
, which is an integer multiple of a slot.
In case that N
i
is the cluster
k
’s head, that is, N
i
= N
k
,
its GTS, that is, GTS
k
k
is used for N
k
to transmit real
time data to its member nodes N
j
for all j where ω
kj
=
1. The portion of GTS
k
k
used for transmitting data from
N
k
to N
j
is denoted by GTS
kj
k
. In other words, GTS
k
k
=
∀j,ω
kj
=1
GTS
kj
k
.
In case that N
i
is a member of cluster
k
, that is, N
i
=
N
k
, its GTS, that is, GTS
i
k
is used for N
i
to transmit real
time data only to its head N
k
. That is, if we use the same
notational meaning GTS
ik
k
, that is, the portion used for N
i
to transmit realtime data to N
k
, we note GTS
i
k
= GTS
ik
k
.
nodes’ power related deﬁnitions: For the successful trans
mission in between two nodes, their powers need to be
properly conﬁgured. For this, we control the transmission
power denoted by PW
i
of each node N
i
assuming that every
node in a receive mode uses the same power PW
recv
.
With these deﬁnitions, our problem is described as fol
lows.
Problem Description: We are given a set of sensor nodes
V = {N
1
, N
2
, · · · , N
m
} whose locations are preﬁxed.
Thus, we know the geometric distance between every pair
of two nodes, N
i
and N
j
. The distance is denoted by d
ij
.
We are also given a set Γ of n periodic realtime data
ﬂows f
1
, f
2
, · · ·, f
n
, i.e.,
Γ = {f
1
, f
2
, · · · , f
n
}.
A periodic ﬂow f
a
is characterized by a 5tuple as follows.
f
a
= (src
a
, dst
a
, size
a
, p
a
, D
a
),
where src
a
, dst
a
, size
a
, p
a
, and D
a
are the source, desti
nation, packet size (bits), period, and endtoend deadline,
respectively.
For these given set V of nodes and set Γ of realtime
ﬂows, our problem is to ﬁnd all the following three domain
parameters:
• clustertree construction: ω
ij
for every pair of N
i
and
N
j
,
• dutycycle scheduling: BI
k
and SD
k
for every
cluster
k
and GTS
i
k
for each node N
i
of cluster
k
, and
• nodes’ power conﬁguration: PW
i
for every node N
i
,
such that the network lifetime can be maximized while
guaranteeing the delivery of all the packets of each ﬂow
f
a
within their endtoend deadlines.
IV. PROPOSED HOLISTIC OPTIMIZATION FRAMEWORK
The objective of our optimization problem is to maximize
the lifetime of the network. The network lifetime is the time
until the most energy consuming node dies. As a measure
of the time, let us consider the “longrun average power”
avgPW(N
i
) of a node N
i
. With notations introduced in
Section III, avgPW(N
i
) can be formulated as follows:
avgPW(N
i
) = (1)
m
j=1
ω
ij
_
PW
i
· GTS
ij
i
+ PW
recv
· GTS
ji
i
BI
i
_
+
m
j=1
ω
ji
_
PW
i
· GTS
ij
j
+ PW
recv
· GTS
ji
j
BI
j
_
.
This formula consists of two parts. The ﬁrst part, i.e.,
m
j=1
ω
ij
_
PWi·GTS
ij
i
+PWrecv·GTS
ji
i
BIi
_
represents the aver
age power for the case when N
i
works as the cluster head
of cluster
i
. For this case, N
i
consumes the energy amount
of
m
j=1
ω
ij
(PW
i
· GTS
ij
i
+PW
recv
· GTS
ji
i
) for sending
to and receiving from its child nodes N
j
at every its beacon
interval BI
i
. Thus, the average power is given as in the ﬁrst
part of Eq. (1).
On the other hand, the second part, i.e.,
m
j=1
ω
ji
_
PWi·GTS
ij
j
+PWrecv·GTS
ji
j
BIj
_
represents the
average power for the case when N
i
works as a member
node of a cluster, say cluster
j
, that is, for the solely node N
j
for which ω
ji
= 1. For this case, N
i
consumes the energy
amount of
m
j=1
ω
ji
(PW
i
· GTS
ij
j
+PW
recv
· GTS
ji
j
) for
send to and receive from its head node N
j
at every N
j
’s
beacon interval BI
j
. Thus, the average power is given as
in the second part of Eq. (1).
With this formulation of avgPW(N
i
), the network life
time is limited by the node that consumes the energy the
most, that is, for the node whose longrun average power
avgPW(N
i
) is the largest. Thus, our objective is to min
imize the maximum avgPW(N
i
) for all i = 1, 2, · · · , m,
that is,
Minimize max
1≤i≤m
avgPW(N
i
). (2)
This MinMax problem needs to be solved under a number
of constraints.
Valid tree construction: We use a set of ω
ij
s, 1 ≤ i ≤ m,
1 ≤ j ≤ m to represent a tree. For the set to represent a
valid tree, ω
ij
s need to have certain properties. First, every
node N
i
has at most one parent node. This property can be
formulated as the following constraint:
m
j=1
ω
ji
≤ 1, ∀i ∈ {1, 2, · · · , m}. (3)
Second, if we add up the numbers of child nodes for all
the nodes, it should always be m−1. This property can be
formulated as the following constraint:
m
i=1
m
j=1
ω
ij
= m−1. (4)
Third, we also have the following obvious constraint,
since N
i
is not the parent of itself.
ω
ii
= 0, ∀i ∈ {1, 2, · · · , m}. (5)
Finally, if N
i
is the parent of N
j
, then the other way
around is not true. That is,
ω
ij
+ ω
ji
≤ 1, ∀i, j ∈ {1, 2, · · · , m}. (6)
Any set of ω
ij
s that satisﬁes the above constraints deﬁnes
one valid tree.
Valid power conﬁguration: The transmission power of
each node N
i
needs to be conﬁgured such that its transmitted
packets can reach to its parent and all its child nodes.
Thus, N
i
’s transmission power should be determined by the
maximum of the distances to its parent and child nodes, i.e.,
max
1≤j≤m
(ω
ij
+ ω
ji
) · d
ij
. Thus, we have the following
constraint:
RF(PW
i
) ≥ RF
min
recv
+ (7)
10γ log
10
_
max
1≤j≤m
(ω
ij
+ ω
ji
) · d
ij
_
+ C,
∀i ∈ {1, 2, · · · , m},
where RF(PW
i
) denotes the emitted RF signal strength
with the node’s transmission power PW
i
, and RF
min
recv
is
the minimum received RF strength that the signal must have
to achieve a certain bit rate, γ is the path loss exponent
whose value is normally in the range of 2 to 4, and C is
a constant which accounts for system losses. This is the
simplest form of the logdistance path loss model to ensure
successful transmission from N
i
to all its parent and child
nodes.
Valid dutycycle scheduling: The given solution of
(BI
k
, SD
k
)s for all the clusters is valid only if a non
overlapping SD schedule is possible. Fortunately, we can
use Koubˆ aa et al.’s algorithm [9] that checks if there exists
a nonoverlapping SD schedule with the set of (BI
k
, SD
k
)s
of all the clusters. If any, Koubˆ aa et al.’s algorithm ﬁnd a
nonoverlapping SD schedule for the given (BI
k
, SD
k
)s of
all the clusters.
In addition, SD
k
and GTS
j
k
are related as follows:
SD
k
≥ CAP
k
+ GTS
k
k
+
m
j=1
ω
kj
GTS
j
k
(8)
= BI
k
· MIN
nonRealTime
+ GTS
k
k
+
m
j=1
ω
kj
GTS
j
k
.
Also, there is a restriction on validity of the GTS allo
cation by the IEEE 802.15.4 standard. Speciﬁcally, IEEE
802.15.4 speciﬁcation limits the number of GTSs within a
SD as 7. Thus, we have the following constraint:
δ(GTS
i
i
) +
m
j=1
ω
ij
δ(GTS
j
i
) ≤ 7, ∀i ∈ {1, 2, · · · , m}, (9)
where δ(x) is one if x > 0 and zero otherwise.
Endtoend deadline guarantee: For the above valid so
lution of cluster tree, i.e., ω
ij
s, power conﬁguration, i.e.,
PW
i
s, and dutycycle scheduling, i.e., BI
k
, SD
k
, and
GTS
j
k
, we have to ﬁnally check if the solution can guar
antee the endtoend deadlines of all the realtime ﬂows
Γ = {f
1
, f
2
, · · · , f
n
}. For this check, let us explain how
we can calculate the worst case endtoend delay for each
ﬂow f
a
from the source node src
a
to the destination node
dst
a
.
Thanks to the treebased routing, once a clustertree
topology is given, we can determine the routing path for
each ﬂow f
a
. In the example of Figure 2(b), the routing
path of ﬂow f
a
from N
5
to N
2
is N
5
→ N
4
→ N
3
→ N
2
.
Using this routing path information, the worst case endto
end delay of f
a
can be computed by adding up the worst
case perhop delays as in Tindell et al.’s endtoend response
time analysis [10].
Let us explain this calculation for the example ﬂow f
a
in
Figure 2(b). The ﬂow f
a
’s packet arrivals and transmissions
N2
N3
N4
N5
cluster4
cluster3
cluster4’s SDs
cluster3’s SDs
GTS
54
4
GTS
43
4
GTS
32
3
J
3
a
w
32
a
(1)
w
32
a
(2)
Delay
32
a
(1)
Delay
32
a
(2)
Figure 4. Calculation of worst case endtoend delay
at each hop from N
5
to N
2
are depicted in Figure 4. At the
source node N
5
, packets of f
a
are generated periodically as
marked by the downarrows in the N
5
’s timeline. However,
each packet is transmitted using GTS
54
4
as marked by a
small shaded box in the N
5
’s time line. If there are more than
one ﬂows that pass through the link from N
5
to N
4
, packets
of multiple ﬂows need to be properly scheduled by N
5
.
For the packet scheduling, we use a nonpreemptive ﬁxed
priority scheduling assuming that packets from each ﬂow has
a preﬁxed priority. The pending packets are sorted by their
priorities and the GTS is used for transmitting the pending
packets in the priority order. Due to the GTS waiting and the
packet scheduling from multiple ﬂows, the packet arrivals
at the second hop are not periodic anymore as shown in
N
4
’s timeline. Therefore, more than one packets, generally
q packets, from the same ﬂow can be pending at the time
of GTS. Such situation of q packets from the same ﬂow is
well studied by Tindell’s analysis at each hop to calculate the
worst case endtoend delay. Leveraging Tindell’s approach,
the worst case endtoend delay, denoted by WCD
a
for ﬂow
f
a
, can be computed by solving the following equations
at each hop of the endtoend path for f
a
. The following
equations are for the case of the hop from N
i
to N
j
where
N
i
is the cluster head. The other case where N
j
is the cluster
head can be similarly computed and we skip it.
w
ij
a
(q) = (10)
_
¸
¸
¸
q · C
a
+ B
ij
a
+
∀b∈hp
ij
a
_
J
i
b
+w
ij
a
(q)
p
b
_
· C
b
GTS
ij
i
_
¸
¸
¸
· BI
i
.
WCD
ij
a
= max
q=1,2,···
J
i
a
+ w
ij
a
(q) −(q −1) · p
a
, (11)
where
hp
ij
a
is the set of higher priority ﬂows than f
a
that pass
through the hop from N
i
to N
j
. This set can be easily
found thanks to the treebased routing of all the ﬂows.
C
a
is the transmission time of a packet of f
a
. This is
simply given as the packet size size
a
divided by the
transmission rate R, that is, C
a
= size
a
/R.
B
ij
a
is the blocking time due to the nonpreemptive trans
mission of a packet of a lower priority ﬂow. It is given
as the largest transmission time out of all the packets
of lower priority ﬂows that pass through the hop from
N
i
to N
j
.
J
i
a
is the worst case arriving jitter of f
a
due to scheduling
delays at the hops before N
i
. It is given as the worst
case delay of f
a
until reaching N
i
.
In Eq. (10), the intuitive meaning of w
ij
a
(q) is the length
of worse case time from the arrival of the ﬁrst packet of f
a
at N
i
until completely transmitting ﬁrst q packets of f
a
to
N
j
. Figure 4 shows examples of w
32
a
(1) and w
32
a
(2) at the
hop from N
3
to N
2
. In general, w
ij
a
(q) can be calculated
by adding (1) the total time for transmitting q packets, (2)
blocking time B
ij
a
due to the already started transmission
of a lower priority packet, and (3) largest possible delay
due to higher priority packets that arrive before the com
plete transmission of q packets of f
a
, which is given as
∀b∈hp
ij
a
_
J
i
b
+w
ij
a
(q)
p
b
_
· C
b
. In this term,
_
J
i
b
+w
ij
a
(q)
p
b
_
is the
largest possible number of packets of ﬂow f
b
during the
time window w
ij
a
(q) assuming the worst case scenario that
the ﬁrst packet of f
b
is delayed the most, i.e., J
i
b
, and then
the succeeding packets arrive with the maximum rate, i.e.,
1/p
b
and thus the packet arrivals from f
b
are most packed
with the time window w
ij
a
(q). Note that w
ij
a
(q) appears in
both sides making Eq. (10) recursive. This recursive equation
can be solved iteratively starting with the initial assumption
of w
ij
a
(q) =
_
q·Ca+B
ij
a
GTS
ij
i
_
· BI
i
until w
ij
a
(q) does not further
increase by additional packets of higher priority ﬂows.
In Eq. (11), if we add the worst case delay of f
a
until
reaching N
i
, i.e., J
i
a
, to w
ij
a
(q), the result J
i
a
+ w
ij
a
(q)
becomes the worst case time between the ﬁrst packet gener
ation time at the source node and the complete transmission
time of the ﬁrst q packets at the hop from N
i
to N
j
.
Figure 4 shows J
3
a
+w
32
a
(1) and J
3
a
+w
32
a
(2) for the example
hop from N
3
to N
2
. Thus, qth packet’s delay denoted by
Delay
ij
a
(q) until reaching N
j
is J
i
a
+ w
ij
a
(q) −(q −1) · p
a
as shown in Figure 4. By picking the largest value of
J
i
a
+w
ij
a
(q)−(q −1)· p
a
out of all possible q = 1, 2, · · ·, the
worst case delay WCD
ij
a
until reaching N
j
can be found
as in Eq. (11). Fortunately, Tindell et al. proved that such
largest value exists out of q = 1, 2, · · · , Q where Q is the
ﬁrst integer that satisﬁes w
ij
a
(Q) ≤ Q · p
a
[10]. Therefore,
it is sufﬁcient to check only a ﬁnite number of q.
By repeatedly using the above equations from the source
node to the destination node for each realtime ﬂow f
a
, we
can compute the worst case endtoend delay WCD
a
. If the
computed endtoend delay WCD
a
is less than or equal to
the endtoend deadline D
a
, we conclude that all the packets
of f
a
can be delivered to the ﬁnal destination before their
deadlines.
By repeating this check for all the realtime ﬂows, we can
verify whether the given solution of cluster tree, i.e., ω
ij
s,
power conﬁguration, i.e., PW
i
s, and dutycycle scheduling,
i.e., BI
k
, SD
k
, and GTS
j
k
, can deterministically guarantee
the endtoend deadlines of all the realtime ﬂows.
So far, we have formulated our problem as a formal op
timization problem. However, it is a complex combinatorial
problem to ﬁnd the holistic solution of ω
ij
s, PW
i
s, BI
k
s,
SD
k
s, and GTS
j
k
s that maximizes the network lifetime, i.e.,
Eq. (2) while satisfying all above constraints, that is, (1)
valid tree construction constraints, (2) valid power conﬁgura
tion constraints, (3) valid dutycycle scheduling constraints,
and (4) endtoend deadline guarantee constraints. Thus, it is
computationally intractable to exhaustively search the entire
solution space.
In order to manage such a high complexity of our holistic
optimization problem, we use a genetic algorithm. For the
genetic algorithm, we need (1) a chromosome representa
tion and (2) a ﬁtness function. First, a chromosome string
represents one possible solution of our holistic optimization
problem. Thus, a chromosome string in our genetic algo
rithm is a complete set of all the parameters of clustertree
construction, nodes’ power conﬁguration, and dutycycle
scheduling as shown in Figure 5. Second, the ﬁtness function
is used to evaluate the quality of each solution, i.e., ﬁtness
of each chromosome string. As the ﬁtness function, we use
our objective function, i.e., longrun average power function
in Eq. (1).
ω
11
ω
mm
PW
1
PW
m
. . . . . . . . . (BI
1
, GTS
1
1
, ···, GTS
1
m
)
Tree construction
(BI
m
, GTS
m
1
, ···, GTS
m
m
)
Power configuration Dutycycle scheduling
Figure 5. Chromosome structure of the clustertree network
With the chromosome representation and the ﬁtness func
tion, the genetic algorithm ﬁrst forms the initial population
of chromosome strings, which are seeded randomly in order
to cover broad points of the entire solution space. Then,
the genetic algorithm improves the chromosome strings
in the initial population from generation to generation by
repeating the following reproduction, mutation, repair, and
replacement steps:
• Reproduction: This step selects two chromosome
strings as parents and combines them to create a new
chromosome which typically shares many characteris
tics of its parents. In our genetic algorithm, the standard
weighted roulette wheel method [11] is used to select
two chromosome strings with better ﬁtness with higher
probability.
• Mutation: This mutation step is taken probabilistically
and once taken it gives a random perturbation to the
reproduced chromosome string, which is necessary to
avoid getting stuck at a local optima. The random
perturbation is made by randomly choosing one value
out of ω
ij
s, PW
i
s, BI
k
s, SD
k
s, and GTS
j
k
and then
modifying it with a randomly generated value.
• Repair: The reproduced and mutated chromosome
strings are mostly infeasible solutions for our problem.
Therefore, the repair step is necessary after the repro
duction and mutation steps. For an efﬁcient repair of
the infeasible chromosome string, we employ a greedy
repair method as follows:
– valid tree construction: If the ω
ij
s in the chromo
some string make cycles in the resulting graph, we
gradually remove edges from the longest one in
the cycles until the graph becomes acyclic. If the
ω
ij
s result in a disconnected graph, we gradually
add new edges from the pair of two closest nodes
that do not make cycle until the graph becomes
connected.
– valid power conﬁguration: The transmission power
PW
i
of each node N
i
is always repaired such that
its signal can reach to its farthest neighbor, based
on the logdistance pass loss model in Eq. 7.
– valid dutycycle scheduling: With the BI
k
s, SD
k
s
in the chromosome string, if the dutycycle
scheduling is not feasible, we try increasing BI
k
s
or decreasing SD
k
s so that the total sum of the
duty cycle, i.e.,
SD
k
/BI
k
, can be reduced,
which increases the chance of schedulability.
– endtoend deadline guarantee: If the worst case
endtoend delay of any ﬂow is greater than its end
toend deadline, we decrease BI
k
s along the ﬂow’s
path while decreasing SD
k
and GTS
j
k
accordingly
such that the same ratio of SD
k
/BI
k
can be
maintained. This way, we can reduce the worst
case endtoend delay of the ﬂow while keeping
the same chance of dutycycle schedulability.
• Replacement: After the new chromosome string is
repaired as a feasible one, we replace a chromosome
string in the population with the new one so that the
population size can be kept the same. In order to
select the chromosome string to be replaced, we employ
an elitism strategy as in [11] because it ensures that
the best chromosome string in the current generation
always survives into the succeeding generation.
This repetitive evolution process of the population terminates
either at a sufﬁcient number of generations, 2000 in our case,
or at the condition that a speciﬁed percentage, 70% in our
case, of the chromosome strings have the same best ﬁtness.
V. EXPERIMENTS
This section investigates how much improvement our
holistic optimization can make in terms of the long
run average power of the most bottleneck node, i.e.,
max
1≤i≤m
avgPW(N
i
) as deﬁned in Equation (1). For this
investigation, we consider 10 ZigBee nodes, i.e., m = 10,
randomly placed in a 500m × 500m rectangular area.
For each sensor node, we assume the TI CC2520 RF
transceiver [12], for which the transmission rate R is 250
kbps, the packet reception power PW
recv
is 55.5 mW, the
range of controllable transmission power PW
i
is (48.6 mW,
100.8 mW). Regarding the logdistance path loss model
in Equation (7), the CC2520 RF transceiver’s minimum
received RF strength RF
min
recv
is 85 dBm. For the path loss
exponent γ and the system loss constant C, we assume 3.5
and 0, respectively, as in [13].
On top of these sensor nodes, we randomly generate
periodic realtime ﬂows. More speciﬁcally, each ﬂow f
a
’s
packet size size
a
is randomly generated following uniform
distribution in the range of (1500 bits, 2500 bits). The
period p
a
and the endtoend deadline D
a
are also randomly
generated following the uniform distribution in the ranges of
(4000 ms, 6000 ms) and (1000 ms, 3000 ms), respectively.
The ﬂow f
a
’s source node src
a
and destination node dst
a
are also randomly pick out of the above 10 nodes.
With these settings, we compare the following three
approaches:
• Han’s approach [1] that optimizes only the dutycycle
scheduling assuming that the clustertree and nodes’
powers are given. For the clustertree, we assume the
minimum spanning tree construction in [14] assuming
the maximum transmission power for each node.
• Our approach called “optimal clustering and max
power” that optimizes both dutycycle scheduling and
cluster tree construction while using the maximum
power for all the nodes.
• Our approach called “optimal clustering and optimal
power” that optimizes all of dutycycle scheduling,
cluster tree construction, and nodes’ power conﬁgura
tion.
Figure 6 compares the three approaches in terms of the
longrun average power of the most bottleneck node as
varying the number of realtime ﬂows, i.e., n from 1 to
6. Each point of Figure 6 is the average for 100 problems
with randomly generated 10 nodes and n ﬂows as mentioned
above. As the number ﬂows increases, that is, as the overall
system workload increases, the longrun average power
also increases for all the three approaches. However, the
slopes of the increase are signiﬁcantly different. For Han’s
approach, the power consumption of the most bottleneck
node increases fast, since it does not distribute the ﬂows
by leveraging the freedom of tree clustering. On the other
hand, our approach “optimal clustering and max power”
can optimally leverage the freedom of three clustering and
hence well distribute the ﬂows. Thus, the load given to
the most bottleneck node can be limited even when the
number of ﬂows gets larger. Due to this reason, the gap
0
5
10
15
20
25
30
1 2 3 4 5 6
l
o
n
g

r
u
n
a
v
e
r
a
g
e
p
o
w
e
r
(
m
W
)
# of flows
Han’s approach
optimal clustering and max power
optimal clustering and optimal power
Figure 6. Longrun average power of the bottleneck node as a function
of the number of ﬂows
0
5
10
15
20
25
30
500  1000
1000  1500
1500  2000
2000  2500
2500  3000
3000  3500
3500  4000
l
o
n
g

r
u
n
a
v
e
r
a
g
e
p
o
w
e
r
(
m
W
)
deadline (ms)
Han’s approach
optimal clustering and max power
optimal clustering and optimal power
Figure 7. Longrun average power of the bottleneck node as a function
of the average deadline
between Han’s approach and our approaches becomes larger
as the number of ﬂows increases. In addition, our approach
“optimal clustering and optimal power” can further save the
power by using just adequate power rather than the max
power.
In order to investigate the effect of ﬂow deadlines,
Figure 7 compares the three approaches by varying the
deadline generation range with the ﬁxed number of ﬂows,
i.e., 4. The results are again the averages for 100 random
problems. When the deadlines are tight, in the case of Han’s
approach, the longrun average power of the most bottleneck
node is pretty high. This can be explained as follows. In
Han’s approach, there is no freedom of shortening routing
paths because of already ﬁxed clustertree. Thus, it should
meet the tight deadlines by optimizing only the dutycycle
scheduling resulting in small BI values (see Eq. (10)). This
makes a large longrun average power especially in the most
bottleneck node. On the other hand, our approaches “optimal
clustering and max power” and “optimal clustering and opti
0
1
2
3
4
0  100 100  200 200  300 300  400
l
o
n
g

r
u
n
a
v
e
r
a
g
e
p
o
w
e
r
(
m
W
)
farthest distance (m)
optimal clustering and max power
optimal clustering and optimal power
Figure 8. Longrun average power of the bottleneck node as a function
of the farthest distance
mal power” can enjoy the freedom of shortening the routing
path via optimal treeclustering and hence our optimized
BI values can be larger even when the deadlines are tight.
Thus, our approaches result in a signiﬁcantly smaller long
run average power. As the deadlines become loose, the duty
cycle optimization alone in Han’s approach can enjoy larger
room of the spare time until the loose deadline resulting on
larger BI values. Thus, Han’s approach shows the decreasing
longrun average power slightly reducing the gap with our
approaches. However, even when the deadlines sufﬁciently
long, we still can observe signiﬁcant gap between Han’s
approach and ours.
The saving by our optimal power conﬁguration largely
depends on the farthest distance between a parent and its
child among all parentchild pairs in the tree cluster network.
In other words, if the farthest distance is small, the parent
and child can communication with the power much smaller
than the max power. However, if the farthest distance is
large, they need to use the max power anyway to reach
each other, and hence the optimal power should set to the
same as the max power. In order to show this, Figure 8
compares our “optimal clustering and max power” and our
“optimal clustering and optimal power” for 500 random
problems with ﬁxed number of ﬂows, i.e., 4. In each bin
of xaxis, i.e., (0100), (100200), (200300), and (300
400), we put the solutions with the farthest distance in the
corresponding range and average their ﬁtness, i.e., longrun
average power of the most bottleneck node. In the case of
“optimal clustering and max power”, the longrun average
power is almost constant regardless of the farthest distance.
This is because all the nodes use the maximum transmission
power without any power optimization. On the other hand,
in the case of “optimal clustering and optimal power”, the
longrun average power is much smaller when the farthest
distance is small. This clearly shows that the optimal power
conﬁguration can make nontrivial power saving depending
on the given problem setting of nodes and ﬂows, especially
when our solution can address the given problem with a
small farthest distance.
VI. CONCLUSION
In this paper, we propose a holistic optimization method
that builds the optimal IEEE 802.15.4/ZigBee network with
ontime delivery of all realtime data while maximizing
the network lifetime. The holistic optimization method
jointly addresses the three crossrelated problems: (1) logical
clustertree construction, (2) power conﬁguration for nodes,
and (3) dutycycle scheduling.
We ﬁrst formulate the holistic optimization problem as a
formal optimization problem. Thanks to this formal problem
formulation, we can solve the holistic optimization problem
with a genetic algorithm. Our experimental study shows that
beyond the improvement by the optimal dutycycle schedul
ing which has been done by previous work, the optimal
tree clustering and optimal nodes’ power conﬁguration can
make a further signiﬁcant improvement in the lifetime of
realtime IEEE 802.15.4/ZigBee network. This justiﬁes our
holistic optimization framework that optimizes all of the
dutycycle scheduling, cluster tree construction, and nodes’
power conﬁguration all together.
Currently, we are applying the proposed holistic optimiza
tion to build a ZigBee network for realtime monitoring of
a large scale building. In the future, we plan to extend the
optimization framework targeting coexistence of realtime
ﬂows with deterministic and stochastic deadline guarantee
requirements.
REFERENCES
[1] J. Han, “Global Optimization of ZigBee Parameters for End
toEnd Deadline Guarantee of RealTime Data,” IEEE Sen
sors Journal, vol. 9, no. 5, pp. 512–514, 2009.
[2] S. C. Ergen and P. Varaiya, “Energy Efﬁcient Routing with
Delay Guarantee for Sensor Networks,” ACM Wireless Net
works, vol. 13, no. 5, pp. 679–690, 2007.
[3] M. Caccamo, L. Y. Zhang, L. Sha, and G. Buttazzo, “An
Implicit Prioritized Access Protocol for Wireless Sensor Net
works,” in Proceedings of the 23rd IEEE RealTime Systems
Symposium (RTSS), 2002.
[4] T. Watteyne, I. Aug` eBlum, and S. Ub` eda, “DualMode
RealTime MAC Protocol for Wireless Sensor Networks: A
Validation/Simulation Approach,” in Proceedings of the 1st
International Conference on Integrated Internet Ad Hoc and
Sensor Networks (InterSense), 2006.
[5] O. Chipara, Z. He, G. Xing, Q. Chen, X. Wang et al.,
“RealTime PowerAware Routing in Sensor Networks,” in
Proceedings of the 14th IEEE International Workshop on
Quality of Service (IWQoS), 2006.
[6] T. He, J. A. Stankovic, C. Lu, and T. Abdelzaher, “SPEED:
A Stateless Protocol for RealTime Communication in Sensor
Network,” in Proceedings of the 23rd International Confer
ence on Distributed Computing Systems (ICDCS), 2003.
[7] E. Felemban, C.G. Lee, E. Ekici et al., “Probabilistic QoS
Guarantee in Reliability and Timeliness Domains in Wireless
Sensor Networks,” in Proceedings of the 24th Annual Joint
Conference of the IEEE Computer and Communications So
cieties (INFOCOM), 2005.
[8] ZigBee Alliance, “ZigBee Speciﬁcation,”
http://www.zigbee.org, 2005.
[9] A. Koubˆ aa, A. Cunha, and M. Alves, “A Time Division
Beacon Scheduling Mechanism for IEEE 802.15.4/Zigbee
ClusterTree Wireless Sensor Netowrks,” in Proceedings
of the 19th Euromicro Conference on RealTime Systems
(ECRTS), 2007.
[10] K. Tindell and J. Clark, “Holistic Schedulability Analysis
for Distributed Hard RealTime Systems,” Microprocessing
& Microprogramming (Euromicro J.), vol. 40, no. 23, pp.
117–134, 1994.
[11] D. E. Goldberg, Genetic Algorithms in Search, Optimization,
and Machine Learning. AddisonWesley, 1989.
[12] Texas Instruments, “CC2520 Datasheet 2.4
GHz IEEE 802.15.4/ZigBee RF Transceiver,”
http://focus.ti.com/docs/prod/folders/print/cc2520.html.
[13] V. S. Abhayawardhana et al., “Comparison of Empirical
Propagation Path Loss Models for Fixed Wireless Access Sys
tems,” in Proceedings of the 61st IEEE Vehicular Technology
Conference (VTC), 2005.
[14] R. C. Prim, “Shortest Connection Networks and Some Gen
eralizations,” Bell Sys. Tech. J., pp. 1389–1401, 1957.
This action might not be possible to undo. Are you sure you want to continue?
We've moved you to where you read on your other device.
Get the full title to continue reading from where you left off, or restart the preview.