Directed Diffusion
Directed Diffusion
Directed Diffusion
Motivation
centric, but not node centric Have no notion of central authority Are often resource constrained
may not know the topology They may fail or move arbitrarily
Directed Diffusion
place requests as interests Sources are eventually found and satisfy interests Intermediate nodes route data toward sinks
Localized repair and reinforcement Multi-path delivery for multiple sources, sinks, and queries
Motivating Example
Sensor nodes are monitoring a flat space for animals We are interested in receiving data for all 4-legged creatures seen in a rectangle We want to specify the data rate
Query/interest:
Type=four-legged animal 2. Interval=20ms (event data rate) 3. Duration=10 seconds (time to cache) 4. Rect=[-100, 100, 200, 400]
1.
Reply:
1. 2. 3. 4. 5. 6.
Type=four-legged animal Instance = elephant Location = [125, 220] Intensity = 0.6 Confidence = 0.85 Timestamp = 01:20:40
Example
Sensors match signature waveforms from codebook against observations Sensors match data against interest cache, compute highest event rate request from all gradients, and (re) sample events at this rate Receiving node:
Finds matching entry in interest cache, no match silent drop Checks and updates data cache (loop prevention, aggregation) Retrieve all gradients, and resend message, doing frequency conversion if necessasry
Reinforcement:
Data-driven rules unseen msg. from neighbor=>resend original with smaller interval This neighbor, in turn, reinforces upstream nodes Local rule for this paper: empirically minimize delay, other rules possible Passive reinforcement handling (timeout) or active (weights)
Multiple sources+reinforcement
Multiple sinks: Exploit prior setup (i.e., use cache) Intermediate nodes use reinforcement for local repair
Cascading reinforcement discoveries from upstream can be a problem; one soln: interpolate requests to preserve status-quo
Design Considerations
Claims
Allows nodes to propagate data in the absence of interests Finds empirically best performing path Better performance than ad-hoc protocols
Evaluation
ns2 simulation Modified 802.11 MAC for energy use calc. Comparison against flooding and omniscient multicast Experiment with node failure Did not overload system Standard random node placement (but only 3 hops across entire topology)
Metrics
of total energy expended per node to number of distinct events received at sink Measures average work budget
Average delay
Average
one-way latency between event transmission and reception at sink Measures temporal accuracy of location estimates
Topology
50-250 nodes in 50 node increments Avg. Node density constant with network size Square of 160m, radio range of 40m 5 sources, 5 sinks uniformly distributed 1.6Mbps 802.11 MAC
Not
realistic (reliable transmission, RTS/CTS, high power, idle power ~ receive power) Set idle power to 10% of receive power, 5% of transmit power
multicast sends duplicate messages over the same paths Topology has little path diversity Why not suppress messages with Omniscient Multicast just as in Directed Diffusion?
Sim: Failures
Dynamic failures (no settling time), adverse network conditions (10-20% failure at any time) Each source sends different signals <20% delay increase, fairly robust Energy efficiency improves:
Reinforcement
Analysis
Energy gains are dependent on 802.11 energy assumptions Can the network always deliver at an interests requested rate? The capacity of such networks is small how does it fare during overload? Does reinforcement actually work? Can low timeouts cause loops in large sensor networks?
Conclusions
Directed Diffusion provides a data-centric communication protocol for sensor sources and sinks Its gains due to aggregation and duplicate suppression may make it more viable than adhoc routing in sensor networks Its performance needs more extensive evaluation before strong claims can be made