22
TrickleA Self-Regulating Algorithm for Code Propagation and Maintenance in Wireless Sensor Networks Philip LevisNeil PatelDavid CullerScott Shenker USENIX NSDI 2004 Presented by Yen-Cheng Wang

Trickle A Self-Regulating Algorithm for Code …osnet.cs.nchu.edu.tw/powpoint/seminar/2005/2005-8-31-Trickle_A Self...Trickle:A Self-Regulating Algorithm for Code Propagation and

Embed Size (px)

Citation preview

Trickle:A Self-Regulating Algorithm for Code Propagation and Maintenance in Wireless Sensor Networks

Philip Levis、Neil Patel、David Culler、Scott ShenkerUSENIX NSDI 2004

Presented by Yen-Cheng Wang

Outline

Introduction

Trickle algorithm

Maintenance

Propagation

Conclusion

Introduction

WSN ( Wireless Sensor networks ) always composed by large number、small and resource constrained computing nodes.

Usually, WSN needs a long time of operation, as environmenthas changed, perhaps the application programs needs changingwith environment

Need an efficient algorithm for motes to propagate code, in thispaper propose Trickle, an algorithm for code propagation andmaintenance in WSN

Trickle Algorithm

OverviewTrickle assumes that motes can succinctly describe theircode with metadata

Every so often, motes transmits metadata if it hasn’t heard other motes transmit the same thing

Either every mote that hears the message is up to date, or a recipient detects the need for an update

Trickle Algorithm – Maintenance

Trickle uses polite gossip to exchange code metadata, if “mote A” heard several identical metadata from other motes ina time interval, “mote A” will stay quiet

Each motes selects only one random transimission point in eachperiod for broadcasts metadata

Time is split into periods each mote maintain:

a timer t in the range[0~T]a counter:c ( compare with k )a threshold:k ( 1 or 2 usually )

Trickle Algorithm – Maintenance

Dark boxes are transimissionsGray boxes are suppressed transimissionsDotted lines are heard transmissionsSolid lines mark interval boundariesSet k=1

T sec T sec

Trickle Algorithm – Maintenance

Maintenance with Loss

Trickle Algorithm – Maintenance

Short-Listen problem If nodes are out of synchronization, some motes might If nodes are out of synchronization, some motes might transmit quickly before others had a chance to speak uptransmit quickly before others had a chance to speak up

T

Trickle Algorithm – Maintenance

SolutionEnforce a listen-only period, allows transimission inthe range [T/2~T]

Trickle Algorithm – Maintenance

The short-listen problem’s effect on scalability

Trickle Algorithm – Maintenance

Maintenance in a Multi-hop NetworkUsed by TOSSIM

Trickle Algorithm – Maintenance

Trickle Algorithm – Maintenance

Trickle Algorithm – Maintenance

Empriical StudyT = one minutemeasured redundancy over a 20 minute period forincreasing numbers of motes

Trickle Algorithm – Propagation

Large THas a low communication overheadBut slowly propagates information

Small THas a higher communication overheadBut propagates more quickly

SolutionDynamic scaling of T

Trickle Algorithm – Propagation

Dynamic scaling of TT has a lower bound, Tl, and a upper bound, Th

Trickle Algorithm – Propagation

Tl = 1 seconds

Trickle Algorithm – Propagation

Motes 4,11,17,18 and 19 weren’t instrumented TCPThe others were instrumented TCP except mote 16Tl = 1 seconds

Trickle Algorithm – Propagation

AVG:22 seconds

Trickle Algorithm – Propagation

AVG:32 seconds

Trickle Algorithm – Propagation

AVG:29 seconds

Conclusion

Trickle can quickly propagate new code into a network, while imposing a small overhead

Using dynamic T values for trade-off betweenenergy overhead and reprogramming rateUsing listen-only period for reduce the effect of theshort-listen problem

One limitation of Trickle is that it currently assumes motes are always on