gestion des pannes algorithmes de reconfiguration danneaux virtuels alexis clerc
TRANSCRIPT
![Page 1: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/1.jpg)
Gestion des pannes
Algorithmes de reconfigurationd’anneaux virtuels
Alexis CLERC
![Page 2: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/2.jpg)
Plan
Généralités sur les anneaux virtuelsProblématiquesAlgorithmes communsModélisation par réseaux de Pétri
![Page 3: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/3.jpg)
Anneaux virtuels : généralités
Contexte : système réparti DéfinitionsJeton
![Page 4: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/4.jpg)
Contexte : système réparti
Tolérance aux pannes Anneau virtuel
![Page 5: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/5.jpg)
Définitions
Connexion logiqueSitePanne
![Page 6: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/6.jpg)
Jeton
Message de contrôle uniqueDroits d’émissionDurée limitée
A
C B
TRT
THT(A) THT(B) THT(C)
d(A,B) d(B,C) d(C,A)
![Page 7: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/7.jpg)
Jeton
Message de contrôle uniqueDroits d’émissionDurée limitée
Target TRT
En avance
En retard
TRT
TRT THT (A)
THT (A)
AA A
![Page 8: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/8.jpg)
Problématiques
InitialisationInsertionFermeture de l’anneau après rupture de
liaison logique ou une panne de siteDétection et traitement d’un
partitionnement
![Page 9: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/9.jpg)
Initialisation
Un site isolé pose sa candidatureNégociation
I J K L
![Page 10: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/10.jpg)
Insertion
Si le consensus aboutit à un accordLes anciennes liaisons sont ferméesDe nouvelles liaisons avec le site candidat
sont ouvertes
I J K L
Oui, mais …..
![Page 11: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/11.jpg)
… des problèmes
Un inconvénientUne anomalieAutre propositionRaison fondamentale : l’asynchronisme
![Page 12: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/12.jpg)
Fermeture de l’anneau après rupture de liaison logique ou une panne de site
Anneau briséDétectionProcédure de fermeture
![Page 13: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/13.jpg)
Fermeture de l’anneau après rupture de liaison logique ou une panne de site
Anneau briséDétectionProcédure de fermetureUn exemple :
I J K L
Etat initial
![Page 14: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/14.jpg)
Fermeture de l’anneau après rupture de liaison logique ou une panne de site
Anneau briséDétectionProcédure de fermetureUn exemple :
Rupture de J-K détectée par K
I J K L
![Page 15: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/15.jpg)
Fermeture de l’anneau après rupture de liaison logique ou une panne de site
Anneau briséDétectionProcédure de fermetureUn exemple :
Rupture de K-L détectée par L
I J K L
![Page 16: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/16.jpg)
Fermeture de l’anneau après rupture de liaison logique ou une panne de site
Anneau briséDétectionProcédure de fermetureUn exemple :
Rupture de J-K détectée par J
I J K L
![Page 17: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/17.jpg)
Fermeture de l’anneau après rupture de liaison logique ou une panne de site
Anneau briséDétectionProcédure de fermetureUn exemple :
J et L sont disponibles → J-L établie
I J K L
![Page 18: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/18.jpg)
Fermeture de l’anneau après rupture de liaison logique ou une panne de site
Anneau briséDétectionProcédure de fermetureUn exemple :
Rupture de I-J détectée par I
I J K L
![Page 19: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/19.jpg)
Fermeture de l’anneau après rupture de liaison logique ou une panne de site
Anneau briséDétectionProcédure de fermetureUn exemple :
I et K sont disponibles → I-K établie
I J K L
![Page 20: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/20.jpg)
Fermeture de l’anneau après rupture de liaison logique ou une panne de site
Anneau briséDétectionProcédure de fermetureUn exemple :
Etat final : Anneau partitionné
I J K L
![Page 21: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/21.jpg)
Détection et traitement d’un partitionnement.
Réévaluation des liaisonsVoisins les plus prochesSuppression de l’initialisation
![Page 22: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/22.jpg)
Algorithmes communs
Pré-requisExclusion mutuelle par estampilles Election Terminaison Contrôle des accès concurrents et
traitements des interblocages
![Page 23: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/23.jpg)
Pré-requis
Précédence causale Ordonnancement par estampille Ordonnancement par horloges vectorielles
![Page 24: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/24.jpg)
Précédence causale
Précédence directe a précède b
a < b et site(a) = site(b) ou
a=site i .send(m) et b=site j .receive(m)
Précédence a -> b fermeture transitive de a précède b
Concurrence a // b non (a -> b) et non (b -> a).
![Page 25: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/25.jpg)
Ordonnancement par estampille
Horloge logique Hi de Si Quand e sur Si, Hi ++Quand Si.send(m), Em estampille(m) = HiQuand Sj.receive(m),Hj = max(Hj, E(m))+1Ordre total =>
Soit a sur Si et b sur Sj a => b Hi(a) < Hj(b) ou (Hi(a) = Hj(b) et i<j).
e(numéro de site, estampille)
![Page 26: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/26.jpg)
Ordonnancement par horloges vectorielles
Problème de => : a => b a -> b ou a et b causalement
indépendants
Soit un anneau à n sites Chaque Si a un Vi[1…n] Quand e sur Si, Vi[i] ++ Quand Si.send(m), Vm Estampille(m) = Vi Quand Sj.receive(m), Vj[k] := max (Vj[k], Vm[k])
pour k = 1, …, n
![Page 27: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/27.jpg)
Ordonnancement par horloges vectorielles (suite)
Soit événement a daté par Va Passé(a) = {a, {e/e->a}} Va[i] = # {e / (e->a, et e sur Si) } +1 Ordre partiel
V <= W V[k] <= W[k] pour k = 1, …, n V < W V <= W et V <> W V // W non (V <= W) et non (V <= W)
Précédence causale a -> b Va < Vb a et b causalement indépendants Va // Vb
![Page 28: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/28.jpg)
Exclusion mutuelle par estampilles
Application directe de l’ordonnancement des événements par estampilles
File d’attente répartie, ordonnée Un seul processus en section critique Pi demande l’autorisation, Pj la reçoit
Pj n’est en SC, et n’a pas fait de demande => accord Pj a fait un demande => accord ou accord différé Pj est en SC => accord différé
2(n-1) messages
![Page 29: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/29.jpg)
Election
Exemple : perte du jetonUn seul doit le régénérerChoix de l’élu arbitraire : Si / i max(1 …n)Algorithme de filtrage
Chaque Pi candidat transmet m(i) Quand Pj recoit m(i)
Si i < j, m(i) détruit et Pj candidat Sinon, Pj retransmet m(i)
![Page 30: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/30.jpg)
Terminaison
Détection de la fin d’un calcul répartiComparaison avec l’interblocage
Similitude : absence d’évolution Différence : non connu a priori
Détection en 2 tours de jeton Marquage des sites suivant leur activité Terminaison quand tous les sites sont marqués
inactifs
![Page 31: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/31.jpg)
Contrôle des accès concurrents et traitements des interblocages
Exécution séquentielle de processus concurrents
Conflit : actions incompatibles sur un objetRelation de dépendance << sur un grapheCycle sur le graphe = interblocageContrôle de dépendance
Contrôle continu Contrôle de terminaison
![Page 32: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/32.jpg)
Contrôle des accès concurrents et traitements des interblocages (suite)
Respect de l’ordre de verrouillage et méthode de détection-guérison des interblocages Graphe de dépendance = graphe d’attente Lors d’une détection de cycle p1-p2-…-pn
Un pi en jeu doit être annulé puis repris Choix du pi :
• Auteur de l’interblocage• Celui qui a verrouillé le moins de ressources• Le plus récent
![Page 33: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/33.jpg)
Contrôle des accès concurrents et traitements des interblocages (suite et fin)
Ordonnancement par estampille et méthodes de prévention des interblocages. Ordre établi par estampillage En cas de conflit :
si ordre respecté, action acceptée sinon, action annulée, puis reprise
Résultat : pas de cycles dans le graphe des attentes
![Page 34: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/34.jpg)
Modélisation par réseaux de Pétri
Analyse descendante Messages typiques Principe de suspicion Qualités de services des couches inférieures
Routage Transport
Pertes de messages détectées Messages non dupliqués Messages contrôlés, et donc supposés corrects Liaisons logiques surveillés par émission/acquittement de
messages de contrôle, avec un mécanisme de time-out
![Page 35: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/35.jpg)
Niveau 0 : Etat d’un site
Etats Inactif Actif
Transitions Traitement de reprise Défaillance
IN
AC
df tr
[ IN ( tr > AC ; AC ( df > IN ] *
![Page 36: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/36.jpg)
Niveau 1 : Etat d’un site / système
Etats Déconnecté
Transitions Traitement de défaillance Traitement de connexion
IN
AC
dfD
td
tcIN (tr > AC devient
IN (td > D ; D ( tc > AC
[IN (td > D ; D ( tc > AC ; AC ( df > IN ] *
![Page 37: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/37.jpg)
Niveau 2 : Etat d’un site / anneau
Etats Inactif coté successeur Inactif coté prédécesseur Actif coté successeur Actif coté prédécesseur
Transitions Défaillance coté successeur Défaillance coté prédécesseur
PI
AC devient SA et PA
IN devient SI et PIdf devient sdf et pdf
D
SI
PA SA
pdf sdf
td
tc
[ PI et SI ( td > D ; D ( tc > PA et SA ; [ PA ( pdf > PI // SA ( sdf > SI ] ]*
![Page 38: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/38.jpg)
Niveau 3 : Etat d’un site / voisins
Etats Liaisons ouvertes (PO, SO) Liaisons fermées (PF, SF)
Transitions Déconnexion quand liaison ouverte (ppo, spo) Déconnexion quand liaison fermée (ppf, spf) Ouverture de liaison (plo, slo) Fermeture de liaison (plf, slf) Rupture de liaison (plr, slr)
PI
PA devient PF ou PO
SA devient SF ou SO
sdf devient spo et spf
sdf devient spo et spf
D
SI
PF SF
ppf spf
td
tc
[ PF ( plo > PO ; PO ( plf ou plr > PF] // [ SF ( slo > SO ; SO ( slf ou slr > SF]
[ PF ( ppf > PI ou PO (ppo > PI ] // [ SF ( spf > SI ou SO (spo > SI ]
PO SO
ppo spo
plf slfplr plo slr slo
![Page 39: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/39.jpg)
Et plus encore !!
Messages de synchronisationIdentité des sites émetteurs et destinataires-> Réseaux de Pétri à prédicats
![Page 40: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/40.jpg)
Bibliographie
Modeling of a virtual ring protocol by means of Petri netsPascal Estraillier – Article présenté au 1er colloque de Génie logiciel
The Totem Single-Ring ordering and membership
protocolAmir, Moser, Melliar-Smith, Agarwal, Ciarfella – University of California
Depth first traversal and virtual ring construction in distribued systems
Helary, Raynal – Unité de recherche INRIA Rennes
Eléments fondamentaux des systèmes répartisMichel RIVEILL - Projet IMAG-INRIA Sirac
![Page 41: Gestion des pannes Algorithmes de reconfiguration danneaux virtuels Alexis CLERC](https://reader036.vdocuments.net/reader036/viewer/2022081505/551d9d81497959293b8bafaa/html5/thumbnails/41.jpg)
Remerciements
INRIA pour m’avoir envoyé ses articlesMr Terrat pour m’avoir prêté l’article sur
les réseaux de Petri en françaisVous, pour votre attention !