snap-stabilizing prefix tree for peer-to-peer...

55
Snap-Stabilizing Prefix Tree for Peer-to-Peer Systems Cédric Tedeschi 1 Eddy Caron 1 , Frédéric Desprez 1 , Franck Petit 2 1 - Université de Lyon. LIP laboratory. UMR CNRS-ENS Lyon-UCB Lyon-INRIA 5668 2 - LaRIA laboratory. CNRS-UPJV Supported by ANR-05-CIGC-11 SSS 2007 - November 16, 2007

Upload: others

Post on 06-Oct-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Snap-Stabilizing Prefix Tree for Peer-to-PeerSystems

Cédric Tedeschi1

Eddy Caron1, Frédéric Desprez1, Franck Petit2

1 - Université de Lyon. LIP laboratory. UMR CNRS-ENS Lyon-UCB Lyon-INRIA5668

2 - LaRIA laboratory. CNRS-UPJV∼

Supported by ANR-05-CIGC-11

SSS 2007 - November 16, 2007

Page 2: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Context

Service discovery in grid computingService (binary file, library) installed on serversServers declare their services, client discovers themNeed for maintaining this information

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 2

Page 3: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Context

Service discovery in grid computingService (binary file, library) installed on serversServers declare their services, client discovers themNeed for maintaining this information

Target platformslarge scaleno central infrastructuredynamic joins and leaves of nodes

P2P systemsPurely decentralized algorithmsScalable algorithms to retrieve objectsFault-tolerance

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 2

Page 4: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Trie-based overlays

A promising way to store and retrieve servicesAdvantages

Efficient range queriesAutomatic completion of partial stringsEasy extension to multi-dimensional queries

ApproachesSkip Graphs (Aspnes and Shah – 2003)P-Grid (Datta, Hauswirth, John, Schmidt, Aberer – 2003)PHT (Ramabhadran, Ratnasamy, Hellerstein, Shenker – 2004)DLPT (Caron, Desprez, Tedeschi – 2005)Nodewiz (Basu, Banerjee, Sharma, Lee – 2005)

Drawback : fault-tolerance based on replicationCostlyDoes not recover after arbitrary failures

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 3

Page 5: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Trie-based overlays

A promising way to store and retrieve servicesAdvantages

Efficient range queriesAutomatic completion of partial stringsEasy extension to multi-dimensional queries

ApproachesSkip Graphs (Aspnes and Shah – 2003)P-Grid (Datta, Hauswirth, John, Schmidt, Aberer – 2003)PHT (Ramabhadran, Ratnasamy, Hellerstein, Shenker – 2004)DLPT (Caron, Desprez, Tedeschi – 2005)Nodewiz (Basu, Banerjee, Sharma, Lee – 2005)

Drawback : fault-tolerance based on replicationCostlyDoes not recover after arbitrary failures

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 3

Page 6: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Trie-based overlays

A promising way to store and retrieve servicesAdvantages

Efficient range queriesAutomatic completion of partial stringsEasy extension to multi-dimensional queries

ApproachesSkip Graphs (Aspnes and Shah – 2003)P-Grid (Datta, Hauswirth, John, Schmidt, Aberer – 2003)PHT (Ramabhadran, Ratnasamy, Hellerstein, Shenker – 2004)DLPT (Caron, Desprez, Tedeschi – 2005)Nodewiz (Basu, Banerjee, Sharma, Lee – 2005)

Drawback : fault-tolerance based on replicationCostlyDoes not recover after arbitrary failures

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 3

Page 7: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Trie-based overlays

A promising way to store and retrieve servicesAdvantages

Efficient range queriesAutomatic completion of partial stringsEasy extension to multi-dimensional queries

ApproachesSkip Graphs (Aspnes and Shah – 2003)P-Grid (Datta, Hauswirth, John, Schmidt, Aberer – 2003)PHT (Ramabhadran, Ratnasamy, Hellerstein, Shenker – 2004)DLPT (Caron, Desprez, Tedeschi – 2005)Nodewiz (Basu, Banerjee, Sharma, Lee – 2005)

