K-parmi-L exclusion auto-stabilisante - Semantic Scholar

13 mai 2008 - Ajoy K. Datta University of Nevada. Stéphane Devismes CNRS, LRI. Florian Horn LIAFA. Lawrence L. Larmore University of Nevada. Pr ésent é ...
804KB taille 4 téléchargements 209 vues
K-parmi-L exclusion auto-stabilisante Ajoy K. Datta University of Nevada ´ Stephane Devismes CNRS, LRI Florian Horn LIAFA Lawrence L. Larmore University of Nevada ´ Present e´ par

Samuel Bernard UPMC/LIP6 Algotel’2008, Saint-Malo

13 mai 2008

Datta et al (Algotel’08)

K-parmi-L exclusion auto-stabilisante

13 mai 2008

1 / 12

Introduction

` Modele

Solution non auto-stabilisante

´ Un regulateur auto-stabilisant

Conclusion

K-parmi-L exclusion [Raynal, 1991] ` Probleme de partage de ressources ´ d’une meme ˆ L unites ressource ´ (K ≤ L) Chaque processeur peut demander jusqu’a` K unites

´ ´ vivacite´ et efficacite´ Specification : suret ˆ e, ´ peut etre ˆ suret ˆ e´ : Chaque unite´ de la ressource partagee ´ par au plus un processeur a` la fois et au plus L unites ´ utilisee ˆ ´ simultanement ´ peuvent etre utilisees ´ doit etre ˆ vivacite´ : Toute demande d’au plus K unites satisfaite en un temps fini efficacite´ : Le plus grand nombre possible de demandes doit ˆ ´ etre satisfait simultanement Datta et al (Algotel’08)

K-parmi-L exclusion auto-stabilisante

13 mai 2008

2 / 12

` Modele

Introduction

´ Un regulateur auto-stabilisant

Solution non auto-stabilisante

Conclusion

états du système

Auto-stabilisation [Dijkstra, 1974]

incorrect

correct pannes

pannes

temps

´ Tolerance aux pannes ´ erale ´ ´ Technique gen pour tolerer les fautes transitoires Datta et al (Algotel’08)

K-parmi-L exclusion auto-stabilisante

13 mai 2008

3 / 12

Introduction

` Modele

Solution non auto-stabilisante

´ Un regulateur auto-stabilisant

Conclusion

´ edents ´ Travaux prec

Deux approches classiques Protocoles a` permissions [Raynal, 1991] (solution non auto-stabilisante)

Circulation de jetons [Datta, Hadid et Villain, 2003] (solution auto-stabilisante, temps de stabilisation : 5n rondes)

Datta et al (Algotel’08)

K-parmi-L exclusion auto-stabilisante

13 mai 2008

4 / 12

Introduction

` Modele

Solution non auto-stabilisante

´ Un regulateur auto-stabilisant

Conclusion

Plan

1

` Modele

2

Solution non auto-stabilisante

3

´ Un regulateur auto-stabilisant

4

Conclusion

Datta et al (Algotel’08)

K-parmi-L exclusion auto-stabilisante

13 mai 2008

5 / 12

` Modele

Introduction

´ Un regulateur auto-stabilisant

Solution non auto-stabilisante

Conclusion

` et approche Modele ` Modele Passage de messages a` capacite´ borne´ (Cmax ) et FIFO Anneau unidirectionnel et enracine´ Racine

0 1

4

3

2

Approche modulaire Protocole na¨ıf non-auto-stabilisant ´ Regulateur pour l’auto-stabilisation Datta et al (Algotel’08)

K-parmi-L exclusion auto-stabilisante

13 mai 2008

6 / 12

` Modele

Introduction

´ Un regulateur auto-stabilisant

Solution non auto-stabilisante

Conclusion

Ressources = Jetons

Circulation de L jetons ressources ` Probleme d’interblocage :

Need4 = 2 Cnt4 = 0

0

0

Need0 = 2 Cnt0 = 0

Need0 = 2 Cnt0 = 1

1

4

Need3 = 2 Cnt3 = 0

Datta et al (Algotel’08)

3

2

Need1 = 2 Cnt1 = 0

Need2 = 2 Cnt2 = 0

Need4 = 2 Cnt4 = 1

1

4

Need3 = 2 Cnt3 = 1

K-parmi-L exclusion auto-stabilisante

3

2

Need1 = 2 Cnt1 = 1

Need2 = 2 Cnt2 = 1

13 mai 2008

7 / 12

` Modele

