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
24/18/2007 WSN
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
34/18/2007 WSN
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
44/18/2007 WSN
Radio Neighborhood
• radio neighborhood is notclearly defined
reception is probabilistic not isotropic
• reception rate is low “good” link drops 1 out
of 4 packets (cf. ethernetdrops 1 out of 10K)
changes with time!
54/18/2007 WSN
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?
64/18/2007 WSN
Flood-Based Routing Issues
• simple flood-basedrouting is imperfect
• has stragglers backward links dense clusters
74/18/2007 WSN
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
84/18/2007 WSN
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
94/18/2007 WSN
Link Estimation
• 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
104/18/2007 WSN
WMEWMA
• 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
124/18/2007 WSN
Neighborhood Management
• 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
134/18/2007 WSN
Management Policies
• 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
144/18/2007 WSN
#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
154/18/2007 WSN
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
164/18/2007 WSN
Cost-based routing
• 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
184/18/2007 WSN
Underlying Issues
• 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
194/18/2007 WSN
Underlying Issues
• 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
204/18/2007 WSN
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
214/18/2007 WSN
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
224/18/2007 WSN
Performance Evaluation: Tested Routing Algorithms
• 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 to t = 70%: only consider the links in the effective regiono t = 40%: also consider good links in the transitional region
234/18/2007 WSN
Packet level simulations
• 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
264/18/2007 WSN
Empirical study of a sensor field
• 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
274/18/2007 WSN
Link Quality of MT-Vary around 70%-SP(70) may suffer
Hop Distribution-SP(70) failed to construct a routing tree- MT congested: Triple the data origination and route update rate
294/18/2007 WSN
Irregular Indoor Network
• 30 nodes scattered around an indoor office of 1000ft2
E2E Success Rate Link Estimation of a nodeto its neighbors over time
304/18/2007 WSN
Conclusions
• 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