Stabilisation instantanée efficace

Post on 23-Jan-2016

51 views 0 download

description

Stabilisation instantanée efficace. Alain Cournier, Stéphane Devismes et Vincent Villain Séminaire FRAGILE, le 19 juin 2007, LIP6. Stabilisation ?. Auto-stabilisation (Dijkstra, 1974) - PowerPoint PPT Presentation

Transcript of Stabilisation instantanée efficace

Stabilisation instantanée efficace

Alain Cournier, Stéphane Devismes et Vincent Villain

Séminaire FRAGILE, le 19 juin 2007, LIP6

Stéphane Devismes, FRAGILE, 19 juin 2007 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.

Stéphane Devismes, FRAGILE, 19 juin 2007 3

Auto-stabilisation : point de vue « système »

Etats légitimesEtats illégitimes

Stéphane Devismes, FRAGILE, 19 juin 2007 4

Stabilisation instantanée : point de vue « utilisateur »

A partir de n’importe quelle configuration initiale, assurer un service spécifique dès la première requête.

1.X F(X)F(.)

Stéphane Devismes, FRAGILE, 19 juin 2007 5

Exemple: imprimante partagée

Stéphane Devismes, FRAGILE, 19 juin 2007 6

Auto-stabilisation

1.X2.XN.X

Stéphane Devismes, FRAGILE, 19 juin 2007 7

Stabilisation instantanée

1.X

Stéphane Devismes, FRAGILE, 19 juin 2007 8

Modèle à états

Mémoire localement partagée

Algorithme sous forme de règles gardées :

Garde(p) → Traitement(p)

Stéphane Devismes, FRAGILE, 19 juin 2007 9

Modèle à états

Exécutions gérées par un démon :

α0 → α1 → … → αi → αi+1 → …→ αk

αiαi+1

Stéphane Devismes, FRAGILE, 19 juin 2007 10

Modèle à états

Caractéristiques des démons :

Propriété d’un choix : répartition Séquentiel Synchrone Distribué

Propriété sur une suite de choix : équité Fortement équitable Faiblement équitable Inéquitable

Stéphane Devismes, FRAGILE, 19 juin 2007 11

PIR : Propagation d’information avec retour

r

Stéphane Devismes, FRAGILE, 19 juin 2007 12

A partir d’une configuration quelconque

r

Stéphane Devismes, FRAGILE, 19 juin 2007 13

Problème : quand exécuter le retour ?

r r

Stéphane Devismes, FRAGILE, 19 juin 2007 14

Solution : Question / Réponse [Blin et al,2003]

Q

Stéphane Devismes, FRAGILE, 19 juin 2007 15

Premier cas

r

QQ

Q

Q Q

Q

Q

Q

OK

OK

OK

OK

OK

OK

OK

OK

OK

Stéphane Devismes, FRAGILE, 19 juin 2007 16

Deuxième cas

r

OK OK OK

OK

OK

OKOK

Pré-traitement : Reset

Stéphane Devismes, FRAGILE, 19 juin 2007 17

PIR instantanément stabilisant[Cournier, Devismes et Villain, 2006]

Avantage : démon distribué inéquitable Nombre borné d’étapes par vague

Outil de base : Reset Snapshot Détection de termination …

Stéphane Devismes, FRAGILE, 19 juin 2007 18

Transformateur

Algorithme non tolérant aux fautes

Algorithme instantanément stabilisant

Stéphane Devismes, FRAGILE, 19 juin 2007 19

Les autres transformateurs

Transformateur auto-stabilisant de

[Katz et Perry, 1993]

(modèle à passage de messages)

Stéphane Devismes, FRAGILE, 19 juin 2007 20

Les autres transformateurs

Transformateur instantanément stabilisant de

[Cournier, Datta, Petit et Villain, 2003]

(modèle à états)

Stéphane Devismes, FRAGILE, 19 juin 2007 21

Transformateur de [Cournier et al, 2003]

KP Auto(P)

P

CDPV Snap(P)

Stéphane Devismes, FRAGILE, 19 juin 2007 22

Transformateur de [Cournier et al, 2003]

Snapshots

Inconvénients : Prédicat Réseau identifié Nombre de snapshots non bornable

Conséquence : nombre d’étapes de calculs pour une vague non bornable

Stéphane Devismes, FRAGILE, 19 juin 2007 23

Transformateur instantanément stabilisant efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 24

Exemple : Circulation de jeton en profondeur

r

Prédicat PriseEnMain(r

)

Stéphane Devismes, FRAGILE, 19 juin 2007 25

Exemple : Circulation de jeton en profondeur

r

PriseEnMain(r)

est vérifié

Stéphane Devismes, FRAGILE, 19 juin 2007 26

Reset : PIR

PIR instantanément stabilisant :

Phase de diffusion : Les processeurs stoppent l’exécution du protocole initial

Phase de retour : les variables du protocole initial sont réinitialisées

Avantage : surcoût borné en nombre d’étapes ⇒ Efficacité

Stéphane Devismes, FRAGILE, 19 juin 2007 27

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 …

Stéphane Devismes, FRAGILE, 19 juin 2007 28

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

Stéphane Devismes, FRAGILE, 19 juin 2007 29

Stéphane Devismes, FRAGILE, 19 juin 2007 30

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é

DFSTCDV05CDPV04HC93

Stéphane Devismes, FRAGILE, 19 juin 2007 31

Conclusion

Simplicité

Solution avec un démon distribué inéquitable

Efficacité

Stéphane Devismes, FRAGILE, 19 juin 2007 32

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 ?

Stéphane Devismes, FRAGILE, 19 juin 2007 33