Transcript Document
Wireless Networked Sensors
Routing Challenges
Mikhail Nesterenko
In this presentation I used the material from a presentation by
• David Culler, USB http://www.cs.berkeley.edu/~culler/talks/mobihoc.ppt,
http://www.cs.berkeley.edu/~culler/cs294-f03/slides/awoo_oct_2nd_2003.ppt
• Kwong-Don Kang, SUNY, Binghamton www.cs.binghamton.edu/~kang/teaching/cs580s/taming-bvr.ppt
Reading List
•
Deepak Ganesan, Bhaskar Krishnamachari, Alec
Woo, David Culler, Deborah Estrin and Stephen
Wicker, Complex Behavior at Scale: An
Experimental Study of Low-Power Wireless Sensor
Networks , UCLA Computer Science Technical
Report UCLA/CSD-TR 02-0013
• A. Woo and D. Culler. Taming the Underlying
Challenges of Reliable Multihop Routing in Sensor
Networks. In Proc. of the 1st ACM Conf. on
Embedded Networked Sensor Systems (SenSys),
pp 14--27. Los Angeles, Nov 5-7 2003
4/18/2007
WSN
2
Outline
• empirical measurements of low-power
radio performance
radio neighborhood
link quality estimation
issues with simple routing
• mintroute
link quality estimation
neighborhood selection
routing metrics
simulation results
experimental results
4/18/2007
WSN
3
Radio Neighborhood
•
radio neighborhood is not
clearly defined
reception is probabilistic
not isotropic
• reception rate is low
“good” link drops 1 out
of 4 packets (cf. ethernet
drops 1 out of 10K)
changes with time!
4/18/2007
WSN
4
Link Quality
•
three regions based on
reception
nearly perfect
unpredictable
nearly none
• one the fringes some links
are asymmetric
more than 75% in one
direction
less than 25% in the
other
• what to do with them?
detect and ignore?
embrace?
4/18/2007
WSN
5
Flood-Based Routing Issues
•
simple flood-based
routing is imperfect
• has
stragglers
backward links
dense clusters
4/18/2007
WSN
6
Other Issues
•
large variation in affinity
asymmetric links
long, stable high quality links
short bad ones
• varies with traffic load
collisions
distant nodes raise noise floor
reduce SNR for nearer ones
• many poor “neighbors”
• good ones mostly near, some far
4/18/2007
WSN
7
Outline
• empirical measurements of low-power
radio performance
radio neighborhood
link quality estimation
issues with simple routing
• mintroute
link quality estimation
neighborhood selection
routing metrics
simulation results
experimental results
4/18/2007
WSN
8
Link Estimation
•
•
•
4/18/2007
Individual nodes estimate link quality by observing packet success
and loss events
Use the estimated link quality as the cost metric for routing
Good estimator should:
React quickly to potentially large changes in link quality
Stable
Small memory footprint
Simple, lightweight computation
WSN
9
WMEWMA
•
•
4/18/2007
Snooping
Track the sequence numbers of the packets from each source to
infer losses
Window mean with EWMA
WMEWMA(t, a) = (#packets received in t) / max(#packets expected
in t, packets received in t)
t, a: tuning parameters
t: #message opportunities
Take average in a window
Take EWMA of the average
WSN
10
WMEWA (t =30, a =0.6)
•
4/18/2007
simulation of empirical trace in stable setting
WSN
11
Neighborhood Management
•
•
4/18/2007
Neighborhood table
Record information about nodes from which it receives packets
MAC address, routing cost, parent address, child flag, reception (inbound)
link quality, send (outbound) link quality, link estimator data structures
Propagate back to the neighbors as the outbound rather than inbound link
quality is needed for cost-based routing
The receiving node may update its own table based on the received
information possibly indicating topology changes Distance-vector based
routing
How does a node determine which nodes it should keep in the table?
Keep a sufficient number of good neighbors in the table
Similar to cache management
WSN
12
Management Policies
•
•
4/18/2007
Insertion
Heard from a non-resident source
Adaptive down-sampling technique
Probability of insertion = N/T = neighbor table size / #distinct
neighbors
At most N messages can be inserted for every T messages
Eviction
FIFO, Least-Recently Heard, CLOCK, Frequency
WSN
13
#Good neighbors maintainable (table size 40)
•
Frequency Algorithm
Keep a frequency count for
each entry in the table
Reinforce a node by
incrementing its count
A new node will be inserted if
there is an entry with a zero
count
Otherwise, decrement the count
of all entries and drop the new
candidate
good node – 75% link accuracy
4/18/2007
WSN
14
Background
Link-State and Distance-Vector Routing
•
Link state routing algorithm (ex: DSDV)
assume knowledge of the network topology and all link costs
apply Dijkstra’s algorithm to find the shortest path from one source to all
the other nodes
Implemented via link state broadcast
memory intensive, has issues with information update
•
Distance vector routing (ex: AODV)
each node propagates cumulative distance estimator (ex: min # hops) to
all neighbors
neighbors update their metric and propagate further
has “counting to infinity” problem
countered by poisoned reverse or split horizon
4/18/2007
WSN
15
Cost-based routing
•
•
4/18/2007
Key ideas
Minimize the cost that is abstract measure of distance
Could be #hops, #retransmissions, etc.
Minimize # retransmissions: A longer path with fewer #retransmission
could be better than a shorter path with more retransmissions!
Distance-vector based approach implemented by the parent selection
component
Periodically run parent selection to identify one of the neighbors for
routing
May also locally broadcast a route message including parent address,
estimated routing cost to the sink, and a list of reception link estimations
of neighbors
A receiving node may update the neighbor table based on the received
info or drop it
Flag a child in the table to avoid a cycle
When a cycle is detected trigger parent selection without the current
parent
WSN
16
Routing Framework
4/18/2007
WSN
17
Underlying Issues
•
•
•
•
4/18/2007
Parent selection
If connectivity to the current parent is lost, a node disjoins from the tree,
and sets its routing cost to infinity Reselect a parent
Rate of parent change
Periodic: Parent selection for every route update msg from neighbors
incurs a domino effect of route changes
Parent snooping
For example, quickly learn routing info
Cycles
Monitor forwarding traffic and snoop on the parent address in each
neighbor’s msg -> Identify child nodes and don’t consider them as potential
parents
WSN
18
Underlying Issues
•
•
•
4/18/2007
Duplicate packet elimination
Use sender address & sequence number
Queue management
Give priority to originating traffic assuming originating data rate is lower
than forwarding rate
General fair queuing is not considered in this paper
Relation to link estimation
Link failure detection based on a fixed number of consecutive xmission
failures can be ineffective over semi-lossy links
Link quality estimation can be a better judgment of link failure
Bidirectional link estimations can avoid routing over asymmetric links
Stability and agility of link estimators can significantly affect routing
Final tuning must be done while observing its effect on routing
performance
WSN
19
Cost metric
•
MT (Minimum Transmission) metric:
Expected number of transmissions along the path
For each link, MT cost is estimated by 1/(Forward link quality) *
1/(Backward link quality)
Inherently non-linear
For MT, a substantial noise margin should be used in parent select to
enhance stability
•
Reliability
Another cost metric
Product of link qualities along the path
Not explored in this paper
4/18/2007
WSN
20
Performance Evaluation: Tested Routing Algorithms
•
Minimum Transmission (MT)
Use the expected #transmissions as the cost metric
Use a new path if the new cost is lesser by a noise margin
•
MTTM
Assume a neighbor table can maintain only 20 entries
•
Broadcast
Root periodically floods the network
A node chooses a parent that forwards the flooded msg to itself first in
each epoch
Use the reverse path to reach the root
4/18/2007
WSN
21
Performance Evaluation: Tested Routing Algorithms
•
4/18/2007
Shortest Path
Conventional distance-vector approach
Each node picks a minimum hop-count neighbor as the parent and
set its own hop-count to one greater than its parent
Two variations for performance analysis
SP: A node is a neighbor if a packet is received from it
SP(t): A node is a neighbor if its link quality exceeds the
threshold t
o t = 70%: only consider the links in the effective region
o t = 40%: also consider good links in the transitional region
WSN
22
Packet level simulations
•
•
•
4/18/2007
Built a discrete time, event-driven simulator in Matlab
Network of 400 nodes: 20 * 20 grid with 8 feet spacing
Sink is placed at a corner to maximize the network depth
WSN
23
Packet level simulation
Hop Distribution
4/18/2007
Path reliability over distance
WSN
24
Packet level simulation
4/18/2007
WSN
25
Empirical study of a sensor field
•
•
•
•
•
•
4/18/2007
Evaluate SP(40%), SP(70%), MT
50 Berkeley motes inside a building
5 * 10 grid w/ 8 foot spacing
90% link quality in 8 feet
3 inches above the ground
sink in the middle of short edge of the grid
measurements at night to avoid pedestrian traffic
WSN
26
Link Quality of MT
Hop Distribution
-Vary around 70%
-SP(70) failed to
-SP(70) may suffer
construct a routing
tree
- MT congested: Triple the data origination and route update rate
4/18/2007
WSN
27
Stability
E2E success rate
4/18/2007
WSN
28
Irregular Indoor Network
•
30 nodes scattered around an indoor office of 1000ft2
Link Estimation of a node
to its neighbors over time
E2E Success Rate
4/18/2007
WSN
29
Conclusions
•
•
•
4/18/2007
Link quality estimation and neighborhood management are essential to
reliable routing
WMEWMA is a simple, memory efficient estimator that reacts
quickly yet relatively stable
MT (Minimum Transmissions) is an effective metric for cost-based
routing
The combinations of these techniques can yield high end-to-end
success rates
WSN
30