Routing in Sensor Networks Prabal Dutta CS 294-11, Oct 25, 2005 Some Communication Abstractions Collection (MintRoute) Dissemination (Trickle) Point-to-Point (BVR) Aggregation (TAG,
Download ReportTranscript Routing in Sensor Networks Prabal Dutta CS 294-11, Oct 25, 2005 Some Communication Abstractions Collection (MintRoute) Dissemination (Trickle) Point-to-Point (BVR) Aggregation (TAG,
Routing in Sensor Networks Prabal Dutta CS 294-11, Oct 25, 2005 Some Communication Abstractions Collection (MintRoute) Dissemination (Trickle) Point-to-Point (BVR) Aggregation (TAG, Synopsis Diffusion) Neighborhoods (Hood) Data-centric Storage (GEM, PathDCS) Attribute-based Routing (Directed Diffusion) Slides borrowed from: A Holistic Approach to Multihop Routing for Sensor Networks Alec Woo Dissertation Talk Computer Science Division, UC Berkeley with David Culler and Terence Tong Key Takeaways Physical connectivity is not unit disk What does connectivity look like? How to estimate connectivity? Often, more neighbors than slots in NBR TBL When to insert? Evict? How to avoid thrashing? Routing algorithms use cost metrics What are the right metrics? Hops? Distance? METX? Collection routing is a very common pattern Boolean Connectivity Assumption 2 2 2 2 1 1 2 0 A Measure Physical Connectivity Average link quality among many pairs of nodes at different distances Communication Range? 3 regions, with a large transitional region Effective Transitional Region Region Clear Region Implications Transitional Region Deployment: (X-axis) (In-situ analysis) Communication range = effective region Individual nodes (Y-axis) Discover connectivity = link estimation Hear many nodes in transitional region How to define a “neighbor”? Zhao et al., SCALE Neighborhood: A Fuzzy Concept Many potential neighbors Short effective region Short sensing range Few good ones (blue) Large gray region Neighbors > Table-size Get in Neighbor Table Get out If not in table, can’t estimate Don’t rely on density control Adapts to all cell density General solution: down-sample to suppress gray nodes maintain frequent nodes Average Hop-Count Contour Plot Derive Connectivity Graph through Passive Link Estimation Link sequence number snooping Estimate inbound reception quality Key issue Cannot infer losses until next packet reception Solution Rely on a network-wide minimum data rate infer losses based on it Bi-directional estimation Require outbound transmission quality estimation Exchange reception quality over local broadcast E.g piggyback on route updates A Good Estimator Accurate +/- 10% error, with a high confidence Agile yet stable Relative to message opportunities rather than time Small memory footprint Many neighbors to estimate! Simple This is a low-level operation On-Line Table Management Process Insertion Policy Adaptive down-sampling hysteresis Throw a coin, only insert if success Eviction and Replacement Policy Classical Cache Replacement Policy FIFO, LRU (LRH), Clock Borrow Database Techniques Estimate most frequent tokens of a data stream FREQUENCY (Manku et al.) Key Results Fixed-size table as cell density increases 1st 2nd 3rd # Good neighbors > Table size Freq always keeps 50% or more of the table entries in maintaining the good neighbors 40 Number of Potential Neighbors Cost Functions SP on physical connectivity graph SP with threshold on logical connectivity graph Path Reliability (Yarvis et al.) Product of link quality along the entire path Exponential drop: (link success rate)# of hops Assumes no link retransmissions Minimum Transmission (MT) Cost is based on link quality 1 Link estimator hop p forward preverse provides Cost = E[total number of trans.] ETX (De Couto et al.) Implicit retransmission assumption 70% 70% 50% Tree-Building Approach Variant of a distributed distance-vector protocol Goal: stable and reliable tree (nodes are relatively immobile) Different from discovering paths quickly in mobile computing Operate over a dynamically changing physical connectivity graph Environmental changes Node failures Low-rate periodic route messages (low bandwidth) Carry “cost” to tree root Piggyback link estimations Hear neighbor’s “cost” and store in table Select minimum cost neighbor for routing Route damping (stability) Periodic vs. asynchronous Switching threshold for noisy cost Self-Organizing Networks Using only simple local rules for highly resource-constrained nodes to self-organize into a globally consistent and robust network Protocol design consideration Bandwidth/energy Amount of states/complexity Memory footprint One instance: Multihop routing Overview Problem decomposition into 3 local processes Connectivity defines relative to link quality estimation Neighbor table management to build weighted logical connectivity graph Cost functions to exploit such graph Observe global properties End-to-end success rate Hop distribution Topology Stability Extensive simulations and empirical experiments MintRoute, released in TinyOS 1.1 Roadmap Physical Connectivity in Reality Connectivity Graph Derivation with Link Estimations Neighborhood Management Tree-Based Routing Study Central Limit Theorem Prediction For a 10% error with a 95% interval worst case for agility is at least 100 packets 2 [ ] 10% 95% ConfidenceInt erval n p (1 p ) Sigma for BinomialDist. 4 n p (1 p ) 2 (10%) n 100 Wosrt Case : p 0.5 Estimator Study Study 7 different estimators EWMA, Flip-Flop EWMA, MA, Time-weighted MA, Packet Loss/Success Interval, WMEWMA Compared by tuning each to the same objectives Verify with empirical traces See details in thesis Results WMEWMA(T, ) Estimator Stable, simple, constant memory footprint Compute success rate over non-overlapping window (T) Average over an EWMA() Key Implication 10% |error| requires at least 100 packets to settle Limits rate of adaptation Roadmap Physical Connectivity in Reality Connectivity Graph Derivation with Link Estimations Neighborhood Management Tree-Based Routing Study Details Insert Set prob. such that insertion rate < reinforcement rate Down-sample prob. min(1,Table Size / # Neighbors Est.) Estimate # neighbors based on periodic route beacons Reinforce if in table Cache hit (FIFO, LRH, Clock) Node’s Counter++ (Freq) bypass down-sampling for reinforcement Evict Cache policies evict for each insertion Freq: Counter--, Counter == 0 becomes replaceable If all Counters > 0, drop insertion Implications Non-threshold based neighborhood selection No estimation required One-hop neighbor Based on competitiveness relative to the goodness metric Other goodness metric that augment neighborhood selection Control in/out degree on the logical connectivity graph Higher-level changes on cell density will not affect system functionality Connectivity graph adapts with its best using limited resources New neighborhood interface and abstraction Holistic Approach to Routing Now, the connectivity graph is built A A A Select Good Routes Based on ? Neighbor management using FREQUENCY Link Estimation using WMEWMA Many-to-One Data Collection A common routing service for data collection Simple form of directed-diffusion Tree rooted at the sink node where data is collected Single hop weather Single hop burrow Multi hop weather Multi hop burrow 10m Evaluation Roadmap Key observations: Hop distribution, end-to-end success, stability Graph analysis 80x80 grid Large SP, SP(%), MT Rule out SP because of poor reliability High Level Packet-level simulation 10x10 grid, (max 2 retrans./hop) Broadcast and DSDV (periodic route selection) Neighbor table management Freq + Routing Goodness -> MTTM Empirical (Mica/Mica2 Motes) 5x10 grid and 30-node random placement, smote SP(%), MT with large enough table Small max 2 retrans./hop, deliberate congestion Low Level Graph Analysis Key Results Hop-Distribution and Reliability to BS Simulation Key Results Stability Hop-Count Distribution End-to-end Success vs. Distance Empirical Study Restudy connectivity vs. distance Put nodes at end of effective region (~ worst case) 8 feet Study SP(70%), SP(40%), MT Link Key observations: quality SP(70%) fails drops under traffic SP(40%) fails Hard threshold fails under congestion Empirical Key Results Hop-Count Distribution End-to-end Success vs. Distance Effective Region is 8 feet Different from simulations! Congestion and Stability Topology Stability # Route Changes Per 5 Route Messages 30-node network Link % Estimation Time (s) Possible Congestion/Rate Control: Woo et al. (Mobicom ’01) Mitigate Instability Subtle overflow bug in link estimation Confidence-interval filtering on link estimation Link estimation to tree root can affect stability on the entire tree Switching threshold helps stability, but sacrifices end-to-end success rate Cross-layer Interactions Ave. # of Parent Changes Per Route Update 3.02 2.49 0.52 0.14 0.10 Induced Interference Ave. # of Parent Changes Per Route Update 0.30 0.10 Node Failure Current Status Used by GDI ’03, TinyDB, TASK (Intel) TinyOS 1.1 Release Surge as a Network Analysis Tool Crossbow: www.xbow.com Incorporated with low-power listening ~97% success rate on mica2 Source: Crossbow Related Work Summary Connectivity Study Choi et al., Zhao et al., Cerpa et al., Ganesan et al. Link estimation IGRP, EIGRP, De Couto (Mobicom ’03), Kim et al. (Mobicom ’99) Neighborhood Management Limiting Logical Neighborhood Size (Miller et al., Simulation of computer networks ’ 87) Random Selection (Shacham et al., ICC ’88) Routing Metrics De Couto (Mobicom ’03) Draves et al. (Microsoft Research TR-2004-18 March ’04) LIR, least gain routing opt. for spatial reuse (SRNTN ’88) LRR, link cost = physical-level interference, (Tactical Communication Conference ’90) Sensor Network Routing Real experiment running DSDV + Path Reliability Metric (Yarvis et al. IWAHN ’02) Future Work Reverse Tree Routing Support any-to-any routing Co-design of query processing and networking Query-informed routing See June Communication of the ACM ‘04 Thank you! Backup Slides A Connectivity Cell 144-node, 12x12 grid network with Rene Motes Joint work with Ganesan et al. 2-feet spacing Low transmit power Open tennis court RSSI & Link Quality Can we use RSSI to predict link quality? Low packet loss => good RSSI But not vice versa Interference from traffic Similar findings Zhao et al. (RFM sensor networks) De Couto et al. (802.11 networks) Approximate Connectivity Variations Approximate time variations Time-Varying Connectivity Link quality varies over time over a 5-hour period over an 8-hour period Routing Architecture Send originated data message Send route update message Cycle detected • choose other parent Originating Queue Timer Application Run parent selection and send route message periodically Parent Selection Forward Queue Cycle Detection Forwarding message Filter • discard non data packet • discard duplicate packet Data message Estimator All message • sniff and estimate Neighbor Table Table Management Route message • save information All Messages Topology over Time Est. Link Quality 70-100% 49 40-70% 42 0- 40% Feet 35 Tree Depth 28 1 21 2 14 3 7 0 7 14 21 28 35 Feet 42 49 56 63 Channel Utilization Contour Routing Cost: Actual vs. Est. Pursuer and Evader Application “Design and Implementation of a Sensor Network System for Vehicle Tracking and Autonomous Interception”, Submitted to OSDI 2004 The Berkeley NEST team Hops and Cost Metrics Shortest Path vs. Shortest Path with threshold Hop over distance is a relative concept. Highlights of Other Work Query Processing and Networking Co-design CACM June 04, with Ramesh Godvidan and Sam Madden Shadowing Phenomenon UCB Tech 04, with Kamin Whitehouse, Joe Polastre, Fred Jiang Ranging and Localization Acoustic, Ultrasound Infrastructure and Ad hoc Submitted to SenSys 04, with Kamin Whitehouse, Fred Jiang, Chris Karlof, and David Culler Mica Sensorboard Sold as Crossbow MTS300/310 MAC and Transmission Rate Control for Fairness Mobicom 2001, with David Culler TinyOS ASPLOS 2000 with Jason Hill, Robert Szewczyk, Seth Hollar, David Culler, and Kris Pister 2004: a year of the mote? May be? What can you really do with it? “I think there is a world market for maybe five computers.” - IBM Chairman Thomas Watson, 1943 It’s time to innovate! Let’s talk! Why such a Holistic Approach? The underlying issues matter! Expose and embrace these issues Not assume over them Articulate the 3 core system components Understand how they interact and affect each other Independent improvement Reusability Distributed Tree-Building Process Candidate Non-Bayesian Link Estimators Select Good Routes Over Logical Conn Graph Neighbor management keep the good ones build a logical connectivity graph A Derived Connectivity Graph Wireless Networking Rooftop/Metropolitan Networks Packet Radio Networks Wi-Fi Mobile Computing Sensor Networks Application s Traffic global Individual User Network as a whole Co-op, correlated, Pairs of indep. flows(end-to-end) in-network processing Transport End-to-End Routing local Any-to-any Mobility Mobile Resources Not a concern Radio High Bandwidth Phy Layer Spread spectrum ?? Custody/Best Effort Many-to-one(few) Static Limited Low Single-band Challenges Programming a large network of highly resourceconstrained nodes to self-organize into some global consistent and robust behavior using only simple local rules over a noisy and dynamically changing environment Think small and big Take a probabilistic view to describe lossy link quality and follows such apporach all the way up to the routing layer Bandwidth/energy, amount of states/complexity, memory footprint, reliability over unreliable channel 2004: a year of the mote? May be? I think there is a world market for maybe five computers (sensor networks?). - IBM Chairman Thomas Watson, 1943 There is no reason anyone would want a computer (sensor network?) in their home. -Ken Olson, president of Digital Equipment Corp. 1977