A Network of Wireless Sensor
Nodes
Sensing (Data Acquisition)
Sensors capture phenomena in the physical world (process, system, plant)
Signal conditioning prepare captured signals for further use (amplification, attenuation, filtering of unwanted
frequencies, etc.)
Analog-to-digital conversion (ADC) translates analog signal into digital signal
Digital signal is processed and output is often given (via digital-analog converter and signal conditioner) to an
actuator (device able to control the physical world)
Sensor Classification
Power supply:
active sensors require external power, i.e., they emit energy (microwaves, light, sound) to trigger response or
detect change in energy of transmitted signal (e.g., electromagnetic proximity sensor)
passive sensors detect energy in the environment and derive their power from this energy input (e.g., passive
infrared sensor)
Electrical phenomenon:
resistive sensors use changes in electrical resistivity based on physical properties such as temperature
capacitive sensors use changes in capacitor dimensions or permittivity based on physical properties
inductive sensors rely on the principle of inductance (electromagnetic force is induced by fluctuating
current)
piezoelectric sensors rely on materials (crystals, ceramics) that generate a displacement of charges in
response to mechanical deformation
Example: Wheatstone Bridge Circuit
R1, R2, and R3 known (R2 adjustable)
Rx is unknown
Rx R2
Vout VCC
R3 Rx R1 R2
capacitive sensors
inductive sensors
WSN Communication
Characteristics of typical WSN:
low data rates
energy-constrained sensors
IEEE 802.11 family of standards
most widely used WLAN protocols for wireless communications in general
can be found in early sensor networks or sensors networks without stringent energy constraints
IEEE 802.15.4 is an example for a protocol that has been designed specifically for short-range
communications in WSNs
low data rates
low power consumption
widely used in academic and commercial WSN solutions
Single-Hop versus Multi-Hop
Star topology:
every sensor communicates directly (single-hop) with the base station
may require large transmit powers and may be infeasible in large geographic areas
Mesh topology
sensors serve as relays (forwarders) for other sensor nodes (multi-hop)
may reduce power consumption and allows for larger coverage
introduces the problem of routing
Comparison
Traditional Networks Wireless Sensor Networks
General-purpose design; serving many applications Single-purpose design; serving one specific application
Typical primary design concerns are network performance and latencies; Energy is the main constraint in the design of all node and network
energy is not a primary concern components
Networks are designed and engineered according to plans Deployment, network structure, and resource use are often ad-hoc
(without planning)
Devices and networks operate in controlled and mild environments Sensor networks often operate in environments with harsh conditions
Maintenance and repair are common and networks are typically easy to Physical access to sensor nodes is often difficult or even impossible
access
Component failure is addressed through maintenance and repair Component failure is expected and addressed in the design of the
network
Obtaining global network knowledge is typically feasible and centralized Most decisions are made localized without the support of a central
management is possible manager
Node Architecture
Analog-to-Digital Converter
ADC converts the output of a sensor - which is a continuous, analog signal into a
digital signal. It requires two steps:
1. the analog signal has to be quantized
allowable discrete values is influenced :
(a) by the frequency and magnitude of the signal
(b) by the available processing and storage resources
2. the sampling frequency
Nyquist rate does not suffice because of noise and transmission error
resolution of ADC - an expression of the number of bits that can be used to encode the digital output
where Q is the resolution in volts per step (volts per output code); Epp is the peak-to-peak analog voltage; M is the ADC’s
resolution in bits
The Processor Subsystem
The processor subsystem
its main purpose is to execute instructions related to sensing, communication, and self-organization
It consists of
processor chip
nonvolatile memory - stores program instructions
active memory - temporarily stores the sensed data
internal clock
The processor subsystem can be designed by employing one of the three basic
computer architectures
Von Neumann architecture
Harvard architecture
Super-Harvard (SHARC) architecture
Von Neumann Architecture
Von Neumann architecture
provides a single memory space - storing program instructions and data
provides a single bus - to transfer data between the processor and the memory
Slow processing speed - each data transfer requires a separate clock
Harvard Architecture
Harvard architecture
provides separate memory spaces - storing program instructions and data
each memory space is interfaced with the processor with a separate data bus
program instructions and data can be accessed at the same time
a special single instruction, multiple data (SIMD) operation, a special arithmetic operation and a bit
reverse
supports multi-tasking operating systems; but does not provide virtual memory protection
Super-Harvard Architecture
an extension of the Harvard architecture
adds two components to the Harvard architecture:
internal instruction cache - temporarily store frequently used instructions - enhances performance
an underutilized program memory can be used as a temporary relocation place for data
Direct Memory Access (DMA)
Communication Interfaces
Fast and energy efficient data transfer between the subsystems of a wireless
sensor node is vital
however, the practical size of the node puts restriction on system buses
communication via a parallel bus is faster than a serial transmission
a parallel bus needs more space
Therefore, considering the size of the node, parallel buses are never supported
Serial Peripheral Interface
SPI (Motorola, in the mid-80s)
high-speed, full-duplex synchronous serial bus
does not have an official standard, but use of the SPI interface should conform to the
implementation specification of others - correct communication
The SPI bus defines four pins:
MOSI (MasterOut/SlaveIn): used to transmit data from the master to the slave when a device is configured
as a master
MISO (MasterIn/SlaveOut)
SCLK (Serial Clock)
used by the master to send the clock signal that is needed to synchronize transmission
used by the slave to read this signal synchronize transmission
CS (Chip Select) - communicate via the CS port
Inter-Integrated Circuit
Every device type that uses I2C must have a unique address that will be used to
communicate with a device
In earlier versions, a 7 bit address was used, allowing 112 devices to be uniquely
addressed
Currently I2C uses 10 bit addressing
I2C is a multi-master half-duplex synchronous serial bus
only two bidirectional lines: (unlike SPI, which uses four)
Serial Clock (SCL)
Serial Data (SDA)
MAC Protocols in WSNs
Most MAC protocols are built for fairness: everybody should get an equal amount of resources, no one should
receive special treatment
In a WSN, all nodes cooperate to achieve a common purpose, therefore fairness is less of a concern
Instead, wireless nodes are mostly concerned with energy consumption
Reasons for energy inefficiency
idle listening
inefficient protocol designs (e.g., large packet headers)
reliability features (collisions requiring retransmissions or other error control mechanisms)
control messages to address the hidden-terminal problem
overemitting
Energy Efficiency
Periodic traffic models are very common in WSNs
significant energy savings can be obtained by putting a device into a low-power sleep mode
fraction of time a sensor nodes spends in active mode is called the duty cycle
often very small due to the infrequent and brief data transmissions occurring in most sensor networks
Contention-Free MAC Protocols
Concept:
allow only one sensor node to access the channel at any given time
thereby avoiding collisions and message retransmissions
Contention-free protocols allocate resources to individual nodes to ensure exclusive resource access by only one
node at any given time
Exposes a number of desirable characteristics
node knows exactly when it has to turn on its radio
during all other times, radio can be turned off to preserve energy
fixed slot allocations impose upper bounds on delay
difficult to design schedules for large networks
difficult to handle changes in topology, density, traffic load
Traffic-Adaptive Medium Access
TRAMA assumes a time-slotted channel, where time is dived into:
periodic random-access intervals (signaling slots)
scheduled-access intervals (transmission slots)
Random-access intervals
Neighbor Protocol (NP) is used to propagate one-hop neighbor information among neighboring nodes
nodes join a network by transmitting during a randomly selected slot
packets transmitted during these slots are used to gather neighborhood information by carrying a set of
added and deleted neighbors
in case no changes have occurred, these packets serve as “keep-alive” beacons
NP allows nodes to obtain consistent two-hop topology information
Traffic-Adaptive Medium Access
Random-access intervals
Schedule Exchange Protocol (SEP) establishes and broadcasts actual schedules (i.e., allocations of slots
to a node)
each node computes a duration SCHEDULE_INTERVAL
– represents the number of slots for which the node can announce its schedule to its neighbors
– this duration depends on the rate at which the node’s applications can produce packets
at time t, the node then computes the number of slots within [t, t+ SCHEDULE_INTERVAL] for which it
has the highest priority among its two-hop neighbors
the node announces the selected slots and the intended receivers using a schedule packet
the last slot in this schedule is used to announce the next schedule for the next interval
Traffic-Adaptive Medium Access
Random-access intervals
Schedule Exchange Protocol (SEP)
example:
– a node’s SCHEDULE_INTERVAL is 100 slots
– the current time (slot number) is 1000
– a possible slot selection for interval [1000, 1100] for this node could be 1011, 1021, 1049, 1050, and
1093
– during slot 1093, the node broadcasts its new schedule for interval [1093, 1193]
Traffic-Adaptive Medium Access
Random-access intervals
Schedule Exchange Protocol (SEP)
slot selection is based on the node’s priority at time t
– uses a pseudo-random hash of the concatenation of the node’s identity i and t:
prioi, t hashi t
– node can indicate which slots it gives up, allowing other nodes to claim these unused slots
a node can determine its state for any given time slot t based on its two-hop neighborhood information and
the announced schedules
– node i is in the transmit (TX) state if it has the highest priority and if it has data to send
– node i is in the receive (RX) state if it is the intended receiver of the transmitter during slot t
– otherwise, the node can be switched into the sleep (SL) state
Traffic-Adaptive Medium Access
Summary
compared to CSMA-based protocols
reduces the probability of collisions
increases the sleep time and energy savings
unlike standard TDMA approaches
TRAMA divides time into random-access and scheduled-access intervals
during the random-access intervals
– nodes are awake to either transmit or receive topology information
– the length of the random-access interval affects the overall duty cycle and achievable energy savings of
a node
Low-Energy Adaptive Clustering Hierarchy
The LEACH protocol combines TDMA-style contention-free communication with a clustering algorithm for wireless
sensor networks
a cluster consists of a single cluster head and any number of cluster members, which only communicate with
their cluster head
clustering is a popular approach for sensor networks
facilitates data aggregation and in-network processing at the cluster head
reduces the amount of data that needs to be transmitted to the base station
LEACH operates in rounds consisting of two phases:
A setup phase phase
A steady-state phase
Low-Energy Adaptive Clustering Hierarchy
Setup phase
since the cluster head is responsible for coordinating cluster activity and forwarding data to the base station,
its energy requirements will be significantly larger compared to other sensor nodes
therefore, LEACH rotates the cluster head responsibility among sensor nodes to evenly distribute the energy
load
every sensor i elects itself to be a cluster head with a certain probability Pi(t)
There are various approaches to choose Pi (t)
One of these approachs uses an indicator function Ci (t) to determine whether node i has been a cluster head in
the previous rounds
Only nodes that have not been cluster heads recently are candidates for the cluster head role, in order to evenly
distribute the cluster head responsibility (and energy overhead) among all nodes
Low-Energy Adaptive Clustering Hierarchy
This approach does not consider the actual amount of energy available to each node
An alternative approach to determining the probability of becoming a cluster head can be used:
Ei t
Pi t min k ,1
Etotal t
Ei(t) is node i’s actual current energy and Etotal(t) is the sum of the energy levels of all nodes
a disadvantage of this approach is that every node must know (or estimate) Etotal(t)
Low-Energy Adaptive Clustering Hierarchy
Once a sensor node has determined that it will serve as cluster head for the next round, it informs other sensor
nodes of its new role by broadcasting an advertisement message (ADV) using a non-persistent CSMA protocol
Every sensor node joins a cluster by selecting the cluster head that can be reached with the smallest amount of
transmit energy, based on received signal strength of the ADV messages from the cluster heads
Joining is achieved by transmitting a join-request (Join-REQ) message to the chosen cluster head using CSMA
The cluster head establishes a transmission schedule for its cluster and transmits this schedule to each node in its
cluster
Steady-state phase
a sensor node communicates only with the cluster head, it is allowed to transmit data only during its allocated
slots (indicated by the schedule received from the cluster head)
the responsibility of the cluster head is to forward sensor data originating at one of its sensor nodes to the base
station
in order to preserve energy each cluster member turns off the wireless radio between its designated slots
the cluster head remains awake at all times to receive sensor data from its cluster members and to
communicate with the base station
Low-Energy Adaptive Clustering Hierarchy
LEACH-C
variation of LEACH protocol that relies on the base station to determine the cluster heads
during setup phase, each sensor node transmits its location and energy levels to the base station
based on this information, the base station determines the cluster heads and informs the cluster heads of
their new role
other sensor nodes can then join clusters using join messages as described in the original LEACH protocol
Classification of Routing Protocols
Classification of Routing Protocols
Network organization
flat: all nodes are “equal”
hierarchical: different “roles” for different nodes (e.g., cluster heads versus cluster members)
location-based: nodes rely on location information
Route discovery
reactive (on-demand): find route only when needed
proactive (table-driven): establish routes before they are needed
hybrid: protocols with reactive and proactive characteristics
Protocol operation
negotiation-based: negotiate data transfers before they occur
multi-path: use multiple routes simultaneously
query-based: receiver-initiated
QoS-based: satisfy certain QoS (Quality-of-Service) constraints
coherent-based: perform only minimum amount of in-network processing
Routing Metrics (Example)
Numbers along links: cost for transmission over link
Numbers in parentheses: remaining energy capacity
SPIN Family of Protocols
Sensor Protocols for Information via Negotiation (SPIN)
Example of data-centric routing
Uses negotiations to address all problems of flooding
implosion: nodes negotiate before data transmission
overlap: nodes negotiate before data transmission
resource blindness: resource manager keeps track of actual resource consumption and adapts routing and
communication behavior
SPIN uses meta-data to succinctly and completely describe sensor data
Requirements:
if x describes the meta-data for some sensor data X, the size of x (in bytes) must be less than the size of X
if two pieces of sensor data differ, their meta-data representations should differ too
SPIN-PP
Only nodes needed the advertised data respond
Nodes can aggregate received data with their own and advertise aggregate
Nodes need to know their single-hop neighbors only
Lost ADV messages: periodically re-advertise
Lost REQ/DATA messages: re-request data of interest if data does not arrive within certain timeout interval
SPIN-EC:
adds energy conservation as long as energy sufficient, node participates in 3-way handshake
nodes does not participate if it believes that this will reduce its energy below a certain low-energy threshold
node replies to ADV only if sufficient energy for transmitting REQ and receiving DATA
node initiates handshake only if it has sufficient energy to send DATA to all neighbors
SPIN-BC:
uses one-to-many communications (broadcast)
receiver node waits for a random time interval before issuing REQ; if other node’s REQ overheard, the receiver
node cancels timer and does not send its own REQ
advertiser broadcasts DATA only once (ignore duplicate REQs)
Location-Based Routing
One single destination
Each forwarding node makes localized decision based on the location of the destination and the node’s neighbors
(greedy forwarding)
Challenge: packet may arrive at a node without neighbors that could bring packet closer to the destination (voids
or holes)
Forwarding Strategies
Greedy: minimize distance to destination in each hop (node E)
Nearest with Forwarding Progress (NFP): nearest of all neighbors that make positive progress (in terms of
geographic distance) toward destination (A)
Most Forwarding Progress within Radius (MFR): neighbor that makes greatest positive progress (progress is
distance between source and its neighbor node projected onto a line drawn from source to destination) (B)
Compass Routing: neighbor with smallest angle between a line drawn from source to the neighbor and the line
connecting source and destination (C)