Upload
amelia-blake
View
216
Download
0
Embed Size (px)
Citation preview
Reliable, Robust Data Collection in Sensor Networks
Murali Rangan
Russell Sears
Fall 2005 – Sensornet
Motivation
Data collection apps like habitat monitoring All of the logged data is valuable Real time / in order delivery not important In-network aggregation not required
Current data collection mechanisms Lose data during temporary network partitions Or, store all data in each node
Our goal Reliable, robust scheme to collect ALL the data in
a steady stream, without in order guarantees
Our approach
Reliability Link level, hop-by-hop acknowledgements Introduce redundancy with k replicas of data Replicas ensure their data reaches the base
station, or pass responsibility to a parent. Take advantage of broadcast medium Take advantage of existing routing algorithms
(like MintRoute) for parent selection Keep basic mechanism simple, add
optimization on top
Algorithm overview
Node with new data Broadcasts request for k volunteers (for replicas) Parent(s) agree to volunteer Broadcasts data to volunteer(s) Volunteer(s) broadcast hop ACK (HACK) Once k volunteers are found, deletes data
Volunteer transfers responsibility upstream Repeats above process, seeking 1 volunteer Once responsibility is transferred, deletes data
Can volunteer for same data again!
Status and Future Work
Basic algorithm details are fleshed out Implement and simulate using TOSSIM
Work in progress! Address the following challenges
How many replicas? Depends upon network density, reliability
Base station broadcasts ACK to remove replicas of collected data Use bloom filters to summarize? Limit broadcast to ‘interested’ nodes?
How to bound k replicas? Eavesdropping?
How do we deal with fan-in near the base station? Few parents / replicas share paths
Prerequisites
Use any routing protocol that Assigns ‘parent(s)’ to each mote Adapts to changes in network topology
Reliable link level delivery Make use of broadcast medium Transfer data from a child node to its parents ACK’s transfer responsibility for a piece of data. (Dropped ACK’s
lead to more replicas) Broadcast ACK from base station
Guarantees replicas are eventually deleted Efficient, reliable broadcast?
Bloom filters? Reverse path routing + eavesdropping?
Sketch of algorithm
Inserting data into the network Broadcast request for k volunteers Broadcast data, volunteers (parents) ACK Once k volunteers are found, node deletes data.
Volunteers request enough volunteers to create k replicas in network.
(Usually, just create 1 volunteer) Pass ACK’s to children after creating > 1 replica.
Challenges How many replicas? What about fan-in?
Replicas share < k parents Shared paths?
How can we optimize propagation?