Stabilisation instantanée efficace

Preview:

DESCRIPTION

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) - PowerPoint PPT Presentation

Citation preview

Stabilisation instantanée efficace

Alain Cournier, Stéphane Devismes et Vincent Villain

Séminaire à l’université de Reims, le 5 avril 2007

Stabilisation instantanée efficace 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] :1. Chaque exécution (vague) de P se déroule en un temps fini2. Chaque exécution de P contient au moins une décision3. 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

Algorithme à vagues auto-stabilisant

1.X ≠ F(X)2.X ≠ F(X)3.X ≠ F(X)4.X ≠ F(X)N.X F(X)

N est fini mais non borné

F(.)

Stabilisation instantanée efficace 5

Algorithme à vagues instantanément stabilisant

1.X F(X)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]

KP Auto(P)

P

CDPV Snap(P)

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é

Θ(1)Θ(n)Θ(1)Θ(1)Surcoût

Θ(∆n3)Θ(∆n3)Θ(n²)∞Exécution(étapes)

Θ(n)Θ(n²)Θ(n)Θ(Dn)Exécution(rondes)

Θ(log n)Θ(log n)Θ(n log n)Θ(log n)Mémoire

IIIFEquité

DFSTSSS’05Opodis’04HC93

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

Recommended