Drawback : fault-tolerance based on replicationCostlyDoes not recover after arbitrary failures

It remains the best effort approach.E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 3

Page 8: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Trie-based overlays

A promising way to store and retrieve servicesAdvantages

Efficient range queriesAutomatic completion of partial stringsEasy extension to multi-dimensional queries

ApproachesSkip Graphs (Aspnes and Shah – 2003)P-Grid (Datta, Hauswirth, John, Schmidt, Aberer – 2003)PHT (Ramabhadran, Ratnasamy, Hellerstein, Shenker – 2004)DLPT (Caron, Desprez, Tedeschi – 2005)Nodewiz (Basu, Banerjee, Sharma, Lee – 2005)

Drawback : fault-tolerance based on replicationCostlyDoes not recover after arbitrary failures

It remains the best effort approach. Self-stabilization.E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 3

Page 9: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Contributions

A snap-stabilizing protocol maintaining a prefix tree.

Built in a P2P oriented architecture modelProven in the state model to be snap-stabilizingWorst case complexitiesSimulation results

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 4

Page 10: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Outline

1 Preliminaries

2 Protocol

3 Simulation results

4 Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 5

Page 11: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Outline

1 Preliminaries

2 Protocol

3 Simulation results

4 Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 6

Page 12: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Architecture model : A two-layer P2P network

A physical network of peersP1 can communicate with P2 provided that P1 knows P2.Each peer runs one or more logical nodes

A logical tree of nodesLogical prefix tree distributed among peersOur protocol is run inside these nodesSusceptible to changes during its reconstruction

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 7

Page 13: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Architecture model : A two-layer P2P network

A physical network ofpeersA logical tree ofnodes

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 7

Page 14: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

State model (1/2)

Nodes can read the variables of some other nodes and writeonly to their own variablesActions : < guard >→< statement >

< guard > bool. expr. of variables of p and its neighbors< statement >

Executed only if its < guard >= trueUpdates one or more variables of p

The state of a node p is defined by the values of its variablesThe configuration of the system is the product of the statesUnfair and distributed scheduling daemon

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 8

Page 15: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

State model (2/2)

C, the set of possible configurations of the system7→, a relation on C.

A computation is a maximal sequence of configurationse = (γ0, γ1, . . . , γi , γi+1) such that for i ≥ 0, γi 7→ γi+1 or γi is a terminalconfiguration.

E , the set of possible computationsEα, the set of possible computations starting with a given α ∈ C.

A node p is enabled in γ if at least one guard is true on p in γ.A node is neutralized in the step γi 7→ γi+1 if p is enabled in γi and notenabled in γi+1.

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 9

Page 16: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Snap-stabilization

The first round e′ of a computation e ∈ E is the minimal prefix of econtaining the execution of one action or the neutralization of everyenabled node from the first configuration.

Let X be a set. We denote x ` P the fact that x ∈ X satisfies thepredicate P.

The protocol is snap-stabilizing for the specification SPP on E iff :

∀α ∈ C : ∀e ∈ Eα :: e ` SPP

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 10

Page 17: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

The distributed structures maintained

Prefix HeapA labeled rooted tree s.t. eachnode label is the PGCP of all itschildren labels.

PGCP TreeA labeled rooted tree s.t. eachnode label is the PGCP of any pairof its children labels.

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 11

Page 18: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Outline

1 Preliminaries

2 Protocol

3 Simulation results

4 Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 12

Page 19: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

The algorithm

AssumptionsThe initial graph is a rooted connected treeNEWNODE(lbl , st , chldn)DESTROY(p)HEAPIFY() locally creates a heapREPAIR() locally builds a PGCP Tree starting from a heap

Three Phases inspired by the snap-stabilizing PIF [Bui, Datta,Petit, Villain – 1999]

Broadcast phase : top-down wave initiating the algorithmHeapify phase : down-top traversal building a prefix heapRepair phase : final top-down wave building a PGCP tree

