the firecracker protocol
TRANSCRIPT
9/19/04 SIGOPSEW 1
Data Dissemination in Sensor Nets
• Sensor net: many low power, wireless “motes” – 1-10 KB RAM, 4-8MHz CPU, 10-100Kbs radio
• Dissemination: deliver a data item to every mote in a network – Configuration constants – Code updates, virtual programs
• Requires a continuous protocol – Transient disconnections, network repopulation
• Two metrics: energy efficiency, rate
9/19/04 SIGOPSEW 2
Broadcast-based Protocols
• Every node forwards • Energy efficient
– Can use physical density, opportunistic receptions • Slow: can’t immediately forward
– Suppression mechanisms, timers – CSMA: broadcast storms – RTS/CTS: control packet exchange latency
9/19/04 SIGOPSEW 3
Routing-based Protocols
• One node forwards • Fast
– Next hop can immediately retransmit • Energy inefficient: naming
– Need many routes to reach entire network – Naming every node unfeasible
9/19/04 SIGOPSEW 4
Firecracker Dissemination
• Combine routing and broadcasts – Routing’s speed – Broadcasting’s efficiency
• Seeding phase – Route data to distant points in the network
• Propagation phase – Start broadcasting from routes
9/19/04 SIGOPSEW 9
Outline
• Data dissemination • Sensor networking, Trickle • Firecracker • Randomized Seeds • Conclusion
9/19/04 SIGOPSEW 10
Outline
• Data dissemination • Sensor networking, Trickle • Firecracker • Randomized Seeds • Conclusion
9/19/04 SIGOPSEW 11
Sensor Networking
• Energy is critical, communication is costly • Local wireless broadcast primitive
– Unique node identifiers • Many application requirements, many network
protocols – Collection – Any-to-any (logical coordinates: GEM, BVR, etc.) – Local aggregation – Dissemination
• Trickle
9/19/04 SIGOPSEW 12
Trickle Algorithm
• Periodically broadcast metadata M • Suppression interval of length T • Pick a random point b in T
– Broadcast unless you hear M • When T expires, double it (up to a max) • If you hear M+, make T very small (1 sec) • If you hear M-, send an update • Trickle plots
9/19/04 SIGOPSEW 13
Experimental Methodology
• TOSSIM, a TinyOS simulator • Compiles applications into a simulator engine • Radio loss model based on empirical distributions
– Asymmetric – Highly variable
• Unit disk interference model • Bit-level or packet-level simulation
– We used packet-level
9/19/04 SIGOPSEW 14
Trickle Plot
36-40
32-36
28-32
24-28
20-24
16-20
12-16
8-12
4-8
0-4
• 20x20 grid (400 nodes) • New datum • 15 foot spacing • 32 hop network • Time to reception in
seconds • Wave of activity
9/19/04 SIGOPSEW 15
Outline
• Data dissemination • Sensor networking, Trickle • Firecracker • Randomized Seeds • Conclusion
9/19/04 SIGOPSEW 16
Firecracker
• Start disssemination by seeding network • Route data to a few distant points • Start broadcast dissemination along paths
– Destination, route, snooping • Example: corners on a grid-based protocol
– Nodes can forward to manhattan neighbors – If two options, select randomly – Network density ensures manhattan links exist
• Same methodology as Trickle example
9/19/04 SIGOPSEW 21
Reception Time Distributions
20-24
16-20
12-16
8-12
4-8
0-4
36-40
32-36
28-32
24-28
20-24
16-20
12-16
8-12
4-8
0-4
20-24
16-20
12-16
8-12
4-8
0-4
0%2%4%6%8%
10%12%14%16%18%20%
2 6 10 14 18 22 26 30
Time to Reception (seconds)
Perc
en
t o
f N
od
es
0%2%4%6%8%10%12%14%16%18%20%
2 6 10 14 18 22 26 30
Time to Reception (seconds)
Perc
en
t o
f N
od
es
0%
2%4%
6%8%
10%12%
14%16%
18%20%
2 6 10 14 18 22 26 30 34 38 42
Time to Reception (seconds)
Perc
en
t o
f N
od
es
Larger "domain (42 s)"
28-32
24-28
20-24
16-20
12-16
8-12
4-8
0-4
0%2%4%6%8%10%12%14%16%18%20%
2 6 10 14 18 22 26 30
Time to Reception (seconds)
Perc
en
t o
f N
od
es
9/19/04 SIGOPSEW 22
Reception Time Distributions
20-24
16-20
12-16
8-12
4-8
0-4
36-40
32-36
28-32
24-28
20-24
16-20
12-16
8-12
4-8
0-4
20-24
16-20
12-16
8-12
4-8
0-4
0%2%4%6%8%
10%12%14%16%18%20%
2 6 10 14 18 22 26 30
Time to Reception (seconds)
Perc
en
t o
f N
od
es
0%2%4%6%8%10%12%14%16%18%20%
2 6 10 14 18 22 26 30
Time to Reception (seconds)
Perc
en
t o
f N
od
es
0%
2%4%
6%8%
10%12%
14%16%
18%20%
2 6 10 14 18 22 26 30 34 38 42
Time to Reception (seconds)
Perc
en
t o
f N
od
es
Larger "domain (42 s)"
28-32
24-28
20-24
16-20
12-16
8-12
4-8
0-4
0%2%4%6%8%10%12%14%16%18%20%
2 6 10 14 18 22 26 30
Time to Reception (seconds)
Perc
en
t o
f N
od
es
20835 Sends" 19544 Sends" 18275 Sends" 6665 Sends"
9/19/04 SIGOPSEW 23
Routing Reduces Cost
• Routing happens quickly – Synchronizes nodes – Trickle performance improves
• Fewer nodes need metadata exchanges – Metadata is most of the traffic
9/19/04 SIGOPSEW 24
Hybrid Approach is Beneficial
• Distant seed points – Improves rate – Reduces cost
• Can’t assume knowing what distant points exist – Can’t store all the names – Need a way to select seeds – Randomization prevents corner cases
9/19/04 SIGOPSEW 25
Outline
• Data dissemination • Sensor networking, Trickle • Firecracker • Randomized Seeds • Conclusion
9/19/04 SIGOPSEW 26
Experimental Methodology
• Use same grid arrangement • Run twenty experiments, average results
9/19/04 SIGOPSEW 27
Four Policies
• From corner to one random node in the grid • From corner to three random nodes • From center to three random nodes • From corner to three random distant nodes
9/19/04 SIGOPSEW 28
Histograms
0
5
10
15
20
25
30
2 8 14 20 26 32 38 44 50 56 62 68
Time to Reception (seconds)
Perc
en
t o
f N
od
es
0
5
10
15
20
25
30
2 8 14 20 26 32 38 44 50 56 62 68
Time to Reception (seconds)
Perc
en
t o
f N
od
es
0
5
10
15
20
25
30
2 8 14 20 26 32 38 44 50 56 62 68
Time to Reception (seconds)
Perc
en
t o
f N
od
es
0
5
10
15
20
25
30
2 8 14 20 26 32 38 44 50 56 62 68
Time to Reception (seconds)
Perc
en
t o
f N
od
es
One from corner Three from corner
Three distant from corner Three from center
9/19/04 SIGOPSEW 29
Results
• Picking random nodes works OK – Adding more does not improve results a great deal
• Coverage improves from center • Distant nodes works best • Need route to edge of the network
– Logical coordinate spaces support this
9/19/04 SIGOPSEW 30
Outline
• Data dissemination • Sensor networking, Trickle • Firecracker • Randomized Seeds • Conclusion
9/19/04 SIGOPSEW 31
Network Protocols
• Varying communication requirements – Collection (n to one) – Dissemination (one to n) – Diffusion (m to n) – Local Aggregation
• Forwarding predicates – Density estimation
• Predicate and media access interaction • Routing’s scoping enables fast propagation • Slower broadcasts fill in the holes
9/19/04 SIGOPSEW 33
Any-to-Any Routing
• Current protocols use logical coordinates – GEM (Graph Embedding, polar coordinates) – BVR (Beacon Vector Routing, n-dimensional)
• GPSR uses geographic coordinates – Requires localization – Virtual coordinates may be possible
• Data dissemination benefits from being able to name a distant node (network distance)