1 / 23

Stabilisation instantanée efficace

Séminaire à l’université de Reims, le 5 avril 2007. Stabilisation instantanée efficace. Alain Cournier, Stéphane Devismes et Vincent Villain. Stabilisation. Auto-stabilisation (Dijkstra, 1974)

tejana
Download Presentation

Stabilisation instantanée efficace

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 à l’université de Reims, le 5 avril 2007 Stabilisation instantanée efficace Alain Cournier, Stéphane Devismes et Vincent Villain

  2. Stabilisation • Auto-stabilisation (Dijkstra, 1974) • Un système auto-stabilisant, quel que soit son état initial, converge en un temps fini vers un comportement vérifiant ses spécifications. • Stabilisation instantanée (Bui, Datta, Petit et Villain, 1999) • Un système instantanément stabilisant, quel que soit son état initial, vérifie toujours ses spécifications. • Applications : • Tolérance aux fautes transitoires, systèmes dynamiques Stabilisation instantanée efficace

  3. Algorithme à vagues • Un algorithme à vagues P vérifie [Tel, 2001] : • Chaque exécution (vague) de P se déroule en un temps fini • Chaque exécution de P contient au moins une décision • Durant une exécution, chaque décision est causalement précédée par au moins une action sur chaque processeur • Décision : tâche « terminée » • Actions de démarrage • Exemples : • Propagation d’informations avec retour (PIR) • Circulation de jetons Stabilisation instantanée efficace

  4. 1.X 2.X 3.X 4.X ≠ F(X) ≠ F(X) ≠ F(X) ≠ F(X) Nest fini mais non borné N.X F(X) Algorithme à vagues auto-stabilisant F(.) Stabilisation instantanée efficace

  5. 1.X F(X) Algorithme à vagues instantanément stabilisant F(.) Stabilisation instantanée efficace

  6. Modèle à états • Mémoire localement partagée • Algorithme sous forme de règles gardées : • Garde(p) → Traitement(p) Stabilisation instantanée efficace

  7. Transformateur • Algorithme non tolérant aux fautes Algorithme instantanément stabilisant Stabilisation instantanée efficace

  8. Les autres transformateurs • Transformateur auto-stabilisant de • [Katz et Perry, 1993] • (modèle à passage de messages) Stabilisation instantanée efficace

  9. Les autres transformateurs • Transformateur instantanément stabilisant de • [Cournier, Datta, Petit et Villain, 2003] • (modèle à états) Stabilisation instantanée efficace

  10. Transformateur de [Cournier et al, 2003] Auto(P) KP P Snap(P) CDPV Stabilisation instantanée efficace

  11. Transformateur de [Cournier et al, 2003] • Calcul périodique d’état global du système • Inconvénients : • Prédicat • Réseau identifié • Nombre de calculs d’état global non bornable • Conséquence : nombre d’étapes de calculs pour une exécution non bornable Stabilisation instantanée efficace

  12. Transformateur instantanément stabilisant efficace Stabilisation instantanée efficace

  13. Exemple : Circulation de jeton en profondeur r Prédicat PriseEnMain(r) Stabilisation instantanée efficace

  14. Exemple : Circulation de jeton en profondeur r PriseEnMain(r)est vérifié Stabilisation instantanée efficace

  15. Réinitialisation : PIR • PIR : • Phase de diffusion : Les processeurs stoppent l’exécution du protocole initial • Phase de retour : les variables du protocole initial sont réinitialisées • PIR instantanément stabilisant [Cournier, Devismes et Villain, 2006] • Nombre borné d’étapes de calculs par exécution Stabilisation instantanée efficace

  16. Notre transformateur • Algorithme à vagues mono-initiateur • Décision à l’initiateur • Exemples : • Parcours en profondeur • Calcul d’arbre en largeur avec détection de terminaison • Applications : • Calcul d’arbre couvrant • Exclusion mutuelle • Diffusion Stabilisation instantanée efficace

  17. Notre transformateur • Pour tout algorithme à vagues P mono-initiateur avec décision à l’initiateur, on a : • Stabilisant(P) ⇒∃PriseEnMain(r) • ⇍ PriseEnMain(r) est plus faible Stabilisation instantanée efficace

  18. Stabilisation instantanée efficace

  19. Aucun calcul d’état global ⇒ Efficacité HC93 Opodis’04 SSS’05 DFST Mémoire Θ(log n) Θ(n log n) Θ(log n) Θ(log n) Exécution(rondes) Θ(Dn) Θ(n) Θ(n²) Θ(n) Exécution(étapes) ∞ Θ(n²) Θ(∆n3) Θ(∆n3) F Equité I I I Surcoût Θ(1) Θ(1) Θ(n) Θ(1) Stabilisation instantanée efficace

  20. Extention de la circulation de jeton • Extention directe : exclusion mutuelle auto-stabilisante efficace • Sûreté vérifiée dès le 3ème jeton • Avec une légère modification : Exclusion mutuelle instantanément stabilisante • Spécification : • Tout processeur demandeur finit par entrer en SC (Vivacité) • Si un processeur demandeur est en SC alors il est le seul en SC (Sûreté) Stabilisation instantanée efficace

  21. Conclusion • Simplicité • Solution avec un démon distribué inéquitable • Efficacité • Extension : • Exclusion mutuelle instantanément stabilisante Stabilisation instantanée efficace

  22. Perspectives • Peut-on obtenir un transformateur efficace pour des classes de protocoles plus larges ? • Existe-t-il une propriété plus faible que la propriété de « prise en main » permettant d’obtenir un transformateur efficace ? • Peut-on obtenir la propriété de « prise en main » automatiquement ? Stabilisation instantanée efficace

  23. Stabilisation instantanée efficace

More Related