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