300 likes | 398 Views
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
E N D
Wireless Networked SensorsRouting 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
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
Radio Neighborhood • radio neighborhood is notclearly defined • reception is probabilistic • not isotropic • reception rate is low • “good” link drops 1 outof 4 packets (cf. ethernetdrops 1 out of 10K) • changes with time!
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?
Flood-Based Routing Issues • simple flood-basedrouting is imperfect • has • stragglers • backward links • dense clusters
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
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
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
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
WMEWA (t =30, a =0.6) • simulation of empirical trace in stable setting
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
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
#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
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
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
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
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
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
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
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 t • t = 70%: only consider the links in the effective region • t = 40%: also consider good links in the transitional region
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
Packet level simulation Hop Distribution Path reliability over distance
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
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
E2E success rate Stability
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
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