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
Report
Transcript 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