33
Stabilisation instantanée efficace Alain Cournier, Stéphane Devismes et Vincent Villain Séminaire FRAGILE, le 19 juin 2007, LIP6

Stabilisation instantanée efficace

  • Upload
    africa

  • View
    50

  • Download
    0

Embed Size (px)

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

Citation preview

Page 1: Stabilisation instantanée efficace

Stabilisation instantanée efficace

Alain Cournier, Stéphane Devismes et Vincent Villain

Séminaire FRAGILE, le 19 juin 2007, LIP6

Page 2: Stabilisation instantanée efficace

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.

Page 3: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 3

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

Etats légitimesEtats illégitimes

Page 4: Stabilisation instantanée efficace

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(.)

Page 5: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 5

Exemple: imprimante partagée

Page 6: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 6

Auto-stabilisation

1.X2.XN.X

Page 7: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 7

Stabilisation instantanée

1.X

Page 8: Stabilisation instantanée efficace

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)

Page 9: Stabilisation instantanée efficace

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

Page 10: Stabilisation instantanée efficace

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

Page 11: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 11

PIR : Propagation d’information avec retour

r

Page 12: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 12

A partir d’une configuration quelconque

r

Page 13: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 13

Problème : quand exécuter le retour ?

r r

Page 14: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 14

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

Q

Page 15: Stabilisation instantanée efficace

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

Page 16: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 16

Deuxième cas

r

OK OK OK

OK

OK

OKOK

Pré-traitement : Reset

Page 17: Stabilisation instantanée efficace

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 …

Page 18: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 18

Transformateur

Algorithme non tolérant aux fautes

Algorithme instantanément stabilisant

Page 19: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 19

Les autres transformateurs

Transformateur auto-stabilisant de

[Katz et Perry, 1993]

(modèle à passage de messages)

Page 20: Stabilisation instantanée efficace

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)

Page 21: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 21

Transformateur de [Cournier et al, 2003]

KP Auto(P)

P

CDPV Snap(P)

Page 22: Stabilisation instantanée efficace

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

Page 23: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 23

Transformateur instantanément stabilisant efficace

Page 24: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 24

Exemple : Circulation de jeton en profondeur

r

Prédicat PriseEnMain(r

)

Page 25: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 25

Exemple : Circulation de jeton en profondeur

r

PriseEnMain(r)

est vérifié

Page 26: Stabilisation instantanée efficace

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é

Page 27: Stabilisation instantanée efficace

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 …

Page 28: Stabilisation instantanée efficace

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

Page 29: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 29

Page 30: Stabilisation instantanée efficace

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

Page 31: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 31

Conclusion

Simplicité

Solution avec un démon distribué inéquitable

Efficacité

Page 32: Stabilisation instantanée efficace

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 ?

Page 33: Stabilisation instantanée efficace

Stéphane Devismes, FRAGILE, 19 juin 2007 33