Title: Introduction to Wireless Sensor Networks
1Introduction to Wireless Sensor
Networks -Research Problems (Clustering,
Routing, etc)
2Energy-Efficient Communication Protocol
Architecture for Wireless Microsensor Networks
(LEACH Protocol) Heinzelman 2000, 2002
- LEACH (Low-Energy Adaptive Clustering Hierarchy)
is a clustering-based protocol that utilizes the
randomized rotation of local cluster base
stations to evenly distribute the energy load
within the network of sensors - It is a distributed, does not require any control
information from base station (BS) and the nodes
do not need to have knowledge of global network
for LEACH to function - The energy saving of LEACH is achieved by
combining compression with data routing - Key features of LEACH include
- Localized coordination and control of cluster
set-up and operation - Randomized rotation of the cluster base stations
or clusterheads and their clusters - Local compression of information to reduce global
communication
3LEACH Heinzelman 2000, 2002
- Considered microsensor network has the following
characteristics - The base station is fixed and located far from
the sensors - All the sensor nodes are homogeneous and energy
constrained - Communication between sensor nodes and the base
station is expensive and no high energy nodes
exist to achieve communication - By using clusters to transmit data to the BS,
only few nodes need to transmit for larger
distances to the BS while other nodes in each
cluster use small transmit distances - LEACH achieves superior performance compared to
classical clustering algorithms by using adaptive
clustering and rotating clusterheads assisting
the total energy of the system to be distributed
among all the nodes - By performing load computation in each cluster,
amount of data to be transmitted to BS is
reduced. Therefore, large reduction in the energy
dissipation is achieved since communication is
more expensive than computation
4LEACH Heinzelman 2000, 2002
- Algorithm Overview
- The nodes are grouped into local clusters with
one node acting as the local base station (BS) or
clusterhead (CH) - The CHs are rotated in random fashion among the
various sensors - Local data fusion is achieved to compress the
data being sent from clusters to the BS
resulting the reduction in the energy dissipation
and increase in the network lifetime - Sensor elect themselves to be local BSs at any
any given time with a certain probability and
these CHs broadcast their status to other sensor
nodes - Each node decided which CH to join based on the
minimum communication energy - Upon clusters formation, each CH creates a
schedule for the nodes in its cluster such that
radio components of each non-clusterhead node
need to be turned OFF always except during the
transmit time - The CH aggregates all the data received from the
nodes in its cluster before transmitting the
compressed data to BS
5LEACH Heinzelman 2000, 2002
- Algorithm Overview
- The transmission between CH and BS requires high
energy transmission - In order to evenly distribute energy usage among
the sensor nodes, clusterheads are self-elected
at different time intervals - The nodes decides to become a CH depending on the
amount of energy it has left - The decisions to become CH are made
independently of the other nodes - The system can determine the optimal number of
CHs prior to election procedure based on
parameters such as network topology and relative
costs of computation vs. communication (Optimal
number of CHs considered is 5 of the nodes) - It has been observed that nodes die in a random
fashion - No communication exists between CHs
- Each node has same probability to become a CH
6LEACH Heinzelman 2000, 2002
- Algorithm Details
- The operation of LEACH is achieved by rounds
- Each round begins with a set-up phase (clusters
are selected) followed by steady-state phase
(data transmission to BS occurs) - Advertisement Phase
- Initially, each node need to decide to become a
CH for the current round based on the suggested
percentage of CHs for the network (set prior to
this phase) and the number times the node has
acted as a CH - The node (n) decides by choosing a random number
between 0 and 1 - If this random number is less than T(n), the
nodes become a CH for this round - The threshold is set as follows
P desired percentage of CHs r current
round G set of nodes that have not been
CHs in the last 1/P rounds
7LEACH Heinzelman 2000, 2002
- Algorithm Details
- 1. Advertisement Phase
- Assumptions are (i) each node starts with the
same amount of energy and (ii) each CHs consumes
relatively same amount of energy for each node - Each node elected as CH broadcasts an
advertisement message to the rest - During this clusterhead-advertisement phase,
the non-clusterhead nodes hear the ads of all CHs
and decide which CH to join - A node joins to a CH in which it hears with its
advertisement with the highest signal strength - 2. Cluster Set-Up Phase
- Each node informs its clusterhead that it will be
member of the cluster - 3. Schedule Creation
- Upon receiving all the join messages from its
members, CH creates a TDMA schedule about their
allowed transmission time based on the total
number of members in the cluster
8LEACH Heinzelman 2000, 2002
- Algorithm Details
- 4. Data Transmission
- Each node starts data transmission to their CH
based on their TDMA schedule - The radio of each cluster member nodes can be
turned OFF until their allocated transmission
time comes minimizing the energy dissipation - The CH nodes must keep its receiver ON to receive
all the data - Once all the data is received, the CH compresses
the data to send it to BS - Multiple Clusters
- In order to minimize the radio interference
between nearby clusters, each CH chooses randomly
from a list of spreading CDMA codes and it
informs its cluster members to transmit using
this code - The neighboring CHs radio signals will be
filtered out to avoid corruption in the
transmission
9An Energy Efficient Hierarchical Clustering
Algorithm for Wireless Sensor Networks Bandyopadh
yay, 2003
- Distributed, randomized clustering algorithm to
organize the sensors in a wireless sensor network
into clusters to minimize the energy used to
communicate information from all nodes to the
processing center - Hierarchy of clusterheads leads to the energy
savings - In the clustered environment, the data gathered
by the sensors is communicated to the data
processing center through a hierarchy of
clusterheads - The processing center determines the final
estimates of the parameters using information
communicated by the clusterheads - The processing center can be a specialized device
or one of the sensors - Sensor data communicated over smaller distances,
the energy consumed in the network will be much
lower than the energy consumption when every
sensor communicates directly to the information
processing center
10An Energy Efficient Hierarchical Clustering
Algorithm for Wireless Sensor Networks Bandyopadh
yay, 2003
- A New, Energy-Efficient, Single-Level Clustering
Algorithm - Each sensor becomes a clusterhead (CH) with
probability p and advertises itself as a
clusterhead to the sensors within its radio range
these clusterheads are called volunteer
clusterheads - This advertisement is forwarded to all the
sensors that are no more than k hops away from
the clusterhead - Any sensor node that is not clusterhead itself
receiving such advertisement joins the cluster of
the closest clusterhead - Any sensor node that is neither a clusterhead nor
has joined any cluster itself becomes a
clusterhead called forced clusterheads - Since the advertisement forwarding has been
limited to k hops, if a sensor does not receive a
CH advertisement within time duration t (where t
is the time required for data to reach the CH
from any sensor k hops away), it means that the
sensor node is not within k hops of any volunteer
CHs
11An Energy Efficient Hierarchical Clustering
Algorithm for Wireless Sensor Networks Bandyopadh
yay, 2003
- A New, Energy-Efficient, Single-Level Clustering
Algorithm - Therefore, the sensor node becomes a forced
clusterhead - The CH can transmit the aggregated information to
the processing center after every t units of time
since all the sensors within a cluster are at
most k hops away from the CH - The limit on the number of hops allows the CH to
reschedule their transmissions - This is a distributed algorithm and does not
demand clock synchronization between the sensors - The energy consumed for the information gathered
by the sensors to reach the processing center
will depend on the parameters p and k - Since the objective of this work is to organize
sensors in clusters to minimize the energy
consumption, values of the parameters (p and k)
must be found to ensure the goal
12An Energy Efficient Hierarchical Clustering
Algorithm for Wireless Sensor Networks Bandyopadh
yay, 2003
- A New, Energy-Efficient, Single-Level Clustering
Algorithm - Assumptions made for the optimal parameters are
as follows - The sensors are distributed as per a homogeneous
spatial Poisson process of intensity ? in
2-dimensional space - All sensors transmit at the same power level
have the same radio range r - Data exchanged between two communicating sensors
not within each others radio range is forwarded
by other sensors - A distance of d between any sensor and its CH is
equivalent to hops - Each sensor uses 1 unit of energy to transmit or
receive 1 unit of data - A routing infrastructure is in place when a
sensor communicates data to another sensor, only
the sensors on the routing path forward the data - The communication environment is contention- and
error-free sensors do not have to retransmit any
data
13An Energy Efficient Hierarchical Clustering
Algorithm for Wireless Sensor Networks Bandyopadh
yay, 2003
- A New, Energy-Efficient, Hierarchical Clustering
Algorithm - This algorithm is extension of the previous one
by allowing more than one level of clustering in
place - Assume that there are h levels in the clustering
hierarchy with level 1 being the lowest level and
level h being the highest - The sensors communicate the gathered data to
level-1 clusterheads (CHs) - The level-1 CHs aggregate this data and
communicate the aggregated data to level-2 CHs
and so on - Finally, level-h CHs communicate the aggregated
data or estimates based on this aggregated data
to the processing center
14An Energy Efficient Hierarchical Clustering
Algorithm for Wireless Sensor Networks Bandyopadh
yay, 2003
- A New, Energy-Efficient, Hierarchical Clustering
Algorithm - The cost of communicating the information from
the sensors to the processing center is the
energy consumed by the sensors to communicate the
information to level-1 CHs, plus the energy
consumed by the level-1 CHs to communicate the
aggregated data to level-2 CHs, ., plus the
energy consumed by the level-h CHs to communicate
the aggregated data to the information processing
center - Algorithm Details
- The algorithm works in a bottom-up fashion
- First, it elects the level-1 clusterheads, then
level-2 clusterheads, and so on
15An Energy Efficient Hierarchical Clustering
Algorithm for Wireless Sensor Networks Bandyopadh
yay, 2003
- A New, Energy-Efficient, Hierarchical Clustering
Algorithm - Algorithm Details
- Level-1 clusterheads are chosen as follows
- Each sensor decides to become a level-1 CH with
certain probability p1 and advertises itself as a
clusterhead to the sensors within its radio range - This advertisement is forwarded to all the
sensors within k1 hops of the advertising CH - Each sensor receiving an advertisement joins the
cluster of the closest level-1 CH the remaining
sensors become forced level-1 CHs - Level-1 CHs then elect themselves as level-2 CHs
with a certain probability p2 and broadcast
their decision of becoming a level-2 CH - This decision is forwarded to all the sensors
within k2 hops
16An Energy Efficient Hierarchical Clustering
Algorithm for Wireless Sensor Networks Bandyopadh
yay, 2003
- A New, Energy-Efficient, Hierarchical Clustering
Algorithm - Algorithm Details
- The level-1 CHs that receive the advertisement
from level-2 CHs joins the cluster of the closest
level-2 CH the remaining level-1 CHs become
forced level-2 CHs - Clusterheads at level 3, 4, 5,,h are chosen in
similar fashion with probabilities p3, p4,
p5,...,ph respectively to generate a hierarchy of
CHs, in which any level-i CH is also CH of level
(i-1), (i-2),,1.
17Directed DiffusionIntanagonwiwat 2000
- Motivated by scaling, robustness and energy
efficiency requirements - Directed diffusion is data-centric in that all
communication is for named data - Data generated by sensor nodes is named using
attribute-value pairs - All nodes in the network are application-aware
- A node requests data by sending interests for
named data - A sensing task is disseminated via sequence of
local interactions throughout the sensor network
as an interest for named data - Nodes diffusing the interest sets up their own
caches and gradients within the network to which
channel the delivery of data - During the data transmission, reinforcement and
negative reinforcement are used to converge to
efficient distribution - Intermediate nodes fuse interests, aggregate,
correlate or cache data
18Directed DiffusionIntanagonwiwat 2000
- Assumes that sensor networks are task-specific
the task types are known at the time the sensor
network is deployed - An essential feature of directed diffusion is
that interest, data propagation and data
aggregation are determined by local interactions - Focused on design of dissemination protocols for
tasks and events - Naming
- Task descriptions are named (specifies an
interest for data matching the list of
attribute-value pairs) and also called as
interest - Example task Every I ms, for the next T
seconds, send me a location of any four-legged
animal in subregion R of the sensor field. - task four-legged animal // detect animal
location - interval 20 ms // send back events every 20 ms
- duration 10 seconds // for the next 10
seconds - rect -100, 100, 200, 400 // from sensors
within rectangle
19Directed DiffusionIntanagonwiwat 2000
- Naming
- A sensor detecting an animal may generate the
following data - task four-legged animal // type of animal seen
- instance horse // instance of this type
- location 150, 200 // node location
- intensity 0.5 // signal amplitude measure
- confidence 0.85 // confidence in the match
- timestamp 013045 // event generation time
- Interests and Gradients
- Interest is generally given by the sink node
- For each active task, sink periodically
broadcasts an interest message to each of its
neighbors (including rect and duration
attributes) - Sink periodically refreshes each interest by
re-sending the same interest with monotonically
increasing timestamp attribute for reliability
purposes
20Directed DiffusionIntanagonwiwat 2000
- Interests and Gradients
- Every node maintains an interest cache where each
item in the cache corresponds to a distinct
interest (different type, interval attributes
with disjoint rect attributes) - Interest entries in the cache do not contain
information about the sink - In some cases, definition of distinct interests
allows interest aggregation - The interest entry contains several gradient
fields, up to one per neighbor - When a node receives an interest, it determines
if the interest exists in the cache - If no matching exist, the node creates an
interest entry - This entry has single gradient towards the
neighbor from which the interest was received
with specified data rate - Individual neighbors can be distinguished by
locally unique identifiers - If the interest entry exists, but no gradient for
the sender of interest - Node adds a gradient with the specified value
- Updates the entrys timestamp and duration fields
21Directed DiffusionIntanagonwiwat 2000
- Interests and Gradients
- If there exists both entry and a gradient,
- The node updates the entrys timestamp and
duration fields - When a gradient expires, it is removed from its
interest entry - When all gradients for an interest entry have
expired, the interest entry is removed from the
cache - After receiving an interest, a node may re-send
the interest to subset of its neighbors - To the neighbors, it may seem that interest
originated from the sending node even though it
may have been generated a distant sink. This
represents a local interaction - This way, interest diffuse throughout the network
and not each interest have been sent to all the
neighbors if a node sent matching interest
recently - Gradient specifies data rate (value) and a
direction in directed diffusion, whereas the
values can be used to probabilistically forward
data in different paths in other sensor networks
22Directed DiffusionIntanagonwiwat 2000
- Data propagation
- Data message is unicast individually to the
relevant neighbors - A node receiving a data message from its
neighbors checks to see if matching interest
entry in its cache exists according the matching
rules described - If no match exist, the data message is dropped
- If match exists, the node checks its data cache
associated with the matching interest entry - If a received data message has a matching data
cache entry, the data message is dropped - Otherwise, the received message is added to the
data cache and the data message is re-sent to the
neighbors - Data cache keeps track of the recently seen data
items, preventing loops - By checking the data cache, a node can determine
the data rate of the received events
23Directed DiffusionIntanagonwiwat 2000
- Reinforcement
- After the sink starts receiving low data rate
events, it reinforces one neighbor in order to
draw down higher quality (higher data rate)
events - This is achieved by data driven local rules
- To enforce a neighbor, the sink may re-send the
original interest with higher data rate - When the data rate is higher than before, the
node node must also reinforce at least one
neighbor - Reinforcement can be carried out from neighbors
to other neighbors in a particular path (i.e.,
when a path delivers an event faster than others,
sink attempts to use this path to draw down high
quality data) - In summary, reinforce one path, or part of it,
based on observed losses, delay variances, and so
on - Negative reinforce certain paths because resource
levels are low
24Directed DiffusionIntanagonwiwat 2000
Figure adapted from Intanagonwiwat 2000
25Stealth Routing Turgut 2009
- Intruder Tracking Sensor Network
- Sensor networks used to detect and track
intruders in a geographic region - Interest area
- Observations are disseminated to the sink by hop
by hop transmission - Performance metric tracking error
- Difference between the model maintained by the
sink and the real location of intruders - See demo here
-
26Stealth Routing Turgut 2009
- The problem of stealth
- The intruders belong to malicious and resourceful
adversary - If the adversary knows the locations of the
nodes it can avoid sensors, find and exploit
blind spots, introduce fake observations, capture
or compromise nodes - A node is
- Stealthy if the adversary doesnt know its
existence - Disclosed if the adversary can accurately locate
the node - Have various levels of stealth between these two
extremes - How can a node loose stealth
- Accidentally
- Through wireless transmission in the presence of
the intruder - Routing / dissemination protocols did not
previously consider the issue of stealth - The issue of stealth has been at best marginally
addressed in the field of sensor networks. - Our objective
- Develop a dissemination algorithm which optimizes
stealth without sacrificing the other performance
parameters
27Stealth Routing Turgut 2009
- Quantifying stealth
- Stealth level s(t) as probability at time t that
the node is not disclosed to the opponent - Non disclosed node s(t) 1
- Disclosed node s(t) 0
- Stealth level decreases in response to
transmission events. - Probability of disclosure at transmission
28Stealth Routing Turgut 2009
- Try and Bounce (TAB)
- A dissemination algorithm designed from the
ground up to take into consideration stealth. - It is based on the creation and forwarding of
reports about intruder location - All the transmissions are semantically meaningful
to every node (there is no blind transmission) - The local nodes maintain a local model of their
environments - Updated through a series of inferences
- We will now investigate three aspect of TAB
- A. The maintenance of the local model
- B. The forwarding path
- C. The decision to make a transmission
29Stealth Routing Turgut 2009
- A. Maintenance of the local model (1)
- TAB agent maintains a local model of environment
represented by the triplet ltN, I, Rgt - N set of node models lists the series of sensor
nodes known to agent, whether within tx_range,
active/inactive, or under threat - I set of intruder models contains the list of
the intruder nodes believed to be in the area of
sensor network, their last known position and
potentially other observed properties - R set of report models contains the list of
reports about intruder nodes to the sink - For each report, model maintains the intruder
node, its location, time when the observation was
made, and path record of the report - The model also keeps track of whether the node is
responsible for forwarding of the report or if it
is responsible in checking its forwarding
30Stealth Routing Turgut 2009
- A. Maintenance of the local model (2)
- Series of inferences triggered every time an
agent makes an observation, receives, transmits
or overhears a message - Inferences are also triggered by passage of time
- Inferences has the complexity of O(1)
- TAB agent never maintains any historical
information - The number of reports do not exceed those of the
active intruders - Bookkeeping inferences
- Occlusion
- Obsoleting
- Inferences concerning intruder nodes
- Sighting
- Report received
- Inference from silence
31Stealth Routing Turgut 2009
- A. Maintenance of the local model (3)
- Inferences concerning nodes
- Heartbeat
- Lack of retransmission
- No heartbeat
- Inference from path records
- Inferences concerning reports
- Report from sighting
- Report from received message
- Report transmitted
- Report progress overheard
- Report progress timeout
32Stealth Routing Turgut 2009
- A. Maintenance of the local model (4)
- Example inference occlusion
- A newer report concerning the same intruder has
been either - Observed
- Received from another node
- Overheard in the transmission between other two
nodes - The node discards the old report (the new report
occluded it) - Observations
- Occlusion works because the sink is not
interested in history, only on the most recent
position of the intruder - The node prefers to overhear a new report
because the overhearing does not create a
responsibility, while a received message does
33Stealth Routing Turgut 2009
- B. Forwarding in TAB
- The unit of forwarding is a report
- At any step during forwarding, the report has
someone responsible for it - When forwarding to the next hop, the node passes
the responsibility for the report - But it needs to check whether the next hop
forwards or not - If the next hop does not forward, responsibility
bounces back - The node needs to try another path to send
messages to the sink - The path record in the message assures that the
report does not retry failed paths - Choosing the next hop
- Preference-ordered list of next hops to sink
- The first choice is identical to what you would
have in DD or most other protocols
34C. The decision to transmit a report
Stealth Routing Turgut 2009
- C. The decision to transmit a report
- Start by evaluating the stealth loss if it
transmits - How to make the decision to transmit?
- We want to minimize stealth loss, but we also
want good accuracy - Idea cap the average stealth loss / intruder /
node - Calculate the running average of the stealth loss
- Transmit is the running average is below a
threshold
35Stealth Routing Turgut 2009
- Simulation Study
- Intruder tracking sensor network
- Interest area 400x400 meters
- 64 nodes
- Sensing range 50m
- Transmission range 50m
- Experiment time 2hr (7200 seconds)
- 10..80 intruders cross the area during the
experiment - Experiment repeated for 4 different protocol /
parameterization - DD-10 directed diffusion, interval 10 secs
- DD-25 directed diffusion, interval 25 secs
- TAB-0.001 try and bounce, stealth loss cap
0.001 stealth units per intruder per unit of time - TAB-0.003 try and bounce, stealth loss cap
0.003 - Implemented all the protocols in the YAES
simulator
36Stealth Routing Turgut 2009
37Stealth Routing Turgut 2009
38Stealth Routing Turgut 2009
39Stealth Routing Turgut 2009
40Stealth Routing Turgut 2009
- Conclusions
- Stealth is an important aspect of the operation
of many sensor networks - The challenge is to balance between multiple
performance criteria - Try and bounce (TAB) an early algorithm towards
this direction - We found that it outperforms DD on the stealth
tracking accuracy combination - Future work
- Other performance metrics (e.g. power
conservation) - Improve the models and inferences
- Extend the range of practical applicability
41References
- Bandyopadhyay 2003 S. Bandyopadhyay and E.J.
Coyle, An Energy Efficient Hierarchical
Clustering Algorithm for Wireless Sensor
Networks, IEEE INFOCOM 2003, San Francisco, CA,
March 30 April 3, 2003. - Heinzelman 2002 W. Heinzelman, A.P.
Chandrakasan and H. Balakrishnan, An
Application-Specific Protocol Architecture for
Wireless Microsensor Networks, IEEE Transactions
on Wireless Communications, Vol. 1, No. 4,
October 2002, pp. 660-670. - Heinzelman 2000 W. Heinzelman, A.P.
Chandrakasan and H. Balakrishnan,
Energy-Efficient Communication Protocol for
Wireless Microsensor Networks, IEEE Proceedings
of the Hawaii International Conference on System
Sciences, January 4-7, 2000, Maui, Hawaii. - Intanagonwiwat 2000 C. Intanagonwiwat, R.
Govindan and D. Estrin, Directed Diffusion A
Scalable and Robust Communication Paradigm for
Sensor Networks, In Proceedings of the Sixth
Annual International Conference on Mobile
Computing and Networks (MobiCOM 2000), August
2000, Boston, Massachusetts. - Turgut 2009 D. Turgut, B. Turgut, and L.
Bölöni, Stealthy dissemination in intruder
tracking sensor networks, Proceedings of IEEE
LCN, October 2009, pp. 22-29.