Location-Aware Protocols for
Energy-Efficient Information Processing
in Wireless Sensor Networks
by
Harshavardhan Sabbineni
Department of Electrical and Computer EngineeringDuke University
Date:
Approved:
Prof. Krishnendu Chakrabarty, Advisor
Prof. John Board
Prof. Loren Nolte
Prof. Kishor Trivedi
Dr. John Zachary
Dissertation submitted in partial fulfillment of the requirements for the degree ofDoctor of Philosophy in the Department of Electrical and Computer Engineering
in the Graduate School of Duke University2009
Abstract(Electronics and Electrical Engineering)
Location-Aware Protocols for Energy-Efficient
Information Processing in Wireless Sensor
Networks
by
Harshavardhan Sabbineni
Department of Electrical and Computer EngineeringDuke University
Date:
Approved:
Prof. Krishnendu Chakrabarty, Advisor
Prof. John Board
Prof. Loren Nolte
Prof. Kishor Trivedi
Dr. John Zachary
An abstract of a dissertation submitted in partial fulfillment of the requirements forthe degree of Doctor of Philosophy in the Department of Electrical and Computer
Engineeringin the Graduate School of Duke University
2009
Copyright c© 2009 by Harshavardhan SabbineniAll rights reserved.
Abstract
Advances in the miniaturization of microelectromechanical components have led to
battery powered and inexpensive sensor nodes, which can be networked in an ad hoc
manner to perform distributed sensing and information processing. While sensor net-
works can be deployed in inhospitable terrain to provide continuous monitoring and
processing capabilities for a wide range of applications, sensor nodes are severely
resource-constrained; they typically run on batteries and have a small amount of
memory. Therefore, energy-efficient and lightweight protocols are necessary for dis-
tributed information processing in these networks.
The data provided by a sensor node is often useful only in the context of the loca-
tion of the data source. Thus, sensor networks rely on localization schemes to provide
location information to sensor nodes. The premise of this thesis is that location-aware
protocols, which are based on the assumption that sensor nodes can estimate their
location, improve the efficiency of data gathering and resource utilization of wireless
sensor networks. Location-awareness improves the energy-efficiency of the protocols
needed for routing, transport, data dissemination and self-organization of sensor net-
works. Existing sensor network protocols typically do not use location information
effectively, hence they are not energy-efficient. In this thesis, we show how location
information can be leveraged in novel ways in sensor network protocols to achieve
energy efficiency. The contributions of this thesis are in four important areas related
to network protocol design for wireless sensor networks: 1) self-organization; 2) data
iv
dissemination or node reprogramming; 3) service differentiation; and 4) data collec-
tion. Work on self-organization (SCARE) and data dissemination (LAF) was carried
out from 2002 to 2004 and the work on service differentiation (SensiQoS) and data
collection (HTDC) was carried out from 2004 to 2009.
This thesis first presents a new approach for self-configuration of ad hoc sen-
sor networks. The self-configuration of a large number of sensor nodes requires a
distributed solution. We propose a scalable self-configuration and adaptive recon-
figuration (SCARE) algorithm that exploits the redundancy in sensor networks to
extend the lifetime of the network. SCARE distributes the set of nodes in the sen-
sor network into subsets of coordinator nodes and non-coordinator nodes. While
coordinator nodes stay awake, provide coverage, and perform multi-hop routing in
the network, non-coordinator nodes go to sleep. When nodes fail, SCARE adap-
tively re-configures the network by selecting appropriate non-coordinator nodes to
become coordinators and take over the role of failed coordinators. This scheme only
needs local topology information and uses simple data structures in its implementa-
tion. SCARE organizes nodes into coordinator and non-coordinator nodes. A recent
work, termed Ripples [106] has improved upon the selforganization and reconfigu-
ration mechanism proposed in SCARE. It uses a lightweight clustering algorithm
to elect cluster heads instead of coordinator nodes based on location information
as proposed by SCARE. Ripples selects fewer cluster-head nodes compared to the
number of coordinator nodes elected by SCARE by varying the cluster radius and
consequently realizes more energy savings while providing comparable sensing cov-
erage.
This thesis next presents an energy-efficient protocol for data dissemination in
sensor networks. Sensor networks also enable distributed collection and processing
of sensed data. These networks are usually connected to the outside world with
base stations or access points through which a user can retrieve the sensed data for
v
further inference and action. Dissemination of information is a challenging problem in
sensor networks because of resource constraints. Conventional methods use classical
flooding for disseminating data in a sensor network. However, classical flooding
suffers from disadvantages such as the broadcast storm problem. We have proposed
an energy-efficient scheme that uses the concept of virtual grids to partition (self-
configure) the set of nodes into groups of gateway nodes and internal nodes. While
gateway nodes forward the packets across virtual grids, internal nodes forward the
packets within a virtual grid. The proposed location-aided flooding protocol (LAF)
reduces the number of redundant transmissions and receptions by storing a small
amount of state information in a packet and inferring the information about nodes
that already have the packet from the modified packet header. More recent work
[55] has extended the virtual grid concept proposed by LAF to non-uniform sensor
network deployments. In [55], non-uniform virtual grids are used to improve upon the
energy savings provided by LAF and achieve higher energy savings for non-uniform
sensor network topologies.
This thesis also addressees the challenging problem of timely data delivery in
sensor networks. We propose SensiQos, which leverages the inherent properties of the
data generated by events in a sensor network such as spatial and temporal correlation,
and realizes energy savings through application-specific in-network aggregation of the
data. This data delivery scheme is based on distributed packet scheduling, where
nodes make localized decisions on when to schedule a packet for transmission to save
energy and to which neighbor they should forward the packet to meet its end-to-end
real-time deadline.
Finally, this thesis presents an energy-efficient data collection protocol for sensor
networks. It is based on a combination of geographic hash table and mobile sinks that
leverage mobile sinks to achieve energy-efficiency in event-driven sensor networks.
Next, an analysis of the energy savings realized by the proposed protocol is presented.
vi
Simulation results demonstrate significant gains in energy savings for data collection
with change in various parameter values.
In summary, this thesis represents an important step towards the design of
location-aware energy-efficient protocols for self-configuration, data dissemination,
data delivery, and data collection in wireless sensor networks. It is expected to lead
to even more efficient protocols for data dissemination, routing, and transport-layer
protocols for energy-constrained and failure-prone sensor networks.
vii
To my parents
viii
Contents
Abstract iv
List of Tables xv
List of Figures xvi
Acknowledgements xx
1 Introduction 1
1.1 Design Challenges in Wireless Sensor Networks . . . . . . . . 4
1.2 Sensor Network Architectures . . . . . . . . . . . . . . . . . . . 5
1.3 Data-Dissemination Protocols . . . . . . . . . . . . . . . . . . . . 7
1.4 Self-Configuration Protocols . . . . . . . . . . . . . . . . . . . . . 12
1.5 Data Delivery of Delay Sensitive Traffic . . . . . . . . . . . . . 16
1.6 Data Collection with Mobile Sinks . . . . . . . . . . . . . . . . . 18
1.7 Relevance of Thesis Research . . . . . . . . . . . . . . . . . . . . 21
1.8 Thesis Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2 Self-Configuration and Adaptive Reconfiguration 25
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2 Relevant Prior Work . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.3 Outline of SCARE . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.3.1 Basic Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.3.2 Network Partitioning Problem . . . . . . . . . . . . . . . 31
ix
2.4 Details of SCARE . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.4.1 Time Relationships . . . . . . . . . . . . . . . . . . . . . . 42
2.4.2 Ensuring Network Connectivity . . . . . . . . . . . . . . 42
2.4.3 Message Complexity . . . . . . . . . . . . . . . . . . . . . 45
2.4.4 Space Complexity . . . . . . . . . . . . . . . . . . . . . . . 46
2.5 Performance Evaluation . . . . . . . . . . . . . . . . . . . . . . . 46
2.5.1 Simulation Methodology . . . . . . . . . . . . . . . . . . . 47
2.5.2 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . 49
2.5.3 Number of Coordinators Selected . . . . . . . . . . . . . 50
2.5.4 Control Message Overhead . . . . . . . . . . . . . . . . . 52
2.5.5 Mobility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.5.6 Network Lifetime . . . . . . . . . . . . . . . . . . . . . . . 54
2.5.7 Effect of Node Failures . . . . . . . . . . . . . . . . . . . . 54
2.5.8 Effect of Location Estimation Error . . . . . . . . . . . . 55
2.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3 Location-Aided Flooding for Data Dissemination 60
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.2 Related Prior Work . . . . . . . . . . . . . . . . . . . . . . . . . . 62
3.3 Location-Aided Flooding . . . . . . . . . . . . . . . . . . . . . . . 65
3.3.1 Modified Flooding . . . . . . . . . . . . . . . . . . . . . . . 65
3.3.2 Location Information . . . . . . . . . . . . . . . . . . . . . 67
3.3.3 Virtual Grids . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.3.4 Packet Header Format . . . . . . . . . . . . . . . . . . . . 68
3.3.5 LAF Node Types . . . . . . . . . . . . . . . . . . . . . . . . 69
3.3.6 Information Dissemination Using LAF . . . . . . . . . . 70
x
3.3.7 Resource Management in LAF . . . . . . . . . . . . . . . 73
3.3.8 Completeness of the Data Dissemination Procedure . . 74
3.3.9 Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.3.10 Space Complexity . . . . . . . . . . . . . . . . . . . . . . . 80
3.3.11 Time Complexity . . . . . . . . . . . . . . . . . . . . . . . 80
3.3.12 Errors in Location Estimates . . . . . . . . . . . . . . . . 80
3.4 Performance Evaluation . . . . . . . . . . . . . . . . . . . . . . . 81
3.4.1 Simulation Model . . . . . . . . . . . . . . . . . . . . . . . 81
3.4.2 Data Acquired in the System with Time . . . . . . . . . 83
3.4.3 Energy Dissipated in the System with Time . . . . . . . 83
3.4.4 Impact of Number of Grids . . . . . . . . . . . . . . . . . 84
3.4.5 Impact of Packet Size on Energy Savings . . . . . . . . 85
3.4.6 Impact of Node Degree on Energy Savings . . . . . . . 86
3.4.7 Impact of Network Size on LAF . . . . . . . . . . . . . . 87
3.4.8 Impact of Error in Location Estimate . . . . . . . . . . . 88
3.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4 An Energy-Efficient Data-Delivery Scheme for Delay-Sensitive Traf-fic 92
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
4.3 SensiQoS Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.3.1 Location Information . . . . . . . . . . . . . . . . . . . . . 98
4.3.2 Packet Header Format . . . . . . . . . . . . . . . . . . . . 99
4.3.3 SPEED Protocol . . . . . . . . . . . . . . . . . . . . . . . . 99
4.3.4 SensiQoS Packet Scheduler . . . . . . . . . . . . . . . . . 101
4.3.5 Data Aggregation . . . . . . . . . . . . . . . . . . . . . . . 104
xi
4.3.6 MAC-layer QoS Support . . . . . . . . . . . . . . . . . . . 105
4.3.7 Feedback-based Congestion Control . . . . . . . . . . . . 106
4.4 Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
4.4.1 Network-wide Speed . . . . . . . . . . . . . . . . . . . . . 107
4.4.2 Expected Number of Transmissions . . . . . . . . . . . . 109
4.4.3 Impact of Localization Error . . . . . . . . . . . . . . . . 111
4.4.4 Space Complexity . . . . . . . . . . . . . . . . . . . . . . . 113
4.4.5 Time Complexity . . . . . . . . . . . . . . . . . . . . . . . 113
4.5 Performance Evaluation . . . . . . . . . . . . . . . . . . . . . . . 113
4.5.1 Energy Model . . . . . . . . . . . . . . . . . . . . . . . . . . 115
4.5.2 Simulation Environment . . . . . . . . . . . . . . . . . . . 115
4.5.3 Service Differentiation . . . . . . . . . . . . . . . . . . . . 116
4.5.4 Energy Savings . . . . . . . . . . . . . . . . . . . . . . . . . 116
4.5.5 Packet Deadline Miss Ratio . . . . . . . . . . . . . . . . . 117
4.5.6 Node Density . . . . . . . . . . . . . . . . . . . . . . . . . . 119
4.5.7 Impact of Aggregation Factor . . . . . . . . . . . . . . . . 121
4.5.8 Impact of Event Occurrence . . . . . . . . . . . . . . . . . 122
4.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
5 Data Collection in Event-Driven Networks with Mobile Sinks 125
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
5.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
5.3 HTDC Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
5.3.1 System Model . . . . . . . . . . . . . . . . . . . . . . . . . . 130
5.3.2 Virtual Grid Construction . . . . . . . . . . . . . . . . . . 131
5.3.3 Geographic Hash Table . . . . . . . . . . . . . . . . . . . . 131
xii
5.3.4 Hash Functions . . . . . . . . . . . . . . . . . . . . . . . . . 131
5.3.5 Local Event Announcer Node . . . . . . . . . . . . . . . . 132
5.3.6 Data Collection . . . . . . . . . . . . . . . . . . . . . . . . . 134
5.3.7 HTDC Messages . . . . . . . . . . . . . . . . . . . . . . . . 136
5.3.8 Load Sharing . . . . . . . . . . . . . . . . . . . . . . . . . . 137
5.3.9 Routing of Messages to the Mobile Sink . . . . . . . . . 138
5.4 Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
5.4.1 Model and Notation . . . . . . . . . . . . . . . . . . . . . . 138
5.4.2 Energy Consumption . . . . . . . . . . . . . . . . . . . . . 138
5.4.3 Time Complexity . . . . . . . . . . . . . . . . . . . . . . . 142
5.5 Other Data Collection Algorithms . . . . . . . . . . . . . . . . . 143
5.5.1 Reactive Data Collection (RDC) . . . . . . . . . . . . . . 143
5.5.2 Continuous Data Collection (CDC) . . . . . . . . . . . . 143
5.5.3 Ideal Data Collection (IDC) . . . . . . . . . . . . . . . . . 144
5.6 Performance Evaluation . . . . . . . . . . . . . . . . . . . . . . . 144
5.6.1 Energy Model . . . . . . . . . . . . . . . . . . . . . . . . . . 145
5.6.2 Simulation Environment . . . . . . . . . . . . . . . . . . . 145
5.6.3 Effect of Mobile Sinks . . . . . . . . . . . . . . . . . . . . . 145
5.6.4 Effect of the Number of Events . . . . . . . . . . . . . . . 147
5.6.5 Effect of Cell Size . . . . . . . . . . . . . . . . . . . . . . . 148
5.6.6 Impact of Error in Localization . . . . . . . . . . . . . . . 149
5.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
6 Conclusions and Future Work 151
6.1 Thesis Contributions . . . . . . . . . . . . . . . . . . . . . . . . . 151
6.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
xiii
6.2.1 Energy-Efficient Reliability for Correlated Data . . . . 153
6.2.2 Real-Time Data Collection Protocol: RT-HTDC . . . . 154
Bibliography 156
Biography 169
xiv
List of Tables
1.1 Comparison of different data dissemination protocols. . . . . . . . . . 12
1.2 Comparison of different self-organization protocols. . . . . . . . . . . 16
3.1 Radio characteristics [48]. . . . . . . . . . . . . . . . . . . . . . . . . 81
4.1 Simulation Environment Parameters . . . . . . . . . . . . . . . . . . 115
5.1 Simulation Environment Parameters . . . . . . . . . . . . . . . . . . 145
xv
List of Figures
1.1 Inventory tracking using sensor networks. . . . . . . . . . . . . . . . 2
1.2 Battlefield monitoring using sensor networks. . . . . . . . . . . . . . . 3
1.3 A typical sensor node. . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 An example of ad hoc sensor network deployment. . . . . . . . . . . . 7
1.5 A hierarchical sensor network. . . . . . . . . . . . . . . . . . . . . . . 8
1.6 Information dissemination: (a) SPIN protocol; (b) Recursive geo-graphic forwarding; (c) Multi-path forwarding; d) Directed diffusion. . 10
1.7 Self-organization in sensor networks: Connected sensor cover. . . . . . 13
1.8 Self-organization in sensor networks: ASCENT. . . . . . . . . . . . . 13
2.1 Procedure Initialize. . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.2 Procedure recvDataPacket. . . . . . . . . . . . . . . . . . . . . . . . . 36
2.3 Sensing and transmission radii of a node. . . . . . . . . . . . . . . . . 37
2.4 Network partitions in the basic scheme. . . . . . . . . . . . . . . . . . 37
2.5 Illustration of the relationships between the time intervals. . . . . . . 37
2.6 Procedure TimerExpire. . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.7 The state diagram for SCARE. . . . . . . . . . . . . . . . . . . . . . 40
2.8 Result of self-configuration using SCARE. . . . . . . . . . . . . . . . 43
2.9 Illustration of how network partitioning is prevented in SCARE. . . . 44
2.10 Approximation of coverage region of a sensor node by a square. . . . 47
2.11 Coverage due to SCARE versus all nodes. . . . . . . . . . . . . . . . 50
xvi
2.12 Number of coordinators selected with an increase in nodes. . . . . . . 51
2.13 Coverage versus number of nodes for SCARE and Span. . . . . . . . 51
2.14 Fraction of nodes selected as coordinators in SCARE and Span. . . . 52
2.15 Coordinators selected in SCARE versus an ideal number of coordina-tors selected based on square tiling. . . . . . . . . . . . . . . . . . . . 53
2.16 Number of control messages sent for self-configuration. . . . . . . . . 53
2.17 Packet loss rate as a function of pause time. . . . . . . . . . . . . . . 54
2.18 Fraction of nodes remaining with time for Span and SCARE. . . . . . 55
2.19 Effect of node failure on SCARE and a RDC method. . . . . . . . . . 56
2.20 Effect of error in distance estimation on SCARE. . . . . . . . . . . . 57
2.21 Number of Coordinators selected versus s/r. . . . . . . . . . . . . . . 57
2.22 Coverage obtained versus s/r. . . . . . . . . . . . . . . . . . . . . . . 58
3.1 Example illustrating modified flooding. . . . . . . . . . . . . . . . . . 66
3.2 Energy savings in modified flooding over classical flooding. . . . . . . 67
3.3 Example of a virtual grid. . . . . . . . . . . . . . . . . . . . . . . . . 68
3.4 Packet header format in LAF. . . . . . . . . . . . . . . . . . . . . . . 69
3.5 Illustration of gateway nodes and internal nodes in a virtual grid. . . 70
3.6 Procedure GWNodePacketForward. . . . . . . . . . . . . . . . . . . . 72
3.7 Procedure InternalNodePacketForward. . . . . . . . . . . . . . . . . . 74
3.8 Linear network with N nodes. . . . . . . . . . . . . . . . . . . . . . . 78
3.9 Energy consumption for LAF (analytical result). . . . . . . . . . . . . 79
3.10 Test network used in the simulations. . . . . . . . . . . . . . . . . . . 82
3.11 Data disseminated in the system with time. . . . . . . . . . . . . . . 83
3.12 A zoom-in view of Fig. 3.11. . . . . . . . . . . . . . . . . . . . . . . . 84
3.13 Energy savings due to LAF. . . . . . . . . . . . . . . . . . . . . . . . 85
3.14 Effect of number of virtual grids on energy consumption. . . . . . . . 86
xvii
3.15 Effect of number of packet size on energy savings. . . . . . . . . . . . 87
3.16 Effect of average degree of a node on energy consumption. . . . . . . 88
3.17 Effect of network size on LAF. . . . . . . . . . . . . . . . . . . . . . . 89
4.1 In a sensor network, performing data aggregation may increase thelatency of the data packets. In this connected topology, data generatedby nodes B, C, D, E is correlated. If node C waits for packets fromnode E to perform data aggregation, this may increase the delay forits packets to reach the sink node A. . . . . . . . . . . . . . . . . . . 93
4.2 Packet Header for SensiQoS. . . . . . . . . . . . . . . . . . . . . . . . 99
4.3 Illustration of SPEED protocol. . . . . . . . . . . . . . . . . . . . . . 100
4.4 Procedure recvDataPacket . . . . . . . . . . . . . . . . . . . . . . . . 102
4.5 Packet Organization in SensiQoS. . . . . . . . . . . . . . . . . . . . . 107
4.6 Service differentiation. . . . . . . . . . . . . . . . . . . . . . . . . . . 117
4.7 Normalized histogram of the packet arrival times for the high priorityevent. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
4.8 Energy consumption. . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
4.9 Packet deadline miss ratio with increasing number of flows. . . . . . . 120
4.10 Energy consumed with increasing node density. . . . . . . . . . . . . 121
4.11 Average delay with increasing node density. . . . . . . . . . . . . . . 122
4.12 Energy consumed versus aggregation factor. . . . . . . . . . . . . . . 123
4.13 Energy consumed versus event frequency. . . . . . . . . . . . . . . . . 123
5.1 An event has occurred in the sensor network with four mobile sinks. . 133
5.2 Local Event Announcer Node. D is the hashed location of the LEANnode. A is the LEAN node for this virtual cell. B and C are theperimeter nodes for the LEAN node. . . . . . . . . . . . . . . . . . . 134
5.3 Source nodes in each cell send an event announcement message toLEAN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
5.4 LEAN nodes send a DCR packet to the mobile sink to request datacollection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
xviii
5.5 Procedure AnnounceEvent. . . . . . . . . . . . . . . . . . . . . . . . . 136
5.6 Procedure SendDCRPacket. . . . . . . . . . . . . . . . . . . . . . . . 137
5.7 Procedure DataCollection. . . . . . . . . . . . . . . . . . . . . . . . . 137
5.8 Total number of transmissions versus number of mobile sinks. . . . . 146
5.9 Data-collection delay versus the number of mobile sinks. . . . . . . . 147
5.10 Total number of transmissions versus number of events. . . . . . . . . 148
5.11 Data-collection delay versus number of events. . . . . . . . . . . . . . 149
5.12 Total number of transmissions versus cell size. . . . . . . . . . . . . . 150
6.1 Data collection request. . . . . . . . . . . . . . . . . . . . . . . . . . . 155
xix
Acknowledgements
The work presented in this dissertation would not have been possible without the
help of many individuals, and I wish to thank everyone that has helped make it
possible.
I am indebted to my advisor, Prof. Krishnendu Chakrabarty, for his constant
support over the years. He has been an excellent mentor and guide, not only guiding
me in transforming preliminary ideas into effective solutions but also enabling me
to move forward when I got stuck. His support, energy and discipline have been an
inspiration for me which I shall remember in the future for my own professional life.
I am grateful to the members of my thesis committee, Prof. John A. Board, Prof.
Kishor Trivedi, Prof. Jeffrey Krolik, Prof. Loren Nolte and Dr. John Zachary for
their encouragements. I would like to address my special thanks to Dr. John Zachary
for hosting me during the summer of 2003 and for the many stimulating discussions
on sensor networks.
I have been fortunate to have made several good friends at Duke, including Vam-
see Pamula, Narayan Kovvali and Vijay Srinivasan.
Finally, I express my deepest gratitude and appreciation to my family, who have
always being there with me to share my happiness and grief. I dedicate this thesis
to them for their love and sacrifice. Last, but not least, I would like to thank
my grandmother, Jhansi Lakshmi Bai Talasila, for being a tremendous source of
inspiration and teaching me the value of hardwork.
xx
1
Introduction
Advances in the miniaturization of microelectromechanical structures have led to
battery-powered and cheap sensor nodes that have sensing, communication and pro-
cessing capabilities. These sensor nodes can be networked in an ad hoc manner to
perform distributed sensing and information processing. Such ad hoc sensor networks
provide greater fault tolerance and sensing accuracy and are typically less expensive
compared to the alternative of using only a few expensive and isolated sensors. These
networks can also be deployed in inhospitable terrain or in hostile environments to
provide continuous monitoring and processing capabilities for a wide range of appli-
cations [71], [77], [89], [122], [35], [64], [19].
A typical sensor network application is inventory tracking in factory warehouses.
As illustrated in Fig. 1.1, a single sensor node can be attached to each item in the
warehouse. These sensor nodes can then be used for tracking the location of the
items as they are moved within the warehouse. They can also provide information
on the location of nearby items as well as the history of movement of various items.
Once deployed, the sensor network needs little human intervention and can function
autonomously.
1
User Computer
Internet
Sensor nodes
WarehouseFactory
Figure 1.1: Inventory tracking using sensor networks.
Another typical application of sensor networks lies in military situations. Sensor
nodes can be air-dropped behind enemy lines or in inhospitable terrain. These nodes
can self-organize themselves and provide unattended monitoring of the deployed area
by gathering information about enemy defenses and equipment, movement of troops,
and areas of troop concentration. They can then relay this information back to a
friendly base station for further processing and decision making. This is illustrated
in Fig. 1.2, where the presence of an enemy tank in the monitored area is relayed to
the command center.
Sensor nodes are typically characterized by small form-factor, limited battery
power, and a small amount of memory. For example, the Spec Motes sensor nodes
from Berkeley have a 900MHz radio with a radio range of 40 ft and a total stored
energy on the order of 1J [40]. Due to their limited resources, many of the methods
developed for the Internet and mobile ad hoc networks cannot be directly applied
to sensor networks. New approaches and network protocols are required to solve
the problems of localization, routing, naming, self-organization and data dissemina-
2
Monitored area
Ad hoc sensor network
Enemy tank
Command
center
Figure 1.2: Battlefield monitoring using sensor networks.
tion in sensor networks. The premise of this thesis is that location-aware protocols,
which are based on the assumption that sensor nodes can estimate their location,
improve the efficiency of data gathering and resource utilization of wireless sensor
networks. Location-awareness improves the energy-efficiency of the protocols needed
for routing, addressing, in-network data storage and security. A number of protocols
proposed in the literature do not use location information [49], [17], and are there-
fore not energy-efficient. Sensor nodes can typically estimate their location either
through the use of GPS [42] or using less expensive localization mechanisms [33, 1].
The use of location information for improving the efficiency of network rout-
ing protocols in wireless ad hoc networks has also been investigated [129], [109],
[73]. This thesis is targeted towards wireless sensor networks, which are typically
more resource-constrained than wireless ad hoc networks. We propose a number of
location-aware and energy-efficient network protocols for self-organization, data dis-
semination, service differentiation and data collection.
The remainder of this chapter is organized as follows. The challenges involved
3
in designing protocols for wireless sensor networks are discussed in Section 1.1. In
Section 1.2, we discuss some typical sensor network architectures. In Section 1.3,
various data dissemination protocols for wireless sensor networks are discussed. Sec-
tion 1.4 describes the need for self-configuration in sensor networks and presents an
overview of self-configuration algorithms presented in the literature. In Section 1.5,
we outline our data delivery scheme for delay-sensitive traffic that leverages location
information to deliver the data to the destination in a timely manner. Section 1.6
describes our data collection mechanism for event-driven sensor networks that uses
a geographic hash table to locate the mobile sinks as well as to route the packets to
the mobile sink to collect the data in an energy-efficient way. Finally, we present an
overview of the thesis in Section 1.7.
1.1 Design Challenges in Wireless Sensor Networks
In this section, we review some issues involved in the design of self-organization
and data dissemination protocols in wireless sensor networks. Due to their resource
constraints and unique application requirements, sensor networks pose a number of
challenges. These are summarized below:
• Small Memory: Sensor nodes usually have a small amount of memory.
Hence, sensor network protocols should not require the storage of a large
amount of information at the sensor node. For example, the Berkeley Spec
Motes have 3Kb of memory [40].
• Limited Battery Power: Sensor nodes typically have a small form factor
with a limited amount of battery power [76]. Furthermore, radio communica-
tion typically costs more in terms of energy compared to computation costs in
a sensor node. Therefore, protocols designed for sensor networks should utilize
only a few control messages.
4
• Fault Tolerance: Sensor nodes are prone to failure. This may be due to a
variety of reasons. Loss of battery power may lead to failure of the sensor nodes.
Similarly, when sensor nodes are deployed in hostile or harsh environments as
in the case of military or industrial applications, sensor nodes might be easily
damaged. Thus, protocols designers should build fault tolerance into their
algorithms for improving the utility of sensor networks.
• Self-Organization: Sensor nodes are often air-dropped in hostile or harm-
ful environments. It is not possible for humans to reach these sensor nodes.
Besides, it is not possible for humans to repair each sensor node, as often the
number of sensor nodes is quite large. Hence, self-organization of sensor nodes
to form a connected network is an essential requirement.
• Scalability: The number of sensor nodes in a sensor network can be in the
order of hundreds or even thousands. Hence, protocols designed for sensor
networks should be highly scalable.
1.2 Sensor Network Architectures
This section describes a typical sensor node and discusses different sensor network
architectures. A typical sensor node shown in Fig. 1.3 consists of four basic compo-
nents: a power unit that may be battery-powered, a sensing unit that may consist
of one or more sensors, a processing unit that consists of a CPU to provide a basic
processing capabilities, a DSP chip to provide limited signal processing functions,
and a transceiver to provide untethered communications. Sensor network applica-
tions such as inventory tracking, perimeter defense, and environmental monitoring
require careful planning in the design of the protocols, including the choice of the
sensor network architecture and the amount of redundancy to be present in the net-
work. There are several sensor network architectures that protocol designers might
5
Figure 1.3: A typical sensor node.
consider for their applications:
• Homogeneous versus heterogeneous: A sensor network may consist of homo-
geneous or heterogeneous nodes. In a homogeneous sensor network, all the
sensor nodes have similar sensing and processing abilities. As a typical sensor
network can have up to thousands of nodes, homogeneous sensor networks are
economical due to reasons of scale. A heterogeous sensor network may consist
of sensor nodes with different sensor types, power capacities and processing
abilities. An example of a heterogeneous sensor network is a habitat monitor-
ing network where sensor nodes with cameras perform the video sensing while
sensor nodes with recorders perform audio sensing, both with different power
requirements and processing abilities. Thus, different protocols are needed for
homogeneous and heterogeneous sensor networks.
• Random versus deterministic deployment: Sensor nodes can be deployed by
air-dropping them (Fig. 1.4) or throwing them randomly in a target area or
they can be placed at pre-determined locations using a deterministic scheme.
Protocols for self-configuration of a randomly-deployed network may not be
6
Figure 1.4: An example of ad hoc sensor network deployment.
well suited for a deterministically-deployed sensor network. Similarly, data
dissemination algorithms designed for deterministic sensor networks may not
perform well when used in randomly-deployed sensor networks.
• Hierarchical versus flat topology: Designers can select either a flat topology
or a hierarchical cluster-based topology depending on the application for their
protocol. Hierarchical topologies are generally more suited for sensor networks
as they allow data fusion and other common functions within a cluster, thus
minimizing communication outside a cluster. A 3-level hierarchical sensor net-
work is shown in Fig. 1.5.
• Static versus mobile: Sensor networks can consist of either static or mobile
nodes, or a mixture of both static and mobile nodes. Depending on the com-
position of the particular sensor network, they may require very different algo-
rithms for self-organization and data dissemination protocols.
1.3 Data-Dissemination Protocols
Once sensor nodes are deployed, efficient protocols are needed to disseminate the
data sensed by the sensor nodes. Data dissemination involves the sending of the
sensed data to the nodes that requested the data from the area where the event has
7
Figure 1.5: A hierarchical sensor network.
occurred. As many sensors might be present in the area of event occurrence, data
might be duplicated and nodes may receive multiple copies, or data may be lost due
to a lossy communication channel. Several schemes have been proposed for data
dissemination in sensor networks. In this section, we describe the state-of-the-art
data dissemination protocols for wireless sensor networks.
Traditionally, flooding is used in networks to disseminate information [52]. It is
also used in several routing algorithms in sensor networks [49]. In flooding, the source
node broadcasts the packet to all its neighbors. Each node that receives the packet
stores a copy of the packet and broadcasts the packet to all its neighbors. Flooding
terminates when a maximum number of hops are reached or the destination of the
packet is the node itself.
Flooding is robust to node failures and delivers the packet to all the nodes in
the network provided the network is lossless. However, the following problems might
exist if flooding is done indiscriminately. As each node may be in the transmission
8
range of many other nodes, each node might receive multiple copies of the same
packet, thereby resulting in wastage of energy. Similarly, as sensor networks are typ-
ically very dense, heavy contention might result because many nodes are trying to
acquire the channel at the same time. These problems are collectively referred to as
the broadcast storm problem [78]. In addition to nodes receiving redundant packets
as discussed above, another problem might occur in wireless sensor networks. If the
packet received by a node already has some or all of the data contained in the packet,
wastage of energy occurs. This is known as the overlap problem [63].
Gossiping [85] is another data dissemination protocol traditionally used in ad
hoc networks. In gossiping, the source node sends the packet to a randomly-selected
neighbor. Each node that receives the packet randomly selects a neighbor and sends
the packet to it. This process is repeated by all the nodes that have received the
packet. Thus, data is disseminated throughout the network. In flooding, when a
node with high degree receives a packet, it broadcasts the packet to all its neighbors.
In turn, all the neighbors broadcast new copies of the packet. Thus, the network
is flooded with multiple copies of the same packet. Gossiping avoids the implosion
problem by sending the packet to only one neighbor. This also results in energy
savings. However, the information is also disseminated at a slower rate compared to
flooding. Moreover, gossiping does not solve the overlap problem.
SPIN protocols are a set of resource-adaptive information dissemination proto-
cols for wireless sensor networks [63]. In SPIN, nodes use meta-data to describe the
data they possess. Nodes negotiate through a set of protocols to request the data
they do not possess. When a node obtains new data, it broadcasts a ADV message
to all of its neighbors with the meta-data describing the new data. Nodes that have
received the ADV message checks the meta-data to see if it already has the data.
Otherwise, it sends a REQ message to the sender of the ADV message requesting
the data. The sender responds with a DATA message containing the requested data
9
(a)
(b) (c)
(d)
Figure 1.6: Information dissemination: (a) SPIN protocol; (b) Recursive geo-graphic forwarding; (c) Multi-path forwarding; d) Directed diffusion.
and the protocol terminates.
SPIN achieves energy savings by eliminating requests for redundant transmissions
of data. Upon receipt of a ADV message, a node need not send a REQ message if
it already has the data. Similarly, a node can aggregate its data with the newly
received data and send an ADV message for the aggregated data. Nodes are also
resource-adaptive in SPIN. Nodes poll their system resources for the amount of re-
maining energy and make informed decisions about disseminating information. This
10
is shown in the Fig. 1.6(a), where node A advertises its data by broadcasting an
ADV packet. Nodes B and C respond by requesting the data using a REQ packet.
GEAR [125] is a recursive data dissemination protocol for wireless sensor net-
works. A target region is specified in each query packet. Initially, the query packet
is forwarded towards the target region. GEAR uses a set of geographically informed
heuristics to route packets to the target region. Once the packet reaches the tar-
get region, it then uses a recursive geographic forwarding scheme to disseminate the
packet within the target region. Each node within the target region splits its region
into subregions and sends a copy of the query packet to each of the subregions. This
recursive splitting and forwarding is terminated when a node is the only one in the
subregion. The splitting of a region into subregions in recursive geographic forward-
ing is illustrated in Fig. 1.6(b).
Information dissemination in sensor networks is made information-aware in [24].
Every data packet is assigned a priority level based on its information content and
criticalness. Packets carry a small amount of state to help make forwarding deci-
sions at individual nodes. The ReInForM technique in [24] uses local knowledge of
channel error rates and neighborhood at each node. It provides the desired amount
of reliability in data delivery by sending multiple copies of the same packet through
multiple paths from the source to the sink. Multi-path forwarding from a source to
a sink is illustrated in Fig. 1.6(c). A total of five paths exist between the source and
the sink. The number of packets sent to the sink through each path assuming the
communication links are lossless is shown in the figure.
Directed diffusion [49] is a data-centric paradigm for disseminating information.
In Directed diffusion, data is named using attribute-value pairs. Query for a sens-
ing task is distributed throughout the network as an interest for named data. This
dissemination sets up gradients within the network to draw events matching the in-
terest. The sensor network re-inforces a small number of these paths. Fig. 1.6(d)
11
Table 1.1: Comparison of different data dissemination protocols.
Dissemination Avoids Avoids Resource FaultProtocol overlap? implosion? adaptive? toleranceFlooding No No No HighGossiping No No No LowSPIN Yes Yes Yes HighGEAR No Yes Yes MediumDirected Diffusion Yes No Yes HighReInForM No No Can be incorporated High
shows the three steps involved in directed diffusion, including interest propagation
from the sink to the source, the setup of gradients from source to the sink, and
the re-inforcement of better paths from the source to the sink. Directed diffusion
positively re-inforces certain paths and negatively others to repair the paths that
have failed nodes in them. It is a reactive routing technique and enables in-network
aggregation of data by application-specific filters at each node in the network. A
qualitative comparison of different data dissemination protocols is shown in Table
1.1.
Improving the efficiency of broadcasting has been studied extensively in the con-
text of wireless ad hoc networks. However, the resource constraints of wireless sensor
networks present new challenges that have not been studied in the prior work. In
this thesis, we present a location-aided information dissemination protocol that uses
the concept of virtual grids to reduce the redundant receptions of the flooded packet
and saves energy.
1.4 Self-Configuration Protocols
Several sensor network applications require unattended autonomous operation for ex-
tended periods of time. Hence, sensor nodes should self-organize themselves and per-
form data gathering and processing in spite of node failures, loss of temporary com-
12
Figure 1.7: Self-organization in sensor networks: Connected sensor cover.
Figure 1.8: Self-organization in sensor networks: ASCENT.
munication links and node movement. In this section, a number of self-organization
protocols in ad hoc sensor networks are discussed.
Span [17] attempts to save energy by switching off redundant nodes without af-
fecting the connectivity of the network. In Span, a limited set of nodes self-organize
themselves to form a multi-hop forwarding backbone while other nodes go to sleep.
Nodes make decisions based on their local topology information.
A TDMA-based self-organization scheme for sensor networks is presented in [100].
Each node uses a superframe, similar to a TDMA frame, to schedule different time
slots for different neighbors. In each slot, a node can only talk to that neighbor
for which the slot is reserved. Either code division multiple access (CDMA) or fre-
13
quency division multiple access (FDMA) is used to prevent collision of packets among
potentially interfering links. However, this scheme does not take advantage of the
redundancy inherent in wireless sensor networks to power off some nodes.
The work in [36] introduced the concept of connected sensor cover for self-
organizing the sensor network to achieve energy savings. A connected sensor cover
for a query is the minimum set of sensors such that the sensing region of the selected
sensors covers the entire geographical region of the query and the selected set of
sensors form a connected communication graph. At each stage, the algorithm selects
a path of sensors that connects an already connected sensor to a partially connected
sensor. The selected path is then added to the already selected sensors at that stage.
The algorithm terminates when the selected set of sensors completely cover the query
region. This is illustrated in Fig. 1.7 where nodes A, B, C, D, E, F, G, H, and I
completely cover the sensor field and form a connected sensor cover. This algorithm
results in self-organization of the sensor nodes for a specific query to improve the
energy efficiency of the sensor network.
The techniques mentioned in [17, 100, 36] consider a flat topology for the sensor
network. Alternatively, self-organization can also be achieved by grouping sensor
nodes into clusters. A self-organizing algorithm termed Rapid, for message-efficient
clustering based on the concept of budget allocation is presented in [62]. Rapid
uses very few messages to produce clusters of bounded size. A node that wants to
build the cluster initiates the process by allocating a certain budget to itself and
broadcasts the remaining budget among its neighbors by sending each neighbor a
message. Nodes that receive the budget account for themselves and distribute the
remaining budget among themselves. Each node that receives a message sends an
acknowledgment to its parent when either the budget is exhausted or it has received
acknowledgments from all its children. The algorithm terminates when the node
that initiated the algorithm receives acknowledgments from all the neighbors it sent
14
a message to.
The Rapid algorithm always produces clusters less than the desired limit. How-
ever, sometimes the produced cluster may be quite small compared to the desired
bound. This is improved in Persisent [62], where a node does not immediately send
an acknowledgment to its parent on receiving acknowledgments from all its children.
It checks to see if the budget allocated to each of its neighbors has been exhausted.
If the budget is not exhausted, it distributes the remaining budget among the neigh-
bors it has not previously explored. Thus a node returns an acknowledgment only
when its allocated budget has been met or if further growth is not possible. These
algorithms produce single clusters of bounded size using few messages.
ASCENT [15] is a self-organizing scheme that provides topology control for sensor
networks. In ASCENT, each node assesses its connectivity and adapts its partici-
pation in the multi-hop network. ASCENT has several phases. Upon initialization,
each node enters into a listening-only phase called the neighbor discovery phase, where
each node obtains an estimate of the number of neighbors actively transmitting based
on local measurements. At the end of this phase, nodes enter into the join decision
phase, where they decide whether to join the multi-hop sensor network. During this
phase, a node may temporarily join the network for a certain period of time to check
if contributes to improved connectivity. If a node decides to join the network for a
longer the network for a longer time, it enters into an active phase and participates
in the routing protocols of the network. If a node decides not to join the network, it
enters into an adaptive phase where it turns itself off for a period of time or reduces
its transmission range. Fig. 1.8 illustrates the various phases involved in ASCENT.
The sink node A sends help messages in the neighbor discovery phase that results in
neighborhood announcement by other nodes in the join decision phase. Nodes that
have joined the network are in the active phase and participate in forwarding data
from the source to the sink. ASCENT improves the energy-efficiency of the sensor
15
network without a significant improvement in message loss. It is also adaptive to
the traffic in the network and is stable under various network traffic conditions. A
qualitative summary of the characteristics of different data dissemination protocols
is presented in Table 1.2.
While the problem of self-organization of sensor networks has been studied in
considerable detail, the use of location information to improve energy-efficiency has
largely been ignored. This thesis presents a scheme that exploits the redundancy
inherent in wireless sensor networks to improve the energy-efficiency of the self-
organization process.
Table 1.2: Comparison of different self-organization protocols.
Self-ConfigurationTopology
Query Fault Energyprotocol specific? tolerance efficiency
Span Flat No High MediumTDMA Flat No Low Medium
Connected Sensor Cover Flat Yes Medium HighRapid Hierarchical No Low High
Persistent Hierarchical No Low HighASCENT Flat Yes High High
1.5 Data Delivery of Delay Sensitive Traffic
The sensed information in a sensor network typically has the following characteristics.
1. The information in a sensor network is closely tied to the location of the sensor
nodes where data is generated. For example, tracking applications only care
where a target is located, not the ID of the reporting node.
2. The generated data can have different real-time deadlines. For example, in
a forest fire detection application, the data that suggests that a forest fire is
imminent may have a shorter real-time deadline to reach the sink node than
the data that consists of periodic temperature readings.
16
3. The data generated by sensor nodes has both spatial and temporal correlation.
Such correlation of the data can be leveraged for performing in-network data
aggregation, thereby potentially reducing the number of packet transmissions
and hence, extending the lifetime of the network.
Our focus here is on the timely delivery of sensor-generated data in an energy-
efficient way. We are interested in event-driven sensor networks, where multiple
detections of the same event can occur within a short time period in a relatively close
geographic region. Many applications of sensor networks such as habitat monitoring
and target tracking fit this model, as events in these sensor networks often occur
in specific geographic regions. For example, in a habitat monitoring sensor network
application, a query might look like this: Notify me within 2 minutes whenever the
number of animals in a geographic region [x, y] increases above 50?
Traditional service differentiation protocols such as IntServ and DiffServ [75] for
wired networks support real-time traffic with latency constraints through end-to-
end signaling and resource reservation. However, such protocols are not suitable for
wireless sensor networks due to several reasons, e.g., dynamic topology changes due
to node addition, failure, and node mobility.
The design of an energy-efficient data-delivery scheme with latency constraints is
a major challenge for wireless sensor networks. There is a trade-off between perform-
ing in-network data aggregation and achieving timeliness. Methods that optimize
data aggregation by enabling maximum path sharing increase the queueing delay at
relay nodes due to increased inbound traffic and waiting time for the arrival of the
data packets to be aggregated [61]. In real-time applications, such increased queuing
delays typically results in longer packet delivery latencies and can make the packets
miss their timeliness deadlines and thus can overshadow the energy savings of the
in-network aggregation.
17
In this thesis, we propose a novel data delivery scheme for delay-sensitive traffic
called SensiQoS that significantly reduces the energy consumption in wireless sensor
networks without reducing the number of packets that meet the end-to-end real-time
deadline. SensiQoS leverages the inherent properties of the data generated by events
in a sensor network such as spatial and temporal correlation, and realizes energy
savings through application-specific in-network aggregation of the data. SensiQoS
maximizes energy savings by adaptively waiting for packets from upstream nodes to
perform in-network processing without missing the real-time deadline for the data
packets. SensiQoS is a distributed packet scheduling scheme where nodes make
localized decisions on when to schedule a packet for transmission to save energy
and to which neighbor they should forward the packet to meet its end-to-end real-
time deadline. We present a randomized algorithm where nodes adapt locally to the
network-traffic to maximize energy savings in the network. Simulation results show
the energy-efficiency of the proposed approach without the reducing the number of
packets that miss the real-time deadline.
1.6 Data Collection with Mobile Sinks
There is a new focus in the research community on data collection with the help of
mobile sinks in sensor networks [114], [58], [74], [16], [110], [116], [127], [27], [108],
[34], [38], [92]. Typical sensor network applications generate large amounts of data
and send that data to the base station using multi-hop routing. However, trans-
porting large quantities of data to the base station can quickly drain the limited
energy resources of the sensor nodes and reduce the lifetime of the sensor network.
One way to significantly reduce communication cost in sensor networks is to perform
in-network aggregation (e.g., AVG and MIN) [19, 11] or in-network processing (e.g.,
beamforming [79], [5])). However, due to the inherent loss of detail, these techniques
do not provide the fine data granularity desired by several sensor network applica-
18
tions. Often times, all of the data generated by the sensor network is necessary for
the purposes of accuracy and modeling in these applications. For instance, it has
been noted that in a networked structural health monitoring application [20], more
than 500 samples per second are required to efficiently detect damages. Another
example is the the Sonoma Redwoods project [103] where the biologists researching
the project require as much detailed data from the sensor network as possible to
evaluate various physical models and test various hypotheses over the data.
Besides, such multi-hop routing with static sink nodes results in the early death
of the one-hop neighbors of the sinks and renders the sensor network unusable. This
is expected because most of the data traffic is relayed to the sink by these nodes,
thus greatly increasing their energy consumption, resulting in their untimely death
and partition of the network topology. Consequently, nodes located remotely will be
unable to report to the sink, which greatly reduces the lifetime of the WSN. Besides,
in many situations, a static sink may be infeasible because of deployment or security
constraints. Similarly, in hostile or inhospitable environments, it may not be feasible
to replenish the batteries of the sensor nodes.
Recently, mobile data sinks have been proposed as a solution for data collection
to balance the energy consumption among the sensor nodes throughout the network
geographically [58], [74], [16], [110], [116], [127], [27]. Mobile sinks, either proactively
or reactively, move in the sensor network and collect the data from the sensor nodes.
This not only solves the early death problem for the one-hop neighbors of the sink
but also extends network lifetime by distributing the responsibility of relaying data
to the sink among many nodes in the sensor network. Furthermore, mobile sinks
are not only a solution to prolong network lifetime, but also a requirement for many
applications. The sink mobility assumption may be useful for applications such as
target tracking, emergency preparedness, and habitat monitoring. It is also advan-
tageous to use the strategy of mobile sinks in other environments, where vehicles
19
equipped with mobile sinks can collect the data based on the protocols and event
occurrences.
Although a mobile sink is desirable, it poses new challenges for efficient sensor
networking. First, frequent topology changes occur as the sink travels among sensors
resulting in a high control overhead to maintain the route, which may often offset
the energy saved from the mobile sink strategy. Furthermore, high packet loss and
transmission delay will result from changes in sink location.
The majority of these approaches assume periodic sensing where sensors are con-
tinuously monitoring the sensor network and reporting the data to the sink. However,
there are a large number of applications (e.g., intrusion detection [87], seismic ac-
tivity monitoring [117], habitat monitoring [14]) where an event-driven approach is
more appropriate. In event-driven sensor networks, data is only generated when
events occur.
In this thesis we propose a two-tier distributed hash-table-based scheme for data
collection in event-driven wireless sensor networks that leverages mobile sinks to
significantly extend the network lifetime. We propose localized algorithms using a
distributed geographic hash table mechanism that provides excellent load balancing
capabilities to the data collection process. Hotspot is defined as a sensor node with
the maximum amount of energy dissipation. We address the hotspot problem by
rehashing the locations of the mobile sinks periodically. Our proposed mobility
model moves the sink node only upon the occurrence of an event according to the
evolution of current events, so as to minimize the energy consumption incurred by the
multi-hop transmission of the event-data. Data is collected via either single-hop or
multi-hop routing. Simulation results demonstrate significant gains in energy savings,
while keeping the latency and the communication overhead at very satisfactory levels
under a variety of network conditions.
20
1.7 Relevance of Thesis Research
A diverse set of applications implies a diverse set of requirements for the deployed
sensor networks. A single protocol cannot satisfy the wide variety of requirements
for these applications. However, as shown in this thesis, location-aware methods
can be developed to improve the energy-efficiency of the existing protocols for each
application class. We describe here four major sensor network application categories
and explain the relevance of the methods proposed in this thesis to these categories.
• Habitat Monitoring. In habitat monitoring applications [14], the base sta-
tion or a mobile sink queries the sensor nodes for information. Only a subset of
nodes needs to respond for some queries. The underlying protocols need to be
energy-efficient since the application requirements include unattended monitor-
ing for extended periods of time. Either a mobile sink or a static base station
is required to collect the data and process it for further analysis. In habitat
monitoring applications that do not permit human presence or the presense
of mobile sinks, the data-collection mechanism (HTDC) described in Chapter
5 cannot be used for data collection. However, the self-organization proto-
col (SCARE) described in Chapter 2 can be used for self-organization where
dense sensor networks are deployed. The dissemination of control information
is important in the context of these applications to initialize and update the
application-specific parameters in the sensor nodes, and the data-dissemination
protocol (LAF) described in Chapter 3 can be used to disseminate information
in an energy-efficient way. Similarly, if mobile sinks can be operated in the
sensor network area, HTDC can provide energy savings in the data collection
process.
• Structural Health Monitoring. Structural health monitoring applications
21
[35], [20] assess the integrity of physical structures and detect damage early.
Several hundred sensor nodes are typically deployed on the physical structure
(e.g., Golden Gate Bridge [57]). These nodes communicate to the base station
via multi-hop routing. LAF can be used to communicate control information
from the base station to all the nodes in the network energy-efficiently. At
the point of damage, data generated typically exhibits spatial and temporal
correlation. It is also important to inform the base station immediately when
a weakness in the structure is detected. Real-time data delivery protocol (Sen-
siQoS) described in Chapter 4 can be leveraged to provide soft real-time data
delivery services for this class of applications.
• Environmental Monitoring. In environmenal monitoring applications [89],
[64], medium-to-large numbers of sensor nodes are deployed. Either a static
base station or mobile sinks are used for data collection. Sensor nodes contin-
uously generate data and send it to the base station for analysis. Typically,
higher sampling rates are required to model the environment being monitored
(e.g., Sonoma Redwoods project [103]). If mobile sinks can be used, HTDC
can provide energy savings to the data collection process. Similarly, SCARE
can be used for self-organization of the deployed sensor nodes and LAF can be
leveraged to provide energy savings in the data dissemination process.
• Target Detection and Tracking. In target detection and tracking applica-
tions [72], a large number of sensor nodes are deployed to detect a target and
track it in real-time. Events occur infrequently and data is generated only upon
the occurrence of an event. It is critical that the target tracking information
is relayed to the sink immediately after an event is detected. Hence, the data
is likely to have real-time deadlines and SensiQos can be used to route data to
the base station within the real-time deadlines. LAF can be used for dissem-
22
inating data to the sensor nodes. If the sensor network deployment area is in
a hostile location, it may not be appropriate to place sensor nodes according
to a specific topology. In such scenarios, SCARE can provide self-organization
and reconfiguration services in an energy-efficient way.
1.8 Thesis Outline
The remainder of the thesis is organized as follows. In Chapter 2, we present SCARE,
a self-configuration and adaptive re-configuration protocol for dense sensor networks.
SCARE partitions the set of nodes into groups of coordinator and non-coordinator
nodes. While coordinator nodes stay awake and participate in sensing and routing,
non-coordinator nodes power down their radios and sleep. Section 2.2 introduces
some relevant background material on self-organization of sensor networks. Section
2.3 presents an outline of SCARE and Section 2.4 describes the details of SCARE.
Section 2.5 describes the results of SCARE of different topologies and different net-
work sizes. Section 2.6 concludes the chapter.
In Chapter 3, we present a location-aided flooding protocol (LAF) for energy-
efficient information dissemination in sensor networks. LAF uses the concept of
virtual grids to supress redundant receptions. Section 3.1 presents our broadcasting
protocol for location-aware sensor networks. In Section 3.2, we discuss relevant prior
work for broadcasting in ad hoc wireless networks. In Section 3.3 describes the de-
tails of LAF. Section 3.4 presents the simulation results of LAF for different network
sizes and compares it with several alternative approaches. Section 3.5 concludes the
chapter.
In Chapter 4, we present a new data delivery scheme for delay-sensitive traf-
fic called SensiQoS that leverages the inherent properties of the data generated by
events in a sensor network such as spatial and temporal correlation and realizes
energy savings through application-specific in-network aggregation of the data. In
23
Section 4.2, we discuss relevant prior work for data delivery schemes subject to la-
tency constraints. Section 4.3 presents the analysis of the energy savings provided
by the protocol. Section 4.4 discusses the performance evaluation of the proposed
protocol. Finally, Section 4.5 concludes the chapter.
In Chapter 5, we present a new data collection mechanism. Details about the
network architecture and protocol are provided in Section 5.3. In Section 5.4, we
provide our analytical framework to evaluate the performance of the proposed pro-
tocol. We then present our numerical and simulation results in Section 5.5. Section
5.6 concludes the chapter.
Chapter 6 concludes the thesis and presents future research directions.
24
2
Self-Configuration and AdaptiveReconfiguration
2.1 Introduction
Sensor nodes are often deployed in remote or hostile locations. Upon deployment,
sensor nodes might fail with time due to loss of battery power, an enemy attack or
change in environmental conditions. The replacement of each failed sensor node with
another new sensor node is expensive and often infeasible, and it is therefore unde-
sirable. Hence in such cases, a large number of redundant sensor nodes are deployed
with the expectation that these nodes will be used later when some other nodes
fail. The self-configuration of a large number of sensor nodes requires a distributed
solution. In this chapter, we present a scalable self-configuration and adaptive re-
configuration (SCARE) algorithm for distributed sensor networks.
An effective self-configuration scheme should have the following characteristics.
It should be completely distributed and localized because a centralized solution is
often not scalable for wireless sensor networks. It should be simple without excessive
message overhead because sensor nodes typically have limited energy resources. It
25
should be energy-efficient and require only a small number of nodes to stay awake
and perform multi-hop routing, and it should keep the other nodes in a sleep state.
We propose a solution that meets the above design requirements. We present a
distributed self-configuration scheme that distributes the set of nodes in the sensor
network into subsets of coordinator nodes and non-coordinator nodes. While coor-
dinator nodes stay awake, provide coverage, and perform multi-hop routing in the
network, non-coordinator nodes go to sleep. When nodes fail, SCARE adaptively
reconfigures the network by selecting appropriate non-coordinator nodes to become
coordinators and take over the role of failed coordinators. This scheme only needs
local topology information and uses simple data structures in its implementation.
The remainder of the chapter is organized as follows. In the next section we dis-
cuss related prior work. In Section 2.3, we present an overview of self-configuration
using SCARE. Section 2.4 presents the details about SCARE, including the timeout
and defer rules, and an analysis for the number of control messages needed for the
self-configuration. The performance evaluation of SCARE is presented in Section
2.5. This section describes the simulation methodology, the experimental results and
a comparison with related work. Finally, conclusions are presented in Section 2.6.
2.2 Relevant Prior Work
A number of topology management algorithms have been proposed for ad-hoc and
sensor networks [17] [124] [123]. . The GAF scheme [124] uses geographic location
information of the nodes and it divides the network into fixed-size virtual square
grids. GAF identifies redundant nodes within each virtual grid and switches off their
radios to achieve energy savings. In contrast, SCARE achieves energy savings by
powering down nodes that are within the sensing radius of a coordinator.
The STEM scheme described in [97] trades off latency for energy savings by
putting nodes aggressively to sleep and waking them up only when there is data
26
to forward. It uses a second radio operating at a lower duty cycle for transmitting
periodic beacons to wakeup nodes when there is data to forward. SCARE does
not use a separate paging channel for self-configuration. Nevertheless, SCARE can
integrate well with STEM to achieve significant energy savings. In [123], nodes
listen to the channel for transmissions. This scheme conservatively tries to keep
nodes awake when there are not too many neighbors in its radio range. In order
to deduce this information, each node has to listen to transmissions that are not
meant for it. In SCARE, however, nodes listen at only periodic intervals in order to
determine their states.
The PAMAS [98] multi-access protocol saves power by switching off the radio of
a node when it is not transmitting or receiving. This method saves power when idle
listening consumes significantly less energy compared to message reception. However,
its use is limited in sensor networks where idle power contributes almost as much to
energy consumption as receive power [48].
The Span approach [17] appears to be the most closely related to SCARE. Span
attempts to save energy by switching off redundant nodes without losing the con-
nectivity of the network. Nodes make decisions based on their local topology infor-
mation. However, SCARE differs from Span in that it uses distance estimates to
determine the state of a node. Span uses a communication mechanism to obtain
this information. Since Span was developed for ad hoc networks, its main focus is
on ensuring network connectivity through energy-efficient topology management. It
is not directed towards ensuring the sensing coverage of a given region. SCARE
also differs from Span in that, in addition to ensuring network connectivity and low-
energy self-configuration, it attempts to provide a high level of sensing coverage.
A TDMA-based self-organization scheme for sensor networks is presented in [100].
Each node uses a superframe, similar to a TDMA frame, to schedule different time
slots for different neighbors. However, this scheme does not take advantage of the
27
redundancy inherent in wireless sensor networks to power off some nodes.
SCARE utilizes a localization scheme for periodic transmission of beacon signals
and for the synchronization of the clock signals of sensor nodes. A number of such
localization schemes have been proposed in the literature for sensor networks [1] [33]
and [9]. These schemes use a special set of nodes, called the reference nodes, that
transmit beacon signals to let the sensor nodes self-estimate their position. The
approach in [9] is based on the received signal strength from the reference nodes to
carry out location estimation of the sensor nodes. It is shown that despite fading
and mobility, a small window average is sufficient to do location estimation.
Traditionally, global positioning system (GPS) [42] receivers are used to estimate
positions of the nodes in mobile ad-hoc networks. However, their high cost and the
need for more precise location estimates made them unsuitable for sensor networks
till recently. With the widespread adoption of GPS devices, their cost has come
down recently and their accuracy improved to within a few centimeters. For exam-
ple, Atmel Corporation now offers complete GPS chipsets for under $8 [21].
In [84], a scheme is presented to estimate the relative location of nodes using only
a few GPS-enabled nodes. It uses the received signal strength information (RSSI)
as the ranging method. [118] uses an ad-hoc localization technique called Calamari
in combination with a calibration scheme to calculate distance between two nodes
using a fusion of RF-based RSSI and acoustic time of flight (TOF). Acoustic ranging
[33] can also be used to get fine-grained position estimates of nodes.
Finally, several clustering techniques have been proposed in the ad hoc network-
ing literature. [60] proposes a scheme that attempts to find maximal cliques in the
physical topology, and uses a three-pass algorithm to find the clusters. Although this
scheme finds a connected set of clusters, it consumes a significant amount of energy
during clustering and cannot be directly applied to sensor networks. The adaptive
clustering scheme proposed in [31] uses node IDs to build two-hop clusters in a deter-
28
ministic manner. SCARE differs from this scheme in two ways. First, the main goal
of SCARE is to use distance information to power down redundant sensor nodes,
whereas in [31], node IDs are used to provide better QoS guarantees by clustering
nodes. Second, in [31], as in [60], energy efficiency is a secondary concern. In [6],
clustering schemes for both static and mobile networks are proposed. However, there
is no provisioning for switching off redundant nodes in these schemes. Thus, [6] can-
not be directly applied to sensor networks. On the other hand, SCARE is specifically
designed for sensor networks to take advantage of their inherent redundancy.
2.3 Outline of SCARE
SCARE is a decentralized algorithm that distributes all the nodes in the network
into subsets of coordinator nodes and non-coordinator nodes. While the coordina-
tor nodes stay awake and provide coverage and perform multi-hop routing in the
network, non-coordinator nodes go to sleep. Non-coordinator nodes wake-up peri-
odically to check if they should become coordinators to replace failed coordinators.
The psuedocode for SCARE is shown in Fig. 2.1, Fig. 2.2, and Fig. 2.6.
SCARE achieves four desirable goals. First, it saves energy by selecting only a
small number of nodes as coordinators and putting other nodes to sleep. Second,
it uses only local topology information for coordinator election and hence is highly
scalable. Third, it provides nearly as much sensing coverage compared to the coverage
obtained if all the nodes are awake. Finally, it preserves network connectivity by
using a protocol based on CHECK and CHECK REPLY messages. We next describe
a basic scheme for self-configuration. The basic scheme will subsequently be extended
to prevent network partitions.
29
2.3.1 Basic Scheme
The pseudocode for the initialization of SCARE is shown in Fig. 2.1. In self-
configuration based on SCARE, each node starts by generating a random number
with uniform probability between 0 and 1 (Procedure Initialize, Line 1). A node
becomes eligible to be a coordinator if the random number thus generated is greater
than a threshold (say 0.9) (Lines 2-3). Therefore, a very small percentage of the
nodes actually become coordinators. Other nodes set their state to Undecided and
just wait and listen to the channel for messages from other nodes (Lines 10-11). The
threshold value can be preset depending on the application. A higher value for the
threshold results in a small number of initial coordinator nodes. This has the effect
of delaying the convergence of the self-configuration algorithm but it might result
in a better selection of coordinator nodes. On the other hand, a low value for the
threshold implies that a high number of coordinator nodes are selected randomly
in the beginning. This hastens the convergence of the protocol although a larger
number of coordinator nodes may be selected.
A node that is eligible to be a coordinator waits for a random amount of time
before declaring itself to be a coordinator by broadcasting a HELLO message (Lines
4-7). This wait time, for example, can be chosen from a uniform distribution of values
between T and NT where T is a preset slot time and N is the number of neighbors
of the node that are coordinators. Initially N can be chosen to be a constant, e.g.,
6. This prevents excessive contention on the wireless channel that might result if all
the nodes decide to become coordinators at once.
In procedure recvDataPacket (Fig. 2.2), a sensor node processes the packet re-
ceived based on the packet type. Upon receipt of a HELLO message, a sensor node
compares its distance from the sender C of the HELLO message to its sensing range
s (Lines 2-12). A node within a distance s from a coordinator immediately becomes
30
Procedure Initialize
Result: Initialize the state of a sensor node
t r ← random(0,1);1
if t r > THRESHOLD then2
state ← ETC;3
wait(random(T,NT));4
if state == ETC then5
state ← C;6
broadcastPacket(HELLO);7
end8
else9
state ← U;10
wait(Toff );11
listen(channel);12
end13
Figure 2.1: Procedure Initialize.
a non-coordinator node and stores the ID of the node that sent the HELLO message
in its local cache (Lines 3-5). A node that is at a distance greater than s from C
but within transmission range r becomes eligible to be a coordinator node (Lines
7-10). This is shown in the Fig. 2.3. The shaded region in the figure represents
the sensing range of the node C. The outer circle represents the transmission range
of the sensor node. Here, we assume that the sensing radius is smaller than the
transmission radius. This is often the case for sensors in a sensor node [88]
While SCARE assumes the presence of an appropriate localization mechanism
[1] [33] and [9], exact distance calculations are not necessary. We show later that
a moderate error in distance estimation has little effect on the outcome of the self-
configuration procedure.
2.3.2 Network Partitioning Problem
The basic scheme described above can sometimes result in a partitioning of the
network; see Fig. 2.4(a). Here, coordinator node F makes node A a non-coordinator.
31
However, coordinator node D can communicate with F only through A. This can
potentially result in the partitioning of the network if coordinator (active) node D is
unable to reach any other active nodes. As a result, network connectivity cannot be
guaranteed in this situation. In Fig. 2.4(b), G and K are coordinator nodes and B
and C are non-coordinator nodes. This situation again results in network partitioning
as nodes G and K cannot reach each other. To prevent such situations, we extend
the basic SCARE scheme outlined above, which results in a more effective technique
for self-configuration. In the basic scheme, if there is a network partition, a node
might never receive a HELLO message. This results in the node waiting eternally
for a HELLO message, which results in wastage of energy. Hence, we choose a time-
out value Toff after which the nodes that are still undecided about their state can
become eligible to become coordinator nodes. The time-out value can be chosen
based on the probability threshold discussed in Section III.A. A lower value for the
threshold means that the procedure converges quickly and needs a lower Toff value,
and vice-versa.
To prevent the network partitioning that occurs due to the pathological cases
shown in Fig. 2.4, a node that initially receives a HELLO message from a coordinator
node does not become a non-coordinator immediately and go to the sleep state.
Instead, it continues to listen for messages from other coordinator nodes and remains
in the “Eligible To be a Non-Coordinator” (ETNC) state. A sensor node that is in
the ETNC state can become a coordinator node in two cases:
1. If it can connect two neighboring coordinator nodes1 that cannot reach each
other in one or two hops. It can deduce this information from the HELLO
messages it received earlier. As shown in Fig. 2.4(a), node A, which is in the
ETNC state, receives HELLO messages from node F and node D, and decides
1 A neighboring node lies within the node’s transmission radius.
32
to become a coordinator; this eliminates the partition.
2. If it can connect two neighboring coordinator nodes that cannot reach each
other in one or two hops via a node in the ETNC state.
To achieve this, each ETNC node sends a CHECK message. This CHECK message
contains the neighbor list of the coordinator node that caused this node to be in the
ETNC state. Intuitively, this case is more likely to occur if there are few coordinators
in the vicinity and less likely if there are more coordinator neighbors. Any ETNC
node that receives this CHECK message replies with a CHECK REPLY message
(Lines 14-19) and becomes a coordinator if there is no node common to the neighbor
lists of both the nodes. Upon receipt of the CHECK REPLY message, the node
that sent the CHECK message also becomes a coordinator (Lines 21-23). In Fig.
2.4(b), non-coordinator node B sends a CHECK message and gets a CHECK REPLY
message from node C. Both node B and node C therefore become coordinator nodes.
This procedure removes the network partition.
To prevent oscillations during the selection of coordinators, we enforce the con-
dition that once a node becomes a coordinator, it continues to remain a coordinator
until it is unable to provide any service. This strategy is used despite the fact that this
coordinator might become redundant later during self-configuration. This penalty is
reasonable since it occurs infrequently, especially in contrast to the energy needed
to select an optimum number of coordinators. As the density of nodes increases, the
fraction of non-coordinator nodes increases and this leads to more energy savings.
SCARE selects more coordinators than the minimum number necessary for coverage
and connectivity. This happens due to the randomness involved in the distributed
selection of coordinator nodes.
After self-configuration, each coordinator periodically broadcasts a HELLO mes-
sage along with a list of its one-hop neighbors that are coordinators. Non-coordinator
33
nodes listen to these messages. Non-coordinator nodes also maintain a timer to keep
track of the coordinator node that made them a non-coordinator. If this timer goes
off, non-coordinator node assumes that the corresponding coordinator node has failed
and goes into an undecided state. This results in non-coordinator nodes becoming
eligible to become coordinators.
SCARE can also be applied to mobile sensor networks. A node that has moved
to a new location is treated in the same way as the appearance of a new node at that
location. It sets itself to the Undecided state and listens to the network until either
the timer Toff goes off or it receives a HELLO message. Similarly when a node moves
away from one location, this is treated as a node failure by its neighbors. Failure of
non-coordinator nodes does not result in any change in the topology. However, the
movement of coordinator nodes is detected by the non-coordinator nodes and this
makes them eligible to subsequently become coordinators.
2.4 Details of SCARE
A set of control rules govern the state of the sensor node while a set of defer rules
decide when a node should postpone its decision. Timeout rules specify the time
after which sensor nodes should make a decision.
A sensor node executing the SCARE procedure can be in one of the following
states: Coordinator (C), Non-coordinator (NC), Eligible To be a Coordinator (ETC),
Eligible To be a Non-Coordinator (ETNC), and Undecided (U). The ETC and ETNC
states are temporary and exists only during the Tsetup period explained below. There
are seven timeout values in SCARE:
1. Toff : time after which a node that is in undecided state about its state becomes
eligible to be a coordinator and goes into the ETC state.
2. Trand : time for which the sensor node that is in ETC state waits before be-
34
coming a coordinator. It then sends a HELLO message along with all its
coordinator neighbors that it has identified.
3. Truntime : After every Truntime units of time, all non-coordinator nodes wake-up
and listen.
4. Tsetup : time interval for which the non-coordinator nodes wake up and listen,
after which they go to sleep if they still remain non-coordinators. This is also
the period during which beacon messages are sent to synchronize the nodes.
5. Tcoord : time interval during which only the coordinators send HELLO messages.
This occurs at the beginning of the Tsetup period.
6. Tnon-coord : time interval during which only the non-coordinators send messages.
This is the latter part of the Tsetup period. This period starts immediately after
the Tcoord period ends.
7. Tfailure : A non-coordinator node waits for time Tfailure for the HELLO messages
from the coordinator node that made it the non-coordinator. If no HELLO
message is received within this time interval, it decides that the corresponding
coordinator node has failed and sets its state to Undecided.
35
Procedure recvDataPacket(Packet p)
Data: Packet p
Result: Process the received data packet
switch Packet type do1
case HELLO2
C ← sender of p;3
if distance(self, C and C is a coordinator) ≤ s then4
state ← ETNC;5
save(id(C));6
else7
if distance(self,C) ≤ r then8
state ← ETC;9
broadcastPacket(CHECK);10
end11
end12
end13
case CHECK14
if state ← ETNC then15
if NL check⋂
NL self == φ then16
state ← ETC;17
broadcastPacket(CHECK REPLY);18
end19
end20
end21
case CHECK REPLY22
state ← C;23
end24
end25
Figure 2.2: Procedure recvDataPacket.
36
Figure 2.3: Sensing and transmission radii of a node.
D
AF
s
r
(a) First Scenario.
Coordinator
Non-coordinator
s
r
: sensing radius
: transmission radius
GBs
r
CK
r
s
(b) Second Scenario.
Figure 2.4: Network partitions in the basic scheme.
Tcoord Tnon-coord
T setup
Figure 2.5: Illustration of the relationships between the time intervals.
37
Procedure TimerExpire(Packet p, Timeout type)
Data: Packet p
Result: Process the timeout based on the timer type
switch timeout type do1
case Trand2
broadcastPacket(HELLO);3
end4
case Tsetup5
if state == ETNC then6
state ← NC;7
end8
end9
case Tcoord10
if state == ETC then11
state ← C;12
end13
end14
case Truntime15
listen(channel);16
end17
case Toff18
if state == U then19
state ← ETC;20
end21
end22
case Tfailure23
state ← U;24
end25
end26
Figure 2.6: Procedure TimerExpire.
38
The procedure TimerExpire is invoked when a timer expires and appropriate
action is taken based on the type of the timeout as shown in Fig. 2.6.
Next we describe the type of messages in more detail. There are three types of
messages in SCARE
• HELLO: These messages are sent by coordinators. They also contain a list of
the one-hop coordinator neighbors of the sender node.
• CHECK: These messages are periodically sent by the non-coordinator nodes.
They are used to remove the potential network partitions. Each CHECK mes-
sage also contains of list of coordinator neighbors of the node that made it the
non-coordinator.
• CHECK REPLY: Upon receipt of a CHECK message, non-coordinator node
compares the coordinator neighbor list included in the CHECK message with
the neighbor list of the node that made it a non-coordinator. If there are no
common entries in the two lists, it sends a CHECK REPLY message. Thus,
SCARE adopts a conservative strategy in creating paths in the network and
prevent partitions. A non-coordinator node becomes a coordinator node if two
coordinators at the end of the Tcoord period cannot reach each other within one
or two hops.
Recall that we used r to denote the transmission radius of a node. Similarly, recall
that s is the sensing radius of a node. The control rules that decide the state of the
sensor node are as follows:
1. A sensor node that generates a random number between 0 and 1, and greater
than a threshold, becomes a coordinator.
2. A sensor node that lies at a distance between s and r of a coordinator node
becomes eligible to become a coordinator node and goes into the ETC state.
39
ETNC
U
AsleepNC> T
ETCDNR Hello
DNR Helloor C CHECK_REPLY
Hello
> T
NCAwake
DNRCHECK_REPLY
> T
DNR Hello
t
t
d > r/2
t
off
failure
setup
off
t > Toff
t > Toff
t
t > Tsetup
randT >t
d < r/2
< T
setup> Ttd > r/2
Hello
Received/Sent
rt> T
Hellod < r/2
> Trandt
t > T coordNCN
setup> Ttt
Received/SentCHECK_REPLY
CHECK_REPLYDNR
NCN : No Common Neighbors
: time elapsedt rt
DNR : Did Not Receive
T runtime: T
Figure 2.7: The state diagram for SCARE.
3. A sensor node that lies at a distance at most s from a coordinator node becomes
eligible to become a non-coordinator node and goes into the ETNC state.
4. A sensor node that is in ETNC state listens to the HELLO messages sent by
the coordinator nodes for the Tcoord period. From this list of coordinator nodes
contained in the HELLO messages, if it determines that two coordinator nodes
do not have a common neighbor that is a coordinator, this node becomes a
coordinator at the end of the Tcoord period.
5. A sensor node that is in the ETNC state at the end of Tcoord period broadcasts
a CHECK message. This message contains a list of the coordinator neighbors
of the node that caused it to go to the ETNC state.
40
6. A sensor node that receives a CHECK message compares the list of neighbors
in the CHECK message with its neighbor list. If there is no match between the
two lists, it transmits a CHECK REPLY message to the sender of the CHECK
message.
7. Upon receipt of a CHECK REPLY reply to its CHECK message, a sender node
that is in the ETNC state becomes a coordinator node. The node that sent
the CHECK REPLY also becomes a coordinator.
8. A sensor node that is in the ETNC state and does not satisfy conditions 4)
and 5) becomes a non-coordinator node at the end of the setup period.
9. A sensor node that is in the ETC state becomes a coordinator node after the
Tcoord period if it does not become a non-coordinator node due to the selection
of some other coordinator node.
10. A sensor node with data to send can opt to become a coordinator for as long
as it has data to transmit.
The defer rules for SCARE are as follows:
1. If a node becomes eligible to be a coordinator, it listens for Trand period.
2. If a node becomes eligible to be a non-coordinator at the end of the Tcoord
period, it listens for time Tnon-coord period.
The timeout rules are as follows:
1. A sensor node at the end of the Trand period broadcasts a HELLO message.
2. A sensor node at the end of the Tsetup period becomes a non-coordinator if it
is still eligible to be a non-coordinator.
41
3. A sensor node at the end of the Tcoord becomes a coordinator if it is still eligible
to become a coordinator.
4. A sensor node wakes-up and listens to the medium after the timer Truntime
expires.
5. A sensor node after the Toff timer expires becomes eligible to become a coordi-
nator if it still undecided about its state.
A state diagram for the SCARE algorithm is shown in Fig. 2.7. The time-out
values in SCARE are application-dependant and they need to be tuned specific to
the application. For example, the Toff value that triggers the state-transition from an
undecided state to an ETNC state depends on the radio range of the specific sensor
used in the sensor network.
2.4.1 Time Relationships
The relationships between Toff, Truntime, Tsetup, Tcoord and Tnon-coord are as follows:
1. Toff < Tcoord < Tsetup.
2. Tcoord < Tsetup and Tnon-coord < Tsetup.
These relationships are illustrated in Fig. 2.5. Fig. 2.8 shows the result of applying
SCARE to an example sensor network with 100 randomly deployed nodes in a 100
m × 100 m grid. The sensor nodes have a radio range of 25 m. Time-out values
of Tfailure of 3 s, Tcoord of 3 s, Tnoncoord of 2 s, Tsetup of 5s and Truntime of 95 s
are used. SCARE selects 32 nodes as coordinators and the rest are designated as
non-coordinators.
2.4.2 Ensuring Network Connectivity
We next discuss how SCARE prevents network partitioning. Let S be a set of nodes
containing the partial set of coordinators that are connected and the associated nodes
42
0 10 20 30 40 50 60 70 80 90 1000
10
20
30
40
50
60
70
80
90
100
Coordinator Non-coordinator
Figure 2.8: Result of self-configuration using SCARE.
in the ETNC state. Each coordinator in set S can reach any other coordinator in set
S in a finite number of hops. Let X denote the region enclosing the nodes present
in set S. Now consider a node not in set S. Any node not present in S can lead
to the following scenarios. We use the notation PA to represent the area within the
transmission range of node A.
1. Coordinator B outside the region X but within the transmission range of the
coordinator A in region X as shown in Fig. 2.9(a). In this case, both the
coordinators can reach each other and the set S = S ∪ {B} and the region X
expands to include the coordinator B.
2. Coordinator B is outside the transmission range of the coordinator A but is
within the transmission range of ETNC node C; see Fig. 2.9(b). However, as
node C listens to the HELLO messages from both coordinator nodes A and B,
it becomes a coordinator if there is no other path from A to B by becoming a
coordinator. Now this reduces to (Case 1) with coordinators C and B within
43
(a) (b)
(c) (d)
Figure 2.9: Illustration of how network partitioning is prevented in SCARE.
reach of each other. C becomes a coordinator and the region X expands to
include the coordinator B, i.e. S = S ∪ {B}.
3. Coordinator B is outside the transmission range of coordinator A. However,
node C in ETNC state due to node B is within the reach of coordinator A as
shown in Fig. 2.9(c). Node C listens to HELLO messages from A and B, and
it becomes a coordinator. Now, A and C are within reach of each other and
and this reduces to Case 2, hence S = S ∪ {C}. By a similar procedure, node
B is also included.
4. Coordinator B and coordinator A cannot reach each other as shown in Fig.
2.9(d). However, nodes C and D that are in ETNC state can reach other.
Node C and node D send and receive CHECK and CHECK REPLY messages
and become coordinators if there is no other path from node A to B. Once C
becomes a coordinator, coordinator C in region X and coordinator D outside
regionX are within reach of each other. This reduces to case 2 and S = S∪{D}.
44
Region X expands to include node B and node D.
5. A node F that is outside the reach of either a coordinator or a node in ETNC
state in region X. In this case, as the region X expands to include more nodes,
node F falls into one of the above categories and as a consequence becomes
connected with the nodes present in region X.
We have therefore shown that network partitioning can never arise during self-
configuration in SCARE.
2.4.3 Message Complexity
The total number of control messages, referred to as message complexity in SCARE,
can be determined as follows: Suppose N is the total number of nodes in the network.
Let Nc be the number of coordinator nodes selected. The number of non-coordinator
nodes in the network is then simply N −Nc. Each coordinator node sends a HELLO
message and each non-coordinator node sends a CHECK message. Let ∆ be the av-
erage number of coordinator neighbors of a non-coordinator node. A non-coordinator
node sends a CHECK REPLY message in response to a CHECK message if and only
if there is no match between the coordinator neighbor lists of the non-coordinator
nodes. In Span, each non-coordinator node sends one message and each coordinator
node sends two messages. Therefore, the number of messages sent in each Tperiod
interval is N +Nc.
Consider two non-coordinator nodes A and B. For every node in the coordinator
neighbor list of A, let us assume that it is equally likely that this is present in the
coordinator neighbor list of node B. Therefore, the probability of a node present in
the coordinator neighbor list of node A to be present in the coordinator neighbor list
of node B is 1/2. The probability that there are is no match is then(
12∆
). Thus the
expected number of CHECK REPLY messages is(
12∆
)(N −Nc). The total expected
45
number of control messages sent in SCARE is therefore(
12∆
)(N −Nc) +Nc + (N −
Nc) ≈ N for sufficiently large ∆ in dense sensor networks. This is clearly less than the
N+Nc messages needed in Span. The size of each message in SCARE is almost equal
to the size of each message in Span since the almost same information is contained
in both sets of messages.
We conclude that the message complexity in SCARE grows only linearly with
the number of nodes in the network and hence SCARE scales well for dense sensor
networks.
2.4.4 Space Complexity
Each node in SCARE can receive CHECK messages from non-coordinator neighbors.
The CHECK messages contain the coordinator node neighbors of the sender. Hence
the amount of space required at each node in SCARE is O(d2) where d is the average
degree of a node.
2.5 Performance Evaluation
To better understand the performance issues in SCARE, we first derive a lower
bound on the number of coordinators needed in an ideal sensor network configuration
i.e., where the coverage is maximum. We then use simulation to determine the
effectiveness of SCARE in terms of coverage, connectedness, and network lifetime.
We compare SCARE to Span and a random duty cycle (RDC) method. Finally, we
examine the impact of distance estimation errors on the effectiveness of SCARE.
Each sensor node is assumed to have a radio range of 25 m. The bandwidth of
the radio is assumed to be 20 Kbps. The sensor characteristics are given in Table 3.1
[48]. For purposes of analysis, we approximate the radio range of a sensor node to
that of an inscribed square in the circle as shown in Fig. 2.10. Here s is the sensing
radius of a node and x is the side of the inscribed square. Hence, x =√
2s . Now,
46
Figure 2.10: Approximation of coverage region of a sensor node by a square.
since it is sufficient to have a spacing of s between two nodes, a lower bound N′
on
the total number of nodes needed for monitoring a region in the form of a square of
side L is given by: N′= (L
s− 1)2.
2.5.1 Simulation Methodology
We have developed a simulator in JAVA to evaluate the performance of SCARE. Our
simulator uses geographic forwarding as the routing layer and IEEE 802.11 [47] as
the MAC layer. Each sensor node that receives a packet forwards it to the neighbor
coordinator node that is closest to the destination. If no neighboring coordinator
node is closer to the destination than the node itself, the packet cannot be forwarded
and it is dropped. SCARE runs on top of IEEE 802.11 MAC and below the routing
layer to help coordinate the forwarding of packets from source to destination.
We use a grid size of 100 m x 100 m, and sensor nodes with radios having a
nominal radio range of 25 m and a bandwidth of 20 Kbps. We simulate different
node densities by increasing the number of nodes and keeping the grid size constant.
To study the effect of increase in the number of nodes on SCARE, we simulate 50,
100, 150, 200, 250, and 300 nodes in our simulations. The results presented in this
section are averaged over 100 simulation runs and are shown with 95% confidence
intervals. Confidence intervals are calculated using the method of independent repli-
47
cations [105] for these simulations. We obtain a single output variable in each of the
simulation runs and its distribution is not known. Hence we use statistical inference
based on normal distribution (because of the Central Limit Theorem) to determine
the confidence intervals. The following formula is used to obtain the 100(1 − α)%
confidence interval of the population mean µ:
θ − z1−α/2Sn√n< µ < θ + z1−α/2
Sn√n
where θ is the sample mean, Sn is the sample variance, n is the number of simu-
lation runs and z1−α/2 is the (1− α/2) quantile of the standard normal distribution
N(0, 1).
In the remainder of this section, we first compare SCARE with Span and show
that SCARE selects a smaller number of coordinators compared to Span and thus
provides significant energy savings. Next, we compare SCARE with a random duty
cycle method and show that by using SCARE, we can provide similar coverage but
with much higher network lifetime.
To study the effect of SCARE coordinator selection on packet loss rate, we used a
constant bit rate (CBR) traffic. However, to more closely understand the effectiveness
of SCARE, we separate the nodes that generate traffic from the nodes that execute
SCARE and participate in multi-hop forwarding of packets. Sources and destinations
of traffic are placed outside the simulated region and these nodes do not execute the
SCARE procedure. A total of 10 source nodes and 10 destination nodes are used
in our simulations. Each source node selects a random destination from the 10
destination nodes and sends a CBR traffic of 10 Kbps to it. These parameters and
the general simulation environment is borrowed from Span [17].
To study the effect of mobility on SCARE, we use a random way-point model
[12]. In this model, each node randomly selects a destination location in the sensor
field and starts moving towards it with a velocity randomly chosen from a uniform
distribution. Once it reaches the destination, it waits for a certain pre-determined
pause time, before it starts moving again. The pause time determines the degree of
48
mobility in this model. We simulated five different pause times of 0 s, 100 s, 200
s, 500 s, and 1000 s and a velocity range of 0 to 10 m/s. A pause time of 1000 s
corresponds to the stationary sensor network while a pause time of 0 s corresponds
to high mobility. We used Tfailure = 3 s, Tcoord = 3 s, Tnoncoord = 2 s, Tsetup = 5 s,
and Truntime = 95 s in our simulations.
Although SCARE relies on a localization scheme, we do not simulate it in our
simulator for simplicity. Instead, we make use of the geographic locations of sensor
nodes provided by our simulator to aid SCARE in deciding the state of each sensor
node. However, since the message overhead due to SCARE is negligible, only one
messages per node, we believe that this does not affect the results significantly.
2.5.2 Simulation Results
In this subsection, we first evaluate the coverage provided by SCARE. We define
coverage as the total sensing area due to all the coordinator nodes. We assume that
non-coordinators nodes turn off their sensors. Although SCARE does not provide
complete coverage due to the random deployment gaps in the sensing range of the
coordinators, its coverage is very close to the maximum coverage. Yet, SCARE
selects only a few nodes as coordinators to provide this coverage, thus achieving
considerable energy savings. Therefore, SCARE efficiently trades off minimum loss
in coverage with a tremendous gain in energy savings.
In Fig. 2.11, we show the coverage versus the number of deployed nodes for
SCARE. We also show the coverage when SCARE is not run and all nodes are kept
awake. As expected, the coverage obtained with SCARE is slightly less than the
coverage obtained if all nodes have their sensors and radios turned on. However, the
coverage produced by SCARE becomes comparable to the best-case coverage as the
number of nodes increases. In these simulations, the grid size is kept constant, hence
an increase in the number of nodes represents an increase in the node density.
49
50 100 150 200 250 3007500
8000
8500
9000
9500
10000
Number of nodes
Co
vera
ge
SCAREAll nodes
Figure 2.11: Coverage due to SCARE versus all nodes.
2.5.3 Number of Coordinators Selected
We next compare the number of coordinators selected in Span with the corresponding
number for SCARE. As shown in Fig. 2.12, the number of coordinators selected by
SCARE is much less than in Span. (For 50 nodes, Span selects fewer coordinators,
but the coverage is too low.) SCARE selects a smaller number of coordinators yet
provides nearly the same coverage.
Fig. 2.13 shows the coverage obtained by using SCARE and Span. SCARE tends
to provide better coverage than Span for a range of values for the number of nodes.
Both provide similar coverage as the number of nodes increases beyond a threshold.
Fig. 2.14 shows the fraction of nodes selected as coordinators with an increase
in the number of nodes. SCARE selects a small fraction of nodes as coordinators
with increase in node density. Hence, compared to Span, more energy savings are
obtained with SCARE for dense sensor networks.
Fig. 2.15 compares the number of coordinators selected by SCARE compared to
the ideal number of coordinators needed for the square tiling configuration discussed
50
50 100 150 200 250 30020
40
60
80
100
120
140
Number of nodes
Nu
mb
er o
f co
ord
inat
ors
ele
cted
SpanSCARE
Figure 2.12: Number of coordinators selected with an increase in nodes.
50 100 150 200 250 300
7800
8000
8200
8400
8600
8800
9000
9200
9400
9600
9800
Number of nodes
Co
vera
ge
SCARESpan
Figure 2.13: Coverage versus number of nodes for SCARE and Span.
51
50 100 150 200 250 30010
15
20
25
30
35
40
45
50
55
60
Number of nodes
Per
cent
age
of n
odes
ele
cted
as
coor
dina
tors
SpanSCARE
Figure 2.14: Fraction of nodes selected as coordinators in SCARE and Span.
in Section 2.5. SCARE selects almost the same number of coordinators as in the
ideal case.
2.5.4 Control Message Overhead
Any self-configuration algorithm should have minimal control message overhead. In
Fig. 2.16, we compare the number of control messages used by SCARE and Span for
the self-configuration. SCARE uses a smaller number of control messages compared
to Span because it takes advantage of the random initialization of the nodes. This
leads to a partial configuration of the network, hence SCARE uses fewer number of
control messages to achieve self-configuration for the entire network.
2.5.5 Mobility
Fig. 2.17 shows the effects of mobility on packet loss rate for both Span and SCARE.
Nodes follow the random way-point model described in the previous subsection.
Packet loss rate is calculated as the ratio of the number of lost packets to the number
52
Figure 2.15: Coordinators selected in SCARE versus an ideal number of coordina-tors selected based on square tiling.
0 100 200 300 400 500 600 700 800 900 10000
200
400
600
800
1000
1200
Simulation time (s)
To
tal n
um
ber
of
con
tro
l mes
sag
es
SCARESpan
Figure 2.16: Number of control messages sent for self-configuration.
53
of packets actually sent. We note that the packet loss rates for both these methods
are comparable.
Figure 2.17: Packet loss rate as a function of pause time.
2.5.6 Network Lifetime
Fig. 2.18 shows the fraction of surviving nodes as a function of simulation time
for both SCARE and Span. SCARE uses fewer control messages, and consumes
less energy for self-configuration and reconfiguration of the network. The number of
surviving nodes falls below 80% at 765 s for SCARE compared to 700 s for Span.
2.5.7 Effect of Node Failures
SCARE adaptively reconfigures upon node failures. Fig. 2.19 shows the effect of
failure of 10% of the nodes on the coverage provided by SCARE. Nodes fail at
t = 600s. SCARE recovers from the failure the failure at t = 700s, as shown
in the figure. A total of 100 nodes are used in these simulations and the setup
time and runtime for these simulations are chosen to be 5 s and 199 s respectively.
The random duty cycle (RDC) method uses more nodes as coordinators. SCARE
54
0 200 400 600 800 10000
0.2
0.4
0.6
0.8
1
Simulation time (s)
Fra
ctio
n o
f su
rviv
ing
no
des
SCARESpan
Figure 2.18: Fraction of nodes remaining with time for Span and SCARE.
provides similar coverage and requires fewer nodes to be coordinators and thus it
provides considerable energy savings.
2.5.8 Effect of Location Estimation Error
We next investigate how errors in distance estimation affect the performance of
SCARE. Since nodes use distance estimation only to determine their eligibility to
go to the sleep state, we do not expect SCARE to be significantly affected because
of moderate errors in distance estimates. To measure this feature of SCARE quan-
titatively, we ran simulations by introducing artificial errors in distance estimation.
We modeled such errors by shifting the location of each node by a random amount
in the range [x− e, y + e], where e is 10% of the radio range of a node and [x, y] is
the location of a sensor node. Nodes use these artificial locations rather than their
real location to estimate the distance between them and a coordinator node. We
refer to this scheme as SCARE-10. Fig. 2.20 shows the results of these simulations.
SCARE-10 denotes SCARE with 10% error in location estimates. This leads to in-
55
Figure 2.19: Effect of node failure on SCARE and a RDC method.
correct estimation of the distance from the coordinators by the nodes. Consequently,
the number of coordinators is different from the case when there is no error. How-
ever, the increase is only 3% for a small number of nodes and negligible (< 0.2%)
for a large number of nodes. The decrease in coverage was found to be at most 0.7%
In all the simulations results shown above, the sensing radius has been taken to be
one-half of the transmission radius. We now examine the affect of varying the sensing
radius (s) as a fraction of the transmission radius (r) of a node. Fig. 2.21 shows
the number of coordinators selected by SCARE as the ratio of sensing radius to the
transmission radius is varied. The number of coordinators selected drops rapidly as
the ratio increases. As expected, the coverage increases with an increase in s/r; see
Fig. 2.22. At the s/r value of 0.3, we obtain almost 93% coverage with only 25%
nodes selected as coordinators. The confidence intervals are within 3% of the mean
for these results and are not not shown for the sake of legibility.
In the absence of calibrated data for the timeout parameters, we repeated the
above set of experiments for different values of the parameters. We obtained similar
experimental results in all cases.
56
Figure 2.20: Effect of error in distance estimation on SCARE.
Figure 2.21: Number of Coordinators selected versus s/r.
57
Figure 2.22: Coverage obtained versus s/r.
58
2.6 Summary
We have presented a new scalable algorithm, termed SCARE, for self-configuration
and adaptive reconfiguration in dense sensor networks. The proposed approach dis-
tributes the set of nodes into subsets of coordinator and non-coordinator nodes. It
exploits the redundancy inherent in these networks to maintain coverage in the pres-
ence of node failure, as well as to prolong the network lifetime. We have presented a
novel node replacement strategy that allows SCARE to use non-coordinator nodes to
replace coordinator nodes that fail. We have presented simulation results to highlight
the advantages of SCARE over a random duty cycle topology management scheme
as well as the previously proposed Span method for ad hoc networks.
Epilogue
The work presented in this chapter organizes nodes into coordinator and non-coordinator
nodes. A recent approach, termed Ripples [106], has improved upon the self-organization
and reconfiguration mechanism proposed in SCARE. It uses a lightweight clustering
algorithm to elect cluster heads instead of coordinator nodes based on location infor-
mation, as proposed by SCARE. Ripples selects fewer cluster-head nodes compared
to the number of coordinator nodes elected by SCARE by varying the cluster radius,
while providing comparable sensing coverage.
59
3
Location-Aided Flooding for DataDissemination
3.1 Introduction
Sensor networks enable distributed collection and processing of sensed data. These
networks are usually connected to the outside world with base stations or access
points through which a user can retrieve the sensed data for further inference and
action. Base stations use broadcasting to send periodic control signals to all the
sensor nodes. In emergency situations such as an intruder alert, information may
need to be forwarded to the entire network. Such dissemination of information is a
challenging problem in sensor networks because of resource constraints. Conventional
methods use classical flooding for disseminating data in a sensor network. Routers in
the Internet periodically use flooding to update link state information at other nodes
[46]. Flooding is also used as the pre-processing step in many routing protocols in
networks for disseminating route discovery requests [54]. However, classical flooding
suffers from disadvantages such as the broadcast storm problem [78]. In this chapter,
we present an energy-efficient flooding mechanism, termed location-aided flooding
60
(LAF), for information dissemination in distributed sensor networks.
We have designed LAF with the following design goals in mind:
• Energy efficiency: Sensor nodes have very small amount of battery and hence
any solution must be energy-efficient.
• Self-configuration: Since it is not feasible to have manual intervention for
every sensor node, it is preferred that nodes must self-configure themselves.
• Scalable: Sensor networks can typically have hundreds or thousands of nodes,
hence any solution for information dissemination should be scalable.
We propose a solution that meets the above design requirements. We present
an energy-efficient scheme that uses the concept of virtual grids to partition (self-
configure) the set of nodes into groups of gateway nodes and internal nodes. While
gateway nodes forward the packets across virtual grids, internal nodes forward the
packets within a virtual grid. LAF reduces the number of redundant transmissions
and receptions by storing a small amount of state information in a packet and in-
ferring the information about nodes that already have the packet from the modified
packet header.
Wireless sensor networks are different from ad hoc wireless networks in a number
of ways, hence a data dissemination protocol for ad hoc networks does not imme-
diately apply to sensor networks. Wireless sensor networks are used for obtaining
sensing data from a monitoring area. Sensor nodes send data back to a base station
that may be connected to the Internet, and where the data processing is done. This
is typically not the case for wireless ad hoc networks. Ad hoc networks are typically
used where there is no fixed infrastructure such as a base station.
The remainder of this chapter is organized as follows. In the next section we
discuss related prior work. In Section 3.3, we present the details of LAF. The per-
61
formance evaluation of LAF is presented in Section 3.4. This section describes the
simulation methodology, the experimental results and a comparison with related
work. Section 3.5 concludes the chapter.
3.2 Related Prior Work
In the classical flooding protocol, the source node starts by sending the packet that
needs to be flooded to all of its neighbors [52]. Each recipient node, stores a copy of
the packet and rebroadcasts the packet exactly once. This process continues until all
the nodes that are connected to the source have received the packet. This method of
disseminating information is robust to node failures and delivers the packet to all the
nodes in the network provided the network is lossless. Flooding requires that nodes
cache the source ID and the sequence number of the packet. This permits the nodes
to uniquely identify each packet and prevents the broadcast of the same packet more
than once.
A flooding algorithm based on neighborhood knowledge (self pruning), is pre-
sented in [69]. Each node obtains 1-hop neighbor information through periodic Hello
packets. Each node includes a list of its one-hop neighbors in the header of each
broadcast packet. A node receiving a broadcast packet compares its neighborlist to
that of the sender’s neighborlist. If the receiving node cannot reach any additional
nodes, it does not broadcast the packet. The Scalable Broadcast Algorithm presented
in [86] uses the 2-hop neighborhood information to limit the number of retransmis-
sions. A node that receives a broadcast packet determines the 1-hop neighbors that
needs to rebroadcast the packet. A similar approach is taken in the dominant prun-
ing method [121]. [120] uses the header ‘trail’ of the recently visited nodes by the
packet to limit the number of broadcasts. It limits the length of the header trail by
using fixed hop-count. LAF does not require that each node increase the length of
the packet header; only the internal nodes do this. Also, LAF uses gateway nodes
62
to limit the header trail rather than using a fixed hop-count.
Information dissemination based on gossiping has been extensively studied in the
literature [85, 80, 25]. In [25], gossiping is used to propagate updates among the
nodes to maintain database consistency and in [10], it is used to provide reliable
multicast. The performance of gossiping for wireless networks is compared with
flooding in [37].
SPIN [63] protocols are a set of information dissemination protocols for wireless
sensor networks. In SPIN, nodes use meta-data to describe the data they possess.
Nodes only request the part of data they do not have. Thus, SPIN achieves energy
savings by eliminating requests for transmissions of data that nodes already pos-
sess. Although SPIN is also a flooding protocol, LAF is different from SPIN in two
ways. First, LAF attempts to reduce the redundant receptions by inferring from the
packet header about nodes that already have the data, while SPIN uses explicit com-
munication to identify nodes that have the data. Second, while LAF uses location
information to assist flooding in achieving energy savings, SPIN is a generic protocol
that does not rely on location information.
Several approaches have been suggested to improve the efficiency of flooding using
location information. LAR [59] uses the concept of a request zone to limit the search
space for a desired route search. Location information has also been used in one of
the five approaches suggested in [78] to contain the broadcast storm problem. A host
node suppresses its transmission if the coverage provided by its transmission is less
than a certain threshold. This coverage is determined from the locations of other
nodes and by calculating the intersecting area of their transmission ranges. Multi-
point relaying (MPR) [90] is proposed to reduce the number of re-transmissions due
to flooding by choosing a set of relay nodes to broadcast the packets. The concept
of virtual grids in the context of routing is used in GAF [124]. All nodes within a
virtual grid are equal from a routing perspective. GAF identifies redundant nodes
63
within each virtual grid and switches off their radios to achieve energy savings. GAF
cannot be used for flooding as in GAF the grids are much smaller and the density
in the network has to be very high for nodes to take advantage of GAF in saving
energy. GAF is mainly designed for routing where nodes in a virtual grid maintain
the condition that at least one node in the virtual grid is awake. This will result in
a significant overhead if used for minimizing retransmissions in flooding. However,
the goal of LAF is to limit the number of redundant transmissions and receptions
during data dissemination in the sensor network, hence it differs significantly from
GAF.
PAMAS [98] is a multi-access signaling protocol that conserves battery power by
switching off nodes when they not actively transmitting or receiving packets. It uses
a separate signaling channel for transmitting the control messages and for indicating
a busy tone when a node is actively transmitting. The power savings are achieved
because the signaling channel consumes less power compared to the main radio chan-
nel. Since LAF attempts to reduce redundant receptions, this method can be used
in conjunction with PAMAS to switch off sensor nodes not intended for reception of
the broadcast packet.
Several solutions for the broadcast storm problem in flooding [78] have also been
proposed. These approaches attempt to reduce the redundant broadcasts by allow-
ing a node to suppress its transmission if some criterion is satisfied after receiving
multiple copies of the flooded packet. However, this is not a energy-efficient method
for sensor networks as nodes spend as much energy for receiving a packet as for
transmitting it [48]. In contrast, nodes using LAF forward a packet after listening
to a single packet thus saving energy in the process.
64
3.3 Location-Aided Flooding
The proposed protocol, which we describe in this section, uses a variant of classic
flooding. We term this variant modified flooding. We describe the basic idea of
modified flooding in the next subsection.
3.3.1 Modified Flooding
Modified flooding uses node ids to improve the energy efficiency of information dis-
semination in wireless sensor networks. Each packet sent using modified flooding
includes a special field in the packet header called the Node List. Node List contains
the ids of all the nodes that already have the packet. If we assume the network to
be lossless, as is typically done in related literature, the packet header informs the
receiver nodes that all the nodes in the Node List already have the packet, hence
forwarding the packet to those nodes is unnecessary. As an illustration, we show how
the redundant receptions in flooding can be reduced using modified flooding. When
a node S wants to disseminate data to the entire network, it includes the ids of all
of its neighbors1 in the Node List of the packet header and broadcasts it to all its
neighbors. Hereafter, we will refer to the node S as the source of the packet being
flooded. A node, say X, after receiving the packet, retrieves the Node List of the
packet and compares it with its neighbor list2. If a neighbor’s id, say D, is in the
Node List of the packet, then node X will not forward the packet to node D. Thus,
node X forwards the packet only to those neighbors that are not in the Node List
to avoid redundant receptions of the same packet. Fig. 3.1 shows the operation of
a modified flooding protocol for an example configuration. Node Lists are shown on
the communication links. In this figure, node A wishes to flood the network with its
sensor data. Therefore, node A broadcasts a packet with its data to all its neighbors.
1 Two nodes are neighbors if they are within the communication range of each other.2 Neighbor list of a node is the list of ids of all of its neighbors.
65
Figure 3.1: Example illustrating modified flooding.
When node E receives the packet, it forwards the request only to neighbors D and F
that are not present in the Node List [A,B,C,E] sent by A. However, when node C
receives the packet from node A, it suppresses its transmission to neighbor node E
as it is present in the Node List [A,B,C,E] sent by A. Although modified flooding
results in energy savings by reducing redundant receptions, the energy savings reduce
as the Node List becomes longer. This is shown in Fig. 3.2. In classical flooding,
each node broadcasts exactly once and every node receives all the broadcast packets
of its neighbors. Hence, this simple network uses 4 transmissions and 7 receptions
to flood the packet. Modified flooding uses 1 transmission and 3 receptions to flood
the same packet. However, if the packet becomes twice as long due to the increase in
the length of Node List, this results in an effective number of 2 transmissions and 6
receptions. Thus, an increase in the Node List size limits the energy savings and the
utility of modified flooding over classical flooding reduces beyond a certain point.
To overcome this limitation, we describe our proposed approach, termed Location
Aided Flooding (LAF), in the next section.
66
(a) Classical Flooding. (b) Modified Flooding.
Figure 3.2: Energy savings in modified flooding over classical flooding.
3.3.2 Location Information
The proposed approach, termed Location Aided Flooding (LAF), uses location in-
formation to divide the sensor network into virtual grids. The location information
used in the LAF protocol may be provided by the Global Positioning System (GPS)
[42]. In GPS, receivers are used to estimate positions of the nodes in mobile ad-hoc
networks. However, their high cost and the need for more precise location estimates
make them unsuitable for sensor networks. GPS uses atomic clocks for time syn-
chronization. Each GPS satellite transmits signals to sensor nodes on the ground
indicating its location and current time. A node estimates the distance to each GPS
satellite by estimating the amount of time it took for the signal to reach the sensor
node. Once the distance from four GPS satellites is estimated, a sensor node can
calculate its position in three dimensions.
Several other localization schemes are also available in the literature for wireless
sensor networks. In [84], a scheme is presented to estimate the relative location of
nodes by having only a few nodes in the sensor network with GPS capability. It uses
the received signal strength information (RSSI) as the ranging method to obtain
accurate location estimates. [118] uses an ad-hoc localization technique called Cala-
67
Figure 3.3: Example of a virtual grid.
mari in combination with a calibration scheme to calculate distance between two
nodes using a fusion of RF based RSSI and acoustic time of flight (TOF). Acoustic
ranging [33] can be used to used to get fine-grained position estimates of nodes. [13]
proposes a low-cost localization technique that uses time-of-arrival ranging. Recur-
sive schemes such as [1] can also be used to get fine-grained position estimates of
sensor nodes with error within 0.28m for nodes of 40m radio range.
For our initial discussion, we assume that each node knows its physical location
exactly. However, we later show in Section III.K that LAF can tolerate moderate
errors in location estimation as well as correlated large errors.
3.3.3 Virtual Grids
LAF divides the monitored area (sensor field) into “virtual grids”. Each node asso-
ciates itself with a virtual grid depending on its physical location. This is illustrated
in Fig. 2, where the monitoring area is divided into 9 virtual grids. Node A belongs
to the virtual grid with the bottom left corner coordinates (2,2).
3.3.4 Packet Header Format
The header format of the packets used in LAF is shown in Fig. 3.4. It consists
of the sourceID as well as the SeqNumber of the packet. The recvNodeList field is
68
Figure 3.4: Packet header format in LAF.
of variable length and contains the list of the nodes that have already received the
packet. gridID, the ID of the grid in which the sender of the packet is currently in,
and nodeType, whether the node is a gateway node or an internal node are the other
fields. The field gridID is used only by the gateway nodes and is used for preventing
the retransmission of packets the grid has already seen. The number of bytes for each
field is best determined by the application designer. For example, typical number of
nodes in a sensor network application determines the number of bytes that needs to
be reserved for the gridID field.
The size of a virtual grid and the appropriate number of virtual grids depends
on the specific application requirements and also on the data size. In this paper, we
assume that the number of virtual grids is determined a priori.
3.3.5 LAF Node Types
LAF classifies each sensor node into one of the two types.
• Gateway Nodes. If any of the neighbors of a node A belong to a different
virtual grid than that of A, then A becomes a gateway node.
• Internal Nodes. If all the neighbors of a node A belong to the same virtual
grid as that of A, then A becomes an internal node.
Nodes determine their virtual grid and status (gateway node or internal node) au-
tonomously using the knowledge of their location information after deployment. This
69
Figure 3.5: Illustration of gateway nodes and internal nodes in a virtual grid.
is the case for the example virtual grid shown in Fig. 3.5. Nodes A, G, F, I, D and H
are gateway nodes while B, C and E are the internal nodes. Gateway nodes forward
the data across virtual grids and internal nodes forward the data within a virtual
grid.
3.3.6 Information Dissemination Using LAF
Data forwarding by gateway nodes: The psuedocode for GWNodePacketFor-
ward procedure is shown in Fig. 3.6. When a gateway node receives a packet from
within its virtual grid, it checks to see if any of its neighbors within the same virtual
grid have not yet received the packet (Lines 8-9). This is done by comparing the
Node List of the packet with the neighbor list of the node (Line 9). If there exists
such nodes, then the gateway node appends the ids of those nodes to the Node List
of the packet and forwards it to the neighbor nodes that still have not received the
message (Lines 12-14). When a gateway node receives a packet from another gate-
way node, it strips the packet of its Node List (Line 20) and adds its own id and all
70
its neighbors’ ids (Line 21) and forwards the packet to all its neighbors (Line 22).
Thus, the packet becomes shorter as it moves across the virtual grids and increases
in size as it moves within a virtual grid. The basic idea behind LAF is to reduce the
redundant receptions by including the node ids in the packet. Virtual grids are used
to limit the packet size. Gateway nodes in LAF cache the sourceID and SeqNumber
fields of the recently seen packets. This helps the gateway nodes to prevent the
looping of the packets in the network.
71
Procedure GWNodePacketForward(Packet p)
Data: Packet IDResult: forward the packet
nl p ← node list of p;1
sid p ← sourceID of p;2
seqno p ← sequence number of p;3
gridid p ← grid id of p;4
nl self ← neighbor list of self;5
sid cache ← sourceID present in the cache;6
seqno cache ← sequence number present in the cache;7
if gridid p == grid id of self then8
/* If all neighbors already received the packet */
if all nodes in nl self are in nl p then9
return;10
else11
add self and nl self to the nl p;12
remove duplicate node ids in nl p;13
call broadcastPacket;14
end15
else16
if sid p == sid cache and seqno p == seqno cache then17
/* looping detected. return */
return;18
end19
/* strip the node list of the packet */
nl p ← φ;20
add self Id and nl self to the nl p;21
call broadcastPacket;22
end23
Figure 3.6: Procedure GWNodePacketForward.
72
Data forwarding by internal nodes: The psuedocode for InternalNodePack-
etForward procedure is shown in Fig. 3.7. When an internal node receives a packet,
it first checks to see if the node has already seen the packet (Lines 3-4). If the packet
is already seen, it simply drops the packet (Line 4). Similarly, if all of the node’s
neighbors have already received the packet, it drops the packet (Lines 6-7). It then
modifies the Node List of the packet. It includes the ids of all its neighbors in the
Node List (Lines 9-10) and forwards it to its neighbors if they have not already re-
ceived a message (Line 11).
In LAF, we assume that nodes that are not the intended recipients of a packet,
power down their radios using a mechanism such as a separate signaling channel
[98]. Hence, even though a broadcast in wireless medium potentially reaches all the
neighboring nodes, we assume that only those nodes for which the packet is addressed
receive the packet, while other nodes power down their radios and go to sleep. LAF
is a simple protocol designed for lossless networks. However, LAF can be easily
adapted for networks with error-prone communication links. Nodes can re-transmit
a packet multiple times to compensate for the lossy communication links.
3.3.7 Resource Management in LAF
LAF can be made resource-adaptive. When the remaining energy on the various
nodes are different, nodes with less available energy can choose to wait for a time-
out period before re-transmitting the packet that needs to be flooded. This time-out
can be preset depending on the application requirements. The key idea behind this
is that nodes with less remaining energy should participate only in the high priority
tasks of the application leaving the low-priority tasks to the nodes with high remain-
ing energy. (The alternative is to let all nodes participate to the same extent for all
the tasks; however, this causes nodes with less remaining energy to die sooner.) This
leads to a better utilization of the network for a longer period.
73
Procedure InternalNodePacketForward(Packet)
Data: Packet IDResult: forward the packet
nl self ← neighbor list of self;1
nl p ← node list of p;2
/* If all neighbors already received the packet */
if all nodes in nl self are in nl p then3
return;4
else5
add self and nl self to the nl p;6
remove duplicate node ids in nl p;7
call broadcastPacket;8
end9
Figure 3.7: Procedure InternalNodePacketForward.
LAF does not specify a resource management policy and leaves it to the applica-
tion to choose an appropriate policy depending on its latency and network lifetime
and other application-oriented requirements.
Grid Maintenance Costs
Other than the location information used by the nodes, there is no cost of maintaining
the virtual grid. Sensor nodes can use any unique attribute of their virtual grid as
gridID. For example, nodes can use (x,y) as a gridID where x is the x-coordinate of
the top left corner of the virtual grid and y is the y-coordinate.
3.3.8 Completeness of the Data Dissemination Procedure
In this section, we prove the completeness of LAF as a flooding mechanism. In other
words, we show that data flooding can always be accomplished using LAF. A node
that wants to flood the network with a data packet becomes the source for that data
packet. We prove that if a node receives the data packet from the source through
74
classical flooding, it will also receive the data packet through LAF.
Lemma 3.1. If a gateway node in a virtual grid receives the packet, then all the
nodes in the virtual grid will ultimately receive the packet provided that they received
the message using the classical flooding protocol.
Proof. Each node in a virtual grid can be either a gateway node or an internal node.
Now, consider a node A in the virtual grid. Let us denote the neighborhood of A as
the set NA that consists of all the neighbors of A. Consider a node B in NA that has
the message. If the Node List received by B does not contain A, then B will forward
the message to A. However, the Node List of the packet will contain the id of node
A only if node A has the packet according to the LAF protocol. Thus, node A either
has the message or it will receive the packet from node B. Once node A receives the
packet it will forward it to all its neighbors that still have not received it. Thus,
eventually all the nodes in the grid will receive the packet.
Theorem 3.1. If a source node floods the network with a message and if LAF is
used by every node that forwards the message, then the message reaches every node
in the network provided that the message reaches every node in classical flooding.
Proof. We prove the theorem by contradiction. Consider a node in the random
network that receives the message using flooding protocol but not using LAF. We
call the node that is the originator of the message the source node and the node
under consideration the destination node. Also we refer to the virtual grid in which
the source node resides as the source virtual grid and the virtual grid in which
the destination node resides as the destination virtual grid. Since the destination
node has received the packet in flooding, there exists a path from the source to the
destination. The destination node has not received the packet under LAF implies
that none of the gateway nodes in the virtual grid of the destination have received
75
the message (Lemma 1). If any of the gateway nodes received the message, they
would have forwarded it to the destination node. This means that none of the
neighboring virtual grids of the destination virtual grid received the message. If any
of the neighboring grids received the message, they would have forwarded it to the
gateway nodes of the destination virtual grid. By continuing in a similar fashion,
we can show that the gateway nodes of the source virtual grid also did not receive
the message. This implies that no message has been flooded in the source virtual
grid which is a contradiction. Hence, if each node in the network executes the LAF
protocol, every node eventually will receive the flooded packet.
Corollary 3.1. : The degree of fault tolerance of the network for LAF is the same
as that for classical flooding.
Proof. Suppose that some nodes in the network have failed. From Theorem 1, we
know that if a message reaches a destination by classical flooding in the network with
failed nodes, it will also reach the destination node by LAF. Thus the fault tolerance
of LAF can be trivially shown to be equal to that of classical flooding.
3.3.9 Analysis
In this section we first study two simple topologies and analyze the energy savings
achieved by LAF compared to classical flooding. Then we derive equations for ob-
taining the energy savings due to LAF in random networks. Suppose the average
size of a data message is S bits and the diameter of the network is D. (The diameter
of a graph is the longest of the shortest paths between any two nodes.) If ET is the
amount of energy needed to transmit one bit of data and ER is the amount of energy
needed to receive one bit of data, the amount of energy consumed by a node sending
the data message with k node ids and one of its neighbors receiving the message is
(S+ki)ET +(S+ki)ER, where i denotes size of the node id in bits. For a network of
76
N nodes with a fully connected topology, for each packet that needs to be flooded,
there are N transmissions and N(N − 1) receptions. Therefore, the energy ECCF
consumed in the network is
ECCF = S ×N × ET + S ×N(N − 1)× ER (3.1)
In LAF, since the message is transmitted with the node ids of all the nodes in
the network, there will be one transmission and (N − 1) receptions. If we ignore
the small increase in packet length in LAF, the total energy ECLAF consumed in
flooding the packet is
ECLAF = S × ET + S × (N − 1)× ER (3.2)
For values of N = 30, S = 64 bytes, ET = 0.8 µ J/bit and ER = 0.6 µ J/bit, classical
flooding consumes 280 mJ while LAF consumes approximately 9 mJ of energy.
As a second example, consider a line topology with N nodes as shown in Fig. 3.8.
Each node has at most two neighbors. In this topology, for a message to be flooded,
N transmissions and 2N − 2 receptions are needed. This is due to the fact that in
flooding, each node has to broadcast the packet exactly once and this results in N
transmissions. As each node has to listen to all the transmissions of its neighbors,
there are a total of 2N − 2 receptions. Therefore the energy ECCF consumed in
flooding the message is
ECCF = N × S × ET + (2N − 2)× S × ER (3.3)
In LAF, the message length is increased by one each time a node forwards the
message in the line topology. A node will not receive the message if the packet is
not addressed to it. Hence there are only N − 1 transmissions and N − 1 receptions
assuming node 1 is the source. Suppose there are Nm
virtual grids with m nodes in
each virtual grid. Then the maximum length of the nodelist is m×i bits. The energy
77
Figure 3.8: Linear network with N nodes.
ECV consumed in each virtual grid with m nodes then becomes
ECV = [(1 + 2 + . . .+m− 1)× i+ (m− 1)× S]× (ET + ER)
= [m× (m− 1)
2× i+ (m− 1)× S]× (ET + ER) (3.4)
Hence, the total energy ECLAF consumed in flooding the packet throughout the
network is
ECLAF =N
m× EV (3.5)
For values of N = 30, m = 5, S = 64 bytes, ET = 0.8, µ J/bit, ER = 0.6, µ J/bit
and i = 1 byte, classical flooding consumes 12 mJ while LAF consumes 3 mJ of
energy.
Next, we analyse the energy savings in the case of a random network constructed
as follows. Nodes are placed at random in a rectangular area. Nodes are battery
powered and have only a limited range for transmission. Two nodes are neighbors if
they are within the transmission range r of each other. This type of random networks
is useful for modeling a large number of practical situations involving ad hoc and
sensor networks. Now, we derive equations that predict the energy savings for the
LAF scheme. For a random network with a total number of N nodes with n nodes in
each virtual grid, suppose each node has ∆ neighbors on average and M neighbors
on average already have the packet. The increase in packet length due to addition of
node ids is considered negligible in comparison to the total packet length. In LAF,
a node does not receive a packet if it is not addressed to it. The amount of energy
78
Figure 3.9: Energy consumption for LAF (analytical result).
consumed in flooding the virtual grid EV using modified flooding is then given by
EV = [ET + ER ×M ](n)× S (3.6)
Hence, the total energy ECLAF consumed in flooding the packet throughout the
network is
ECLAF =N
n× EV (3.7)
In the case of classical flooding, the total energy ECCF consumed is given by
ECCF = (ET + ER ×∆)×N × S (3.8)
Fig. 3.9 compares the energy consumed by classical flooding with LAF with varying
∆ and for different values of M, for N = 100, n = 10, ET = 0.8µ J/bit, ER = 0.6µ
J/bit and S = 64 bytes.
79
3.3.10 Space Complexity
Each packet processed by a gateway node consists of a variable-length packet header
that contains at most m node ids where m is the number of nodes in a virtual cell.
The rest of the packet header fields are of constant length. Hence the packet header
size in LAF protocol is O(im) where i is the length of a node id in bits.
3.3.11 Time Complexity
Each packet that is to be disseminated is forwarded only once at each node in the LAF
protocol. Hence, the number of time steps required for complete data diseemination
in LAF is O(D) where D is the diameter of the sensor network.
3.3.12 Errors in Location Estimates
In the above discussion, we assumed that each node knows its geographical location
precisely. However, there might be errors in the location estimate provided to the
nodes by GPS[42] or other localization systems [84, 118, 1, 33]. Nevertheless, we do
not expect the inaccuracies in position estimation to affect the performance of LAF.
This is due to several reasons. First, LAF uses location information to associate a
node with a specific grid. If the error in location estimate causes the node to assume
a different location in the same grid, it will not affect the functioning of the node
from a data dissemination viewpoint. Second, if the error in location estimate causes
the node to assume a different virtual grid than the virtual grid it really belongs to,
then the node becomes a gateway node in the assumed virtual grid and this also does
not affect the performance of LAF significantly. Similarly, if a large correlated error
causes a group of nodes belonging to a single virtual grid to be shifted to a different
physical location, then the performance of LAF remains unaffected as all the nodes
still belong to the same virtual grid.
80
3.4 Performance Evaluation
We have developed a simulator in C++ to evaluate the performance of LAF and
compare it with several alternative data-dissemination algorithms, namely classical
flooding [52], modified flooding, and pruning-based methods [69, 121]. We found that
LAF protocol achieves higher energy savings compared to both classical flooding and
pruning-based methods while disseminating the data with comparable delay. We also
found that the nodes with a higher degree (i.e., nodes with more one-hop neighbors)
disseminate more data per unit energy in both LAF and modified flooding compared
to classical flooding. Thus, dense sensor networks are likely to benefit more from
using the LAF protocol for data dissemination in terms of energy savings.
Energy Model
Each sensor node is assumed to have a radio range of 20m. The bandwidth of
the radio is assumed to be 20 Kbps. The sensor characteristics are given in Table
3.1. These values are taken from the specifications for the TR1000 radio from RF
Monolithics [48].
Table 3.1: Radio characteristics [48].
Radio Mode Power Consumption (mW)Transmit (Tx) 14.88Receive (Rx) 12.50Idle 12.36Sleep 0.016
3.4.1 Simulation Model
We used a 50-node network in a 200×200 m monitoring area as shown in Fig. 3.10
for carrying our experiments. The monitored area is divided into 4 virtual grids
and has an average of 9 gateway nodes. This network is randomly generated with
81
Figure 3.10: Test network used in the simulations.
the pre-condition that the graph be completely connected. The processing delay for
transmitting a packet is chosen randomly between 0 ms and 5 ms. This does not
consider the queuing delays and other data processing delays that are incurred. We
ran the data-dissemination protocols 200 times and averaged the results. In each
run, a randomly selected node floods the network with a 64-byte packet [22]. A
2-byte packet header and 1-byte node addresses are used in the simulation. Nodes
send Hello messages every 10ms in all the protocols except classical flooding. There
are no Hello messages in classical flooding. We assume that the network is lossless
and a node is able to power down its radio if the packet is not addressed to it.
Although LAF relies on a localization scheme, we do not consider it in our simulator
for simplicity. Instead, we make use of the geographic locations of sensor nodes
provided by our simulator to determine the type of each sensor node (in practice,
nodes determine their states autonomously). However, since the message overhead
due to LAF is negligible, we believe that this does not affect the results significantly.
82
Figure 3.11: Data disseminated in the system with time.
3.4.2 Data Acquired in the System with Time
Fig. 3.11 shows the percentage of data disseminated in the system with passage
of time for classical flooding, modified flooding, LAF, self-pruning and dominant
pruning methods. As shown in the figure, the difference in message delay between
these protocols is negligible. Fig. 3.12 shows a zoom-in view of Fig. 3.11. A slight
difference in delay in visible for these protocols in Fig. 3.11. This delay difference
can be considered negligible for all practical purposes. The small difference in time
delay arises due to an increase in message length in LAF and pruning-based methods
and the corresponding increase in propagation time.
3.4.3 Energy Dissipated in the System with Time
Next, we measured the energy dissipated in the system when these protocols are
used for data dissemination purposes. Fig. 3.13 shows the total energy consumed
83
Figure 3.12: A zoom-in view of Fig. 3.11.
in the system with time as data gets disseminated in the system. As shown, LAF
achieves significant energy savings compared to the flooding protocol. (The energy
consumption for LAF is less than 20 mJ even after 35 ms.) By using a small
amount of state information, LAF reduces the number of redundant transmissions
and receptions significantly. As the energy consumed during the transmission of a
packet is comparable to the energy consumed during reception in sensor network
radios, reducing redundant transmissions and receptions saves significant amount of
energy and ultimately increases the lifetime of the sensor network.
3.4.4 Impact of Number of Grids
We have varied the number of virtual grids for the test network shown in Fig. 3.10
and evaluated the performance of LAF using our simulator. Fig. 3.14 shows the
energy dissipated in the system when the monitored area is divided into 1, 4, 8
84
Figure 3.13: Energy savings due to LAF.
and 50 virtual grids respectively. The energy dissipated in the system decreases
with an increase in the number of virtual grids up to a certain point, after which
it decreases. (For this example, minimum energy consumption is obtained for 8
virtual grids.) This can be explained intuitively as follows. With a small number
of virtual grids, energy savings due to the forwarding of the state information in
the packet gets compensated by the increase in packet length. For a large number
of virtual grids, the packet length remains within limits and the energy savings are
significant. However, when the number of virtual grids is such that there are only a
small number of sensor nodes in each virtual grid, the state information carried by
the flooded packet within each virtual grid is very small and consequently the energy
savings reduce.
3.4.5 Impact of Packet Size on Energy Savings
Typical packet sizes in a sensor network are 32 bytes, 64 bytes, 96 bytes and 128
bytes [49]. An increase in the size of the packet that is flooded results in an increase
in energy savings. This is shown in Fig. 3.15 where three different packet sizes of 64
85
Figure 3.14: Effect of number of virtual grids on energy consumption.
bytes, 96 bytes and 128 bytes respectively are shown. The energy savings are shown
as the percentage savings in energy compared to the classical flooding protocol.
3.4.6 Impact of Node Degree on Energy Savings
Fig. 3.16 shows the effect of the average degree of a node on the energy savings in
LAF. A network of 100 nodes is divided into 8 grids and the energy consumed for
the dissemination of a single 64-byte packet of data to 90%, 95% and 99% of the
nodes are plotted against the average degree of a node. The average degree of a node
in the network is varied by changing the locations of the sensors. The total energy
dissipated in the network decreases as the average degree of a node increases. This
is because a larger number of redundant transmissions and receptions are avoided by
making use of the information in the Node List.
86
Figure 3.15: Effect of number of packet size on energy savings.
3.4.7 Impact of Network Size on LAF
To study the scalability of network size on LAF, we varied the network size from 100
to 1000 nodes and flooded a single packet from a randomly selected source. Nodes are
randomly deployed on a 200 × 200 m grid and the entire grid is divided into 8 virtual
grids. The results are averaged over 200 simulations and are shown in Fig. 3.17
with 95% confidence intervals. Confidence intervals are calculated using the method
of independent replications [105] for these simulations. We obtain a single output
variable in each of the simulation runs and its distribution is not known. Hence we
use statistical inference based on normal distribution (because of the Central Limit
Theorem) to determine the confidence intervals. The following formula is used to
87
Figure 3.16: Effect of average degree of a node on energy consumption.
obtain the 100(1− α)% confidence interval of the population mean µ:
θ − z1−α/2Sn√n< µ < θ + z1−α/2
Sn√n
where θ is the sample mean, Sn is the sample variance, n is the number of simulation
runs and z1−α/2 is the (1−α/2) quantile of the standard normal distribution N(0, 1).
The figure shows that all of the methods are scalable except classical flooding.
However, LAF outperforms all the competing methods in terms of energy savings.
3.4.8 Impact of Error in Location Estimate
To quantify the effect of error in location estimate on the performance of LAF, we
repeated the above simulations by artificially introducing an error in the location
estimates of the nodes. We introduced the error by shifting the location of each node
by a random amount in the range [x± e, y ± e], where e is the error in the location
88
100 200 300 400 500 600 700 800 900 10000
0.5
1
1.5
2
2.5
3
3.5x 10
7
Number of nodes
En
erg
y co
nsu
med
(n
J)
Classical floodingModified floodingLAF
(a)
100 200 300 400 500 600 700 800 900 10000
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
x 106
Number of nodes
En
erg
y co
nsu
med
(n
J)
LAFDominant PruningSelf Pruning
(b)
Figure 3.17: Effect of network size on LAF.
89
estimate in terms of the percentage of the radio range of a node and [x, y] is the actual
location of a sensor node. Nodes use these artificial locations rather than their actual
locations to associate themselves with the virtual grids and determine their type.
We found in our simulations that up to 10% error in location estimate has negligible
impact on the energy efficiency or the latency of LAF for data dissemination.
3.5 Summary
We have presented a new energy-efficient flooding algorithm termed LAF for data
dissemination in wireless sensor networks. The proposed approach uses the concept
of virtual grids to divide the monitored area and nodes then self-assemble into groups
of gateway nodes and internal nodes. It exploits the location information available
to sensor nodes to prolong the lifetime of sensor network by reducing the redundant
receptions and transmissions that are inherent in flooding. LAF utilizes fixed virtual
grids to realize the energy savings. As gateway nodes transmit and receive more
packets compared to the internal nodes, additional burden is placed on the gateway
nodes. The load on the gateway nodes and internal nodes can be balanced by shifting
the virtual grid by a fixed distance periodically. It results in a different set of nodes
gettting selected as the gateway nodes and the gateway nodes in the previous cycle
becoming internal nodes. Thus load-balancing can be achieved. This is left as future
work.
Epilogue
The work presented in this chapter disseminates information in the form of a virtual
grid. A recent approach, termed adaptive location-aided flooding [55], has improved
upon the data-dissemination mechanism proposed in LAF. The concept of virtual
grids is extended to non-uniform sensor network deployments. For non-uniform sen-
sor network topologies, ALAF proposes adaptive virtual grid sizes. It is shown that
90
with adaptive virtual grids, ALAF improves upon the energy savings provided by
LAF for non-uniform topologies.
91
4
An Energy-Efficient Data-DeliveryScheme for Delay-Sensitive Traffic
4.1 Introduction
In this chapter, we present an energy-efficient data-delivery scheme for real-time traf-
fic in sensor networks. Data-delivery delay is an important characteristic of Quality
of Service (QoS) in sensor networks. In real-time applications, increased queuing
delays typically results in longer packet delivery latencies and can make the packets
miss their timeliness deadlines and thus can overshadow the energy savings of the
in-network aggregation. An example is shown in Fig. 4.1. In this example, if each
node that sensed the event sends a packet to the sink, there will be five packets from
nodes B, C, D and E traveling towards the sink node A. However, if node C aggre-
gates the data from itself and node E, only four packets have to travel towards the
sink. However, this may cause packets from node C to miss their real-time deadlines.
We have the following goals for designing a data-delivery scheme for delay-
sensitive traffic in sensor networks.
• Localized Algorithms It should only use localized algorithms and not de-
92
Figure 4.1: In a sensor network, performing data aggregation may increase thelatency of the data packets. In this connected topology, data generated by nodesB, C, D, E is correlated. If node C waits for packets from node E to perform dataaggregation, this may increase the delay for its packets to reach the sink node A.
pend on global state information for data-delivery.
• Energy Efficiency The data-delivery scheme should be energy-efficient as
sensor nodes are resource constrained.
• Scalability The scheme should be scalable to large and dense sensor networks
that consists of thousands of nodes.
In this chapter, we present SensiQoS, a data-delivery scheme for delay-sensitive
traffic that reduces the energy consumption in wireless sensor networks without re-
ducing the number of packets that meet the end-to-end real-time deadline. By lever-
aging the spatial and temporal correlation of sensed data, SensiQoS realizes energy
savings through application-specific in-network aggregation of the data. SensiQoS is
a distributed protocol that uses only localized algorithms to provide service differen-
tiation. Each sensor node only uses the information available to it locally to achieve
energy savings.
The rest of the chapter is organized as follows: Section 4.2 summarizes the related
work. Section 4.3 presents the proposed QoS protocol. Section 4.4 presents the
analysis of the energy savings of the protocol. Section 4.5 performance evaluation of
the proposed protocol. Finally, Section 4.6 concludes the chapter.
93
4.2 Related Work
SPEED [39] protocol is designed to provide soft end-to-end deadline guarantees for
real-time packets in sensor networks. However, it provides only one network-wide
speed, which is not suitable for differentiating various traffic with different deadlines.
MMSPEED [28] scheme of Felemban et al, utilizes the concept of SPEED to provide
real-time guarantees in both the reliability and timeliness domains. In MMSPEED,
each node takes localized decisions to provide both timeliness and reliability guaran-
tees using location information. Each node supports multiple speeds to its neighbors
and a packet is kept in a queue that can make the packet meet its deadline. To sup-
port reliability guarantees, MMSPEED sends the packet through multiple routes to
support the needed reliability. SensiQoS differs from MMSPEED. MMSPEED does
not take advantage of the correlated nature of the data generated in sensor networks
and routes each packet to the sink to meet its deadline. SensiQoS allows nodes to
aggregate the data while still allowing the packets to meet their timeliness deadline.
Several data aggregation techniques [68], [18], were proposed in the literature to
save communication energy. Finding the optimal data aggregation tree is an NP-
hard problem[29]. GIST [53] proposes a semi-structured approach to construct a
group-independent spanning tree in polynomial time. Cristescu [111] considers the
problem of joint rate allocation and transmission structure optimization for network-
correlated data gathering purposes. [111] proposes two solutions based on a combina-
tion of Slepian-Wolf coding and clustering. However, these schemes do not consider
latency constraints during data aggregation.
QAWSN [128] considers the practical limits on achievable energy improvements
using correlation aware aggregation structures over correlation unaware aggregation
structures. The authors conclude that the energy improvements in Steiner Mini-
mum Trees (SMT) and Shortest Path Trees (SPT) are not very different and SPT
94
is more suited for sensor networks. Synchronization of multiple levels of data fusion
[126] considers the problem but proposes a centrally calculated wait-time. A geo-
graphic gossip algorithm [26] that exploits geographic information has been proposed
for achieving data aggregation in sensor networks. By routing packets to far away
nodes in the network, geographic gossip achieves rapid diffusion of information and
aggregation.
Data aggregation subject to latency constraints is a more difficult problem and
and only a few solutions have been proposed in the literature [43]. A centralized
solution to the problem of data aggregation subject to latency constraints is proposed
in [3]. The authors propose a Weighted Fair Queueing methodology to schedule
packets at relay nodes. When real-time traffic is involved, bandwidth ratio for each
relay node on the path from the source to the gateway is determined at the gateway.
This solution is not scalable to situations where multiple sinks are involved in large
sensor networks.
An interesting study that considers data aggregation subject to latency con-
straints is reported in [7]. [7] considers the problem of providing QoS for hierarchical
sensor networks. The problem of multipath relaying is modeled as a linear program-
ming problem and two centralized and optimal solutions are proposed for multipath
relaying with and without delay constraints. A distributed QoS routing [81] is pro-
posed that selects a network path with sufficient resources to satisfy a given delay
criterion using reinforcement learning technique. The problem of soft-QoS provi-
sioning is modeled using integer programming and a distributed hop-based routing
algorithm is proposed [44] for providing end-to-end QoS in wireless sensor networks.
A QoS-MAC protocol is proposed in [96]. [45] considers the problem of multicon-
strained QoS multipath routing for wireless sensor networks. The worst-case delay
in a sensor network is dependant on the node degree. However, achieving soft-QoS
provisioning using [44] involves carefully tuning parameters to estimate the link reli-
95
ability and inaccuracies in tuning may result in many packets missing their real-time
deadline. SensiQoS does not involve any parameters that need to be tuned and hence
is more robust.
4.3 SensiQoS Design
In a sensor network, data sensed by sensors present in geographically close proximity
are more likely to be correlated. Similarly, data sensed by sensor nodes within a
certain time interval after the occurrence of the event is more likely to be correlated.
SensiQoS leverages such spatial and temporal correlation present in the sensed data
in a sensor network by aggregating correlated data packets that belong to the same
interest at a relay node. SensiQoS employs adaptive algorithms to determine the
wait-time of data packets at each relay node such that they do not miss their real-
time deadline.
In SensiQoS, sink sends interest packet describing the data it seeks along with
the priority and timeliness requirements and an application-specific in-network ag-
gregation function. A sample interest used in SensiQoS is shown below.
type = four-legged animal
monitoring duration = 5 minutes
real-time deadline = 5 seconds
region of interest = [-100, -100, 100, 100]
aggregation function = maximum
priority class = high
The design of SensiQoS meets the following goals. First, SensiQoS schedules the
transmission of packets such that each packet is able to meet its real-time deadline.
Second, it aggregates packets belonging to the same query, thereby increasing net-
work lifetime but without suffering an increase in the number of packets that miss
their real-time deadline. Third, it improves the energy savings realized through ag-
96
gregation using a modification of the shortest path tree algorithm. Fourth, it only
uses information local to each node in a decentralized manner for packet scheduling
and forwarding.
SensiQoS is proactive: each node periodically broadcasts the HELLO messages
that contain the node’s state (buffer space information). In addition to periodic bea-
coning, SensiQoS uses two types of on-demand beacons, namely a delay estimation
beacon and a backpressure beacon. Delay estimation beacon is used to estimate the
delay between two neighbor nodes and backpressure beacon is used to quickly notify
upstream nodes about traffic congestion in the network. SensiQoS interacts with
both the MAC layer and the routing layer in the sensor node.
In existing ad-hoc networks, packets are typically forwarded in First Come First
Serve (FCFS) order. FCFS scheduling does not work well in real-time networks where
packets have different priorities and different end-to-end deadlines. In SensiQoS,
packet scheduling policy is both aggregation-aware and deadline-aware. Aggregation
aware means that packets are forwarded to nodes that may have data to aggregate
from other packets and packet transmission is delayed if there is an opportunity
to aggregate its contents with other incoming packets. Deadline-aware means that
packets are scheduled such that they do not miss their real-time deadline.
SensiQoS is energy-efficient. Correlated data packets present in a node’s cache
that belong to the same interest are aggregated using an application-specific aggrega-
tion function. This in-network processing of data reduces the number of data packets
that travel from source to the sink and consequently the total number of data trans-
missions. As the cost of communication forms a major part of energy utilization
for a node, SensiQoS saves a significant amount of energy and extends the network
lifetime.
SensiQoS is adaptive as well. Each node adaptively determines the delay each
packet can tolerate at that node and attempts to maximize the energy savings by
97
delaying packets that have a chance of getting aggregated because of arrival of packets
belonging to the same interest. SensiQoS also adapts to the network conditions by
probabilistically dropping packets of low priorities in the event of congestion.
4.3.1 Location Information
SensiQoS uses location information to provide energy-efficient packet delivery. The
location information used in SensiQoS protocol may be provided by the Global Po-
sitioning System (GPS) [41] or any other localization scheme.
Several localization schemes are also available in the literature for wireless sen-
sor networks. In [11], a light-weight localization for supporting range and distance
queries is proposed. This scheme uses received signal strength information (RSSI)
as the ranging method and works without any external infrastructure. Localization
using a new radio interferometric positioning technique that provides both high ac-
curacy and long range is proposed in [65]. In [83], a scheme is presented to estimate
the relative location of nodes by having only a few nodes in the sensor network with
GPS capability. It uses the received signal strength information (RSSI) as the rang-
ing method to obtain accurate location estimates. [119] uses an ad-hoc localization
technique called Calamari in combination with a calibration scheme to calculate
distance between two nodes using a fusion of RF based RSSI and acoustic time of
flight (TOF). Acoustic ranging [32] can be used to used to get fine-grained position
estimates of nodes. [95] proposes a low-cost localization technique that uses time-of-
arrival ranging. Recursive schemes such as [4] can also be used to get fine-grained
position estimates of sensor nodes with error within 28 cm for nodes of 40 m radio
range. Spotlight [101] uses spatio-temporal properties of well-controlled events such
as light for localization and achieves a high amount of accuracy to within 10 cm
localization error in under 10 minutes.
98
4.3.2 Packet Header Format
Nodes running the SensiQoS protocol use the following header for their data pack-
ets. It consists of both the sourceID and sourceLocation in the source field as well
as the destinationID and the destinationLocation in the destination field. It also
contains packet deadline and packet priority, two parameters that determine the the
quality-of-service the packet receives from the network. Having packet priority as
Figure 4.2: Packet Header for SensiQoS.
a separate parameter assists SensiQoS in determining the quality-of-service for a
packet when there is contention for resources with the higher priority packet receiv-
ing better service. Finally, it contains the InterestID that is used by the relay nodes
in identification during the the aggregation process. Packets in a node cache with
the same InterestID are aggregated if there is a high degree of correlation among the
packets as determined by an application-specific aggregation function. The fields in
a SensiQoS packet header are shown in Fig. 4.2
4.3.3 SPEED Protocol
SensiQoS achieves energy savings by aggregating correlated packets in the sensor
network while delivering packets to their destination before the real-time deadline.
To ensure the delivery of a packet to its destination within the real-time deadline,
SensiQoS leverages the idea of a single network-wide speed provided by the SPEED
protocol [39]. We briefly describe SPEED protocol through an example. Consider a
data packet p generated by a source node ni. Suppose nodes nj, nk and nl are three
99
Figure 4.3: Illustration of SPEED protocol.
of the intermediate nodes that p passes through to reach its final destination node
ns as shown in Fig. 4.3. The geographical distances from ni, nj and nk to ns are di,s,
dj,s, and dk,s respectively. Suppose the delay experienced by p at node ni including
queueing, processing, and MAC collision resolution to reach node nj is delayi,j. This
means packet p has traveled an Euclidean distance of di,s - dj,s towards the final
destination node ns. The speed with which the packet p has progressed towards the
destination node ns in unit time is then given by
Ski,j =di,s − dj,sdelayi,j
(4.1)
SPEED guarantees that packet p will travel each hop with the speed of a chosen
preset speed. To ensure its single network-wide speed guarantee, SPEED maintains
two sets of nodes for each query. A neighbor set that consists of all nodes that are
within the transmission range and a forwarding set that consists of nodes that are
closer to the destination than the node itself. SPEED also maintains the speed with
which a packet can be forwarded to each neighbor node through the use of delay
beacons. Each node in the network is able to forward the packet to a downstream
node such that the progress speed is greater than the preset speed S. However, due
to congestion in the sensor network, the queueing and channel contention delays can
interfere with real-time guarantees. SPEED achieves congestion control by proba-
bilistically dropping packets to maintain at least one node that satisfies the progress
100
speed criterion. Nodes also inform upstream nodes to reduce congestion by sending
backpressure beacons. SensiQoS leverages this network-wide speed guarantee pro-
vided by SPEED to determine wait-time for data packets at a node using its packet
scheduler.
4.3.4 SensiQoS Packet Scheduler
A key component of SensiQoS is the packet scheduler that determines the amount
of time a packet can wait at a relay node. Each data packet may traverse multiple
relay nodes during its journey from the source to the sink. Upon its arrival at a
relay node, SensiQoS protocol calculates in a localized way the amount of time the
packet can afford to wait at that relay node. Better aggregation can be achieved
by waiting for a longer time as potentially more packets arrive from the upstream
nodes to this relay node. However, this will increase the amount of delay experienced
by the packet, and determining the amount of wait-time without a packet missing
its real-time deadline is a challenging problem. SensiQoS adaptively determines the
wait-time such that the packet is able to meet its real-time deadline.
Consider a packet p belonging to an event E generated by a source node, say
node ng, and has a real-time deadline of tD seconds. Suppose the network-wide
speed supported by the sensor network is Sm/s. Suppose the Euclidean distance
between the source and the sink node ns be L m. If the packet progresses towards
the sink node ns at a speed of Sm/s, the amount of time it takes the packet to reach
the sink ns is tg,s and is given by the following equation.
tg,s =L
S(4.2)
If tg,s > tD, the network cannot support the speed required by this packet to reach its
destination within its real-time deadline. However, if tg,s < tD, the packet will arrive
at the sink node earlier than its real-time deadline. We claim that by distributing
101
Procedure recvDataPacket(srcNode, SENSIQOS packet, nextHopVector)
Result: Schedule the packet for transmission
currentClass ← getTOS(packet);1
if isDestination then /* if the packet is for self */2
/* Forward the packet to the application layer */;
doSending(upPort, packet);3
else4
body ←getBody(packet);5
timestamp ← getTimestamp(packet);6
progressDistance ← distance(sender,destination) - distance(self ,7
destination);timeS ← progressDistance/networkSpeed;8
deadline ← getDeadline(packet);9
qid ← getQueryID(packet);10
/* Retrieve packets that belong to the query */;
pkts ←lookupPacketsinCache(qid);11
if pkts 6= 0 then12
cancel timeout for the packets;13
/* Aggregate packets using the aggregation function */;
Aggpacket ←doAggregate(pkts, p);14
waitTime ←GetWaitTime(timeS, deadline, progressDistance);15
if waitTime == 0 then16
ForwardToDestination(packet);17
else18
Set timer for the waitTime;19
/* Store the packet in the node’s memory */;
InsertPacketsinCache(Aggpacket)20
end21
end22
end23
Figure 4.4: Procedure recvDataPacket
102
the remainder time tD− tg,s in an intelligent way among the relay nodes overall data
aggregation can be improved without packets missing their real-time deadlines. We
denote this remainder time as rem time(p). With the single network-wide speed
guarantee of Sm/s, a packet can spend rem time(p) in the network and can still
meet its real-time deadline. The wait-time for p at a relay node nr is a function of
rem time(p).
wait time(p, nr) = φ(rem time(p)) (4.3)
Nodes running SensiQoS delay the transmission of packets for an interval equal
to this wait-time. This delay in transmission of packet p provides a ”window of
opportunity” for the node to aggregate p with other packets of similar interest that
may arrive at a relay node nr during the ”window of opportunity”. These delayed
packets are stored in the node’s local cache. When packets that belong to the same
query arrive at the sensor node, they are aggregated using an application-specific
aggregation function specified in the query. The result of the aggregation is then
forwarded to the downstream neighbor towards the sink.
The time a packet waits at a relay node is determined adaptively at each hop,
instead of waiting for a fixed amount of time at each hop. Adaptively determining
the wait-time ensures that a packet meets its real-time deadline in spite of local
changes to the traffic conditions. Specifically, the SensiQoS module of a relay node
nr calculates the Euclidean distance Lr,u traveled by packet p from an upstream node
nu, and determines the wait-time using the following equation.
wait time(p, nr) =tDLLr,u −
Lr,uS
(4.4)
where Lr,u is given by
Lr,u = Lu,s − Lr,s (4.5)
and tD is the real-time deadline of the packet p and L is the distance from the source
103
node to the destination node.
4.3.5 Data Aggregation
The energy-efficiency of a data gathering scheme depends on the amount of correla-
tion that exists between the sensed data. If the sensed data is perfectly correlated
and multiple data packets can be reduced to the size of a single data packet after
aggregation, the Steiner Minimum Tree (SMT) is an optimal routing structure [128].
However, [128] has shown that correlation unaware approaches such as shortest path
trees provides a comparable performance for many network scenarios with signifi-
cantly less overhead. Based on the above observation, SensiQoS uses shortest path
routes between nodes for aggregation.
In a data gathering application that performs aggregation, the delay at each
hop of the aggregation tree should include transmission delay, contention delay and
aggregation delay. In the aggregation process, data packets may need to be held for
some time at intermediate relay nodes to perform aggregation. Aggregation delay
in SensiQoS comprises of the processing time for aggregation at each node and the
SensiQoS determined wait-time.
The wait-time of the aggregated packet at a relay node nr is the smallest remain-
ing wait-time among all packets getting aggregated:
wait time(pagg, nr) =M
minj=1
rem wait timepj, nr (4.6)
whereM is the total number of packets that are being aggregated and rem wait time(pj, nr)
is the remaining wait time of packet pj and wait time(pagg, nr) is the wait time of
the aggregated packet pagg.
104
4.3.6 MAC-layer QoS Support
The proposed SensiQoS protocol determines when to schedule a packet for transmis-
sion but depends on the low level MAC layer to support prioritized access to the
shared medium depending on the priority class of the packet.
To provide service differentiation, the 802.11e MAC protocol [2] provides a dif-
ferentiated channel access mechanism called EDCA (Enhanced Distributed Channel
Access). EDCA provides QoS support by associating different channel access param-
eters with different traffic categories. The following access parameters are associated
with each traffic category. SensiQoS maps each traffic category to a priority class.
• Arbitration Interframe Spacing (AIFS): The minimum time interval to wait
before backing off. A high priority traffic category has a shorter AIFS length.
• Transmission Opportunity (TXOP): The maximum duration for which the node
can transmit. A TXOP allows a node to transmit multiple data frames without
the need to restart the channel acquisition mechanism.
• Contention Window Parameters (CWmin and CWmax): These parameters de-
termine the number of random slots to wait before starting transmission. As-
signing smaller values of CWmin to high priority traffic category gives it more
TXOPs compared to a low priority traffic category. Similar is the case with
CWmax.
In addition to prioritized access to the shared medium, SensiQoS also requires
the following services from the MAC layer.
• One-Hop Delay: We have modified MAC 802.11e such that it maintains a
one hop delay for each priority class to each node in the forwarding set. Each
packet is annotated with a timestamp when it is sent out. When the ACK for
105
the packet is received, another time stamp is associated with it. The difference
between the two timestamps is taken as the one hop delay of the packet to the
destination node.
• Next-Hop Node: SensiQoS also utilizes the MAC layer information for mak-
ing routing decisions. When MAC layer receives an RTS, it updates SensiQoS
with the packet’s priority class and its destination. SensiQoS prefers to route
packets of a priority class to a node amongst the forwarding set that has re-
ceived a packet of that priority class. If there are multiple nodes that have
received packets of that priority class, the node that has received the packet
latest is considered first. This ensures that packets have a better chance of
getting aggregated at the downstream node.
4.3.7 Feedback-based Congestion Control
SensiQoS protocol adaptively delays a packet’s transmission such that it does not
miss its real-time deadline. However, a node may still miss its deadline due to
dynamic network conditions such as congestion, node failure, or node mobility.
SensiQoS uses feedback-based congestion control to support soft real-time services
when traffic congestion increases in the network and nodes fail to support the preset
network-wide speed. SensiQoS uses the backpressure beacons provided by SPEED
to propagate the feedback about packets that missed their deadlines to the upstream
node that sent the packet. SensiQoS organizes packets belonging to different priority
classes in different queues while they wait in a node’s local cache. When a con-
gestion notification through a backpressure beacon is received from a downstream
node, SensiQoS drops packets probabilistically from the lowest priority class queue
followed by the next lower priority class queue and so on. This localized feedback
ensures that SensiQoS recovers from dynamic network conditions. Fig. 4.5 shows an
example of how packets are organized in different priority queues for a sensor network
106
application that generates packets that belong to three different priority classes.
Figure 4.5: Packet Organization in SensiQoS.
4.4 Analysis
In this section we discuss the various factors that affect the selection of the network-
wide speed as well as the real-time deadlines for the events in the sensor network and
analyze the energy savings realized by using SensiQoS protocol. Suppose the set of
k sensor nodes is denoted by G = {n1, n2, ...., nk}. Suppose ni is the location vector
for the location of the sensor node ni where ni = < xi, yi > where xi and yi are the
x and y coordinates for the location of the sensor node ni. Suppose dij = ‖ ni−nj ‖
is the distance between the sensor nodes ni and nj.
4.4.1 Network-wide Speed
Suppose tpi represents the propagation time for a packet p, twi represents the wait
time as determined by SensiQoS and tqi represents the queuing time as well as the
channel contention delay for a sensor node ni. Thus, the total time a packet spends
107
at a relay node is given by
ti = tpi + twi + tqi (4.7)
From (4.4), twi clearly depends on the distance to the sink, the real-time deadline of
the packet as well as the network-wide speed supported by the network. This is a
combination of the propagation delay, waiting time and the channel acquisition delay.
The propagation delay depends on the laws of physics. Waiting time depends on the
SensiQoS algorithms and the channel acquisition delay depends on the congestion
in the network. The summation of the time a packet spends at all the relay nodes
must be less than the real-time deadline of the packet.
N∑i=1
ti ≤ tD (4.8)
N∑i=1
tip +N∑i=1
tiw +N∑i=1
tiq ≤ tD (4.9)
The minimum speed the network needs to support arises when the wait-time
determined by SensiQoS is zero, i.e,
N∑i=1
tiw = 0 (4.10)
Note that tqi depends on the traffic conditions and the congestion in the network.
Hence the sensor network designers must choose the network-wide speed that can
support the desired network traffic. Network designers must also choose a real-time
deadline for each event based on the nature of the event. When appropriate, choosing
a longer real-time deadline will let SensiQoS provide a greater amount of aggregation
by allowing the packets to stay in the network for a longer period of time. For each
event, the network-wide speed must be able to transport a packet within its real-time
108
deadline. The minimum network-wide speed guarantee required is the maximum over
all the minimum required speeds for each event. In other words,
S = maxi=1,2,...,e
Si (4.11)
where Si is the minimum network-wide speed required for event i and the number of
events is e.
4.4.2 Expected Number of Transmissions
Suppose, for the ease of analysis, that the nodes in the network are organized in
the form of a d-ary tree with the sink node as the root of the tree. Suppose each
node generates packets using a Poisson process with rate λ and exponential packet
transmission times, and injects those packets into the network. Suppose each packet
has a real-time deadline of tD seconds and suppose the network supports a network-
wide speed of Sm/s. To simplify the analysis, we suppose all nodes at each level are
equidistant from the sink and all nodes except the sink generate data.
Since the packets are generated using a Poisson process with rate λ, the packet
generation times at a node is an exponentially-distributed random variable with
parameter λ, λ > 0, with a probability density function f(x) and a cumulative
distribution function F (x) as
f(x) =
{λe−λx if x ≥ 0
0, if x < 0(4.12)
F (x) =
{1− e−λx if x ≥ 0
0, if x < 0(4.13)
Consider a d-ary tree with h levels. Nodes present at level h are the leaf nodes.
More packets get aggregated at level h − 1 than at level h − 2 as more nodes are
present at level h− 1.
109
The distance from a node ni present at level h− 1 to the sink is given by
di,s =‖ ns − ni ‖ (4.14)
When a packet travels from a node ni at level h− 1 to a downstream node at nj
present at level h− 2, it makes a progress of
Lij =‖ ns − ni ‖ − ‖ ns − nj ‖ (4.15)
The time taken by packet p to travel from a node at level h − 1 to the sink is
Lh−1
S. The amount of time it takes the packet p to travel from level h − 1 to level
h− 2 isLhop
S.
The wait time(p, nr) calculated by SensiQoS is:
wait time(p, nr) =DL
Lhop
− LhopS
(4.16)
We use the following two properties of Poisson distribution [105] for determining
the expected number of packets that are aggregated in SensiQoS:
1. The sum of n Poisson processes with paramater λi is a Poisson process with
parameter λ =∑n
i=1 λi
2. The number of packets generated by Poisson distribution in an interval T is a
random variable whose expectation is λT .
A consequence of these properties is that the expected number of transmissions from
a node present at level h to nodes at level h− 1 during the wait time of a packet at
a node at level h− 1, Ah,h−1 is given by:
Ah,h−1 = λ× wait time(p, nr) (4.17)
110
All packets that belong to the same interest will be aggregated at level h − 1.
The total number of packet transmissions at level h− 1, Ah−1, is given by:
Ah−1 =1
wait time(p, nr)× (dh + dh−1) (4.18)
In a d-ary tree, the number of packet transmissions at level h − 2 and lower is
much smaller than the number of packet packet transmissions at level h− 1.
Thus the expected number of packet transmissions, ATotal for the total time T is
given by:
ATotal = N ≈ T
wait time(p, nr)× (dh + dh−1) (4.19)
This equation shows that the total number of packet transmissions in SensiQoS is
inversely proportional to the amount of wait-time at a downstream sensor node. The
longer the wai-time, the fewer the number of packet transmissions and consequently
larger will be the energy savings. It is also proportional to the speed supported by
the sensor network.
4.4.3 Impact of Localization Error
So far we have assumed that the sensor nodes have perfect knowledge of their ge-
ographic location. An error in the location estimation will affect the minimum
network-wide speed supported by the sensor network. We investigate the effect of
location error on the energy savings of SensiQoS.
Suppose a single node ni at hop-level h− 1 has its location estimated incorrectly
by the localization scheme. Suppose the location vector for the estimated location
nesti be n+
i or n−i . The location n+i is farther from the sink than the actual location
ni while the location n−i is closer to the sink than the actual location ni. We consider
two cases. First, let nesti = n+
i . The change in the estimated progress toward the
111
sink because of the location error is given by:
Lesti+j =‖ ns − n+i ‖ − ‖ ns − nj ‖ (4.20)
where
Lesti+j = Lij + Lii+ (4.21)
The wait-time for packet p at node nj is given by:
wait time(p, nj) = Liestj × (D
L− 1
S) (4.22)
The increase in wait-time because of the error in location estimation is given by
wait timeδ(p, nj) = Lii+ × (D
L− 1
S) (4.23)
In this case, the calculated wait-time is longer than the actual wait-time. This will
result in the packet staying longer at the downstream node nj and consequently
missing the deadline. Now consider the case when nesti = n−i . The change in the
estimated progress toward the sink because of the location error is given by:
Lestij =‖ ns − n−i ‖ − ‖ ns − nj ‖ (4.24)
Lestij = Lij − Lii− (4.25)
The reduction in wait-time because of the error in location estimation is given by
wait timeδ(p, nj) = Lii− × (D
L− 1
S) (4.26)
In this case, the calculated wait-time is shorter than the correct wait-time. This
will result in the packet getting transmitted early at the upstream node nj and
consequently losing the opportunity to potentially aggregate more packets.
The change in the number of packets that will not be aggregated is given by
λ× wait timeδ(p, ni) (4.27)
112
4.4.4 Space Complexity
SensiQoS uses buffer space available in sensor nodes to store data packets for aggre-
gation. The amount of buffer space required is directly proportional to the number
of interests present in the node’s local cache and the amount of correlation among
data packets. For statistical queries such as min, max, avg, etc., two pieces of data
can be combined and reduced to the same size as that of the original pieces. We refer
to this type of correlation as perfect correlation. If packets are perfectly correlated,
then the amount of buffer space required is equal to the number of interests present
in the cache. If data packets that arrive at a node are only partially correlated and
in-network aggregation of the data packets results in more than one packet, then the
amount of buffer space required is O(p), where p is the number of packets result-
ing after aggregation. Techniques such as [66] have been developed in the literature
to overcome the memory limitations in sensor networks by leveraging Flash-based
virtual memory. If there is no correlation amongst data packets and aggregation is
not possible, transmitting a single packet with all the data items can still provide
savings for SensiQos provided header length is much larger compared to the size of
each data item.
4.4.5 Time Complexity
As can be seen in Fig. 4.4, the processing in the procedure recvDataPacket depends
on the time complexity of the application-specific aggregation function. Wait-time
calculation can be done in O(1) time at any relay node for any source-destination
pair.
4.5 Performance Evaluation
To measure the effectiveness of SensiQoS, we conducted extensive simulations of the
proposed SensiQoS protocol using the J-SIM network simulator. J-SIM is an open-
113
source network simulator that provides a modeling and simulation environment for
wireless sensor networks [99]. The performance of SensiQoS is compared with the
following protocols.
• MMSPEED. This is the standard MMSPEED protocol without aggregation
in either the application layer or the MAC layer. MMSPEED provides QoS
guarantees in both the timeliness domain and the reliability domains using
localized algorithms for sensor networks.
• MMSPEED-AGG. This is the MMSPEED protocol with opportunistic ag-
gregation. When a packet arrives at a relay node, aggregation of the data
packets is performed at both the application layer as well as the MAC layer
with packets that are already present in the cache waiting for transmission.
However, no effort is made to wait at a relay node for aggregation with packets
from upstream nodes.
• RTPAW. RTPAW [104] is a real-time power-aware framework and protocol
stack. Nodes are grouped into clusters and a cluster-head communicates with
the sink node through relay nodes. An aggregation layer is present between
MAC layer and the routing layers and the cluster head uses the aggregation
layer to collect the data from cluster nodes. Protocol overhead involves main-
taining the clusters, election of the cluster head and the relay nodes and the
periodic beacon messages. In our simulations, we have used a cluster size of 5
cluster nodes per cluster head.
In our experiments, we assume that wireless links are perfectly reliable as we would
like to evaluate the timeliness and aggregation properties of SensiQoS with other
protocols.
114
Table 4.1: Simulation Environment ParametersBandwidth 30 Kbps
Terrian 200 × 200 mNumber of nodes 100Node Placement Uniform
Radio Range 30 m
4.5.1 Energy Model
Each sensor node is assumed to have a radio range of 20 m. The bandwidth of
the radio is assumed to be 20 Kbps. The sensor characteristics are given in Table
3.1. These values are taken from the specifications for the TR1000 radio from RF
Monolithics [48].
4.5.2 Simulation Environment
The general simulation environment is drawn mainly from MMSPEED and is sum-
marized in Table 4.1. Each sensor node that generates traffic for the sensor network
maintains a CBR traffic of 5 packets/second through out the simulation. The simu-
lation is run for 500 seconds and the results are taken from the average of 100 runs
of the simulation and are shown with 95% confidence intervals. Confidence intervals
are calculated using the method of independent replications [105] for these simula-
tions unless otherwise mentioned. We obtain a single output variable in each of the
simulation runs and its distribution is not known. Hence we use statistical inference
based on normal distribution (because of the Central Limit Theorem) to determine
the confidence intervals. The following formula is used to obtain the 100(1 − α)%
confidence interval of the population mean µ:
θ − z1−α/2Sn√n< µ < θ + z1−α/2
Sn√n
where θ is the sample mean, Sn is the sample variance, n is the number of simu-
lation runs and z1−α/2 is the (1− α/2) quantile of the standard normal distribution
115
N(0, 1).
Although SensiQoS relies on a localization scheme, we do not consider it in our
simulator for simplicity. Instead, we make use of the geographic locations of sensor
nodes provided by our simulator to determine the delay for each packet at a sensor
node. Simulation results show that SensiQoS not only performs well compared to
MMSPEED in providing real-time guarantees, but also saves significantly more en-
ergy and extends the network lifetime. SensiQoS even outperforms MMSPEED with
in-network aggregation in energy savings.
4.5.3 Service Differentiation
To demonstrate the service differentiation provided by SensiQoS, two events, E1
and E2 are created in the network. This simulation consists of nodes sending data
packets that belong to two different events with two different deadlines. Low Priority
Event (LPE) has a deadline of 4.0 seconds while High Priority Event (HPE) has a
deadline of 1.0 second [28]. The sink or the base station is located at one corner
of the network. Nodes generate data from the other end of the network within an
event radius. The results are shown in in the Fig. 4.6. While both protocols provide
service differentiation, SensiQoS provides a much greater differentiation for the two
events. The reason for this is that SensiQoS allows packets at relay nodes to remain
in the network for a longer time by determining the wait-time based on the real-time
deadline of the packet. This improves the chances of a packet getting aggregated
with packets of the same event. A histogram of the packet arrival times for the high
priority event is shown in Fig. 4.7.
4.5.4 Energy Savings
Fig. 4.8 shows the total energy consumption for each protocol. Total energy con-
sumed for all the protocols is directly proportional to the number of transmissions,
116
Figure 4.6: Service differentiation.
which is the sum of the number of data packets sent and the number of control pack-
ets sent per node. MMSPEED protocol without any aggregation consumes the most
energy as expected. SensiQoS consumes the least amount of energy as SensiQoS ag-
gregates more number of packets compared with the other two protocols and results
in fewer number of transmissions. In fact, SensiQoS consumes 50 percent less energy
than MMSPEED protocol with opportunistic aggregation, and 70 percent less energy
compared with the MMSPEED protocol without any aggregation.
4.5.5 Packet Deadline Miss Ratio
The deadline miss ratio is an important metric in soft real-time systems. In the
simulation, some packets are lost due to congestion or forced-drops. We also consider
this situation as a deadline miss. The packet deadline miss ratio for each protocol is
shown in Fig. 4.9 with 95% confidence intervals. Packet deadline miss is a Bernoulli
117
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Packet arrival time for HPE
Rel
ativ
e fr
equ
ency
Figure 4.7: Normalized histogram of the packet arrival times for the high priorityevent.
distributed random variable. Hence the packet deadline miss ratio is binomially
distributed and the confidence interval can be determined by inverting the following
equation:
k0(p) < sn < k1(p)
where k0 is the largest integer such that
k0∑k=0
b(k;n, p) = B(k0;n, p) ≤ α/2
and k1 is the smallest integer such that
n∑k=k1
b(k;n, p) = 1−B(k1 − 1;n, p) ≤ α/2
The calculation of confidence intervals is done using the SEMSTAT software package
[50].
118
10 12 14 16 18 20 22 24 26 28 3050
100
150
200
250
300
Size of the event (Number of nodes)
Ene
rgy
cons
umed
(Jo
ules
)
SENSIQOSRTPAWMMSPEED−AGGMMSPEED
Figure 4.8: Energy consumption.
As the number of flows increases in the network, MMSPEED drops more packets
to meet the real-time deadline for the remaining packets in the network. However,
SensiQoS drops far fewer packets due to its ability to aggregate better, which results
in reduction of the contention in the network as shown in Fig. 4.9.
4.5.6 Node Density
We now consider the effect of node density on SensiQoS. In this experiment, we
increase the number of nodes present in the sensor grid. As the event size remains
the same, number of nodes that report the occurrence of the event increases with
increase in node density. Correlation among data packets is likely to increase with
increase in node density as the inter-node separation distance reduces and nodes get
closer to each other.
Fig. 4.10 compares the energy savings of SensiQoS with MMSPEED protocols
with increasing node density. We show the average delay for the packets delivered to
119
10 12 14 16 18 20 22 24 26 28 300
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Size of the event (Number of nodes)
Pac
ket d
eadl
ine
mis
s ra
tio
SENSIQOSMMSPEED−AGGMMSPEED
Figure 4.9: Packet deadline miss ratio with increasing number of flows.
the sink as a function of the node density in Fig. 4.11 with 95% confidence intervals.
The packet delay in the same simulation run is correlated. Hence we use the method
of batch means [105] to determine the confidence intervals. An initialization period
of 5 seconds is used and a batch length of 50 seconds is used to obtain the confidence
intervals. As the node density increases, average delay of the packets delivered by
MMSPEED increases. This is due to contention in the network and the increased
delay in acquiring the channel. This does not increase the aggregation as much as
seen by the energy savings in Fig. 4.10. SensiQoS enables the packets to remain in
the network despite increased contention. The ability to wait in the network and
aggregate enables SensiQoS to achieve greater energy savings. This is shown in Fig.
4.11 that as the number of nodes in the sensor network increases, the average delay
of the packets delivered by SensiQoS remains approximately the same.
120
100 150 200 250 3000
200
400
600
800
1000
1200
1400
1600
Number of nodes
Ene
rgy
cons
umed
(Jo
ules
)
MMSPEED−AGGSENSIQOS
Figure 4.10: Energy consumed with increasing node density.
4.5.7 Impact of Aggregation Factor
So far we have assumed that the data has perfect correlation and hence the resulting
number of bytes after aggregating two different packets is a data packet of single
packet size. However, this can vary based on the aggregation factor of the corre-
sponding aggregation method chosen by the application. We define the aggregation
factor as the ratio of total number of bytes generated after aggregation over the size
of a single packet when two packets are aggregated. In our simulations the size of
a single packet is 30 bytes. As an example, with an aggregation factor of 1.2, the
result of aggregating two packets is 36 bytes. We do not send fractional packets in
our simulations. When enough fractional packets accumulate within the wait-time
that can be combined into a single packet, we transmit the packet to the downstream
node. The energy consumed as a function of the aggregation factor is shown in Fig.
4.12.
121
100 150 200 250 3000
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Number of nodes
Ave
rage
del
ay (
seco
nds)
SENSIQOSMMSPEED−AGG
Figure 4.11: Average delay with increasing node density.
4.5.8 Impact of Event Occurrence
So far, we have examined the effect of uniform event generation in the sensor network.
We now investigate the effect of non-uniform event generation on the energy savings
of SensiQoS. In this simulation, events are generated at random locations in the
sensor network. The event radius is chosen as 50 m and events occur at randomly
chosen locations in the sensor network every 5 minutes. Each event lasts for 5 seconds
at a poisson arrival rate of 5 packets/second. When an event occurs at a specific
location, all the sensor nodes within the range of the event radius generate data
related to that event. The energy consumed as a function of the event frequency is
shown in Fig. 4.13. For each event frequency, one data packet of each priority is
generated by the source sensor nodes. The simulations are run for one hour and the
results shown are the average energy consumed over five runs.
122
1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 250
60
70
80
90
100
110
120
130
Aggregation factor
En
erg
y co
nsu
med
(Jo
ule
s)
SENSIQOS
Figure 4.12: Energy consumed versus aggregation factor.
1 1.5 2 2.5 3 3.5 4 4.5 50
10
20
30
40
50
60
70
80
Event frequency
Ene
rgy
cons
umed
(Jo
ules
)
SENSIQOSMMSPEED−AGGMMSPEED
Figure 4.13: Energy consumed versus event frequency.
123
4.6 Summary
In this chapter, we have presented SensiQoS, a distributed packet scheduling scheme
for wireless sensor networks that reduces energy consumption without significantly
increasing the number of packets that miss their real-time deadlines. SensiQoS adap-
tively varies the wait-time of each packet and transmits them in the order of their
priorities. Each packet is forwarded to the node that can carry the packet towards
the destination node with maximum speed using geographic routing. A next step
is to use optimistic approaches for calculating the wait-time of a packet based on
rem time(p) to achieve even more energy savings in dense sensor networks.
124
5
Data Collection in Event-DrivenNetworks with Mobile Sinks
5.1 Introduction
In Chapter 3, we described LAF that uses location information and a virtual grid
architecture to disseminate information in an energy-efficient way. This can be in-
terpreted as control information that needs to be broadcast to all the sensor nodes in
the network. A related problem is how to collect all the data generated by the sensor
nodes due to sensing. In this chapter, we leverage the virtual grid architecture to
address the problem of energy-efficient data collection in event-driven networks. In
a sensor network where data is generated continuously by the sensor nodes, sensed
data is collected by the base station at frequent intervals for further processing.
For static sensor networks, data collection schemes using lossless compression tech-
niques such as distributed source coding have been proposed in the literature [115].
However, a disadvantage with these approaches is that the nodes closer to the sink
carry a disproportionately large amount of traffic and deplete their battery resources
quickly. Such “early-death” of one-hop neighbors of the sink leads to loss of network
125
connectivity to the sink node, which is essential for the sensor nodes to transport
sensed data for use by the outside world. Mobile sinks are proposed in the literature
as a solution to the early death of one-hop neighbors of the sink. However, most re-
cent work in data collection using mobile sinks focuses on continuous data collection
where data is continually generated and is collected periodically via either one-hop
routing or multi-hop routing [16], [116], [127], [27], [108], [34], [38], [92]. However
in continuous data collection, mobile sinks continually traverses the network using
a predefined mobility model and collects data when it comes closer to the sensor
nodes. A disadvantage in these approaches is that even when there is no data for
relatively long periods of time, such as in event-driven sensor networks, a mobile sink
continually moves in the network. In event-driven networks (e.g., habitat monitor-
ing [14], target tracking [72]), data is only generated when events occur. Hence it is
highly inefficient for mobile sinks to traverse the network when there is no new data
to collect. It also increases the latency of data collection because once the mobile
sink collects data from a particular location, it will come back to that location after
traversing the entire network.
In this chapter, we present an energy-efficient data collection protocol for event-
driven sensor networks. This protocol, which is executed in a distributed fashion on
every node in the network, uses a two-tier geographic hash-table based scheme for
data collection. The proposed mobility model moves the sink node only upon the
occurrence of an event according to the evolution of current events, so as to eliminate
the energy consumption incurred by the multi-hop transmission of the event-data.
Data is collected via single-hop routing when the mobile sink is closer to the sensor
nodes. Simulation results demonstrate significant gains in energy savings, while
keeping the latency and the communication overhead at very satisfactory levels for
various parameter values..
The rest of this chapter is organized as follows. In Section 5.2, we describe the
126
related work in detail. In Section 5.3, we explain the geographic hash table based data
collection scheme. In Section 5.4, we provide our analytical framework to evaluate
the performance of the proposed protocol. We present other data collection protocols
for comparison in 5.5 and then present our simulation results in Section 5.6. Finally,
we summarize the chapter in Section 5.7.
5.2 Related Work
Several approaches have been proposed for data collection in static sensor networks.
Partial Network Coding is proposed as a tool for continuous data collection in [115].
Parts of data segments are combined using network coding techniques to extend
the network lifetime. A cascading data collection mechanism [67] is proposed for
periodic data collection in wireless sensor networks. During each round, only a sub-
set of the nodes send data directly to the sink. Each intermediate node combines
all the information using network coding and forwards the data to the sink. An
adaptive sampling approach to data collection is proposed in [30]. Data is directly
collected from a dynamically changing subset of sampler nodes whereas data for the
non-sampler nodes is predicted based on the use of probabilistic models. Although
this is an energy-efficient approach for periodic data collection, it is only proposed
for static sensor networks. Enhancing data collection by leveraging temporal corre-
lation between data is explored in [70]. Methods for individual and aggregate data
collections are proposed in [102]. An offline algorithm to compute the optimal data
update strategy as well as online algorithms to cope with message losses have been
proposed for static wireless sensor networks. These schemes do not consider mobile
sinks for extending the network lifetime.
Several mobile-sink-based approaches are also proposed for data collection in the
literature. These approaches can be classified into three categories based on the
mobility model of the sink: random mobility, predictable mobility, and controlled
127
mobility of the mobile sink. A sensor network architecture that collects data using
MULEs (Mobile Ubiquitous LAN Extensions) that leverages the random mobility
of mobile agents has been proposed in [114]. In SENMA (SEnsor Networks with
Mobile Agents) [58], data is sent directly to the mobile agent that is flying above the
sensor field. Cluster-based data collection is described in [74]. The authors assume
that the mobile sink is either a helicopter, airplane or an LEO satellite and hence
the sensors have direct access to the mobile sink. Mobile sink periodically collects
the data from the sensor nodes. This scheme is not optimized for event-based sensor
networks like HTDC. In [16], authors propose three protocols for energy-efficient
data collection in sensor networks with multiple mobile sinks. Mobile sinks leave
an imprint of their movement in the sensor network and coordinate to reduce the
overlap area for data collection amongst each other. Mobile sinks continuously move
and collect data from the sensor nodes. This strategy can waste a significant amount
of energy for the mobile sinks in event-driven sensor networks where events occur at
discrete times. Multi-hop operation between the mobile sink and the source nodes is
considered in [110]. Forecast algorithms are used to predict the location of the next
event. [116], [127], [27], [108], [34] describe several applications that perform data
collection with mobile sinks.
Two decentralized mobility models for data collection are proposed in [38]. In
each mobility model, a data collection request is given bids by all mobile sinks and the
mobile sink with the lowest bid services the data collection request. However, each
sensor node sends an individual data collection request to the mobile sinks and this
consumes more energy compared to our proposed scheme. The security of the data
collection mechanism using mobile sinks is studied in [92]. The authors propose a
secure data collection mechanism based on one-way hash chains in which the sensors
must verify the source of the beacon messages sent by the mobile sink before they
send the data to the mobile sink. In [116], data collection by multiple mobile sinks in
128
underwater acoustic networks is studied and three algorithms are presented. Some
of the problems identified are the same issues we have attempted to solve in this
thesis. However, the scheme that we present here is more energy-efficient due to the
two-tier hash table based design.
In this thesis, we propose a solution that is significantly different from all the
above approaches. We assume an event-driven scenario, where sensors that have
detected an event send data to the sink node via single-hop routing. Our goal is to
control the mobility of the sink so as to ensure an energy-efficient operation of the
network. The sink node is notified about the occurrence of events, and its trajectory
so as to maximize network lifetime.
5.3 HTDC Design
Hash Table-based Data Collection (HTDC) is a reactive protocol: each sensor node
reactively initiates the data collection process after an event is sensed by the sensor
node. It proposes controlled mobility for the mobile sink to improve the energy-
efficiency of the mobile sinks in an event-driven sensor network.
HTDC binds individual sensor nodes in the network to the cells of a virtual grid
based on their geographic location. This limits the cost of event announcement to an
individual cell. Each node maintains only the information necessary to determine the
location of the Local Event ANnouncer (LEAN) node and no additional state needs
to be maintained. This provides fault tolerance to the sensor nodes in the case of
the failure of a event announcer node as the underlying geographic routing algorithm
routes to the sensor node closest to the location specified as the destination and not
to a specific node.
HTDC achieves four goals. First it ensures correctness by attaching each sensor
node to a mobile sink. Second, it adaptively selects the positions for the local event
announcer nodes in each cell as well as the agent nodes for the mobile sinks. Third,
129
by dividing the sensor field into virtual cells among each mobile sink, it ensures load
balancing among available mobile sinks.
HTDC runs above the MAC and routing layers. HTDC utilizes geographic rout-
ing protocol as the underlying routing protocol. Control packets from the sensor
nodes notifying LEAN nodes of new events are routed to the LEAN nodes and con-
trol packets from the LEAN nodes are routed to the mobile sink.
5.3.1 System Model
Consider a sensor network, where N nodes are randomly deployed in a sensing field.
A small number of mobile sink nodes are present in the sensor network and gather
data from the sensor nodes. A specific application scenario is a battlefield, where a
large amount of sensor nodes are scattered randomly, performing environment mon-
itoring and intrusion detection. A vehicle travels through this field and collects data
from sensor nodes. We make the following assumptions about the sensor network
architecture:
• All the sensor nodes are fixed and are aware of their location (either through
localization techniques or through a GPS receiver). All nodes are assumed to
have a radio range r.
• The mobile sink nodes are aware of their own location. However, it is not
necessary for mobile sinks to know the locations of other sensor nodes.
• Mobile sinks can communicate with each other in a single-hop. Mobile sinks
communicate with the base station via multihop routing.
• We assume that there are specific types of events in the sensor network. We rec-
ognize that an event has occurred when a minimum number of sensors generate
one or more data packets related to that event.
130
5.3.2 Virtual Grid Construction
HTDC divides the sensor network into a virtual grid of cells. Each cell is an square.
Each sensor node identifies itself with a single cell. For a particular source at location
Ls = (x; y), the left most corner of the cell is located at Lp = (xi; yi) such that:
fx(i) = x± p (5.1)
fy(i) = y ± p (5.2)
where p is the length of the side of each cell. A source calculates the locations of
four corners of the cell given its location (x; y) and cell size.
5.3.3 Geographic Hash Table
The data collection system architecture, which we describe in this chapter to meet
the above-enumerated design criteria, is a two-level geographic hash table (GHT)
[93]. GHT hashes a key k into geographic coordinates. A key-value pair is stored
at a node in the vicinity of the location to which its key hashes. The hash function
is chosen such that it spreads the different key names evenly across the geographic
region where the sensor network is deployed. This protocol replicates stored data
for a key k at nodes around the location to which k hashes. The home node for a
GHT packet is the node geographically nearest the destination coordinates of the
packet. Other nodes around the hashed location are called the perimeter nodes. In
GHT, the packet enters perimeter mode at the home node, then traverses the entire
perimeter that encloses the destination, before returning to the home node.
5.3.4 Hash Functions
HTDC utilizes two hash functions:
Hash1: This hash functions determines the location of the event announcer node in
a cell. This hash function takes the cell id of the source node as a parameter
131
and outputs the location of the Event Announcer. Since a sensor node may not
be present at the exact location as determined by the hash function, any sensor
node that is the closest to the hashed location can act as the Event Announcer.
Each event announcement message can travel through multiple hops in the cell
and finally stops on a sensor node that is the closest to the location specified
in the message.
Hash2: This hash functions determines the location of the mobile sink. This hash
function takes the mobile sink name as a parameter and outputs the location
of the mobile sink. Each mobile sink stays at the location determined by Hash2
until a data collection request arrives.
5.3.5 Local Event Announcer Node
After the occurrence of an event, all the sensor nodes that are within the area af-
fected by the event, generate sensory data related to that event. Next, these source
sensor nodes execute the AnnounceEvent procedure. The psuedocode for the An-
nounceEvent procedure is shown in Fig. 5.5. Each source node determines the
location of the Event Announcer using a geographic hash table based [93] method
using the Hash1 hash function (Line 2). The source sensor nodes forward an event
announcement message called Local Event Announcement Messages (LEAM) to the
Local Event ANnouncer (LEAN) node (Line 3). Local Event Announcer node is a
sensor node present in the same cell as the source node that has data to be collected
and whose main responsibility is to notify a mobile sink that there is data to be
collected in its cell. There is one Event Announcer per cell in the sensor network
except in a special case as described below.
The LEAN node stores the source information including the location co-ordinates
of the source node. It waits for a preset number of event announcement message
to arrive from the source nodes in its cell. Once event announcement packets are
132
Mobile Sink
LEAN
Sensor Node
Event
Figure 5.1: An event has occurred in the sensor network with four mobile sinks.
received, LEAN node executes the SendDCRPacket procedure. The psuedocode for
the SendDCRPacket procedure is shown in Fig. 5.6. The closest mobile sink is
determined using the Hash2 hash function with the names of the mobile sinks (Line
1). This two-level hashing mechanism notifies the mobile sink of the event occurrence
in the cell specified in the DCR message. Once the location of the mobile sink is
determined, LEAN node constructs a Data Collection Request (DCR) packet (Line
2) and forwards the packet to the closest mobile sink (Line 3).
Once the event announcement message reaches it, the mobile sink initiates the
data collection process by executing the DataCollection procedure. Each mobile
sink also maintain a list of its immediate neighbors and they maintain the state of
the mobile sink in turn. A mobile sink periodically refreshes the state of the home
nodes by broadcasting beacon messages. They can be in one of the three states,
133
D
A
C
B
Figure 5.2: Local Event Announcer Node. D is the hashed location of the LEANnode. A is the LEAN node for this virtual cell. B and C are the perimeter nodes forthe LEAN node.
namely “present”, “not present” and “failed”. When a mobile sink is present in
its hashed location, the mobile sinks agents have the state of the mobile sink as
present. The cell that contains the mobile sink will not have the Event Announcer
node. Instead, nodes present in the cell send their data directly to the mobile sink.
However, the mobile sink agents will still be present. When the mobile sink moves
to a cell for data collection, they set their state as not present. If the mobile sink
does not refresh its state after a certain amount of time, the mobile sink agents will
set their state as “failed”. This timeout depends on the maximum amount of time
it takes a mobile sink to service a cell. The pseudocode for notifying the mobile sink
of an event occurrence by a LEAN node in HTDC is shown in Fig. 5.6.
5.3.6 Data Collection
The event announcement message contains the location of the cell. The mobile sink
moves to the cell where the event has occurred and initiates data collection among
134
B
C
A
Event
Figure 5.3: Source nodes in each cell send an event announcement message toLEAN.
the nodes in the cell. The mobile sink traverses the cell in a snake-like fashion in order
to cover the complete area of each virtual cell. The data is collected passively: sinks
periodically broadcast a beacon message at distance R, thus alerting the sensors one-
hop away to start sending their data. Sensor nodes that receive a beacon transmit
the collected data stored in their memory, to the sender of the beacon. Note that this
is a strictly one-hop communication scheme. A sensor node responds to the mobile
sink’s message with the sensed data about the event with its data packet. Once all
the sensors in the cell are covered and if there are no pending requests, the mobile
sink returns to the home location and waits for the next event occurrence.
The nodes in the home perimeter of a mobile sink maintain state about its pres-
ence. This state can be ”present”, ”not present” or ”failed”. When a mobile sink
has moved from its hashed location, this state is set to ”not present”. However, if
the perimeter nodes did not hear from the mobile sink within a set time period, they
set the state of the mobile sink to ”failed”. While the mobile sink is not present at
135
Figure 5.4: LEAN nodes send a DCR packet to the mobile sink to request datacollection.
Procedure AnnounceEvent(Packet p)
Data: Packet p
Result: Notify the LEAN node of an event occurrence
if Event Occurred then1
Determine the location of the LEAN node using Hash1;2
Forward the packet to the LEAN node;3
end4
Figure 5.5: Procedure AnnounceEvent.
the hashed location, the perimeter nodes can receive the messages on behalf of the
mobile sink.
5.3.7 HTDC Messages
HTDC uses three types of messages to perform data collection.
• DCR - data collection request. When a local event announcer node has detected
an event in its cell, it can communicate this new event to the mobile sink by
136
Procedure SendDCRPacket(Packet)
Data: Packet p
Result: Send a data collection request packet to the mobile sink
Determine the location of the mobile sink node using Hash2;1
Construct the DCRpacket;2
Forward the packet to the Mobile Sinks;3
Figure 5.6: Procedure SendDCRPacket.
Procedure DataCollection(Cell ID)
Data: Cell IDResult: Collect data in the cell specified by the cell ID
Send beacon every time period;1
Receive packets from sensor nodes;2
Move in a trajectory;3
Figure 5.7: Procedure DataCollection.
transmitting a DCR message.
• PRQ - Perimeter Request. If a mobile sink agent receives a DCR message and
the mobile sink is not at its location, then the mobile sink agent constructs
this PRQ request and sends it to the next closest mobile sink node location.
• LEAM - Local event announcement. This message is sent by a source sensor
node upon detecting an event.
5.3.8 Load Sharing
In this section, we discuss how our data collection mechanism enables load sharing.
Sensor networks can have events whose event area can be of different sizes. In such
cases, events can span multiple cells. To provide load sharing, the location of the
mobile sinks is periodically changed. This will ensure that each mobile sinks stays at
a different location in every period. This will also reduce the hotspots in the sensor
137
network. Sensor nodes also periodically change the Event Announcer node in each
cell to reduce the hotspot problem.
5.3.9 Routing of Messages to the Mobile Sink
The Event Announcer node communicates with the Mobile sink using a DCR mes-
sage. If the mobile sink is currently servicing an event, the message is delivered
to the mobile sink perimeter nodes known as the mobile sink agent (MSA) nodes.
MSA nodes receive the Event Announcement messages meant for the mobile sink
in its absence. Upon receipt of the Event Announcement messages, the mobile sink
agent nodes generate a new Event Announcement message and forward it to the next
nearest mobile sink. This will ensure that mobile sinks that are currently free from
servicing any event can share the workload.
A “Mobile Sink failed message” will be sent to the base station to inform the
base station about the failure of the mobile sink.
5.4 Analysis
In this section, we analyze the energy consumption of HTDC.
5.4.1 Model and Notation
We consider a square sensor field of area A in which N sensor nodes are uniformly
distributed. There are M mobile sinks in the sensor field. Each mobile sink moves
at an average speed of v m/s. When an event occurs at a location (x, y), all sensors
present within range of the sensing radius rs from (x, y) generate data for the event
and continuously generate data packets as long as the event persists.
5.4.2 Energy Consumption
The total energy consumption is the summation of three components:
138
1. Energy consumed during event notification by the source sensor nodes;
2. Energy consumed to notify the mobile sink;
3. Energy consumed during data collection. This can be divided into two parts:
a) energy consumed by the mobile sink; b) energy consumed by the sensor
nodes.
Now we analyze the energy consumption for each of these parts separately.
Energy Consumed for Event Notification
The energy consumed during event notification is directly proportional to the number
of sensors that sensed the event. Suppose all the sensor nodes in a single cell sense
the event. Each such sensor node sends an event notification message to the LEAN
node. The maximum number of hops the packet has to traverse is equal to the
diameter of the subnetwork inside the cell.
The number of nodes in each cell is given by:
ncell = N × c2
A(5.3)
where c is the side of each cell.
The expected number of transmissions needed to notify the LEAN node of an
event by a single source node in the cell is given by:
E1cell = k ×
√ncell (5.4)
where k is a constant. The total energy consumed due to event notification in a
single cell is given by:
Ecell = E1cell × ncell (5.5)
139
Energy Consumed for Mobile Sink Notification
Once LEAN node receives event notification messages from the source sensor nodes
in the cell, it constructs a data collection request packet and sends the packet towards
the mobile sink. The average distance between the mobile sink and the LEAN node
can be evaluated by computing the average distance between two randomly chosen
points in a unit square. Suppose (X1, Y1) and (X2, Y2) denote the coordinates of
two random points which are selected independently and uniformly. The distance
between these two points can be written as D =√
(|X1−X2|2+|Y1−Y2|2). According
to [107], the probability density function of the random variable D is defined as
follows:
fD(d) =
2πd− 8d2 + 2d3 if 0 ≤ d ≤ 1
2(π − 2)d+ 8d√d2 − 1
−2d3 − 4d arccos(2−d2
d2 ) if 1 < d ≤√
2
(5.6)
Since there are M mobile sinks, suppose Di denotes the distance between a LEAN
node and a mobile sink Mi. Di is a random variable and its probability density
function is the minimum of theM i.i.d random variables where the probability density
function of each random variable is given by (5.6).
fDmin(d) = MfD(d)(1− FD(d))M−1 (5.7)
Since (5.7) does not yield a simple closed form solution, we simplify the analysis
by assuming that each mobile sink will cover a square of area AM
. The side of the
square is given by:
s =
√A
M(5.8)
Hence the probability density function of the distance between the event announcer
140
node and the mobile sink is:
fDmin(d) =
2πd− 8d2 + 2d3 if 0 ≤ d ≤ s
2(π − 2)d+ 8d√d2 − 1
−2d3 − 4d arccos(2−d2
d2 ) if s < d ≤ s√
2
(5.9)
The average distance between the cell and the mobile sink is given by:
E[Dmin] = 0.52× s (5.10)
According to [23], given a geographic routing protocol, we have H(l) = ζl/r where
H(l) is the number of hops on a path between two arbitrary nodes x and y such that
|x, y| = l is the Euclidean distance between the two nodes, r is the communication
range and ζ ≥ 1 a scaling factor depending on the spatial node density. Hence, the
number of hops needed to reach the mobile sink from the event announcer node is
given by
hmin = ζ × E[Dmin]/r (5.11)
Hence the expected total number of packets that will be sent in HTDC is given by
Ptotal = hmin + ncell√ncell (5.12)
which is directly proportional to the total energy cost Etotal needed to notify the
mobile sink of an event.
If there are a total of E events, then the total energy consumed is given by
EnEtotal ∝ nEPtotal (5.13)
Energy Consumed for Data Collection
The energy consumed by the mobile sink for data collection is proportional to the
distance traveled. The energy consumed by a sensor node in the data collection
process is for listening to the beacon messages from the mobile sink and transmission
of data.
141
5.4.3 Time Complexity
In this section, we determine the delay in collecting the data using HTDC. The delay
ttotal is given by:
ttotal = tc + tmsfetch + tms + tdc (5.14)
where
• tc is the amount of time it takes for the Event Announcer node to detect that
an event occurred in its cell.
• tmsfetch is the amount of time taken for the DCR message to reach the mobile
sink.
• tms is the amount of time it takes for mobile sink to reach the cell
• tdc is the amount of time it takes for the mobile sink to collect the data from
all the nodes in the cell.
The parameter tc, the time taken by the LEAN node to detect an event is the
time taken to receive the preset number of event detection messages from the source
sensor nodes and is O(d) where d is the diameter of the subnetwork in the virtual
cell.
The parameter tmsfetch, the time taken by the DCR packet to reach the mobile
sink from a LEAN node is O(E[Dmin]).
The parameter tms, the time taken by the mobile sink to reach the cell is given
by the distance between the cell and the mobile sink location and the velocity of the
mobile sink, v. This is O(E[Dmin]v
).
The parameter tdc, the time taken by the mobile sink to collect all the data in a
given cell is proportional to the number of sensor nodes in the cell. Hence the overall
time complexity of the HTDC protocol for data collection is O(ncell).
142
5.5 Other Data Collection Algorithms
In this section, we describe the three data-collection algorithms against which we
will compare the performance of HTDC.
5.5.1 Reactive Data Collection (RDC)
In RDC, a source node that wants its data collected either floods the network with
its data packet or if it has multiple data packets that needs to be collected reactively
[112], locates the mobile sink by flooding the network with a query about the location
of a mobile sink. Once the query reaches the mobile sink, the sink moves toward
the source node and transmits a beacon message to the source node indicating its
readiness to collect the data from the source node. The algorithm converges when
data from all the source nodes that detected the event is collected by the mobile
sink. Reactive data collection consumes the least amount of time in notifying the
mobile sink about the occurrence of the event. However, it consumes a vast amount
of energy because it floods the network with query requests.
5.5.2 Continuous Data Collection (CDC)
Several approaches such as [16] partition the network based on geography and allocate
one mobile sink to each partition. This is a continuous data collection approach where
each mobile sink continuously moves in its allocated grid partition in rounds. In each
round, a mobile sink moves in a designated trajectory that enables it to reach all
the nodes in the grid partition. The mobile sink will broadcast a beacon message
querying each sensor node for data as it moves closer to the node. Data is collected
from all the source nodes in the grid partition in each round via one-hop routing.
If a node does not have data in a certain round, it will not respond to the beacon
message of the mobile sink and it is ignored by the mobile sink.
143
5.5.3 Ideal Data Collection (IDC)
In IDC, each mobile sink immediately knows about the occurrence of an event in
its grid partition and which sensor nodes are the source nodes with data about that
event. The mobile sink immediately moves towards the source sensor nodes after the
occurrence of the event and collect the data. We call this ideal data collection since
in this case, the sink reaches the source nodes in the shortest possible amount of time
and no energy is expended in notifying the mobile sink about the occurrence of the
event. We expect this scheme to provide an upper bound for the amount of energy
consumed. To simulate ideal data collection, we maintained a centralized database
of event locations in our simulator. This database is used to notify the mobile sinks
about the location of the event upon event occurrence.
5.6 Performance Evaluation
We used a 150 node network within a 250x250 m monitoring area. The results are
averaged over 10 simulations runs and are shown with 95% confidence intervals. Con-
fidence intervals are calculated using the method of independent replications [105] for
these simulations. We obtain a single output variable in each of the simulation runs
and its distribution is not known. We can use statistical inference based on normal
distribution (because of the Central Limit Theorem) to determine the confidence
intervals. However, since the number of simulation runs is small, we have used the
Students t distribution and the following formula is used to obtain the 100(1− α)%
confidence interval of the population mean µ:
θ − tn−1;α/2Sn√n< µ < θ + tn−1;α/2
Sn√n
where θ is the sample mean, Sn is the sample variance and n is the number of
simulation runs.
144
Table 5.1: Simulation Environment ParametersBandwidth 30 Kbps
Terrian 250 × 250 mNumber of nodes 100Node Placement Uniform
Radio Range 20 m
5.6.1 Energy Model
Each sensor node is assumed to have a radio range of 20 m. The bandwidth of
the radio is assumed to be 20 Kbps. The sensor characteristics are given in Table
3.1. These values are taken from the specifications for the TR1000 radio from RF
Monolithics [48].
5.6.2 Simulation Environment
We have compared the different data collection approaches using the J-SIM sensor
network simulator [99]. J-SIM is an open-source network simulator that provides a
modeling and simulation environment for wireless sensor networks. To implement
the HTDC protocol we used the GPSR extensions to the J-SIM simulator. The
general simulation environment is summarized in Table 5.1.
5.6.3 Effect of Mobile Sinks
First we show the effect of the number of mobile sinks on the network lifetime as
well the average data collection delay. For this simulation, one event is generated
for this experiment and the event persists for a period of 100 seconds and can be
sensed by sensor nodes in an area of 3600 m2 which is approximately equal to one
cell. Each cell in the virtual grid contains 9 sensor nodes. Sensor nodes generate data
every 10 seconds and hence each sensor node that has sensed the event generates 10
packets for this event. Mobile sinks move at an average speed of 3 m/s [91]. As
expected, RDC provides an upper bound in terms of the total number of messages
145
RDC
RDC
HTDC HTDCHTDC
IDC IDC IDC IDCCDC CDC CDC CDC
RDC
RDC
HTDC
0
200
400
600
800
1000
1200
1400
1600
1800
1 2 4 8
Number of mobile sinks
Tota
l num
ber o
f tra
nsm
issi
ons
RDC HTDC
IDC CDC
Figure 5.8: Total number of transmissions versus number of mobile sinks.
transmitted in the network. This measure is inversely proportional to the network
lifetime. However, Fig. 5.8 also shows that even the RDC protocol benefits from
more mobile sinks in the network. Next, we show the effect of varying number of
mobile sinks on data-collection delay. The data collection delay is defined as the total
time taken to collect all the data generated by the events. Fig. 5.9 shows that RDC
achieves low data-collection delay as flooding the network usually informs the mobile
sink quickly about the event occurrence. HTDC performs equally well in terms of the
data-collection delay with only using very few messages, thus improving the network
lifetime. CDC performs the worst as the mobile sink continuously traverses the entire
grid partition without any knowledge of the event occurrence. This shows that the
continuous data collection protocols are unsuitable for event-driven sensor networks.
146
0
100
200
300
400
500
600
1 2 4 8
Number of mobile sinks
Dat
a co
llect
ion
dela
y(se
c)
RDC HTDC IDC CDC
Figure 5.9: Data-collection delay versus the number of mobile sinks.
5.6.4 Effect of the Number of Events
We have also investigated the effect of the number of events on the performance of
HTDC. Fig. 5.10 shows the total number of transmissions with an increase in the
number of events. For this experiment, we placed four mobile sinks in the sensor
field. As the number of events increase, the number of transmissions increase for
all four protocols. However, RDC performs the worst as source sensor nodes flood
the network with data collections requests. HTDC performs as well as the IDC that
uses global information for data collection. Fig. 5.11 shows the effect of increasing
the number of events on the data collection delay. The 95% confidence intervals are
147
0
2000
4000
6000
8000
10000
12000
14000
1 2 4 8
Number of events
Tota
l num
ber o
f Tx
mes
sage
s
RDCHTDCIDCCDC
Figure 5.10: Total number of transmissions versus number of events.
within 1% of the mean and hence not shown. As the number of events increase, we
can see that data collection delay for CDC decreases compared with other methods.
This is because as the number of events increase, CDC benefits from the fact that
event occurrences are continuous in this simulation and occur sequentially.
5.6.5 Effect of Cell Size
Fig. 5.12 shows the effect of varying the cell size on the performance of HTDC. The
cell size is described in terms of the number of nodes present in the cell. As the cell
size increases, the number of transmissions decreases initially but increases from cell
size 16 nodes and beyond. This is due to the fact that when the cell size is small,
the number of transmissions enroute to the mobile sink dominate the total number
148
0
100
200
300
400
500
600
700
800
1 2 4 8
Number of events
Tota
l num
ber o
f Tx
mes
sage
sRDC:
HTDC
IDC
CDC
Figure 5.11: Data-collection delay versus number of events.
of transmissions but as the cell size gets larger, the number of transmissions inside
the cell dominate. This can observed clearly from Fig. 5.12.
5.6.6 Impact of Error in Localization
Errors in localization do not have any effect on the performance of HTDC as the
geographic-routing methods correctly route even when localization errors are present.
A sensor node with an incorrect location estimate can wrongly identify it’s virtual
cell. In such a scenario, the sensor node will forward its event notification announce-
ments to a different LEAN node. This will only lead to a few more additional
messages compared to a network with zero errors in location estimation. Hence, we
expect the effect of errors in localization on the energy-efficiency of HTDC to be
149
0
100
200
300
400
500
600
700
800
4 9 16 25Cell size
Tota
l num
ber o
f Tx
mes
sage
s
HTDC IDC
Figure 5.12: Total number of transmissions versus cell size.
negligible.
150
5.7 Summary
Mobile data sinks have been proposed in the literature as a solution for data collection
to balance the energy consumption among the sensor nodes and improve the network
lifetime. In this chapter, we have presented HTDC, which leverages mobile sinks to
significantly extend the lifetime of the sensor network through the use of a two-tier
geographic hash table. Our proposed mobility model moves the sink node only upon
the occurrence of an event according to the evolution of current events to minimize
the energy consumption incurred by the multi-hop transmission of the event-data.
Data is collected via single-hop routing. Simulation results demonstrate significant
gains in energy savings for various parameter values.
151
6
Conclusions and Future Work
Wireless sensor networks with battery-powered sensor nodes are intended to oper-
ate in an unattended manner for surveillance and monitoring applications. New lo-
calization techniques provide sensor nodes with accurate location information. This
location information can be leveraged to design energy-efficient protocols for informa-
tion management in wireless sensor networks. The techniques proposed in this thesis
have addressed the problems of self-organization and adaptive reorganization, energy-
efficient flooding, energy-efficient service differentiation and effective data collection
in sensor networks by effectively leveraging the location information. The results of
this thesis provide an energy-efficient infrastructure for information management in
sensor networks.
6.1 Thesis Contributions
Chapter 2 presented the scalable Self Configuration and Adaptive RE-configuration
(SCARE) algorithm for self organization that distributes the set of nodes in the
sensor network into subsets of coordinator nodes and non-coordinator nodes. While
coordinator nodes stay awake, provide coverage, and perform multi-hop routing in
152
the network, non-coordinator nodes go to sleep. When nodes fail, SCARE adaptively
re-configures the network by selecting appropriate non-coordinator nodes to become
coordinators and take over the role of failed coordinators. This scheme only needs
local topology information and uses simple data structures in its implementation.
We have presented simulation results that demonstrate the advantages of SCARE
over a random duty cycle topology management scheme as well as the previously
proposed Span method for ad hoc networks.
Chapter 3 presented an energy-efficient flooding algorithm termed Location-Aided
Flooding (LAF) that exploits the location information available to sensor nodes to
prolong the lifetime of sensor network by reducing the redundant receptions and
transmissions that are inherent in flooding. This approach uses the concept of vir-
tual grids to divide the monitored area and nodes then self-assemble into groups of
gateway nodes and internal nodes. We proved the completeness of LAF as a flooding
mechanism and analyze the energy savings provided by LAF. Simulation results are
presented that show considerable energy savings by using the proposed algorithm.
Chapter 4 presented a data delivery scheme for delay-sensitive traffic called Sen-
siQos that leverages the inherent properties of the data generated by events in a
sensor network such as spatial and temporal correlation and realizes energy savings
through application-specific in-network aggregation of the data. SensiQos maxi-
mizes the energy savings by adaptively waiting for packets from upstream nodes to
perform in-network processing without missing the real-time deadline of the data
packets. Simulation results have been presented to demonstrate the effectiveness of
the distributed algorithm.
Finally, Chapter 5 presented two tier distributed hash table based scheme for
data collection termed HTDC that leverages mobile sinks to significantly extend the
lifetime of the sensor network. HTDC provides excellent load balancing capabilities
to the data collection process. The HTDC mobility model moves the sink node only
153
upon the occurrence of an event according to the evolution of current events, so as
to minimize the energy consumption incurred by the multi-hop transmission of the
event-data. Data is collected via single-hop routing. Simulation results demonstrate
significant gains in energy savings, while keeping the latency and the communication
overhead at very satisfactory levels under a variety of network conditions.
In summary, this thesis has introduced several new techniques that leverage lo-
cation information effectively for self-organization, data dissemination, service dif-
ferentiation and data collection in sensor networks. These techniques are scalable,
they improve network lifetime, and they facilitate unattended and robust operation
in harsh and hostile environments. It is expected that the results of this thesis will
lead to even more innovative approaches that will leverage location information for
energy-efficient protocol design in sensor networks.
6.2 Future Work
This thesis gives rise to a number of important research directions. Here we list
extensions to the thesis that leverage location information for infrastructure devel-
opment in sensor networks.
6.2.1 Energy-Efficient Reliability for Correlated Data
Wireless links in sensor networks are highly unreliable. Furthermore, sensor networks
rely on multi-hop forwarding for routing data packets. Error accumulates exponen-
tially over multiple hops in an unreiable wireless medium. Besides, sensor nodes
can fail due to several reasons including loss of battery power and environmental
destruction. Therefore, sensor networks need a transport protocol that can reliably
transport data.
State-of-the-art reliability schemes [8] [113] [82] [51] for sensor networks have
been proposed to solve the problem of per-hop reliability and end-to-end reliability.
154
In hop-level reliability methods, error recovery is initiated at each hop between the
sender and the receiver either through an ACK (acknowledgement packet) or NACK
(Negative Acknowledgement) packet. In end-to-end reliability methods, error re-
covery is initiated by the destination node by sending a retransmission request to
the sender. In [28], each packet is sent over multiple paths towards the destination
to provide reliability for the data packets. However, initiating hop-by-hop recovery
schemes for all the multi-paths consumes a lot of energy and is not energy-efficient.
This thesis can pave the way for an approach that adapts the reliability of each
packet as information regarding the spatial and temporal correlation among data
packets is detected in the network. In this approach, source nodes as well as relay
nodes detect the correlation among data packets and update the desired probability
appropriately. This will result in variation in the number of packets propagated
via multi-path routing, and therefore improves the energy-efficiency of the reliability
schemes.
6.2.2 Real-Time Data Collection Protocol: RT-HTDC
In Chapter 3, we have presented a new protocol for data collection in wireless sensor
networks. However, we have only considered non-real-time traffic in event-driven
wireless sensor networks. A more realistic problem is data collection when a mixture
of real-time traffic and non real-time traffic is present in the sensor network. We
outline here a generic data collection approach for real-time as well as non real-time
traffic in wireless sensor networks using two-tier geographic hash table.
A major part of the data collection delay in HTDC occurs due to the relatively
slow speed of mobile sinks compared to the data packet movement in the network.
For real-time traffic, such long delays may not be acceptable. To solve this problem,
we can use a hybrid approach where multi-hop routing can be used to route real-
time data packets toward the mobile sink whereas non real-time data can be collected
155
B
C
A
Event
Figure 6.1: Data collection request.
using HTDC. As shown in Fig. 6.1, each source node with real-time data forwards
the data collection request (DCR) to the LEAN node in its cell. LEAN node then
forwards the DCR request to the mobile sink node. If the mobile sink is present in its
location, it responds with a data collection route reply (DCRR) packet that notifies
the source node to send the data packets directly to the mobile sink location. If the
mobile sink is not present at its location and is currently servicing a data collection
request in another cell, the mobile sink agent home node sends the DCRR packet
with the cell id where the mobile sink is currently located. Source node that has
received the DCRR packet sends the data packets directly to the LEAN nodes of the
corresponding cell.
156
Bibliography
[1] Recursive position estimation in sensor networks. In ICNP ’01: Proceedings ofthe Ninth International Conference on Network Protocols, page 35, Washing-ton, DC, USA, 2001. IEEE Computer Society.
[2] IEEE standard for information technology - telecommunications and informa-tion exchange between systems - local and metropolitan area networks - specificrequirements part 11: Wireless lan medium access control (mac) and physicallayer (phy) specifications amendment 8: Medium access control (mac) qualityof service enhancements. IEEE Std 802.11e-2005 (Amendment to IEEE Std802.11, 1999 Edition (Reaff 2003), pages 1–189, 2005.
[3] K. Akkaya and M. Younis. An energy-aware qos routing protocol for wirelesssensor networks. In ICDCSW ’03: Proc. 23rd Intl. Conf. Distributed Comput-ing Systems, 2003.
[4] J. Albowicz, A. Chen, and L. Zhang. Recursive position estimation in sensornetworks. In Proc. Intl. Conf. Network Protocols, pages 35–41, 2001.
[5] G. Barriac, R. Mudumbai, and U. Madhow. Distributed beamforming forinformation transfer in sensor networks. In Proceedings of the 3rd internationalsymposium on Information processing in sensor networks, pages 81–88. ACMNew York, NY, USA, 2004.
[6] S. Basagni. Distributed clustering for ad hoc networks. In ISPAN ’99: Pro-ceedings of the 1999 International Symposium on Parallel Architectures, Al-gorithms and Networks (ISPAN ’99), page 310, Washington, DC, USA, 1999.IEEE Computer Society.
[7] R. Benkoczi, H. Hassanein, S. Akl, and S. Tai. Qos for data relaying in hierar-chical wireless sensor networks. In Q2SWinet ’05: Proceedings of the 1st ACMinternational workshop on Quality of service & security in wireless and mobilenetworks, pages 47–54, New York, NY, USA, 2005. ACM.
157
[8] J. P. Benson, T. O’Donovan, C. J. Sreenan, and U. Roedig. Reliability controlfor aggregation in wireless sensor networks. lcn, 0:833–840, 2007.
[9] P. Bergamo and G. Mazzini. Localization in sensor networks with fading andmobility. In IEEE PIMRC, pages 750–754, 2002.
[10] P. K. Birman, M. Hayden, O. Ozkasap, Z. Xiao, M. Budiu, and Y. Minsky.Bimodal multicast. ACM Trans. Comput. Syst., 17(2):41–88, 1999.
[11] U. Bischoff, M. Strohbach, M. Hazas, and G. Kortuem. Constraint-based dis-tance estimation in adhoc wireless sensor networks. In in 3 rd European Work-shop on Wireless Sensor Networks, EWSN 2006, pages 13–15, 2006.
[12] J. Broch, D. A. Maltz, D. B. Johnson, Y. C. Hu, and J. Jetcheva. A perfor-mance comparison of multi-hop wireless ad hoc network routing protocols. InMobiCom ’98: Proceedings of the 4th annual ACM/IEEE international confer-ence on Mobile computing and networking, pages 85–97, New York, NY, USA,1998. ACM.
[13] N. Bulusu, J. Heidemann, and D. Estrin. Gps-less low-cost outdoor localizationfor very small devices. Personal Communications, IEEE, 7(5):28–34, Oct 2000.
[14] A. Cerpa, J. Elson, M. Hamilton, J. Zhao, D. Estrin, and Lewis Girod. Habi-tat monitoring: application driver for wireless communications technology. InACM Workshop on Data communication in Latin America and the Caribbean,2001.
[15] A. Cerpa and D. Estrin. Ascent: Adaptive self-configuring sensor networkstopologies. IEEE Transactions on Mobile Computing, 3(3):272–285, 2004.
[16] I. Chatzigiannakis, A. Kinalis, S. Nikoletseas, and J. Rolim. Fast and energyefficient sensor data collection by multiple mobile sinks. In MobiWac ’07:Proceedings of the 5th ACM international workshop on Mobility managementand wireless access, pages 25–32, New York, NY, USA, 2007. ACM.
[17] B. Chen, K. Jamieson, H. Balakrishnan, and R. Morris. Span: an energy-efficient coordination algorithm for topology maintenance in ad hoc wirelessnetworks. Wirel. Netw., 8(5):481–494, 2002.
[18] H. Chen, H. Mineno, and T. Mizuno. Adaptive data aggregation scheme in clus-tered wireless sensor networks. Comput. Commun., 31(15):3579–3585, 2008.
158
[19] P. Y. Chen, W. T. Chen, C. H. Wu, Y. C. Tseng, and C. F. Huang. A grouptour guide system with RFIDs and wireless sensor networks. In Proceedings ofthe 6th international conference on Information processing in sensor networks,pages 561–562. ACM New York, NY, USA, 2007.
[20] K. Chintalapudi, T. Fu, J. Paek, N. Kothari, S. Rangwala, J. Caffrey, R. Govin-dan, E. Johnson, and S. Masri. Monitoring civil structures with a wirelesssensor network. IEEE Internet Computing, 10(2):26–34, 2006.
[21] Atmel Corporation. GPS Products.
[22] F. Dargahi, A.M. Rahmani, and S. Jabehdari. NodesCredit based DirectedDiffusion for wireless sensor networks.
[23] S. De, A. Caruso, T. Chaira, and S. Chessa. Bounds on hop distance in greedyrouting approach in wireless ad hoc networks. International Journal of Wirelessand Mobile Computing, 1(2):131–140, 2006.
[24] B. Deb, S. Bhatnagar, and B. Nath. Reinform: reliable information forwardingusing multiple paths in sensor networks. Local Computer Networks, 2003. LCN’03. Proceedings. 28th Annual IEEE International Conference on, pages 406–415, Oct. 2003.
[25] A. Demers, D. Greene, C. Hauser, W. Irish, J. Larson, S. Shenker, H. Stur-gis, D. Swinehart, and D. Terry. Epidemic algorithms for replicated databasemaintenance. In PODC ’87: Proceedings of the sixth annual ACM Symposiumon Principles of distributed computing, pages 1–12, New York, NY, USA, 1987.ACM.
[26] A. G. Dimakis, A. D. Sarwate, and M. J. Wainwright. Geographic gossip:efficient aggregation for sensor networks. In IPSN ’06: Proc. Fifth Intl. Conf.Information Processing in Sensor Networks, pages 69–76, 2006.
[27] D. England, B. Veeravalli, and J. B. Weissman. A robust spanning tree topol-ogy for data collection and dissemination in distributed environments. Paralleland Distributed Systems, IEEE Transactions on, 18(5):608–620, May 2007.
[28] E. Felemban, C. Lee, and E. Ekici. Mmspeed: Multipath multi-speed protocolfor qos guarantee of reliability and timeliness in wireless sensor networks. IEEETransactions on Mobile Computing, 5(6), 2006.
[29] J. Gao, L. Guibas, N. Milosavljevic, and J. Hershberger. Sparse data aggre-gation in sensor networks. In IPSN ’07: Proc. 6th Intl. Conf. InformationProcessing in Sensor Networks, pages 430–439, 2007.
159
[30] B. Gedik, L. Liu, and P. S. Yu. Asap: An adaptive sampling approach todata collection in sensor networks. Parallel and Distributed Systems, IEEETransactions on, 18(12):1766–1783, Dec. 2007.
[31] M. Gerla and J. T. C. Tsai. Multicluster, mobile, multimedia radio network.Wirel. Netw., 1(3):255–265, 1995.
[32] L. Girod and D. Estrin. Robust range estimation for localization in ad hocsensor networks. UCLA CS-TR-2000XX, 2000.
[33] L. Girod and D. Estrin. Robust range estimation using acoustic and multimodalsensing. Intelligent Robots and Systems, 2001. Proceedings. 2001 IEEE/RSJInternational Conference on, 3:1312–1320 vol.3, 2001.
[34] J. M. Glasgow, G. Thomas, E. Pudenz, N. Cabrol, D. Wettergreen, and P. Cop-pin. Optimizing information value: Improving rover sensor data collection.Systems, Man and Cybernetics, Part A, IEEE Transactions on, 38(3):593–604,May 2008.
[35] C. U. Grosse and M. Kriiger. Structural health monitoring in civil engi-neeringapplications using wireless sensor networks. Emerging Technologies inNDT, page 313, 2008.
[36] H. Gupta, Z. Zhou, S. R. Das, and Q. Gu. Connected sensor cover: self-organization of sensor networks for efficient query execution. IEEE/ACMTrans. Netw., 14(1):55–67, 2006.
[37] J. Z. Haas, Y. J. Halpern, and L. Li. Gossip-based ad hoc routing. IEEE/ACMTrans. Netw., 14(3):479–491, 2006.
[38] S. Hanoun, D. Creighton, and S. Nahavandi. Decentralized mobility models fordata collection in wireless sensor networks. Robotics and Automation, 2008.ICRA 2008. IEEE International Conference on, pages 1030–1035, May 2008.
[39] T. He, J. Stankovic, C. Lu, and T. Abdelzaher. Speed: A stateless proto-col for real-time communication in sensor networks. Proc. IEEE Intl. Conf.Distributed Computing Systems., 17(8):46–55.
[40] J. Hill. Spec mote.
[41] B. Hoffman-Wellenhof, H. Lichteneger, and J. Collins. Global Positioning Sys-tem: Theory and Practice. Springer-Verilag, fourth edition.
160
[42] B. Hofmann-Wellenhof, H. Lichtenegger, and J. Collins. Global PositioningSystem: Theory and Practice. Springer-Verlag, 1997.
[43] Y. Hu, N. Yu, and X. Jia. Energy efficient real-time data aggregation inwireless sensor networks. In IWCMC ’06: Proceeding of the 2006 internationalconference on Communications and mobile computing, 2006.
[44] X. Huang and Y. Fang. Multi-constrained soft-qos provisioning in wirelesssensor networks. In QShine ’06: Proceedings of the 3rd international conferenceon Quality of service in heterogeneous wired/wireless networks, volume 191,page 14, 2006.
[45] X. Huang and Y. Fang. Multiconstrained qos multipath routing in wirelesssensor networks. Wirel. Netw., 14(4):465–478, 2008.
[46] C. Huitema. Routing in the Internet. Prentice-Hall, Inc. Upper Saddle River,NJ, USA, 1995.
[47] Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Spec-ifications. IEEE Standard 802.11, June 1999.
[48] R.F.M. Inc. Ash transceiver designers guide, 2003.
[49] C. Intanagonwiwat, R. Govindan, D. Estrin, J. Heidemann, and F. Silva. Di-rected diffusion for wireless sensor networking. IEEE/ACM Trans. Netw.,11(1):2–16, 2003.
[50] SEMATECH International. SEMSTAT.
[51] A. Barroso J. Benson, U. Roedig and C. J. Sreenan. On the effects of ag-gregation on reliability in sensor networks. In VTC2007: Proceedings of 65thVehicular Technology Conference, New York, NY, USA, 2007. IEEE ComputerSociety Press.
[52] J. Jetcheva, Y. Hu, D. Maltz, and D. Johnson. A Simple Protocol for Multicastand Broadcast in Wireless Ad Hoc Networks. Technical report, Internet Draft:draft-ietf-manet-simple-mbcast-01. txt, July 2001.
[53] L. Jia, G. Noubir, R. Rajaraman, and R. Sundaram. Gist: Group-independentspanning tree for data aggregation in dense sensor networks. Int. Conf. Dis-tributed Computing in Sensor Systems, pages 282–304.
161
[54] D. B. Johnson and D. A. Maltz. Dynamic Source Routing in Ad Hoc WirelessNetworks. KLUWER INTERNATIONAL SERIES IN ENGINEERING ANDCOMPUTER SCIENCE, pages 153–179, 1996.
[55] L. Nalini Joseph and G. V. Uma. An Energy Efficient Adaptive Location AidedFlooding Protocol for Wireless Sensor Networks. Asian Journal of InformationTechnology, pages 1485–1491, 2006.
[56] J. M. Kahn, R. H. Katz, and K. S. J. Pister. Next century challenges: mo-bile networking for “smart dust”. In MobiCom ’99: Proceedings of the 5thannual ACM/IEEE international conference on Mobile computing and net-working, pages 271–278, New York, NY, USA, 1999. ACM.
[57] S. Kim, S. Pakzad, D. Culler, J. Demmel, G. Fenves, S. Glaser, and M. Turon.Structural Health Monitoring of Golden Gate Bridge (using MEMS accelerom-eters). In International Conference on Information Processing in Sensor Net-works (IPSN07), Cambridge, MA, 2007.
[58] A. Kinalis and S. Nikoletseas. Scalable data collection protocols for wirelesssensor networks with multiple mobile sinks. Simulation Symposium, 2007.ANSS ’07. 40th Annual, pages 60–72, March 2007.
[59] Y. B. Ko and N. H. Vaidya. Location-aided routing (lar) in mobile ad hocnetworks. Wirel. Netw., 6(4):307–321, 2000.
[60] P. Krishna, N. H. Vaidya, M. Chatterjee, and D. K. Pradhan. A cluster-basedapproach for routing in dynamic networks. SIGCOMM Comput. Commun.Rev., 27(2):49–64, 1997.
[61] L. Krishnamachari, D. Estrin, and S. Wicker. The impact of data aggregationin wireless sensor networks. In Distributed Computing Systems Workshops,2002. Proceedings. 22nd International Conference on, pages 575–578, 2002.
[62] R. Krishnan and D. Starobinski. Message-efficient self-organization of wirelesssensor networks. Wireless Communications and Networking, 2003. WCNC2003. 2003 IEEE, 3:1603–1608 vol.3, March 2003.
[63] J. Kulik, W. Heinzelman, and H. Balakrishnan. Negotiation-based proto-cols for disseminating information in wireless sensor networks. Wirel. Netw.,8(2/3):169–185, 2002.
[64] C. Kuo, X. Liang, T. Davis, and P. Yu. Application of Wireless Sensor Networksto measure the plant and soil characteristics within the transpiration process.
162
In American Geophysical Union, Fall Meeting 2007, abstract# B33D-1576,2007.
[65] B. Kusy, A. Ledeczi, M. Maroti, and L. Meertens. Node density independentlocalization. In IPSN ’06: Proceedings of the 5th international conference onInformation processing in sensor networks, pages 441–448, New York, NY,USA, 2006. ACM.
[66] A. Lachenmann, P. J. Marron, M. Gauger, D. Minder, O. Saukh, andK. Rothermel. Removing the memory limitations of sensor networks withflash-based virtual memory. SIGOPS Oper. Syst. Rev., 41(3):131–144, 2007.
[67] H. Li, H. Yu, L. Li, and A. Liu. On the cascading data collection mecha-nism in wireless sensor networks. Wireless Communications, Networking andMobile Computing, 2007. WiCom 2007. International Conference on, pages2479–2482, Sept. 2007.
[68] W. H. Liao, Y. Kao, and C. M. Fan. Data aggregation in wireless sensornetworks using ant colony algorithm. J. Netw. Comput. Appl., 31(4):387–401,2008.
[69] H. Lim and C. Kim. Multicast tree construction and flooding in wireless ad hocnetworks. In MSWIM ’00: Proceedings of the 3rd ACM international workshopon Modeling, analysis and simulation of wireless and mobile systems, pages 61–68, New York, NY, USA, 2000. ACM.
[70] C. Liu, K. Wu, and J. Pei. An energy-efficient data collection framework forwireless sensor networks by exploiting spatiotemporal correlation. Parallel andDistributed Systems, IEEE Transactions on, 18(7):1010–1023, July 2007.
[71] H. Liu, Z. Meng, and S. Cui. A wireless sensor network prototype for envi-ronmental monitoring in greenhouses. In Wireless Communications, Network-ing and Mobile Computing, 2007. WiCom 2007. International Conference on,pages 2344–2347, 2007.
[72] J. Liu, M. Chu, and J. E. Reich. Resource-Aware Multi-Target Tracking inDistributed Sensor Networks. IEEE Signal Processing Magazine Special Issueon Resource-Constrained Signal Processing, Communications, and Networking,2007.
[73] S. Liu and L. Cheng. Local Tree Based Geometric Routing. In Communi-cations, 2007. ICC’07. IEEE International Conference on, pages 5478–5483,2007.
163
[74] M. Lotfinezhad, B. Liang, and E. S. Sousa. Adaptive cluster-based data collec-tion in sensor networks with direct sink access. IEEE Transactions on MobileComputing, 7(7):884–897, 2008.
[75] I. Mahadevan and K. M. Sivalingam. Quality of Service architectures for wire-less networks: IntServ andDiffServ models. In Parallel Architectures, Algo-rithms, and Networks, 1999.(I-SPAN’99) Proceedings. Fourth International-Symposium on, pages 420–425, 1999.
[76] R. Min, M. Bhardwaj, S. Cho, E. Shih, and A. Sinha. Low-power wirelesssensor networks. In In VLSI Design, pages 205–210, 2001.
[77] S. Y. Na, D. Shin, S. M. Ali, J. Y. Kim, S. J. Baek, H. T. Park, and S. Ko-rea. Design and implementation of a service robot system based on ubiquitoussensor networks. In Proceedings of the 6th WSEAS International Conferenceon Signal Processing, Robotics and Automation table of contents, pages 171–176. World Scientific and Engineering Academy and Society (WSEAS) StevensPoint, Wisconsin, USA, 2007.
[78] S. Y. Ni, Y. C. Tseng, Y. S. Chen, and J. P. Sheu. The broadcast stormproblem in a mobile ad hoc network. In MobiCom ’99: Proceedings of the 5thannual ACM/IEEE international conference on Mobile computing and net-working, pages 151–162, New York, NY, USA, 1999. ACM.
[79] H. Ochiai, P. Mitran, H. V. Poor, and V. Tarokh. Collaborative beamformingfor distributed wireless ad hoc sensor networks. IEEE Transactions on SignalProcessing, 53(11):4110–4124, 2005.
[80] D. C. Oppen and Y. K. Dalal. The clearinghouse: a decentralized agent forlocating named objects in a distributed environment. ACM Trans. Inf. Syst.,1(3):230–253, 1983.
[81] N. Ouferhat and A. Mellouck. Qos dynamic routing for wireless sensor net-works. In Q2SWinet ’06: Pro. 2nd ACM Intl. Workshop on Quality of service& Security for Wireless and Mobile Networks, pages 45–50, 2006.
[82] S. J. Park, R. Vedantham, R. Sivakumar, and I. F. Akyildiz. A scalable ap-proach for reliable downstream data delivery in wireless sensor networks. InMobiHoc ’04: Proceedings of the 5th ACM international symposium on Mobilead hoc networking and computing, pages 78–89, New York, NY, USA, 2004.ACM.
164
[83] N. Patwari and R. J. O’Dea. Relative location in wireless networks. In Proc.IEEE Vehicular Technology Conference, pages 1149–1153, 1991.
[84] N. Patwari, R. J. O’Dea, and Y. Wang. Relative location in wireless networks.Vehicular Technology Conference, 2001. VTC 2001 Spring. IEEE VTS 53rd,2:1149–1153 vol.2, 2001.
[85] A. Pelc. Fault-tolerant broadcasting and gossiping in communication networks.Networks, 28(3):143–156, 1996.
[86] W. Peng and X. C. Lu. On the reduction of broadcast redundancy in mobile adhoc networks. In MobiHoc ’00: Proceedings of the 1st ACM international sym-posium on Mobile ad hoc networking & computing, pages 129–130, Piscataway,NJ, USA, 2000. IEEE Press.
[87] A. Perrig, J. Stankovic, and D. Wagner. Security in wireless sensor networks.2004.
[88] G. J. Pottie and W. J. Kaiser. Wireless integrated network sensors. Commu-nications of the ACM, 43(5):51–58, 2000.
[89] T. V. Prabhakar, N. V. C. Rao, M. S. Sujay, J. Panchard, H. S. Jamadagni,and A. Pittet. Sensor Network Deployment For Agronomical Data Gatheringin Semi-Arid Regions. In 2 nd International Conference on CommunicationSystems Software and Middleware, pages 7–12, 2007.
[90] A. Qayyum, L. Viennot, and A. Laouiti. Multipoint relaying for flooding broad-cast messages in mobile wireless networks. In HICSS ’02: Proceedings of the35th Annual Hawaii International Conference on System Sciences (HICSS’02)-Volume 9, page 298, Washington, DC, USA, 2002. IEEE Computer Society.
[91] J. Rao, T. Wu, and S. Biswas. NET 30-2-Network-Assisted Sink NavigationProtocols for Data Harvesting in Sensor Networks. In IEEE Wireless Commu-nications and Networking Conference, 2008. WCNC 2008, pages 2887–2892,2008.
[92] A. Rasheed and R. Mahapatra. Secure data collection scheme in wireless sensornetwork with mobile sink. Network Computing and Applications, 2008. NCA’08. Seventh IEEE International Symposium on, pages 332–340, July 2008.
[93] S. Ratnasamy, B. Karp, L. Yin, F. Yu, D. Estrin, R. Govindan, and S. Shenker.Ght: a geographic hash table for data-centric storage. In WSNA ’02: Proceed-ings of the 1st ACM international workshop on Wireless sensor networks andapplications, pages 78–87, New York, NY, USA, 2002. ACM.
165
[94] Y. Sankarasubramaniam, O. B. Akan, and I. F. Akyildiz. Esrt: event-to-sinkreliable transport in wireless sensor networks. In MobiHoc ’03: Proceedings ofthe 4th ACM international symposium on Mobile ad hoc networking & com-puting, pages 177–188, New York, NY, USA, 2003. ACM.
[95] A. Savvides, C. C. Han, and M. Srivastava. Dynamic fine-grained localizationin ad hoc networks of sensors. In Proc. Intl. Conf. Mobile Computing andNetworking, pages 166–179, 2001.
[96] N. Saxena, A. Roy, and J. Shin. Dynamic duty cycle and adaptive contentionwindow based qos-mac protocol for wireless multimedia sensor networks. Com-put. Netw., 52(13):2532–2542, 2008.
[97] C. Schurgers, V. Tsiatsis, and M. B. Srivastava. Stem: Topology managementfor energy efficient sensor networks. Aerospace Conference Proceedings, 2002.IEEE, 3:3–1099–3–1108 vol.3, 2002.
[98] S. Singh and C. S. Raghavendra. Pamas—power aware multi-access protocolwith signalling for ad hoc networks. SIGCOMM Comput. Commun. Rev.,28(3):5–26, 1998.
[99] A. Sobeih, J. C. Hou, L. C. Kung, N. Li, H. Zhang, W. P. Chen, H. Y. Tyan,and H. Lim. J-sim: A simulation and emulation environment for wireless sensornetworks. Wireless Communications, IEEE, 13(4):104–119, 2006.
[100] K. Sohrabi and G. J. Pottie. Performance of a novel self-organization protocolfor wireless ad-hoc sensor networks. Vehicular Technology Conference, 1999.VTC 1999 - Fall. IEEE VTS 50th, 2:1222–1226 vol.2, 1999.
[101] R. Stoleru, T. He, J. A. Stankovic, and D. Luebke. A high-accuracy, low-costlocalization system for wireless sensor networks. In SenSys ’05: Proc. 3rd Intl.Conf. Embedded Networked Sensor Systems, pages 13–26, 2005.
[102] X. Tang and J. Xu. Adaptive data collection strategies for lifetime-constrainedwireless sensor networks. Parallel and Distributed Systems, IEEE Transactionson, 19(6):721–734, June 2008.
[103] G. Tolle. Sonoma redwoods data. http://www.cs.berkeley.edu/get/sonoma,2005.
[104] E. Toscano, O. Mirabella, and L. L. Bello. An energy-efficient real-time com-munication framework for wireless sensor networks. In RTN ’07: Proceedingsof the 6th International Workshop on Real-Time Networks, pages 60–69, 2007.
166
[105] K. S. Trivedi. Probability and statistics with reliability, queuing and computerscience applications. John Wiley and Sons Ltd., Chichester, UK, UK, 2002.
[106] N. Trivedi, S. S. Iyengar, and N. Balakrishnan. ‘Ripples’: message-efficient,coverage-aware clustering in wireless sensor and actor networks. Int. J. Com-mun. Netw. Distrib. Syst., 2(1):112–134, 2009.
[107] E. Uysal-Biyikoglu and A. Keshavarzian. Throughput achievable with no re-laying in a mobile interference network. In ISCC ’03: Proceedings of the EighthIEEE International Symposium on Computers and Communications, page 641,Washington, DC, USA, 2003. IEEE Computer Society.
[108] M. Vahabi, M. F. A. Rasid, G. M. F. Hossein, and R. S. A. R. Abdullah.Adaptive mac protocol for wireless sensor networks in periodic data collec-tion applications. Information Technology, 2008. ITSim 2008. InternationalSymposium on, 4:1–8, Aug. 2008.
[109] A. C. Viana, M. D. Amorim, S. Fdida, and J. F. Rezende. Indirect routingusing distributed location information. ACM Wireless Networks, 10(6):747–758, 2004.
[110] Z. Vincze, D. Vass, R. Vida, A. Vidacs, and A. Telcs. Adaptive sink mobility inevent-driven multi-hop wireless sensor networks. In InterSense ’06: Proceedingsof the first international conference on Integrated internet ad hoc and sensornetworks, page 13, New York, NY, USA, 2006. ACM.
[111] P. von Rickenbach and R. Wattenhofer. Gathering correlated data in sensornetworks. In DIALM-POMC ’04: Proc. 2004 Joint Workshop on Foundationsof Mobile Computing, 2004.
[112] H. Wada, P. Boonma, and J. Suzuki. Macroprogramming Spatio-temporalEvent Detection and Data Collection in Wireless Sensor Networks: An Imple-mentation and Evaluation Study. In Proceedings of the Proceedings of the 41stAnnual Hawaii International Conference on System Sciences. IEEE ComputerSociety Washington, DC, USA, 2008.
[113] C. Y. Wan, A. T. Campbell, and L. Krishnamurthy. Psfq: a reliable transportprotocol for wireless sensor networks. In WSNA ’02: Proceedings of the 1stACM international workshop on Wireless sensor networks and applications,pages 1–11, New York, NY, USA, 2002. ACM.
[114] D. Wang, J. Xu, J. Liu, and F. Wang. Mobile filtering for error-bounded datacollection in sensor networks. Distributed Computing Systems, 2008. ICDCS’08. The 28th International Conference on, pages 530–537, June 2008.
167
[115] D. Wang, Q. Zhang, and J. Liu. Partial network coding: Concept, performance,and application for continuous data collection in sensor networks. ACM Trans.Sen. Netw., 4(3):1–22, 2008.
[116] J. Wang, D. Li, M. Zhou, and D. Ghosal. Data collection with multiple mobileactors in underwater sensor networks. Distributed Computing Systems Work-shops, 2008. ICDCS ’08. 28th International Conference on, pages 216–221,June 2008.
[117] G. Werner-Allen, K. Lorincz, M. Ruiz, O. Marcillo, J. Johnson, J. Lees, andM. Welsh. Deploying a wireless sensor network on an active volcano. IEEEInternet Computing, 10(2):18–25, 2006.
[118] K. Whitehouse and D. Culler. Calibration as parameter estimation in sensornetworks. In WSNA ’02: Proceedings of the 1st ACM international workshopon Wireless sensor networks and applications, pages 59–67, New York, NY,USA, 2002. ACM.
[119] K. Whitehouse and D. Culler. Calibration as parameter estimation in sen-sor networks. In Proc. First ACM Intl. Workshop of Sensor Networks andApplications, pages 59–67, 2002.
[120] J. Wu and F. Dai. Broadcasting in ad hoc networks based on self-pruning. InINFOCOM 2003. Twenty-Second Annual Joint Conference of the IEEE Com-puter and Communications Societies. IEEE, volume 3.
[121] J. Wu and F. Dai. Broadcasting in ad hoc networks based on self-pruning.INFOCOM 2003. Twenty-Second Annual Joint Conference of the IEEE Com-puter and Communications Societies. IEEE, 3:2240–2250 vol.3, March-3 April2003.
[122] S. Xiao, A. Dhamdhere, V. Sivaraman, and A. Burdett. Transmission PowerControl in Body Area Sensor Networks for Healthcare Monitoring. IEEE Jour-nal on Selected Areas in Communications, 27(1):37–48, 2009.
[123] Y. Xu, J. Heidemann, and D. Estrin. Adaptive energy-conserving routing formultihop ad hoc networks. Research Report 527, USC/Information SciencesInstitute, 2000.
[124] Y. Xu, J. Heidemann, and D. Estrin. Geography-informed energy conservationfor ad hoc routing. In MobiCom ’01: Proceedings of the 7th annual inter-national conference on Mobile computing and networking, pages 70–84, NewYork, NY, USA, 2001. ACM.
168
[125] Y. Yu, R. Govindan, and D. Estrin. Geographical and energy aware routing: Arecursive data dissemination protocol for wireless sensor networks. Technicalreport, 2001.
[126] W. Yuan, S. Krishnamurthy, and S. K. Tripathi. Synchronization of multiplelevels of data fusion in wireless sensor networks. In Proc. IEEE Globecom,volume 1, pages 221–225, 2003.
[127] X. Zhang, H. Wang, A. K. R. Ansari, and G. Chen. Distortion analysis forreal-time data collection of correlated fields in randomly distributed sensornetworks. Communications, 2008. ICC ’08. IEEE International Conferenceon, pages 2211–2215, May 2008.
[128] Y. Zhu, K. Sundaresan, and R. Sivakumar. Practical limits on achievableenergy improvements and useable delay tolerance in correlation aware datagathering in wireless sensor networks. In SECON, September 2005.
[129] A. Zollinger. Geographic Routing. LECTURE NOTES IN COMPUTER SCI-ENCE, 4621:161, 2007.
169
Biography
Harshavardhan Sabbineni was born on August 4th, 1978 in Repalle, India. He re-
ceived his B.Tech (Hons) in Electrical Engineering from Indian Institute of Tech-
nology, Kharagpur, India in 2000 and M.S in Electrical and Computer Engineering
from Duke University in 2004. He is currently working as a Member of Technical
Staff at Oracle, Inc. His research interests include mobile networks, sensor networks
and distributed systems. His Ph.D thesis explores the use of location information for
designing energy-efficient protocols for information dissemination in wireless sensor
networks.
170