Introduction

´ Un regulateur auto-stabilisant

Solution non auto-stabilisante

Conclusion

Jeton pousseur ´ ˆ Sur reception du jeton pousseur, un processeur « relache » ses jetons ressources ` de famine : Probleme 0

Need0 = 1 Cnt0 = 0

2

Need2 = 2 Cnt2 = 0

1

(a) 0

Need1 = 1 Cnt1 = 0 Need0 = 1 Cnt0 = 1

2

Need2 = 2 Cnt2 = 1

1

(d)

Datta et al (Algotel’08)

Need1 = 1 Cnt1 = 1

0

2

Need2 = 2 Cnt2 = 1

1

(b) 0

2

Need2 = 2 Cnt2 = 0

Need0 = 1 Cnt0 = 1

Need1 = 1 Cnt1 = 1 Need0 = 1 Cnt0 = 1

1

(e)

Need1 = 1 Cnt1 = 1

K-parmi-L exclusion auto-stabilisante

Need0 = 1 Cnt0 = 1

0

2

Need2 = 2 Cnt2 = 1

1

(c) 0

2

Need2 = 2 Cnt2 = 0

Need1 = 1 Cnt1 = 1 Need0 = 1 Cnt0 = 0

1

(f)

Need1 = 1 Cnt1 = 0

13 mai 2008

8 / 12

Introduction

` Modele

Solution non auto-stabilisante

´ Un regulateur auto-stabilisant

Conclusion

Jeton priorite´

Annule l’effet du jeton pousseur Le jeton priorite´ est conserve´ par le processeur jusqu’a` satisfaction de sa demande ` Un processeur qui possede le jeton priorite´ n’est pas tenu ˆ de relacher ses jetons s’il rec¸oit le jeton pousseur : il renvoie uniquement le jeton pousseur a` son successeur

Datta et al (Algotel’08)

K-parmi-L exclusion auto-stabilisante

13 mai 2008

9 / 12

Introduction

` Modele

Solution non auto-stabilisante

´ Un regulateur auto-stabilisant

Conclusion

` Compter les jetons avec un jeton privilege ` sert de point de repere ` Le jeton privilege ´ ` Entre deux receptions du privilege, le processeur racine compte le nombre de jetons de chaque type et ajuste ce ´ nombre si celui-ci n’est pas adequat ` peut doubler des jetons Attention : le jeton privilege ´ Lorsqu’un processeur a reserv e´ des jetons ressource et ` qu’il rec¸oit le jeton privilege, il garde ses jetons ressource ` ´ mais renvoie le jeton privilege (pour eviter les interblocages) Pour ne pas oublier ces jetons, le processeur met a` jour le ´ » du jeton privilege ` champ « nombre de jetons doubles avant de le renvoyer Datta et al (Algotel’08)

K-parmi-L exclusion auto-stabilisante

13 mai 2008

10 / 12

Introduction

` Modele

Solution non auto-stabilisante

´ Un regulateur auto-stabilisant

Conclusion

` Stabiliser le jeton privilege [Varghese, 2000]

Une variable Ci variant de 0 a` a` n(Cmax + 1) − 1 ´ Chaque processeur envoie periodiquement a` son successeur des messages avec cette valeur. ´ Sur reception d’un message avec la valeur c : ` qu’un message est un jeton privilege ` La racine considere ´ valide si c = C0 . Dans ce cas, elle incremente C0 modulo n(Cmax + 1). ` qu’un message est un jeton Le processeur i 6= 0 considere ` privilege valide si c 6= Ci . Dans ce cas, il donne a` Ci la valeur c.

Datta et al (Algotel’08)

K-parmi-L exclusion auto-stabilisante

13 mai 2008

11 / 12

Introduction

` Modele

Solution non auto-stabilisante

´ Un regulateur auto-stabilisant

Conclusion

Conclusion

Approche intuive mais efficace : temps de stabilisation meilleur que pour les autres solutions (4n rondes) ´ Extension possible au reseau enracine´ quelconque (en utilisant une circulation de jeton en profondeur comme [Petit et Villain, 1997])

` Approche modulaire appliquable a` d’autres problemes

Datta et al (Algotel’08)

K-parmi-L exclusion auto-stabilisante

13 mai 2008

12 / 12