1
Dynamic Multi-resolution Data Dissemination in
Wireless Sensor Networks
Guoliang Xing 1 , Minming Li 2 , Hongbo Luo 2 , Xiaohua Jia 2
1Department of Computer Science and Engineering
Michigan State University
1Department of Computer Science
City University of Hong Kong
E-mails: glxing@msu.edu,{robert, minmli, jia}@cs.cityu.edu.hk
A short version of this paper appeared at MSWiM 2007.
DRAFTAbstract
Recent years have seen the deployments of wireless sensor networks (WSNs) in a variety of applications
to gather the information about physical environments. A key requirement of many data-gathering WSNs
is to deliver the information about dynamic physical phenomena to users at multiple temporal resolutions.
In this paper, we propose a novel solution called the Minimum Incremental Dissemination Tree (MIDT) for
dynamic multi-resolution data dissemination in WSNs. MIDT includes an online tree construction algorithm
with an analytical performance bound and two lightweight tree adaptation heuristics for handling data
requests with dynamic temporal resolutions. Our simulations based on realistic settings of Mica2 motes
show that MIDT outperforms several typical data dissemination schemes. The two tree adaptation heuristics
can effectively maintain desirable energy efficiency of the dissemination tree while reducing the overhead of
tree reconfigurations under representative traffic patterns in WSNs.
Keywords: Data dissemination, Temporal resolution, Dynamic tree adaptation, Energy efficiency
Terms: Sensor networks, Wireless network algorithms and protocols, Performance evaluation and modeling
I. INTRODUCTION
Recent years have seen the deployments of wireless sensor networks (WSNs) in a variety of dataintensive
applications including micro-climate and habitat monitoring [32], precision agriculture,
security surveillance [15], [23], etc. The capability of long-term and dense sensing of WSNs enables
the physical environments to be monitored at an unprecedented granularity. One of the major tasks
of WSNs is to disseminate useful information from data sources to users at the minimum power
consumption as sensor nodes must operate on limited power sources (e.g., batteries or small solar
panels) for extended lifetime. Particularly, how to achieve power-efficient, multi-hop communication
in these applications is the major concern since wireless communication often dominates the energy
dissipation in a WSN.
In this paper, we study the problem of dynamic multi-resolution data dissemination in which
multiple sinks request sensor readings from the in-network sources at dynamic data refresh rates.
This problem is motivated by several important characteristics of data-gathering applications. First,
due to the diversity of user requirements, a WSN often needs to collect and report physical information
at multiple temporal granularities. For instance, many WSN query processing systems (e.g., TinyDB
[26]) support windowed stream query in the form of “report to node i the average temperature of
region A once every T seconds”. T is the temporal resolution of the query specified by a user.
As a real-world example, an environmental monitoring WSN may receive two types of queries in
which a meteorologist requests hourly temperature updates [24] for weather analysis while a biologist
2requests a temperature reading once every several minutes from bird burrows for detailed study of
birds’ breeding behavior [32]. Furthermore, the temporal resolution requested by the same user is
subject to dynamic changes due to the evolution of environmental activities. For instance, in an
intelligent building, a cluster head node normally reports temperature gathered by nearby nodes to
the base station once several minutes for residential energy management, and must report sensor
readings once every a few seconds when a possible fire is detected.
The dynamic temporal resolutions of data requests introduce several important implications that
have not been collectively considered by the existing energy-efficient data dissemination algorithms.
First, the resolutions of different data requests must be explicitly taken into account in the construction
of dissemination topology in order to minimize the network energy consumption. For example, while
long dissemination paths composed of highly reliable links are preferred in order to minimize the
total transmission energy of high-rate data requests, shorter but potentially lossier paths can be
more energy-efficient for low-rate data requests as they allow more nodes to switch to sleep. The
optimal dissemination path configured according to a particular data rate may result in excessive
energy consumption under other data rates. Second, the dissemination topology must be dynamically
reconfigured in response to online data request arrivals and data rate changes. However, too frequent
topology reconfigurations should be avoided to reduce the disruptions to data dissemination. Third,
as lossy links are prevalent in WSNs [41], a dissemination algorithm must consider the quality of
links in order to achieve a desirable reliability level with minimum energy consumption.
This paper makes the following contributions. 1) We present the formulation to a new problem
referred to as dynamic multi-resolution data dissemination, which minimizes the total energy consumption
in data dissemination by jointly considering the power of all active radio states (idle,
reception and transmission), quality of links and data rates of different requests. 2) We propose a
novel solution called the Minimum Incremental Dissemination Tree (MIDT) that includes an online
tree construction algorithm with analytical performance bound and two lightweight tree adaptation
heuristics. The path-quality based heuristic adapts each dissemination path based on the accurate
estimation of worst-case quality degradation of the path due to data rate changes. Such estimation
is made solely based on the local information of the path and hence incurs no additional overhead.
The reference-rate based heuristic adapts the whole dissemination tree based on the reference rate
calculated according to the aggregate rates of different data requests, which reduces the number
of tree reconfigurations. 3) Our simulations based on realistic settings of Mica2 motes show that
MIDT significantly outperforms several typical dissemination schemes. In particular, the two tree
3adaptation heuristics can effectively maintain desirable energy efficiency of the dissemination tree
while reducing the tree adaptation overhead under a wide range of traffic patterns in WSNs.
The rest of this paper is organized as follows. We first discuss the related work in Section II.
Then we describe our application and network models in Section III. The problem formulation is
presented in Section IV. An online tree construction algorithm and two lightweight tree adaption
heuristics are discussed in Section V and Section VI, respectively. We present the simulation results
in Section VII, and the conclusion in Section VIII.
II. RELATED WORK
A number of solutions [18], [37], [7], [25], [17] have been proposed to disseminate data from
sources to sinks in WSNs. Directed diffusion (DD) [17] is a data-centric communication protocol
where user interests are flooded to the network and the sensor nodes that match the interests
disseminate their data to the user. TTDD [37] is a two-tier dissemination protocol in which each
source maintains a network-wide grid structure and sinks can locate the source through local flooding.
Cetintemel et al. [7] developed a tree-based dissemination protocol in which nodes change their
sleeping schedules dynamically according to event generation rates. Machado et al. [25] proposed
to disseminate data to sinks according to trajectories determined by the energy levels of nodes. The
above protocols are designed to request data from sources unknown a priori. In contrast, we assume
that sinks request data from known sources (e.g., storage nodes) in this paper. The above solutions
will cause unnecessarily high overhead in such a case. For instance, flooding or a network-wide grid
structure are used by DD and TTDD to facilitate the finding of data sources, which are not necessary
when the locations of sources are known.
SEAD [18] is designed to disseminate data from a known source to mobile sinks. The paths with
different data rates in SEAD can be shared to reduce the number of transmissions. Our work differs
from SEAD in several important aspects: 1) Our solutions are particularly designed for handling
data requests with dynamic rates through efficient topology adaptations, which is not addressed by
SEAD. 2) We focus on developing data dissemination and tree adaptation algorithms with provable
performance bounds for stationary or low-mobility sinks, while SEAD is designed to provide besteffort
dissemination service for mobile users. 3) Our problem formulation accounts for the total
power consumption in all radio states and lossy links. SEAD only reduces the transmission power
of radios and does not address the issue of link reliability in data dissemination.
The dynamic Steiner tree problem has been studied extensively in the literature [34], [16], [11].
4Although the existing solutions to this problem also considered the dynamic changes of endpoints,
our problem is different from this problem because: 1) the dynamic Steiner tree problem does not
take advantage of the broadcast nature of a wireless channel; 2) it does not consider the impact of
data rate changes on the choice of power-efficient dissemination trees.
Energy-efficient unicast/multicast/broadcast for ad hoc networks [2], [27], [22], [19], [35], [33] has
been studied extensively in the last decade. The ETX is first proposed in [2] as a metric to quantify the
transmission energy consumption of lossy links. The existing solutions on energy-efficient multicast
and broadcast focus on minimizing the total transmission power of nodes on the Steiner/spanning
tree that connects the source to multiple sinks. Recently, the problem of minimum-energy reliable
multicast [20], [3] has also been studied. Although these algorithms can be used to transmit data
from a source to multiple sinks, they are not suitable for dynamic multi-resolution data dissemination
because: 1) they do not account for the difference in data rates requested by sinks, which often results
in excessive energy consumption; 2) they often focus on minimizing the transmission energy of nodes,
which render them only effective in particular application scenarios. For example, the contribution
of transmission to the total energy consumption of a network is marginal when data rates are low; 3)
they do not address the issue of topology reconfigurations in response to dynamic network workload
changes.
A. Application Model
III. PRELIMINARIES
In our application model, a source node serves the user requests with possibly different data
refresh rates. The source node could be a cluster head that stores and aggregates the data from all
sensor nodes in its vicinity [13], or a storage node that caches the network-wide information tagged
with certain properties. For instance, a storage node in a surveillance WSN may store and index all
information related to a specific type of intruders [30]. A data request for the source is issued by a
sink that is either the base station or another node in the network. For instance, remote users may
issue queries through the base station while in-network users may issue queries through the nodes
around them [18].
A data request is specified by a triple (t, p, [Φ, Ψ]), where t is the sink, p is the temporal resolution,
Φ and Ψ are two optional parameters that specify the property of data requested and the duration of
the request, respectively. For instance, a request (5, 60s, temperature(A), 3600s) requires a storage
node to report the average temperature of region A to node 5 over the last hour once every minute. We
5note that such a request is also referred to as the sliding-window query in many streaming database
systems [26]. The temporal resolution of each request can be different according to the interest
of the sink. Moreover, in accordance with several representative WSN applications, we assume the
resolution requested by the same sink can change dynamically. In this paper, we assume data sinks
are stationary or have low mobility. We leverage the existing solutions to optimize the dissemination
topology when sinks are highly mobile [37], [18]. For example, the stationary proxy nodes [37]
chosen for the mobile users can serve as data sinks and hence the disruption to the dissemination
tree due to mobility can be reduced.
B. Network Model
We assume all nodes in the network are equipped with omnidirectional antennas. A CSMA MAC
protocol such as S-MAC [38] is employed. We assume wireless links are lossy, which is consistent
with recent empirical findings [41]. Expected transmission count (ETX) [2], [9] of a link is the
expected total number of transmissions before the sender successfully sends a packet to the receiver
through the link. To deal with the link loss, we adopt the per-hop reliability model. That is, a
sender keeps retransmitting a packet until the packet is successfully received by the receiver or
a maximum transmission count is reached. To improve the link reliability, acknowledgements are
always transmitted at high transmission power. We note that such a mechanism does not significantly
increase the total energy consumption as the length of acknowledgments is much shorter than data
packets.
The state of a node is either active or sleeping. An active node can work in the following modes:
transmitting, receiving and idle. We assume the receiving power is equal to the idle power. This
property holds for several WSN platforms such as Mica2 [10] and Telos motes [29]. Accordingly,
we refer to the idle and receiving modes interchangeably in the rest of this paper. As the sleeping
power consumption is orders of magnitude lower than the active power consumption [10], we only
consider the total active power consumption in a network. We define the following terms and notation.
1) R(u, v) represents the ETX of link (u, v), which is computed as
1
εu,v , where εu,v denotes the
link reception probability of link (u, v) and can be obtained from online link estimators [36].
Note that R(u, v) may not equal R(v, u) due to link asymmetry.
2) G(VG, EG) represents the network. V includes all nodes in the network and E is defined as
E = {(u, v)|(u, v ∈ V ) ∧ (R(u, v) ≤ ℜ)} where ℜ is the threshold on the maximum ETX.
63) Ptx and Pid (in the unit of Watt) represent the power consumption of an active node in the
transmitting and idle modes, respectively.
4) B (in the unit of Kbps) represents the bandwidth of any node in the network.
IV. PROBLEM FORMULATION
For a given set of data requests, we aim to build a dissemination tree rooted at the source. The
nodes on the tree operate in a synchronous sleep schedule determined by the temporal resolutions of
requests. All other nodes run in a synchronous sleep schedule with a lower duty cycle. Several lowpower
MAC protocols (e.g., S-MAC [38] employ synchronous sleep schedules in which all nodes
wake up and go to sleep together.
In our problem, the total energy consumption of the nodes on the tree during the lifetime of the
requests should be minimized. The dissemination tree should be dynamically adapted in response to
the changes of temporal resolutions of data requests.
A. Modeling Energy Consumption of Disseminating Nodes
We now model the energy consumption of a node on the dissemination tree. Our modeling is
based on three important principles. First, our model accounts for the total energy consumption of
all active states (idle, transmitting, or receiving) of nodes. According to this model, the minimumenergy
dissemination tree depends on the temporal resolutions of data requests. Second, we account
for the quality of links and the additional energy consumption due to packet retransmissions. Third,
our model takes advantage of the broadcast nature of a wireless channel. Although this property has
also been exploited by existing work, our formulation accounts for the data rates of requests as well
as the quality of links, and seeks to reduce the number of redundant data (re)transmissions while
achieving reliable data delivery on lossy links.
To reduce the power waste due to idle listening, each node on the dissemination tree runs in a
sleep schedule with a period of Ψ seconds and duty cycle of 0 ≤ β ≤ 1. The duty cycle of a sleep
schedule is defined as the ratio of radio listening time to the sleep period. That is, a node remains
active for Ψ ·β seconds in every Ψ seconds. We assume that Ψ and β are known parameters that can
be chosen according to the temporal resolutions supported by the network. Such a periodic sleeping
scheduling mechanism is supported by several power-efficient MAC protocols such as S-MAC [38].
For a data request i specified by (t, pi, [Φi, Ψi]) (see Section III-A), we define the normalized data
rate of request i as ri = |Φi|
B·pi
where |Φi| represents the size of each packet sent by the source s
7s
s
u
u
v
v
1
v
i
t
i
(r
i
)
(a) The case of one sink
t
1
(r
1
) t
i
(r
i
)
(b) The case of multiple sinks
Fig. 1.
The average power consumption of node u in the two cases
that contains a data reading Φi and pi is the temporal resolution of the request i. According to the
definition, ri quantifies the fraction of time that the radio works in the transmission state in order to
satisfy the request i. Since a node can lie on the dissemination path of one or more sinks, we now
derive the average power consumption of the node in these two cases.
a) The case of one sink: Suppose the normalized data rate requested by the sink is ri, and the
next hop of node u on the dissemination path from a source to the sink is v as shown in Fig. 1(a).
The average1 power consumption of u, P(u), is the sum of the power consumption in all radio states
weighted by the fraction of time the radio operates in each state. Specifically, P(u) can be derived
as follows:
P(u) = Ptx · ri · R(u, v) + Pid · (β − ri · R(u, v))
= (Ptx − Pid) · ri · R(u, v) + β · Pid
= ri · θ(u, v) + z (1)
where θ(u, v) = (Ptx −Pid)·R(u, v) and z = β ·Pid are defined for the convenience of discussion. As
defined in Section III-B, Ptx and Pid denote the power consumption of a node in the transmitting and
idle modes, respectively. β is the duty cycle of nodes, i.e., the fraction of time the radio is active, and
among which, ri ·R(u, v) is the expected fraction of time the radio operates in the transmission state
after accounting for the retransmissions due to packet loss, where R(u, v) is the expected number
of transmissions before node v successfully receives a packet from u. We note that the transmission
1
The energy consumed by a node in a given time interval is equal to the average power consumption multiplied by the time. As
the data dissemination duration considered in our problem is a large constant and hence we focus on deriving the average power
consumption of nodes.
8power consumption of lossy links is computed in the same way in several recent works [20], [12],
[2]. For the rest of time the radio operates in an idle or reception state.
Formulation (1) only models the power consumption of data transmissions. The transmission power
of acknowledgements can be incorporated by extending the current formulation. We note that several
energy-efficient communication schemes [6] do not use acknowledgement packets. For instance, the
sender may overhear data packets forwarded by the next-hop node as implicit acknowledgements.
As overhearing assumes the same amount of power as idle state, our modeling is directly applicable
to this case.
The power consumption given by (1) does not include the power consumed by radio when switching
from sleep mode to transmission mode. As the switching occurs only once in every period of sleep
schedule, this power consumption can be included as part of the constant term z in (1). Moreover,
the active interval of radio (i.e., the time before the radio switches to sleep again) is significantly
longer than the radio switching time in our model. As a result, ignoring the energy consumption of
radio switching does not have a significant impact on the computation of energy consumption in this
paper.
b) The case of multiple sinks: The derivation of power consumption in the case of multiple
sinks with different data rates is more involving because of path sharing. Suppose u lies on the paths
from a source to a set of sinks {ti}. Suppose ti requests a normalized data rate of ri, 0 ≤ ri < 1.
The next hop node of u on the dissemination path to ti is denoted as vi as shown in Fig. 1(b). As
discussed earlier, the effective data rate requested by vi is ri ·R(u, vi) due to retransmissions. u then
only needs to satisfy the maximum effective data rate of all the next-hop nodes. According to (1),
the average power consumption of u can be derived as follows:
P(u) = (Ptx − Pid) max ri · R(u, vi) + β · Pid
vi
= max ri · θ(u, vi) + z (2)
vi
B. Minimum-power Multi-resolution Data Dissemination
For the convenience of discussion, we first introduce the formulation of a simplified version of our
problem referred to as Minimum-power Multi-resolution Data Dissemination (MMDD). In MMDD,
9the data rate of a request is fixed and the duration of all data requests is the same. We discuss the
dynamic MMDD problem in Section IV-D.
Given the source s and a set of data requests, a dissemination tree rooted at s is constructed to
connect s to all sinks. The nodes on the tree operate in a sleep schedule with duty cycle β while all
other nodes run in a low duty cycle. The objective is to minimize the total power consumption of
all tree nodes in the active radio states (idle/transmitting/receiving).
Definition 1 (MMDD problem): Given a network G(VG, EG), a source node s, and a set of data
requests D = {(ti, ri) | 1 ≤ i ≤ j}, find a tree T(VT, ET) ⊆ G with root s, s.t. {ti | 1 ≤ i ≤ j} ⊆ VT
and the total power consumption of all the nodes on T , P(T), is minimal, where
P(T) =
∑
P(u)
where WT(u) is given by
WT(u) =
u∈VT
= |VT |z + ∑
∃ti∈ψT (u)
WT(u) (3)
max
ti∈ψT (v),v∈ωT (u) ri · θ(u, v) (4)
where ωT(u) represents the set of child nodes of u on T while ψT(u) represents the set of nodes
on the subtree rooted at u, i.e., the union of node u and all the descendent nodes of u 2 . WT(u) is
defined as the maximum of ri · θ(u, v) where v is a child of u and also a sink ti or the ancestor of
a sink ti. We also define WT(u) = 0 when u does not have any child node.
The total power consumption in (3) is obtained by summing the power consumption of each node
on tree T . If a node is a leaf, the power consumption is simply z because it is always in either
receiving or idle states (which consume the same power as assumed in Section III-B). For node u
whose descendants include at least one sink, i.e., ∃ti ∈ ψT(u), the power consumption is given by
(2), i.e., the sum of z and WT(u).
We now use an example shown in Fig. 2 to illustrate the formulation in (3). In Fig. 2, tree T is
composed of 6 nodes. Only three nodes s, g and v have children, where ωT(s) = {g, v}, ψT(s) =
{s, g, v, t1, t2, t3}, ωT(g) = {t1, t2},ψT(g) = {g, t1, t2}, ωT(v) = {t3}, ψT(v) = {v, t3} The power
consumption of each node is first computed using (2). We then show that the total power consumption
of all nodes matches formulation (3). According to (2), the power consumption of node s, P(s), can
2
For any vertex u on T , vertex v is a descendent of u if u lies on the unique path from the root to v on T . v is a child of u if v
is adjacent to u and is a descendent of u. Note that a child of u is also a descendent of u.
10s
v
g
t3 (r3)
t1 (r1)
t2 (r2)
Fig. 2.
An example of the MMDD problem formulation. Three sinks, t1, t2 and t3, request a data rate of r1, r2 and r3, respectively.
be computed as: P(s) = z + max{r1 ·θ(s, g), r2 ·θ(s, g), r3 ·θ(s, v)}, which is equal to z +WT(s).
Similarly, P(g) = z + max{r1 · θ(g, t1), r2 · θ(g, t2)} = z + WT(g) and P(v) = z + r3 · θ(v, t3) =
z + WT(v). For other nodes, P(t1) = P(t2) = P(t3) = z. The total power consumption is then
6z + ∑
u∈{g,s,v} WT(u). It can be easily seen that this result exactly matches the formulation of (3).
C. Hardness of the MMDD Problem
We now discuss the hardness of the MMDD problem. When |D| = 1, the MMDD problem becomes
a unicast case, which can be solved by Dijkstra’s shortest-path algorithm [5]. When θ(u, v) = 0,
formulation (3) reduces to minimize the total number of nodes in VT . This problem is equivalent to
finding the minimum weight Steiner tree in G(VG, EG) with uniform edge weight z to connect the
nodes in s ∪ {ti}. This special case of the minimum weight Steiner tree problem is NP-hard [14]. As
a result, a natural reduction from this problem can show that the MMDD problem is also NP-hard.
Furthermore, when z = 0 and ri = 1, ∀(ti, ri) ∈ D, (3) reduces to:
P(T) = ∑
u∈VT
max θ(u, v) (5)
v∈ωT (u)
If nodes in the network have tunable transmission power and θ(u, v) is the minimum transmission
power of node u to reach node v, (5) minimizes the total transmission power of all nodes on the
multicast tree that is rooted at the source and connects all sinks. This problem has been studied as the
minimum-power multicast tree [21]. Note that network G(VG, EG) is directed in our problem because
θ(u, v) may not equal θ(v, u) due to link asymmetry. It is shown in [21] that the minimum-power
multicast tree problem can be transformed to the problem of finding the minimum weight Steiner
tree in directed graphs. The best centralized algorithm for this problem has an approximation ratio
of |D| ǫ where ǫ is a positive constant with 0 < ǫ ≤ 1 [8]. When D = VG \ {s}, all the nodes except
11the source are sinks. As a result, the term |VT |z in (3) becomes a constant for a given network.
This special case of the MMDD problem is similar to the one discussed above in which z = 0 and
polynomial-time approximation algorithms do not exist.
We note that the existing algorithms of the above mentioned special cases cannot be applied to
the general MMDD problem. Moreover, the offline algorithms like the one proposed in [21] cannot
handle the online arrivals of data requests and dynamic changes of data rates.
D. Dynamic MMDD Problem
In real-world WSN applications, data requests for a source are often dynamic due to several
reasons. First, a new data request may arrive online3 . Second, the temporal resolution of an existing
request may change. For example, a user may request a higher data rate when an event of interest
is reported. These dynamics introduce a major challenge for the MMDD problem. We now illustrate
the impact of dynamic data rates on the choice of dissemination paths in the following two examples.
In Fig. 3(a), there exist two different paths from s to t. Each link is labeled with its ETX. We can
see that v1 → t is a long link with a higher loss rate. The idle and transmission power consumption
of each node are set to 37 and 133 mW according to the data of the CC1000 radio on Mica2 motes
[10]. The duty cycle of each node, β, is 10%. The power consumption of the two paths, s → v1 → t
and s → v1 → v2 → t, are calculated as the function of data rate requested by t and shown in Fig.
3(b). We can see that which path is more power-efficient depends on the data rate. When the rate is
higher than 0.037 (which corresponds to 2.36 Kbps for Mica2 motes with the bandwidth 64 Kbps),
the transmission power dominates the total power consumption of a path. Consequently, short and
reliable links are favored to minimize the transmission energy. On the other hand, the idle listening
power may dominate in the case of a low rate, and hence a long but lossier link like v1 → t is
more power-efficient as it reduces the number of nodes on a dissemination path resulting in less idle
power waste.
Besides the impact on the power efficiency of a single dissemination path, data rates also play
an important role in the choice of the dissemination tree. Fig. 4 shows a configuration with two
sinks t1 and t2. In Fig. 4(a), t1 and t2 request normalized rates of 0.03 and 0.01, respectively,
and the minimum-power tree is composed of the bold links. As any dissemination tree in such
3
In this paper, we focus on long-term and low data-rate data dissemination applications. Accordingly, we assume that data requests
remain active for a relatively long time before they disappear. Addressing the issue of data request leaves is left to the future work.
12s
1.1
1
v
1
Power Consumption
(mW)
P(s--v
1
--t)
3
v
2
7.4
P(s--v
1
--v
2
--t)
1
3.7
(a)
t
0.037
(b)
r (data rate/bandwidth)
Fig. 3.
Impact of data rate on the minimum-power dissemination path
s
s
1
1
u
u
2
1
1.5
1
2
1
1.5
1
t
1
(r
1
=0.03)
v
(a)
t2 (r2=0.01) t1 (r1=0.03) v t2 (r2=0.03)
(b)
Fig. 4.
solid links.
Impact of data rate on the minimum-power dissemination tree. The optimal tree in each configuration is composed of bold
a configuration must include all nodes on it, we only compute the power consumption related to
the transmission power (i.e., the sum term in (3)). According to (3), the total cost of the tree can
be calculated as r1 · θ(s, u) + r1 · θ(u, t1) + r2 · θ(v, t2) = 9.6 mW. When the rate request of t2
increases to 0.03, the optimal tree changes as shown in Fig. 4(b) with a total power consumption of
r1 · (θ(s, u)+θ(u, v)+θ(v, t1)) = 10.08 mW, while the total power consumption is 11.52 mW if the
original tree in Fig. 4(a) is used.
The above two examples show that online data rate changes can impact the power efficiency of an
existing dissemination tree. Although a new dissemination tree can be configured to reduce the total
power consumption in the presence of data rate changes, frequent tree reconfigurations may result
in significant overhead to the network. Therefore, the challenge for the dynamic MMDD problem is
to minimize the energy consumption of a dissemination tree in the steady state while reducing the
tree reconfiguration overhead due to data rate changes.
V. MINIMUM INCREMENTAL TREE CONSTRUCTION
We develop a novel solution to the dynamic MMDD problem which we refer to as Minimum
Incremental Dissemination Tree (MIDT). MIDT includes an online tree construction algorithm that
constructs a dissemination tree incrementally when new data requests arrive, and two lightweight
13tree adaptation heuristics. In this section, we present the tree construction algorithm and analyze its
performance.
A. An Online Tree Construction Algorithm
MIDT expands the existing dissemination tree dynamically in response to the arrivals of new data
requests. The pseudo-code of the incremental tree construction algorithm of MIDT is shown in Fig.
5. Without loss of generality, we assume that the sinks arrive online in an order of t1, t2, · · · , tj,
and Ti(VTi , ETi
) (1 ≤ i ≤ j) denotes the corresponding tree constructed after the arrival of sink
ti. At the very beginning when the first sink t1 arrives, VT0
= {s}, ET0
= ∅. Then the subsequent
dissemination tree Ti will be constructed based on the existing dissemination tree Ti−1 in response
to the arrival of ti. When the source receives a data request from a new sink ti, it finds the shortest
path to ti according to a new cost metric dependent on ri as well as the status of nodes (whether
included on Ti−1 already). Specifically, the cost of edge (u, v) is defined by function di(u, v, ri) as
follows:
⎧
⎪⎨
[
ri · θ(u, v) − WTi−1
di(u, v, ri) =
⎪⎩
(u)] +
+ z , v /∈ VTi−1
[
ri · θ(u, v) − WTi−1 (u)] +
, Otherwise
⎧
⎪⎨ max
w∈ωT (u)
WTi
(u) = i
⎪⎩
rj · θ(u, w) , (u ∈ VTi ) ∩ (∃tj ∈ ψTi (u))
0 , otherwise
where function [x]+ is equal to 0 if x < 0 and is equal to x, otherwise. ωTi
(u) and ψTi
(u) are the
sets of child nodes of u and the nodes on the subtree rooted at u, respectively. WTi
(u) represents
the current power consumption of u on tree Ti.
The definition of di(u, v, ri) in (6) minimizes the additional power consumption of edge (u, v)
due to the arrival of new sink ti. Specifically, di(u, v, ri) is equal to the sum of additional power
consumption of node u and v. If node v is a new leaf node (i.e., v is the new sink and is not on the
existing tree Ti−1), the additional power consumption of v is simply z because v is either in listening
or receiving state, as discussed in Section IV-A. Otherwise, the additional power consumption of
v is zero. For node u, the additional power consumption is the difference between ri · θ(u, v) and
WTi−1(u) that is the current power consumption of node u on Ti−1. In particular, including u on the
tree does not incur any new power consumption if ri · θ(u, v) is no greater than WTi−1(u). This is
consistent with the problem formulation (3) in which the power consumption of u is the maximum
14
(6)
(7)ri · θ(u, v) among all its children v. Note that the fixed power consumption of u (i.e., z) and the
rate-dependent power consumption of v (i.e., WTi−1(v)) are not accounted in the cost of edge (u, v).
Instead, they are included in the cost of incoming edges of u and outgoing edges of v, respectively.
Input: G(VG, EG), Ti−1(VTi−1
, ETi−1
), source s
Output: Ti(VTi , ETi
)
1) VT0
= {s}, ET0
= ∅
2) if new data request (ti, ri)(i ≥ 1) arrives
3) end
a) Assign cost to each edge (u, v) in G according to function di(u, v, ri).
b) Find the shortest path in G from s to ti, Γ(s, ti).
c) Ti = Ti−1 ∪ Γ(s, ti).
Fig. 5.
The incremental dissemination tree construction algorithm.
We note that the resulting graph constructed by the algorithm may be a multi-parent tree as two
different nodes may choose the same node as the next hop in two iterations. However, this fact does
not affect the correctness of the algorithm. The main step of the incremental algorithm is finding the
shortest path for each new data request, which can be implemented in a distributed fashion efficiently
using the distributed Bellman-Ford (DBF) algorithm with a message complexity of O(|EG| · |G|)
where |G| is the diameter of the network4 .
The key idea of the algorithm in Fig. 5 is that the dissemination tree is expanded incrementally
when a new sink arrives. The new branch of the tree has the minimum cost of connecting the new
sink to the existing tree. We note that this idea was also adopted by existing work [27]. In particular,
Algorithm M proposed by Nguyen in [27] is an online algorithm that incrementally constructs a
multicast tree for a group of nodes. Similarly, Algorithm M also connects a new node to the existing
tree by the path with the least cost. Despite the similarity, there exist several key distinctions between
[27] and our work. First, a key novelty of MIDT is the adoption of the new link cost model that
captures several important factors not jointly considered previously, which include link quality, the
broadcast nature of wireless channel and the data rates of requests. In contrast, link cost model design
4
The diameter of network G is defined as the maximum hop count of the shortest path between any two nodes in G.
15is not the focus of [27]. Second, based on the algorithm in Fig. 5, two new tree adaptation algorithms
are presented in Section VI to handle dynamic data rate changes which have not been considered
in previous work. Third, the path search procedures used in the Algorithm M and our algorithm are
different as the transmission power of nodes are assumed to be variable in [27].
B. Performance Analysis
We now analyze the performance of the tree construction algorithm assuming that the data rate of
each request is fixed. The case of dynamic data rate changes can be handled by the lightweight tree
adaptation heuristics discussed in Section VI. We define the following notation. ΓG(s, t) represents a
path from node s to node t in an unweighted graph G. c(y, ΓG(s, t)) denotes the cost of path ΓG(s, t)
under function y that defines the cost of each edge of G. We have the following lemma.
Lemma 1: Suppose G is a graph that contains source node s and sink nodes {t1, · · · , tj}. Tj(VTj , ETj
)
represents the output of the incremental dissemination tree construction algorithm in Fig. 5 when the
data requests arrive in the order (t1, r1), · · · , (tj, rj). The total cost of shortest paths found by the
algorithm is equal to the total power consumption of nodes in Tj defined by (3). That is:
P(Tj) = |VTj|z +
∑
∃ti∈ψT j
(u)
∑
WTj
(u) = c(di, ΓG(s, ti)) (8)
1≤i≤j
where WTj (u) is given by (7). ΓG(s, ti) is the shortest path found in the i th iteration of the algorithm
(under cost function di(u, v, ti)) when data request (ti, ri) arrives.
Proof: According to definition, P(Tj) includes a constant cost z for each leaf node. For a non-
∑
leaf node u, P(Tj) includes a cost of z + WTj
(u). We now show that
1≤i≤j c(di, ΓG(s, ti)) includes
exactly the same costs for leaf and non-leaf nodes of Tj.
We first discuss the case of leaf nodes. It is easy to see that all leaf nodes are also sinks. For sink
node ti, according to (6), ∑
1≤i≤j c(di, ΓG(s, ti)) includes cost z for ti only once when the shortest path
from the source to ti is found.
We now discuss the case of non-leaf nodes. Suppose u is a non-leaf node and (x, u) is the first
incoming edge of u that is included on a shortest path when sink ti arrives. As discussed in Section
V-A, the cost of edge (x, u), di(x, u, ri), includes a fixed cost z for node u. Moreover, according to
the definition of di(x, u, ri), including any subsequent incoming edge of u on a shortest path does
not incur any cost for node u.
Suppose the outgoing edges of u, (u, wi)(1 ≤ i ≤ m), are included on a shortest path in m
iterations during the execution of the algorithm. Note that wi may be identical to wj (i ̸= j) when
16the same outgoing edge of u is included on two different shortest paths. Denote the data requests that
arrive and the trees that are produced in these iterations as (t u 1, r u 1), · · · , (t u m, r u m) and T u 1 , · · · , T u m,
respectively. According to the definition of di(x, u, ri), when edge (u, wi) is included on a shortest
path, the cost of u is the increment [ ru i · θ(u, wi) − WT u i (u)] +
. Moreover, WT u(u) is defined as the
i
maximum rj · θ(u, wj) among all data requests arrived so far. Therefore, the total cost of u included
in ∑
1≤i≤j c(di, ΓG(s, ti)) after all data requests arrive is equal to WT u (u). Formally,
m
r u 1 · θ(u, w1) + r u 2 · θ(u, w2) − WT u 1 (u) + + · · · +�r u m · θ(u, wm) − WT u m−1 (u)�+
= r u 1 · θ(u, w1) + [r u 2 · θ(u, w2) − r u 1 · θ(u, w1)] + + · · · +�r u m · θ(u, wm) − max rj · θ(u, w)�+
tj∈ψT u (u),w∈ωT u (u)
m−1 m−1
= max rj · θ(u, w)
tj ∈ψTu (u),w∈ω
m T u (u)
m
= WT u m (u)
Note that WT u m (u) = WT u j (u) because WT u j
(u) only depends on the m data requests whose shortest
paths include an outgoing edge of u. So far we have shown that the total cost of u that is included
in ∑
1≤i≤j c(di, ΓG(s, ti)) is z + WTj (u).
In summary, we have shown that ∑
1≤i≤j c(di, ΓG(s, ti)) includes the cost of z for each leaf node in
Tj and z + WTj (u) for each non-leaf node in Tj, which is exactly the same as P(Tj).
We now show that the performance bound of the online incremental tree construction algorithm
is at most the number of data requests that have arrived so far. The proof of this property is based
on the following theorem.
Theorem 1: Suppose D represents the set of data requests arrived so far. The approximation ratio
of the algorithm in Fig. 5 is no greater than |D| relative to the optimal offline solution.
Proof: We define a new cost function g(u, v, ri) for edge (u, v) on the path of data request
(ti, ri):
g(u, v, ri) = ri · θ(u, v) + z (9)
Suppose Γ g
G (s, ti) and Γ di
G (s, ti) are the shortest paths found under cost functions of di(u, v, ri) and
g(u, v, ri) when data request (ti, ri) arrives, respectively. Note that the cost of edge (u, v) in g(u, v, ri)
does not depend on the order of arrival of sinks nor the status of the tree construction. In contrast,
di(u, v, ri) defines the incremental cost with respect to the current cost on the existing tree for edge
17(u, v) . According to (6) and (9), we can see that di(u, v, ri) ≤ g(u, v, ri). Therefore, the cost of path
Γ g
G (s, ti) under cost function g(u, v, ri) is no greater than that under cost function di(u, v, ri):
c(di, Γ g
G (s, ti)) ≤ c(g, Γ g
G (s, ti)) (10)
Furthermore, as Γ di
G (s, ti) is the shortest path from s to ti under cost function di(u, v, ri), its cost is
no greater than the cost of Γ g
G (s, ti) under di(u, v, ri):
From (10) and (11), we have:
c(di, Γ di
G (s, ti)) ≤ c(di, Γ g
G (s, ti)) (11)
c(di, Γ di
G (s, ti)) ≤ c(g, Γ g
G (s, ti)) (12)
Suppose T ∗ (VT ∗, ET ∗) is the optimal offline solution to the problem and Γg
T ∗(s, ti) is the shortest path
in T ∗ that is found under cost function g(u, v, ri). It can be seen that c(g, Γ g
T ∗(s, ti)) is no greater
than P(T ∗ ), the power consumption of all nodes in T ∗ . This is because, according to the definition of
P(T ∗ ) in (3), the power consumption of node u in T ∗ is the sum of z and the maximum of rk ·θ(u, v)
for all data requests (rk, tk) whose paths host node u while the cost of node u in c(g, Γ g
T ∗(s, ti))
only includes z + ri · θ(u, v). Formally,
c(g, Γ g
T ∗(s, ti)) = |Γ g
T ∗(s, ti)|z + ∑
∑
≤ |VT ∗|z +
(u,v)∈Γ
ri · θ(u, v)
max
ti∈ψ(u),v∈ω(u)
∃ti∈ψT(u)
ri · θ(u, v)
= P(T ∗ ) (13)
where |Γ g
T ∗(s, ti)| denotes the hop count of path Γ g
T ∗(s, ti) and (u, v) ∈ Γ represents that edge (u, v)
lies on path Γ g
T ∗(s, ti). As Γ g
G (s, ti) and Γ g
T ∗(s, ti) are the shortest paths found according to the same
cost function g(u, v, ri) in graph G and T ∗ , respectively, and T ∗ ⊆ G, the cost of Γ g
G (s, ti) must be
no greater than that of Γ g
T ∗(s, ti):
c(g, Γ g
G (s, ti)) ≤ c(g, Γ g
T ∗(s, ti)) (14)
From (12), (13) and (14), we can see that the cost of the shortest path found by the algorithm is no
greater than the power consumption of all nodes in the optimal solution:
18c(di, Γ di
G (s, ti)) ≤ P(T ∗ ) (15)
According to Lemma 1, the total power consumption of all nodes in T is the sum of all costs of the
shortest paths found in each iteration. Therefore, we have:
P(T) =
∑
1≤i≤|D|
c(di, Γ di
G (s, ti)) (16)
≤ |D|P(T ∗ ) by (15)
C. Distributed Implementation
We now discuss the distributed implementation of the tree construction algorithm. The main
procedure of the algorithm in Fig. 5, step 2.b, is to find the shortest path for each new data request.
This step can be implemented efficiently using the distributed Bellman-Ford (DBF) algorithm [4], [5].
In the original DBF [5], each node stores the shortest hop count to the destination and periodically
advertises the value to its neighbors. When receiving an advertisement, a node sets the neighbor with
the minimum hop count to the destination as its next hop. As MIDT is designed for disseminating
data from a single source to multiple sinks, the source node is responsible for initiating the cost
advertisements and each node stores the minimum cost to the source.
The DBF has a message complexity of O(|E| · |G|) where |G| is the diameter of the network. In
contrast to the DBF that uses the same cost metric (hop count) for finding all paths, MIDT requires
a new cost metric (as defined in (6)) when finding a path for a new request. As a result, a new
round of cost advertisements is needed when a new request arrives (step 2.b). Hence the message
complexity of MIDT is O(|D| · |E| · |G|) where D is the set of requests. For each different data rate,
a node in MIDT needs to store a cost to the source from itself and each of its neighbors. Hence
the computational and spatial complexity of MIDT is O(|D| · |N|) where N is the neighbor set of
a node.
VI. LIGHTWEIGHT DISSEMINATION TREE ADAPTATION
Theorem 1 shows that the dissemination tree constructed by MIDT has provable power efficiency.
However, as discussed in Section V, the quality of a dissemination tree may degrade when the data
19rates of requests change. In such a case, a new tree can be found by re-executing the tree algorithm
under the new data rates. However, such a strategy is not desirable because of the high overhead.
We now present two novel tree adaptation heuristics used by MIDT, which maintain desirable power
efficiency of the dissemination tree while reducing the tree reconfiguration overhead.
A. Path-quality based Tree Adaptation
The basic idea of the path-quality based tree adaptation heuristic is to estimate the upper-bound
on the quality degradation of the current dissemination path in the presence of a data rate change,
and decide if a new path under the new rate needs to be found. The key to the effectiveness of this
heuristic is to accurately estimate the quality degradation of a path without incurring high overhead.
1) Estimating the Quality of an Independent Path: We now discuss a novel technique to estimate
the power efficiency of a path relative to the optimal path when the data rate changes. Such estimation
is solely based on the information local to the path and hence incurs no additional overhead. In this
section, we discuss how to estimate the quality degradation of an independent path that does not
share any links with other source-to-sink paths. We extend our result to the case of multiple paths
sharing links with each other in Section VI-A.2.
We define the following notation. Γ(s, ti) represents a path from s to ti. (s, ti) may be omitted if
no confusion arises. We define the fixed and rate-dependent costs of Γ as follows:
Pf(Γ) = |Γ| · z (17)
Pr(Γ) =
∑
θ(u, v) (18)
(u,v)∈Γ
According to (1), when the data rate is ri, the power consumption of the nodes on Γ can be
expressed as:
P(Γ, ri) = Pf(Γ) + ri · Pr(Γ) (19)
Obviously, the minimum-power path from s to ti depends on ri. When the data rate of a path changes,
our goal is to theoretically estimate the difference between the power consumption of the path and
that of the optimal path under the new rate. Such estimation is critical for reducing the unnecessary
path reconfigurations in the presence of frequent data rate changes. We have the following theorem.
Theorem 2: Suppose Γ l and Γ h represent the minimum-power paths from s to sink ti when the
data rates are rl and rh, respectively. rl ≤ rh. Then we have the following relations:
20(1 − rl
) · Pf(Γ h ) (20)
P(Γ h , rl) − P(Γ l , rl) ≤
rh
P(Γ l , rh) − P(Γ h , rh) ≤ (rh − rl) · Pr(Γ l ) (21)
Proof: For the convenience of discussion, let P h f , P l f , P h r and P l r represent Pf(Γ h ), Pf(Γ l ),
Pr(Γ h ), and Pr(Γ l ), respectively. Since path Γ l is the minimum-power path under rate rl, its power
cost must be less than the power cost of path Γ l under the same rate:
P(Γ h , rl) ≥ P(Γ l , rl) ⇔ P h f + rl · P h r ≥ P l f + rl · P l r (22)
where P(Γ h , rl) and P(Γ l , rl) are replaced according to (19). Similarly, since path Γ h is the minimumpower
path under rate rh, its power cost must be less than the power cost of path Γ l under the same
rate:
P(Γ l , rh) ≥ P(Γ h , rh) ⇔ P l f + rh · P l r ≥ P h f + rh · P h r (23)
We first prove (20) holds.
P(Γ h , rl) − P(Γ l , rl) = P h f − P l f + rl · (P h r − P l r) (24)
From (23), P h r − P l r ≤ P l f −P h f
rh
. Then (24) reduces to:
P(Γ h , rl) − P(Γ l , rl) ≤ P h f − P l f + rl · P l f − P h f
rh
= (1 − rl
)(P h f − P l f)
≤
rh
(1 − rl
)P
rh
h f (25)
We now prove (21) holds. From (22), we have:
P l f − P h f ≤ rl · P h r − rl · P l r (26)
21As rh ≥ rl, (26) reduces to:
P l f − P h f ≤ rh · P h r − rl · P l r (27)
Then the difference between the power cost of Γ l and Γ h under data rate rh can be expressed as
follows:
P(Γ l , rh) − P(Γ h , rh) = P l f − P h f + rh · (P l r − P h r )
≤ rh · P h r − rl · P l r + rh · (P l r − P h r )
= (rh − rl) · P l r
The significance of Theorem 2 is that, when the data rate changes, the quality degradation of the
existing path constructed based on the old data rate can be estimated solely based on the local
information of the path. For example, according to (20), when the data rate increases from rl to rh,
the difference between the power consumption of the existing path and the optimal path under new
data rate rh can be bounded by the product of rh − rl and the rate-dependent cost of Γ under rate
rl, Pr(Γ l ). Since Γ l is an existing path, both rh − rl and Pr(Γ l ) are known quantities. Therefore,
the quality degradation of path Γ l when data rate changes from rl to rh can be estimated without
flooding the whole network.
2) Estimating the Quality of Dependent Paths: Theorem 2 estimates the quality degradation of
an independent path that does not share any links with other paths. When multiple paths share links
with each other, Theorem 2 is not applicable because different segments of a path may have different
data rates due to link sharing. We now discuss how to deal with dependent paths using a simple
example illustrated in Fig. 6. In the figure, two dependent paths, s → t1 and s → t2 share the links
from source s to node u. The data rates of two sinks t1 and t2 are r1 and r2, respectively. As path
s → u lies on two paths s → t1 and s → t2, its data rate is equal to max(r1, r2).
We now discuss how to estimate the quality degradation of path s → t1 when data rate changes
from r1 to r ′ 1 . Obviously, Theorem 2 is not applicable because two possibly different data rates,
max(r1, r2) and r1, exist on the path. Our basic idea to deal with this issue is to estimate the quality
degradation of two segments of the path, s → u and u → t1, separately. As the links on each
22s
s
max(r1,r2, r3)
max(r1,r2)
u
u
max(r1,r2)
r3
r1
r2
v
r1
r2
t3, r3
t1, r1 => r1' t2, r2
(a)
t1, r1 => r1' t2, r2
(b)
Fig. 6. (a) Two dependent paths, s → t1 and s → t2, which share the links from s to u. The data rate of segment s → u is
max(r1, r2). (b) Three dependent paths s → t1, s → t2 and s → t3. The data rates of segments s → u and u → v are max(r1, r2, r3)
and max(r1, r2), respectively.
path segment have the same data rate, Theorem 2 can be applied. Before we present the details, we
define the following notation. Suppose Γ is the minimum-power path from node u to v (under cost
function (1)) when the data rate is r. ∆P(r1, r ′ 1 , u, v) represents the difference between the power
consumption of Γ and that of the minimum-power path when the data rate changes to r ′ . According
to Theorem 2, we have:
∆P(r, r ′ , u, v) =
⎧
⎪⎨ (1 −
r
r ′) · Pf(Γ) , if r > r ′
⎪⎩
(r′ − r) · Pr(Γ) , otherwise
(28)
Suppose ropt is the data rate under which the power consumption of path s → u is minimum.
According to the tree construction algorithm of MIDT, ropt is either r1 or r2 depending on the
sequence of arrivals of sink t1 and t2. Denote the quality degradation of path s → t1 when r1
changes to r ′ 1
as ∆P . ∆P is equal to the sum of quality degradation of two path segments s → u
and u → t1. First, path u → t1 does not share any links with other paths, and hence its quality
degradation can be estimated to be ∆P(r1, r ′ 1 , u, t1) using Theorem 2. On the other hand, the quality
degradation of path s → u depends on whether the new data rate r ′ 1
causes the current data rate
max(r1, r2) change. We define r ′ = max(r ′ 1, r2). We now discuss the following two cases. 1) When
r ′ ̸= max(r1, r2), the data rate of path s → u is changed to r ′ 1 , and the quality degradation can be
estimated to be P(ropt, r ′ 1 , s, u). Note that P(ropt, r ′ 1 , s, u) is solely determined by the new rate r′ 1
and the data rate under which the path is optimal, ropt, and is independent of the current data rate
max(r1, r2). 2) When r ′ = max(r1, r2), path s → u does not see a change of data rate and hence
has no quality degradation. In summary, ∆P can be expressed as follows:
23∆P =
⎧
⎪⎨
⎪⎩
∆P(ropt, r ′ , s, u) + ∆P(r1, r ′ 1 , u, t1) , if r ′ ̸= max(r1, r2)
∆P(r1, r ′ 1
, u, t1)
,
otherwise
(29)
(29) is only applicable to the case in which there exist two sinks in the network. When there are more
sinks, a similar equation can be easily derived by dividing a path into multiple path segments with a
single data rate. Fig. 6(b) illustrates the case of three sinks. When the data rate of sink t1, r1, changes
to r ′ 1 , the quality degradation of path s → t1 can be derived as the sum of quality degradation of
three segments, s → u, u → v and v → t1. Theorem 2 can be applied to each segment separately as
all links on the segment have the same data rate.
3) Path Adaptation Logic: We now discuss how to determine if a new path will be searched in
the presence of a new rate change based on the quality degradation of the existing path. Suppose a
data request i is specified by (ti, ri, Ti) where ri and Ti are the data rate and duration of the request.
When the request (ti, ri, Ti) changes to (ti, r ′ i
′ ′
, T ) (T is the duration of the request under new rate
i
r ′ i), MIDT first estimates a quantity, ∆P , which is the upper bound on the difference between the
power consumption of the existing path and that of the optimal path under data rate r ′ i
i
according to
the discussion in Section VI-A.1 and VI-A.2. Then MIDT finds the new shortest-path from source
s to ti according to cost function (1) if ∆P · T ′
i > δ. Otherwise, MIDT continues to use the existing
path for the request. δ is a tunable parameter determined by the desirable trade-off between the path
stability and power efficiency. To achieve the best power efficiency, δ can be set to be the energy
consumed by finding the new path. For instance, when the distributed Bellman-Ford shortest path
algorithm [5] is used to implement step 2.b of MIDT in Fig. 5, finding a new path requires to
propagate the new link costs across the network. In such a case, δ can be approximated by the total
energy consumed by a round of network flooding.
B. Reference-rate based Tree Adaptation
We now propose a new heuristic called the reference-rate based tree adaptation, which always
(re)builds a dissemination tree using a single data rate estimated based on the data rates of all existing
requests. In contrast to the path-quality based heuristic that adapts the tree on a per-path basis, this
heuristic considers the aggregate impact of data rate changes of different paths, which reduces the
number of tree adaptations.
24We first show that building a dissemination tree using a single data rate can achieve provable
performance bound if the rate falls within the range of possible data rates. We have the following
theorem.
Theorem 3: For a given set of requests D with data rates R = {ri|rmin ≤ ri ≤ rmax} and
ρ = rmax/rmin, the approximation ratio of tree construction algorithm of MIDT (Fig. 5) assuming that
all the data rates are equal to r, is at most ρ|D|, i.e., P(T) ≤ ρ|D|P(T ∗ ), as long as rmin ≤ r ≤ rmax
holds, where T and T ∗ are the trees found by MIDT and the optimal solution, respectively.
Proof: Denote Pr(T ′ ) as the power consumption (computed by (3)) of the dissemination tree
T ′ assuming that all the data rates are equal to r. We first show that Pr2(T ′ ) ≤ Pr1(T ′ ) ≤ r1
r2 Pr2(T ′ )
holds for any dissemination tree T ′ if r1 ≥ r2. As function P(·) defined in (3) is nondecreasing with
respect to the data rate, Pr2(T ′ ) ≤ Pr1(T ′ ) holds. Furthermore,
Pr1(T ′ ∑
) = |VT ′|z +
r1
= |VT ′|z +
r2
⎛
≤
r1
r2
= r1
r2
max
v∈ω(u),ti∈ψ(u)
ψ(u)̸=∅
∑
ψ(u)̸=∅
∑
⎝|VT ′|z +
r1 · θ(u, v)
max
v∈ω(u),ti∈ψ(u) r2 · θ(u, v)
max
v∈ω(u),ti∈ψ(u)
ψ(u)̸=∅
⎞
r2 · θ(u, v) ⎠
Pr2(T ′ ) (30)
Let T denote the tree found by the tree construction algorithm of MIDT using data rate r. Since
∀ri ∈ R, ri ≤ rmax and r ≤ rmax, we have:
P(T) ≤ Prmax(T) ≤ rmax
r Pr(T) (31)
where the last inequality follows from the inequality (30). Denote the optimal tree found under a
single data rate r as T r . According to Theorem 1, we have:
Pr(T) ≤ |D| · Pr(T r ) ≤ |D| · Pr(T ∗ ) (32)
where the last inequality holds due to the optimality of T r under data rate r. Finally, since rmin ≤ r
and ∀ri ∈ R, rmin ≤ ri, we have:
25Pr(T ∗ ) ≤
r
rmin
Prmin (T ∗ ) ≤
r
rmin
P(T ∗ ) (33)
where the first inequality also follows from the inequality (30), and the last inequality holds since
we use the same tree T ∗ to compute the energy consumption with different rates according to our
formulation (3) and rmin ≤ r. Then combining (31), (32) and (33), we obtain:
P(T) ≤
≤
|D| · rmax
r
|D| · rmax
r
= ρ|D|P(T ∗ )
· Pr(T ∗ )
·
r
rmin
P(T ∗ )
Based on the above theorem, we will show how the online heuristic works in detail as shown in
Fig. 7.
1) The reference rate r ∗ is initialized to 0
2) rmin = 0, rmax = 0
3) if a new sink ti arrives with a data rate ri or an existing data request changes its rate ri
to r ′ i
a) Update rmin and rmax according to the new data rates
b) if (r∗ < rmin)||(r∗ > rmax)
i) Update r∗ to the average rates of the existing data requests
ii) Execute the tree construction algorithm in Fig. 5 with r∗ c) end
4) end
Fig. 7.
The reference-rate based tree adaption heuristic.
In the reference-rate based heuristic shown in Fig. 7, every time when a new data request arrives
or an existing data rate changes, the source checks if the current reference rate falls within the
range, [rmin, rmax], of the existing data rates. If the reference rate is outside the range, the source
26updates the reference rate to the average rate of the existing data requests and then executes the tree
construction algorithm with the new reference rate. Otherwise, the existing tree will be maintained.
The intuition behind this algorithm is that the average rate is a good approximation of the existing
data rates. At the same time, the reference rate should be updated only when it cannot ensure a
bounded power efficiency of the current dissemination tree according to Theorem 3. We note that the
source may store the data rate of each existing request together with other information of the request
(e.g., ID of the sink node) and hence the additional memory overhead introduced by the heuristic is
not significant.
During a tree adaptation, a new path needs to be found for each sink. Hence, the total message
complexity is O(|D|·|EG|·|G|) where |D| is the number of existing requests and |G| is the diameter of
the network. In contrast, the path-quality based heuristic only finds one path during each adaptation,
resulting a complexity of O(|EG| · |G|). However, the reference-rate based heuristic may lead to
fewer number of adaptations because it considers the aggregate impact of multiple rate changes.
VII. PERFORMANCE EVALUATION
A. Simulation Environment and Settings
We implemented MIDT in a Matlab-based sensor network simulator Prowler [31], [40]. Prowler is
an event-driven simulator, a framework similar to TinyOS/NesC, where different layers communicate
with each other via events and commands. Hence, using such a simulator allows us to easily
implement some new network modules and port our protocols to the Berkeley motes in the future. The
MAC layer in Prowler employs a simple CSMA/CA scheme without RTS/CTS, which is similar to the
B-MAC protocol [28] in TinyOS. This simple approach is not as effective as the more sophisticated
protocols (e.g. IEEE 802.11 [1]) in terms of collision avoidance, but it certainly consumes less energy
and the communication overhead is much smaller. Accurate simulation to the highly probabilistic
link characterization [41] of WSNs is the key to evaluating the realistic performance of MIDT.
We implemented a link layer model from USC [42] in Prowler. Experimental data shows that the
USC model can simulate the highly unreliable links on the Mica2 motes [42]. To improve the link
reliability, we implemented an ARQ (Automatic Repeat Request) scheme that retransmits a packet if
an acknowledgment is not received after a timeout. The maximum number of retransmissions before
dropping a packet is 8. A link quality estimator similar to the one in [36] is used by each node to
periodically assess the ETXs to its neighbors.
27In our simulations, 200 nodes are deployed in a 150 × 150 m2 region divided into 10 × 10
grids. Each grid contains two nodes that are randomly5 placed within the grid. Sinks are randomly
chosen. Each sink issues a data request to the source at a random time within the initial 100s of
the simulations. The storage node is located at (150, 75) to increase the hop count from the sinks.
The radio bandwidth is 40 Kbps. Power parameters of the radio are set according to the data sheet
of the CC1000 radio on Mica2 motes [10]. The transmission power is set to 4 dbm with current
consumption of 11.6 mA6 .
Nodes on the dissemination tree run a synchronous sleep schedule in which the active and sleep
intervals are 50 and 450 seconds, respectively. Other nodes run a duty cycle of 1% with a much
shorter active interval. The source sends data to sinks according to their requested data rates during
the active interval such that they can be woken up quickly. The data rates in representative WSN
applications often have a wide range. For instance, a surveillance WSN may normally report a
reading summary to a user in every a few minutes and must increase the data rate to about a few
packets/second when a target is detected [39]. To evaluate MIDT under a wide range of possible
scenarios, the data rate in our simulations is varied from 1-200 packets during the 50-second active
interval. The size of each packet is 30 bytes, which is similar to the default setting of TinyOS. The
results in this section are the average of 5 different network topologies.
t80
t80
t18
t18
t1
t1
s
s
t2
t42
t141
t2
t42
t141
(a) The low-rate dissemination tree.
(b) The high-rate dissemination tree.
Fig. 8. The topologies of two dissemination trees found by MIDT under low and high data rates. Small and large black dots represent
sleeping nodes and relay/sink nodes, respectively. Six sinks are randomly distributed. Each sink is labeled by its node id. The total
numbers of relay nodes in (a) and (b) are 11 and 22, respectively.
5
A random quantity in the simulation settings is always obtained from the uniform distribution.
6
Mica2 has multiple transmission power levels. We choose the default power level in our simulation.
28B. Performance with Fixed Data Rates
Fig. 8 shows the topologies of dissemination trees found by MIDT when the data rates requested
by sinks are low and high. There exist six sinks uniformly deployed at random in the region. The
data rates of sinks in Fig. 8(a) and Fig. 8(b) are randomly chosen within 0.5 ∼ 2 and 20 ∼ 40
packets per 50-second active interval, respectively. Each data rate lasts for 1000 seconds. When data
rates are low, nodes remain in the idle state in most of the time. In such a case, Fig. 8(a) shows
that the tree found by MIDT uses more long links, which results in fewer routing nodes and hence
reduces the idle listening power. On the other hand, when data rates are high, nodes operate in the
transmission state in most of the time. Fig. 8(b) shows that the tree uses more short links. As the
quality of short links is better, the total transmission power is reduced. The result of Fig. 8 clearly
demonstrates the impact of data rates on the choice of power-efficient dissemination paths.
For performance comparison, we implemented three baseline algorithms: minimum transmission
count tree (MTT), transmission count Steiner tree (TST) and data-rate Steiner tree (DST). In MTT,
the source finds the path of minimum ETX to each sink. TST is the same as MIDT except that the
data rate in the link cost function is set to one (ri = 1 in (6)). TST is similar to typical energy-efficient
multicast algorithms in which the cost of a node is its transmission power. DST is a minimum Steiner
tree approximation algorithm where the cost of a link is the maximum data rate of the flows on the
link. DST is similar to the tree construction algorithm used by an existing data dissemination protocol
SEAD [18].
Total Energy Cost(J)
100
90
80
70
60
50
40
30
20
10
MIDT
TST
DST
MTT
0
2 4 6 8 10
Num of Requests
Total Energy Cost(J)
140
120
100
80
60
40
20
MIDT
TST
DST
MTT
0
2 4 6 8 10
Num of Requests
Control Message Overhead(kBytes)
1600
1400
1200
1000
800
600
400
200
MIDT
TST
DST
MTT
0
2 4 6 8 10
Num of Requests
Fig. 9.
Total energy consumption in the
Fig. 10.
Total energy consumption in the
Fig. 11.
The overhead of different algo-
low-rate scenario.
mixed-rate scenario.
rithms.
The performance of all algorithms is evaluated under two settings referred to as the low-rate and
mixed-rate traffic patterns. These two scenarios simulate the data dissemination patterns in infrequent
monitoring WSNs under normal and event-reporting modes. In the low-rate scenario, the average
rates of all requests are randomly chosen from 0.5 ∼ 2 packets per 50-second active interval. In
29the mixed-rate scenario, one third of the requests (rounded to the closest integer) have high rates
randomly chosen from 20 ∼ 40 packets per active interval. In this set of simulations, sinks do not
change their data rates, which allows us to compare MIDT against the baseline algorithms that are
not designed to handle dynamic data rate changes.
Fig. 9 and Fig. 10 show that MIDT yields the lowest energy consumption among all the algorithms.
Specifically, MIDT outperforms the baseline algorithms by up to 21 − 54% and 19 − 33% in the
low-rate and mixed-rate scenarios. TST performs better in the mixed-rate scenario because it always
chooses the paths with smaller ETXs, which is more power-efficient in the case of high data rates.
The performance of MTT is the worst as it does not take advantage of the broadcast nature of wireless
channel. The results of Fig. 9 and Fig. 10 demonstrate the necessity of joint consideration of data
rates, transmission/idle power, and link quality in order to minimize the total energy consumption of
data dissemination under different traffic patterns.
Fig. 11 shows the overhead of different algorithms measured by the total number of control
messages sent. MTT has the lowest overhead because it only requires one round of cost advertisements
in finding the shortest path tree. Despite the higher overhead, MIDT yields much lower total energy
consumption than MTT as shown in Fig. 9 and Fig. 10.
End−to−end delay(ms)
1800
1600
1400
1200
1000
800
600
400
200
0
2 4 6 8 10
Num of Requests
MIDT
TST
DST
MTT
End−to−end delay(ms)
1400
1200
1000
800
600
400
200
0
2 4 6 8 10
Num of Requests
MIDT
TST
DST
MTT
Total Energy Cost(J)
3000
2500
2000
1500
1000
500
path−adp
path−fix
path−chg
rate−adp
rate−fix
rate−chg
0
2 4 6 8 10
Num of Requests
Fig. 12.
The end-to-end delay in the lowrate
scenario.
Fig. 13.
mixed-rate scenario.
The end-to-end delay in the
Fig. 14.
Total energy consumption of
tree adaptation heuristics.
Fig. 12 and Fig. 13 show the average end-to-end delay of data packets received by all sinks. MIDT
yields the longest delays in the low-rate scenario due to the large ETXs of its paths. This is because
the paths with fewer nodes but higher ETXs are more power-efficient when data rates are low, as
discussed in Section IV-D. Nevertheless, all packets are delivered within two seconds in MIDT. In
contrast, MIDT yields shorter delays in the mixed-rate scenario because the paths with smaller ETXs
are more power-efficient in such a case.
30C. Performance of Tree Adaptation Heuristics
We now evaluate the effectiveness of the tree adaptation heuristics of MIDT. The reference-rate
and path-quality based heuristics are denoted as rate-adp and path-adp, respectively. We compare
them against four baseline heuristics. rate-fix and path-fix construct the tree in the same way as
rate-adp and path-adp, respectively. However, they do not adapt to dynamic data rates once the tree
is constructed. In contrast, a tree adaptation is always performed in rate-chg and path-chg after each
data rate change.
According to Section VI-A.3, the adaptation threshold in path-adp, δ, should equal the energy
consumed by finding a new path, which is difficult to measure in practice. We set δ to be the total
energy of transmitting three packets per node. Each sink randomly changes its data rate 10 times in
a simulation. The time that a data rate lasts within the active intervals of nodes is referred to as the
rate duration. For instance, a rate duration of 100s represents two 50-second active intervals, i.e.,
1000s of total simulation time.
Fig. 14 shows the energy consumption of MIDT with different adaptation heuristics. The rate
durations are randomly chosen from 100 ∼ 1000s. rate-adp and path-adp consistently yield the least
energy consumption among all heuristics. Specifically, they outperform the best baseline heuristic by
up to 21% and 33%, respectively. rate-chg has the worst performance as the overhead incurred by
each tree adaptation is much higher than that of path-quality based heuristic as discussed in Section
VI-B.
Total Energy Cost(J)
1000
900
800
700
600
500
400
300
200
path−adp
path−fix
path−chg
Total Energy Cost(J)
2200
2000
1800
1600
1400
1200
1000
800
600
400
path−adp
path−fix
path−chg
Total Energy Cost(J)
4000
3500
3000
2500
2000
1500
1000
path−adp
path−fix
path−chg
100
200
500
0
2 4 6 8 10
Num of Requests
0
2 4 6 8 10
Num of Requests
0
2 4 6 8 10
Num of Requests
(a) 100s rate duration.
(b) 500s rate duration.
(c) 1000s rate duration.
Fig. 15.
Performance of path-quality based adaptation heuristic with different rate durations.
The adaptation logic of path-adp depends on how long each new data rate lasts. We plot the energy
consumption of MIDT with path-adp under three different rate durations: 100s, 500s and 1000s, in
Fig. 15. When the rate duration is 100s, path-fix significantly outperforms path-chg because the rate
duration is short, and hence the benefit of finding a better path may be counteracted by the overhead
31Total Energy Cost(J)
2000
1800
1600
1400
1200
1000
800
600
400
200
rate−adp
rate−fix
rate−chg
Total Energy Cost(J)
3000
2500
2000
1500
1000
500
rate−adp
rate−fix
rate−chg
Total Energy Cost(J)
4500
4000
3500
3000
2500
2000
1500
1000
500
rate−adp
rate−fix
rate−chg
0
2 4 6 8 10
Num of destination nodes
0
2 4 6 8 10
Num of destination nodes
0
2 4 6 8 10
Num of destination nodes
(a) 100s rate duration.
(b) 500s rate duration.
(c) 1000s rate duration.
Fig. 16.
Performance of reference-rate based adaptation heuristic with different rate durations.
of path adaptation. On the other hand, path-chg is superior to path-fix with the rate duration of
1000s because path adaptation is beneficial due to the long duration of each data rate. path-adp
yields significantly less energy consumption than path-fix and path-chg with all three rate durations.
We also plot the energy consumption of rate-adp under three different rate durations: 100s, 500s
and 1000s, in Fig. 16. We can see that rate-adp consistently outperforms rate-fix and rate-chg under
all settings. Consistent with the result of Fig. 15, rate-fix is superior to rate-chg under the duration
of 100s and 500s, and performs similarly as rate-chg when the rate duration reaches 1000s. This is
because tree adaptation is only beneficial when the new data rates last for a substantial duration.
The overall results of Fig. 15 and Fig. 16 show that path/tree adaptation should be performed
only when the duration of new data rates exceeds a certain threshold. Accordingly, the relative
performance of two strategies, always using the same path/tree and always finding a new path (tree)
when data rates change, depends on the duration of new data rates. In contrast, the path-quality and
reference-rate based heuristics can effectively estimate the benefit of path/tree adaptations and find
new paths/trees only when the benefit exceeds the overhead of adaptation.
D. Path-quality vs. Reference-rate based Tree Adaptations
Fig. 14 shows that rate-adp and path-adp perform similarly under random rate durations. We now
compare their performance in greater detail. The result in this section provides important guidance
on which adaptation heuristic is more suitable in different application scenarios.
In the first simulation, we choose an application scenario with bursty data requests. Each sink
alternates its request between a high data rate and a low data rate 10 times during the simulation.
The low and high rates are randomly chosen from 1 ∼ 2 and 120 ∼ 200 packets per active interval
of 50 seconds. The duration of each rate is randomly chosen from 100 ∼ 1000s. For instance, a
sink may request one packet per active interval for 500 seconds, and then request 150 packets per
32Total Energy Cost(J)
2200
2000
1800
1600
1400
1200
1000
800
600
400
200
path−adp
rate−adp
Total Energy Cost(J)
2200
2000
1800
1600
1400
1200
1000
800
600
400
200
path−adp
rate−adp
Total Routing Energy Cost(J)
500
450
400
350
300
250
200
150
100
50
path−adp−bursty−rates
rate−adp−bursty−rates
path−adp−unknown−duration
rate−adp−unknown−duration
0
2 4 6 8 10
Num of Requests
0
2 4 6 8 10
Num of Requests
0
2 4 6 8 10
Num of Requests
(a) Bursty rates.
(b) Unknown rate durations.
(c) Overhead of two heuristics.
Fig. 17.
Comparison of two tree adaptation heuristics.
interval for 100 seconds. Such a data request pattern simulates the queries from different users in a
monitoring WSN which reports low- and high-frequency events at different data rates.
Fig. 17(a) shows that path-adp is superior to rate-adp with bursty data rates. This is because, once
the average date rate falls within the range of the high and low rates, it likely remains so as the
requests always alternate between the high and low rates and hence the probability that the two rates
co-exist is high. Therefore, rate-adp rarely adapts the tree. However, the quality of a path degrades
drastically when the rate alternates. In contrast, path-adp accurately captures the quality degradation
of a path, and hence triggers more path adaptations as shown in Fig. 17(c).
The second simulation has the same setting as in Fig. 14 except that the duration of each new
data rate is unknown to path-adp. For instance, the duration of a user query may depend on the
lifetime of an event of interest that cannot be determined a priori. In such a case, path-adp randomly
decides whether to perform a path adaptation after each data rate change. Fig. 17(b) shows that
the performance of rate-adp is not affected because its adaptation strategy is independent of rate
durations. In contrast, the performance of path-adp suffers considerably because the estimation on
the path quality degradation is inaccurate due to unknown rate durations. Consequently, too many
path adaptations are triggered by path-adp as shown in Fig. 17(c). In contrast, path-adp only incurs
very small adaptation overhead.
VIII. CONCLUSION
In this paper, we proposed the minimum incremental dissemination tree (MIDT) approach for
the problem of dynamic multi-resolution data dissemination in WSNs. MIDT includes an online
tree algorithm with provable performance bound and two lightweight tree adaptation heuristics.
Our simulations show that MIDT outperforms several typical dissemination schemes. The two tree
33adaptation heuristics can achieve desirable energy efficiency while reducing the tree reconfiguration
overhead under a wide range of traffic patterns. In particular, the path-quality based heuristic can
accurately capture the path quality fluctuations when data requests have bursty rates while the
reference-rate based heuristic is more suitable when the data rates of requests have unknown durations.
IX. ACKNOWLEDGEMENT
The work described in this paper was partially supported by the Research Grants Council of Hong
Kong under grants RGC 9041266 and CityU 114006, and NSF China under grant 60633020.
REFERENCES
[1] ANSI/IEEE. Wireless lan medium access control (mac) and physical layer (phy) specifications. ANSI/IEEE std 802.11, 1999
Edition.
[2] S. Banerjee and A. Misra. Minimum energy paths for reliable communication in multi-hop wireless networks. In ACM MobiHoc,
pages 146–156, 2002.
[3] S. Banerjee, A. Misra, Y. Jihwang, and A. Agrawala. Energy-efficient broadcast and multicast trees for reliable wireless
communication. In IEEE Wireless Communications and Networking (WCNC), 2003, volume 1, pages 660–667, 2003.
[4] R. Bellman. On a routing problem. Quarterly of Applied Mathematics, 16(1), 1958.
[5] D. Bertsekas and R. Gallager. Data Networks. Prentice-Hall, 1987.
[6] Q. Cao, T. He, L. Fang, T. F. Abdelzaher, J. A. Stankovic, and S. Son. Efficiency centric communication model for wireless
sensor networks. In Infocom, 2006.
[7] U. Cetintemel, A. Flinders, and Y. Sun. Power-efficient data dissemination in wireless sensor networks. In 3rd ACM international
workshop on data engineering for wireless and mobile access, pages 1–8, 2003.
[8] M. Charikar, C. Chekuri, T.-Y. Cheung, Z. Dai, A. Goel, S. Guha, and M. Li. Approximation algorithms for directed steiner
problems. J. Algorithms, 33(1), 1999.
[9] D. S. J. D. Couto, D. Aguayo, J. Bicket, and R. Morris. A high-throughput path metric for multi-hop wireless routing. In
MobiCom, 2003.
[10] Crossbow. Mica and mica2 wireless measurement system datasheets. 2003.
[11] S. Ding and N. Ishii. An online genetic algorithm for dynamic steiner tree problem. In IECON 2000: 26th Annual Confjerence
of the IEEE Industrial Electronics Society, volume 2, pages 812–817, 2000.
[12] Q. Dong, S. Banerjee, M. Adler, and A. Misra. Minimum energy reliable paths using unreliable wireless links. In MobiHoc,
2005.
[13] D. Ganesan, B. Greenstein, D. Perelyubskiy, D. Estrin, and J. Heidemann. An evaluation of multi-resolution storage for sensor
networks. In SenSys, pages 89–102, 2003.
[14] M. R. Garey and D. S. Johnson. Computers and Intractability; A Guide to the Theory of NP-Completeness. W. H. Freeman &
Co., 1990.
[15] T. He, S. Krishnamurthy, J. A. Stankovic, T. Abdelzaher, L. Luo, R. Stoleru, T. Yan, L. Gu, J. Hui, and B. Krogh. Energy-efficient
surveillance system using wireless sensor networks. In International Conference On Mobile Systems, Applications And Services
(MobiSys), pages 270–283, 2004.
[16] M. Imase and B. M. Waxman. Dynamic steiner tree problem. SIAM Journal on Discrete Mathematics, 4(3):369–384, 1991.
34[17] C. Intanagonwiwat, R. Govindan, and D. Estrin. Directed diffusion: a scalable and robust communication paradigm for sensor
networks. In MobiCom, pages 56–67, 2000.
[18] H. S. Kim, T. F. Abdelzaher, and W. H. Kwon. Minimum-energy asynchronous dissemination to mobile sinks in wireless sensor
networks. In SenSys, pages 193–204, 2003.
[19] D. Li, X. Jia, and H. Liu. Energy efficient broadcast routing in ad hoc wireless networks. IEEE Trans on Mobile Computing,
3(2):144–151, 2004.
[20] X.-Y. Li, H. Chen, Y. Shu, X. Chu, and Y.-W. Wu. Energy efficient routing with unreliable links in wireless networks. In The
Third IEEE International Conference on Mobile Ad-hoc and Sensor Systems (MASS), pages 160–169, 2006.
[21] W. Liang. Constructing minimum-energy broadcast trees in wireless ad hoc networks. In MobiHoc, pages 112–122, 2002.
[22] W. Liang. Approximate minimum-energy multicasting in wireless ad hoc networks. IEEE Transactions on Mobile Computing,
5(4), 2006.
[23] H. Liu, X. Jia, P. Wan, C. Yi, S. Makki, and N. Pissinou. Maximizing lifetime of sensor surveillance systems. IEEE/ACM Trans
on Networking, 15(2):334–345, 2007.
[24] J. D. Lundquist, D. R. Cayan, and M. D. Dettinger. Meteorology and hydrology in yosemite national park: A sensor network
application. In IPSN, 2003.
[25] M. Machado, O. Goussevskaia, R. Mini, C. Rezende, A. Loureiro, G. Mateus, and J. Nogueira. Data dissemination in autonomic
wireless sensor networks. IEEE Journal on Selected Areas in Communications, 23(12), 2005.
[26] S. Madden, M. Franklin, J. Hellerstein, and W. Hong. The design of an acquisitional query processor for sensor networks. In
International Conference on Management of Data (SIGMOD), pages 491–502, 2003.
[27] G. D. Nguyen. General algorithms for construction of broadcast and multicast trees with applications to wireless networks.
Journal of Communications and Networks, 7(3), 2005.
[28] J. Polastre, J. Hill, and D. Culler. Versatile low power media access for wireless sensor networks. In SenSys, 2004.
[29] J. Polastre, R. Szewczyk, and D. Culler. Telos: Enabling ultra-low power wireless research. In IPSN, pages 364–369, 2005.
[30] S. Ratnasamy, B. Karp, S. Shenker, D. Estrin, R. Govindan, L. Yin, and F. Yu. Data-centric storage in sensornets with ght, a
geographic hash table. Mob. Netw. Appl., 8(4), 2003.
[31] G. Simon. Probabilistic wireless network simulator. http://www.isis.vanderbilt.edu/projects/nest/prowler/.
[32] R. Szewczyk, A. Mainwaring, J. Polastre, J. Anderson, and D. Culler. An analysis of a large scale habitat monitoring application.
In SenSys, pages 214–226, 2004.
[33] B. Wang and S. K. S. Gupta. S-REMIT: a distributed algorithm for source-based energy efficient multicasting in wireless ad
hoc networks. In IEEE Global Telecommunications Conference (GLOBECOM), volume 6, pages 3519–3524, 2003.
[34] B. M. Waxman. Routing of multipoint connections. IEEE Journal on Selected Areas in Communications, 6(9):1617–1622, 1988.
[35] J. E. Wieselthier, G. D. Nguyen, and A. Ephremides. Energy-efficient broadcast and multicast trees in wireless networks. Mob.
Netw. Appl., 7(6), 2002.
[36] A. Woo, T. Tong, and D. Culler. Taming the underlying challenges of reliable multihop routing in sensor networks. In SenSys,
pages 14–27, 2003.
[37] F. Ye, H. Luo, J. Cheng, S. Lu, and L. Zhang. A two-tier data dissemination model for large-scale wireless sensor networks. In
MobiCom, pages 148–159, 2002.
[38] W. Ye, J. Heidemann, and D. Estrin. Medium access control with coordinated, adaptive sleeping for wireless sensor networks.
IEEE/ACM Transactions on Networking, 12(3):493–506, June 2004.
[39] H. Zhang, A. Arora, Y. ri Choi, and M. G. Gouda. Reliable bursty convergecast in wireless sensor networks. In MobiHoc, pages
266–276, 2005.
[40] Y. Zhang. Routing modeling application simulation environment. http://www2.parc.com/spl/projects/era/nest/Rmase/.
35[41] J. Zhao and R. Govindan. Understanding packet delivery performance in dense wireless sensor networks. In SenSys, pages 1–13,
Los Angeles, CA, November 2003.
[42] M. Zuniga and B. Krishnamachari. Analyzing the transitional region in low power wireless links. In The First Annual IEEE
Communications Society Conference on Sensor and Ad Hoc Communications and Networks (SECON), pages 517–526, October
2004.
36