1 / 30

Quelques protocoles instantanément stabilisants

Séminaire au LRI, Université Paris Sud. Quelques protocoles instantanément stabilisants. Stéphane Devismes, doctorant en 3 ème année. Introduction. Algorithmique du point de vue concepteur : Ecrire un algorithme Prouver l’algorithme. La spécification d’un problème n’est pas unique

Download Presentation

Quelques protocoles instantanément stabilisants

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Séminaire au LRI, Université Paris Sud Quelques protocoles instantanément stabilisants Stéphane Devismes, doctorant en 3ème année

  2. Introduction • Algorithmique du point de vue concepteur : • Ecrire un algorithme • Prouver l’algorithme • La spécification d’un problème n’est pas unique • Adéquation d’une spécification au problème : invérifiable Spécification : énoncé « formel » Quelques protocoles instantanément stabilisants

  3. Exemple • F = {F définie comme suit} • F: lN → lNn • F(x) = (F1(x), F2(x), …, Fn(x)) • Telle que • i, j, ∃k ≥ j tel que Fi(k) = 0 • i, x, (Fi(x) = 0) ⇒ ( j ≠ i, Fj(x) ≠ 0) A A A A A Quelques protocoles instantanément stabilisants

  4. Spécification en système distribué • Exclusion Mutuelle • Spécification statique • Jamais plus d’un processeur en SC • Tout processeur demandeur finit par entrer en SC • Spécification dynamique • Si plus d’un processeur en SC alors aucun n’est demandeur • Tout processeur demandeur finit par entrer en SC Quelques protocoles instantanément stabilisants

  5. Equivalence entre 2 spécifications ? • 2 spécifications S1 et S2 sont équivalentes SSI : • Tout protocole écrit pour S1 dans un environnement sans panne vérifie aussi S2 et réciproquement. Quelques protocoles instantanément stabilisants

  6. Exemple: Exclusion Mutuelle • S1 : • Jamais plus d’un processeur en SC • (Tout processeur demandeur finit par entrer en SC) • S2 : • Si plus d’un processeur en SC alors aucun de ces processeurs n’est demandeur • (Tout processeur demandeur finit par entrer en SC) Si un demandeur en SC alors il est le seul en SC S1 et S2 sont équivalentes P vérifie S2 ⇒P vérifie S1 ? P vérifie S1 ⇒P vérifie S2 ? Quelques protocoles instantanément stabilisants

  7. Stabilisation instantanée • Un protocole P est instantanément stabilisant pour une tâche T ssi : • Quel que soit l’état initial du système, P vérifie toujours la spécification de T. • [Bui, Datta, Petit et Villain, WSS’99] Quelques protocoles instantanément stabilisants

  8. Une tâche admet une solution instantanément stabilisante SI :∃ une spécification pour laquelle ∃ un algorithme instantanément stabilisant. Exemple : Exclusion Mutuelle - S1 : pas d’algorithme possible- S2 : On peut trouver une solution Toute tâche admettant une solution auto-stabilisante dans un réseau identifié admet une solution instantanément stabilisante. [Cournier, Datta, Petit et Villain, ICDCS’2003] Quelques protocoles instantanément stabilisants

  9. Exemple : parcours en profondeur instantanément stabilisant Quelques protocoles instantanément stabilisants

  10. Modèle à états • Mémoires localement partagées • Démon • Distribution (séquentiel, distribué, synchronisé) • Equité (fortement ou faiblement équitable, inéquitable) • Complexité : • Nombre de pas de calcul • Nombre de rounds Quelques protocoles instantanément stabilisants

  11. Parcours en profondeur dans un réseau enraciné quelconque R Quelques protocoles instantanément stabilisants

  12. Parcours en profondeur instantanément stabilisant • Spécification (dynamique): • La racine crée un jeton en temps fini • Une fois créé, le jeton parcourt tout le réseau en profondeur d’abord Quelques protocoles instantanément stabilisants

  13. 1ère Solution [OPODIS’2004] Utiliser des listes d’identités : On stocke les identités des processeurs visités au fur et à mesure du parcours. Quelques protocoles instantanément stabilisants

  14. Comportement à partir d’une configuration initiale « normale » 1 2 4 3 {5,6,7,3,2,4,8} {5,6,7,3,2,4} {5,6,7,3,2} {5,6,7,3} {5,6,7,3,2} R 7 8 6 5 {5,6,7,3,2,4,8} {5,6} {5} {5,6,7} 9 Quelques protocoles instantanément stabilisants

  15. A partir d’une configuration quelconque 3 attend la correction de l’erreur 1 2 3 5 4 {8,3} {2,3} {5,7} R 10 9 7 6 8 {8} {5,7,10} 12 11 13 15 16 14 {6,8,11} {6,8,11,12} {5,7,10,15} 18 17 Quelques protocoles instantanément stabilisants

  16. Correction des parcours anormaux 1 2 3 {3,5,8,7,6,4,1,2} {3,5,8,7,6,4,1} {3,5,8,7,6,4,1,2} {} {3} 5 4 {3,5,8,7,6,4,1,2} {3,5,8,7,6,4} {3,5} 6 7 8 {3,5,8,7,6} {3,5,8,7} {3,5,8} Quelques protocoles instantanément stabilisants

  17. 2ème Solution [SSS’2005] • But: Améliorer l’occupation mémoire • Remplacer les listes d’identités par un mécanisme de questions [Blin, Cournier et Villain, SSS’2003] Quelques protocoles instantanément stabilisants

  18. Problème : quand remonter le jeton? R R Quelques protocoles instantanément stabilisants

  19. Solution : Question à la racine Reset Seule la racine peut délivrer une réponse Q Wait Reset Reset Quelques protocoles instantanément stabilisants

  20. Réponse : 1er cas Ok Ok Ok Ok Ok Ok R Ok Quelques protocoles instantanément stabilisants

  21. Réponse : 2ème cas R Ok Ok Ok Le parcours normal reste bloquer jusqu’à la correction de l’autre parcours Quelques protocoles instantanément stabilisants

  22. Correction des parcours anormaux • Deux étapes : • PIF bloquant dans l’arbre des parcours anormaux • Nettoyer de la racine vers les feuilles Quelques protocoles instantanément stabilisants

  23. Problème: nettoyage du parcours de la racine • 2 manières classiques de nettoyer : • A partir des feuilles • A partir de la racine Quelques protocoles instantanément stabilisants

  24. Problème : nettoyage du parcours de la racine r Quelques protocoles instantanément stabilisants

  25. Problème : nettoyage du parcours de la racine r ... ... Quelques protocoles instantanément stabilisants

  26. Solution : nettoyage « synchronisé » r Quelques protocoles instantanément stabilisants

  27. Conclusion : SSS’05 vs OPODIS’04 Quelques protocoles instantanément stabilisants

  28. Pourquoi écrire de nouveaux protocoles instantanément stabilisant alors qu’il existe un transformeur? Quelques protocoles instantanément stabilisants

  29. Perspectives • Trouver une solution efficace à la fois en temps et en espace • Exclusion mutuelle instantanément stabilisante • Transformeur pour un démon inéquitable (Snap-Stabilizing PIF and Useless Computation, ICPADS’06) Quelques protocoles instantanément stabilisants

  30. Publications • Cournier, Devismes, Petit et Villain. Snap-Stabilizing Depth-First Search on Arbitrary Networks. A paraître dansThe Computer Journal, 2005. Devismes. A Silent Self-Stabilizing Algorithm for finding Cut-nodes and Bridges. Parallel Processing Letters, Vol 15, N°1 & 2, page 183-198, 2005. Cournier, Devismes et Villain. Snap-Stabilizing PIF and Useless Computations. Accepté à ICPADS'06, Juillet 12-15, 2006. Minneapolis, USA. Cournier, Devismes et Villain. A Snap-Stabilizing DFS with a Lower Space Requirement. SSS’2005, pages 33-47, LNCS 3764, 2005. Cournier, Devismes et Villain. Snap-Stabilizing Detection of Cutsets. HIPC’2005, pages 488-497, LNCS 3769, 2005. Cournier, Devismes, Petit et Villain. Snap-Stabilizing Depth-First Search on Arbitrary Networks. OPODIS’2004, pages 267-282, LNCS 3544, 2005. Quelques protocoles instantanément stabilisants

More Related