Three node statesI (initial)B (broadcast)H (heapified)

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 13

Page 20: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 21: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 22: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 23: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 24: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 25: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 26: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 27: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 28: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 29: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 30: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 31: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 32: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 33: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 34: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 35: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 36: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 37: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 38: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 39: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 40: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 41: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 42: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 43: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 14

Page 44: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Sketch of proof

Lemma (1)Starting from any configuration, the root node initiates the wave in afinite time.

Lemma (2)Afther the execution of procedure HEAPIFY by p, Tp is a prefix heap.

Corollary (1)After the Heapify phase ends, the whole tree is a prefix heap.

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 15

Page 45: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Sketch of proof

Lemma (1)Starting from any configuration, the root node initiates the wave in afinite time.

Lemma (2)Afther the execution of procedure HEAPIFY by p, Tp is a prefix heap.

Corollary (1)After the Heapify phase ends, the whole tree is a prefix heap.

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 15

Page 46: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Sketch of proof

Lemma (1)Starting from any configuration, the root node initiates the wave in afinite time.

Lemma (2)Afther the execution of procedure HEAPIFY by p, Tp is a prefix heap.

Corollary (1)After the Heapify phase ends, the whole tree is a prefix heap.

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 15

Page 47: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Lemma (3)After the execution of procedure REPAIR by p, the label of p is the PCPof any pair of children labels of p.

Corollary (2)After the Repair phase ends, the whole tree is a PGCP tree.

TheoremThe proposed algorithms provide a snap-stabilizing protocol building aPGCP Tree construction.

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 16

Page 48: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Lemma (3)After the execution of procedure REPAIR by p, the label of p is the PCPof any pair of children labels of p.

Corollary (2)After the Repair phase ends, the whole tree is a PGCP tree.

TheoremThe proposed algorithms provide a snap-stabilizing protocol building aPGCP Tree construction.

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 16

Page 49: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Lemma (3)After the execution of procedure REPAIR by p, the label of p is the PCPof any pair of children labels of p.

Corollary (2)After the Repair phase ends, the whole tree is a PGCP tree.

TheoremThe proposed algorithms provide a snap-stabilizing protocol building aPGCP Tree construction.

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 16

Page 50: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Complexity

Time to obtain a consistant PGCP Tree : O(h + h′) roundsWorst case : O(n) rounds, O(n2) operations, O(n) extraspace

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 17

Page 51: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Outline

1 Preliminaries

2 Protocol

3 Simulation results

4 Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 18

Page 52: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Number of discretized rounds

0

50

100

150

200

0 1000 2000 3000 4000 5000 6000

Num

ber

of r

ound

s re

quire

d to

sta

biliz

e

Number of nodes in the tree

Number of rounds [average on 40 runs]a x log(n)

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 19

Page 53: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Average extra space required

0

1000

2000

3000

4000

5000

6000

0 1000 2000 3000 4000 5000 6000 7000 8000 9000

Max

imum

deg

ree

of th

e no

de

Nodes

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 20

Page 54: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Outline

1 Preliminaries

2 Protocol

3 Simulation results

4 Conclusion

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 21

Page 55: Snap-Stabilizing Prefix Tree for Peer-to-Peer Systemsgraal.ens-lyon.fr/~ctedesch/research/talks/SSS_16112007.pdf · DLPT (Caron, Desprez, Tedeschi – 2005) Nodewiz (Basu, Banerjee,

Preliminaries Protocol Simulation results Conclusion

Conclusion

ContributionsThe first snap-stabilizing prefix treeAn alternative to nodes replicationProven to be snap-stabilizing in the state model and thusoptimal in terms of stabilization timeAverage latency in the height of the tree

On-going and future workAlgorithm desgined in the state model, need to be designedfor the MP modelImplementation and deployment over a real platform

E. Caron, F. Desprez, F. Petit, C. Tedeschi Snap-stabilizing Prefix Tree for P2P Systems 22