Algorithme de consensus

publicité
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Environnement
Caractérisation de l’architecture
Observations d’exécutions d’algorithmes de
consensus sur réseaux ad-hoc sans fil
Corine Marchand
Jean-Marc Vincent
NTNU
Laboratoire ID-IMAG (UMR 5132), Projet Apache.
Projet MIRRA : Contrat de collaboration INRIA - France Télécom R&D
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Environnement
Caractérisation de l’architecture
Environnement
Objets Communicants
Environnement type
Ordinateurs portables
Assistants personnels
Téléphones cellulaires
...
Réseau ad-hoc sans fil
WIFI
Bluetooth
...
Principe
Les entités partagent des services et collaborent au maintien de la
communauté
Exemples : Réunion de travail, jeux en réseau
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Environnement
Caractérisation de l’architecture
Applications sur réseaux sans fil
Architecture dynamique
Comportement des objets communicants
→
Connexions / Déconnexions
Comportement de l’interconnexion
Communications non fiables
Variabilité des latences
Hétérogénéité
⇒ Infrastructure middleware distribuée dynamique.
Problématique
Evaluation de l’infrastructure
→ évolution temporelle du comportement
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Environnement
Caractérisation de l’architecture
Applications sur réseaux sans fil
Architecture dynamique
Comportement des objets communicants
→
Connexions / Déconnexions
Comportement de l’interconnexion
Communications non fiables
Variabilité des latences
Hétérogénéité
⇒ Infrastructure middleware distribuée dynamique.
Problématique
Evaluation de l’infrastructure
→ évolution temporelle du comportement
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Environnement
Caractérisation de l’architecture
Applications sur réseaux sans fil
Architecture dynamique
Comportement des objets communicants
→
Connexions / Déconnexions
Comportement de l’interconnexion
Communications non fiables
Variabilité des latences
Hétérogénéité
⇒ Infrastructure middleware distribuée dynamique.
Problématique
Evaluation de l’infrastructure
→ évolution temporelle du comportement
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Environnement
Caractérisation de l’architecture
1
Contexte Général
2
Module de consensus en environnement variable
3
Méthodologie pour l’observation
4
Traces d’éxecution
5
Conclusions et Perspectives
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Problématique
Intérêts de l’approche
Approche globale
Objectif général :
Validation comportementale des modules middleware développés.
Observation du comportement en fonction de l’évolution temporelle du
système
Analyse des traces d’execution obtenues (spécification)
Méthodologie
Caractérisation de l’environnement
Identification et quantification des points de mesures.
Spécification des informations pertinentes
Identification et enregistrement des événements représentatifs.
Visualisation
Vérification de la conformité.
Analyse qualitative et quantitative.
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Problématique
Intérêts de l’approche
Approche globale
Objectif général :
Validation comportementale des modules middleware développés.
Observation du comportement en fonction de l’évolution temporelle du
système
Analyse des traces d’execution obtenues (spécification)
Méthodologie
Caractérisation de l’environnement
Identification et quantification des points de mesures.
Spécification des informations pertinentes
Identification et enregistrement des événements représentatifs.
Visualisation
Vérification de la conformité.
Analyse qualitative et quantitative.
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Problématique
Intérêts de l’approche
Intérêts
Validation expérimentale du fonctionnement des modules implémentés
Adaptation des solutions algorithmiques proposées (conceptuelle)
Réglage des paramètres
Qualité de service des modules de l’infrastructure (Analyse de
performances)
Qualité de service
Fonction du paramétrage
Compromis entre réactivité et fiabilité
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Problématique
Intérêts de l’approche
Intérêts
Validation expérimentale du fonctionnement des modules implémentés
Adaptation des solutions algorithmiques proposées (conceptuelle)
Réglage des paramètres
Qualité de service des modules de l’infrastructure (Analyse de
performances)
Qualité de service
Fonction du paramétrage
Compromis entre réactivité et fiabilité
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Exemple : Algorithme de consensus
Adaptation de l’algorithme de consensus
Automate de l’algorithme
Module de consensus
Principe algorithmique
Algorithme de Chandra & Toueg
Hypothèses
Communications fiables
Majorité de processus
corrects
Principe de fonctionnement
Rounds asynchrones
1 coordinateur par round
4 étapes par round
[email protected],
[email protected]
CFSE’4 - Avril 2005
[Chandra-Toueg 96]
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Exemple : Algorithme de consensus
Adaptation de l’algorithme de consensus
Automate de l’algorithme
Module de consensus
Principe algorithmique
Algorithme de Chandra & Toueg
Hypothèses
Communications fiables
Coordinateur
Majorité de processus
corrects
Principe de fonctionnement
Rounds asynchrones
1 coordinateur par round
ROUND
4 étapes par round
[email protected],
[email protected]
CFSE’4 - Avril 2005
[Chandra-Toueg 96]
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Exemple : Algorithme de consensus
Adaptation de l’algorithme de consensus
Automate de l’algorithme
Module de consensus
Principe algorithmique
Algorithme de Chandra & Toueg
Hypothèses
Communications fiables
Coordinateur
PHASE 2
PHASE 4
Majorité de processus
corrects
Principe de fonctionnement
Rounds asynchrones
PHASE 1
1 coordinateur par round
PHASE 3
ROUND
4 étapes par round
[email protected],
[email protected]
CFSE’4 - Avril 2005
[Chandra-Toueg 96]
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Exemple : Algorithme de consensus
Adaptation de l’algorithme de consensus
Automate de l’algorithme
Module de consensus
Principe algorithmique
Algorithme de Chandra & Toueg
Hypothèses
Communications fiables
Majorité de processus
corrects
Coordinateur
PHASE 2
PHASE 4
VALEUR
Principe de fonctionnement
Rounds asynchrones
PHASE 1
1 coordinateur par round
PHASE 3
ROUND
4 étapes par round
[email protected],
[email protected]
CFSE’4 - Avril 2005
[Chandra-Toueg 96]
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Exemple : Algorithme de consensus
Adaptation de l’algorithme de consensus
Automate de l’algorithme
Module de consensus
Principe algorithmique
Algorithme de Chandra & Toueg
Hypothèses
Communications fiables
Majorité de processus
corrects
Coordinateur
PHASE 2
PHASE 4
VALEUR
PROPOSITION
Principe de fonctionnement
Rounds asynchrones
PHASE 1
1 coordinateur par round
PHASE 3
ROUND
4 étapes par round
[email protected],
[email protected]
CFSE’4 - Avril 2005
[Chandra-Toueg 96]
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Exemple : Algorithme de consensus
Adaptation de l’algorithme de consensus
Automate de l’algorithme
Module de consensus
Principe algorithmique
Algorithme de Chandra & Toueg
Hypothèses
Communications fiables
Coordinateur
PHASE 2
PHASE 4
Majorité de processus
corrects
VALEUR
PROPOSITION
Principe de fonctionnement
Rounds asynchrones
1 coordinateur par round
PHASE 1
PHASE 3
ROUND
4 étapes par round
[email protected],
[email protected]
CFSE’4 - Avril 2005
ACK
[Chandra-Toueg 96]
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Exemple : Algorithme de consensus
Adaptation de l’algorithme de consensus
Automate de l’algorithme
Module de consensus
Principe algorithmique
Algorithme de Chandra & Toueg
[Chandra-Toueg 96]
Hypothèses
Communications fiables
Coordinateur
PHASE 2
PHASE 4
Majorité de processus
corrects
VALEUR
PROPOSITION
Principe de fonctionnement
Rounds asynchrones
1 coordinateur par round
PHASE 1
PHASE 3
ROUND
4 étapes par round
[email protected],
[email protected]
CFSE’4 - Avril 2005
ACK
DECISION
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Exemple : Algorithme de consensus
Adaptation de l’algorithme de consensus
Automate de l’algorithme
Implémentation du module de consensus
Fiabilisation des communications
Module de retransmission périodique
[Guerraoui-Oliveira-Schiper 97]
Choix de la politique de réémission
Nombre de réémissions, Période de réémission, Type de messages réémis
Gestion des entités
Fluctuation du nombre d’entités présentes
⇒
attentes longues
Utilisation systématique des détecteurs de défaillances
⇒
force le passage au round suivant en cas d’instabilité
Interrogations des détecteurs couplées avec le module de retransmission
Diffusion de la décision
Protocole de diffusion agressive de la valeur de décision
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Exemple : Algorithme de consensus
Adaptation de l’algorithme de consensus
Automate de l’algorithme
Diagramme de comportement
Description de l’algorithme
rcv(Estimate)
C−Wait−Estimate
INIT
C−Wait−Ack
Coord and
bc(Estimate)
majority(Ack)
and bc(Decision)
rcv(Nack)
suspect(Coord)
and send(Nack)
CHANGE
ROUND
rcv(Ack)
majority(Estimate)
and bc(Proposition)
END
CHECK
COORD
not(suspect(Coord))
and send(Ack)
not(Coord) and
send(Estimate)
P−Wait−Proposition
[email protected],
[email protected]
rcv(Decision)
rcv(Proposition)
P−Wait−Decision
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Exemple : Algorithme de consensus
Adaptation de l’algorithme de consensus
Automate de l’algorithme
Diagramme de comportement
Description de l’algorithme
! stable
rcv(Estimate)
C−Wait−Estimate
C−Wait−Ack
Coord and
bc(Estimate)
INIT
majority(Ack)
and bc(Decision)
rcv(Nack)
suspect(Coord)
and send(Nack)
CHANGE
ROUND
rcv(Ack)
majority(Estimate)
and bc(Proposition)
END
CHECK
COORD
not(suspect(Coord))
and send(Ack)
not(Coord) and
send(Estimate)
! stable
P−Wait−Proposition
[email protected],
[email protected]
rcv(Decision)
rcv(Proposition)
P−Wait−Decision
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Instrumentation - Prise de mesures
Traitement post-mortem
Spécification de la visualisation
Instrumentation - Prise de mesures
Informations pertinentes pour l’observation
Evénements relatif à l’algorithme
Informations relatant de la vision locale du système global
Informations niveau réseau
Extraction d’information multi-niveaux
Intrumentation
APPLICATIONS
Module de Consensus
Détecteur
de Défaillances
Module de
Fiabilisation
RESEAU
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Instrumentation - Prise de mesures
Traitement post-mortem
Spécification de la visualisation
Instrumentation - Prise de mesures
Informations pertinentes pour l’observation
Evénements relatif à l’algorithme
Informations relatant de la vision locale du système global
Informations niveau réseau
Extraction d’information multi-niveaux
APPLICATIONS
Intrumentation
Enregistrements des
changements d’état relatifs
à l’algorithme de consensus
Module de Consensus
Détecteur
de Défaillances
Module de
Fiabilisation
RESEAU
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Instrumentation - Prise de mesures
Traitement post-mortem
Spécification de la visualisation
Instrumentation - Prise de mesures
Informations pertinentes pour l’observation
Evénements relatif à l’algorithme
Informations relatant de la vision locale du système global
Informations niveau réseau
Extraction d’information multi-niveaux
Intrumentation
Enregistrements des
changements d’état relatifs
à l’algorithme de consensus
APPLICATIONS
Enregistrements des
suspicions (expirations
des temporisations)
Module de Consensus
Détecteur
de Défaillances
Module de
Fiabilisation
RESEAU
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Instrumentation - Prise de mesures
Traitement post-mortem
Spécification de la visualisation
Instrumentation - Prise de mesures
Informations pertinentes pour l’observation
Evénements relatif à l’algorithme
Informations relatant de la vision locale du système global
Informations niveau réseau
Extraction d’information multi-niveaux
Intrumentation
Enregistrements des
changements d’état relatifs
à l’algorithme de consensus
APPLICATIONS
Enregistrements des
suspicions (expirations
des temporisations)
Module de Consensus
Détecteur
de Défaillances
Module de
Fiabilisation
Enregistrements des
retransmissions de
messages
RESEAU
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Instrumentation - Prise de mesures
Traitement post-mortem
Spécification de la visualisation
Instrumentation - Prise de mesures
Informations pertinentes pour l’observation
Evénements relatif à l’algorithme
Informations relatant de la vision locale du système global
Informations niveau réseau
Extraction d’information multi-niveaux
Intrumentation
Enregistrements des
changements d’état relatifs
à l’algorithme de consensus
APPLICATIONS
Enregistrements des
suspicions (expirations
des temporisations)
Module de Consensus
Détecteur
de Défaillances
Module de
Fiabilisation
RESEAU
[email protected],
[email protected]
Enregistrements des
retransmissions de
messages
Enregistrements des
messages capturés
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Instrumentation - Prise de mesures
Traitement post-mortem
Spécification de la visualisation
Instrumentation
Phase d’instrumentation
Librairie d’instrumentation
Capteur passif du réseau
Multi-niveaux :
Estampillage événements / messages
Gestion de numéro d’ordre
⇒ Perturbations
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Instrumentation - Prise de mesures
Traitement post-mortem
Spécification de la visualisation
Traitement post-mortem
Traitement
Mise en relation des événements collectés par les différents sites.
Problème : les événements collectés sont estampillés par la date locale
⇒ Extrapolation d’une horloge globale
Cohérence de traces
Date Emission
Locale (D1)
Module Consensus
Délai inter−émissions DD
Site
Emetteur
Détecteur
D2
Réseau
Délai inter−émissions réseau
Délai entre deux réceptions réseau sur le site récepteur
Réseau
D3
Site
Récepteu
Détecteur
Délai inter−réceptions DD
Module Consensus
Date Réception
Locale (D4)
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Instrumentation - Prise de mesures
Traitement post-mortem
Spécification de la visualisation
Spécification de la visualisation
Outil de visualisation graphique : Pajé
[http ://www-id.imag.fr/Logiciels/paje/]
Modèle de visualisation
SITES
Processus
Détecteur
Heartbeats
Processus
Consensus
Suspicions
États
Init
CWaitEstimate
CWaitAck
PWaitProp
PWaitDecision
End
[email protected],
[email protected]
Processus
Retransmission
Compteurs
Messages
Estimate
Proposition
Ack
Nack
Decision
Forward
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Plateforme expérimentale
Plan d’expérience
Observation de l’exécution de consensus
Plateforme expérimentale
Contexte
réseau sous-jacent : 802.11b
6 entités présentes (4 PDAs, 2 portables)
1 entité = capteur réseau (1 PC)
Paramétrage
Période des heartbeats : 500 ms (fréquences : 2 pulsations / s)
Temporisation : 1500 ms
”Consensus Polling” : 2000 ms (interrogation DD + retransmission)
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Plateforme expérimentale
Plan d’expérience
Observation de l’exécution de consensus
Plan d’expérience
Plan d’expérience
1 expérience → série de 1000 consensus
Conditions : ”salle blanche”
Classification des comportements :
Comportement ”idéal”
Démarche : visualisation de quelques traces d’exécution
Illustration de suspicions
Exploration des traces : Recherche d’événements particuliers
Analyse autour de l’événement isolé
Impact de défaillances
Introduction volontaire de défaillances
Analyse comportementale
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Plateforme expérimentale
Plan d’expérience
Observation de l’exécution de consensus
Observation de l’exécution de l’algorithme de consensus
Diagramme post-mortem d’un consensus ne donnant lieu à aucune suspicion
Durée du consensus
(pour l’initiateur : PC5)
Attente majorité d’estimations
temps
(ms)
0
5
10
15
20
25
30
Acquittement tardif
force le renvoi agressif de la décision
Attente majorité d’Ack
35
40
45
50
55
60
65
70
PC−0
PC−5
PDA−1
PDA−2
PDA−3
PDA−4
Phase Décision
Phase d’Estimation
Phase Proposition
⇒ Adéquation au schéma théorique général
Préconisations :
Amélioration de la qualité de service
→ réduction des phases d’attente
[email protected],
[email protected]
CFSE’4 - Avril 2005
75
80
85
90
95
100
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Plateforme expérimentale
Plan d’expérience
Observation de l’exécution de consensus
Observation de l’exécution de l’algorithme de consensus
Diagramme post-mortem d’un consensus ne donnant lieu à aucune suspicion
Durée du consensus
(pour l’initiateur : PC5)
Attente majorité d’estimations
temps
(ms)
0
5
10
15
20
25
30
Acquittement tardif
force le renvoi agressif de la décision
Attente majorité d’Ack
35
40
45
50
55
60
65
70
PC−0
PC−5
PDA−1
PDA−2
PDA−3
PDA−4
Phase Décision
Phase d’Estimation
Phase Proposition
⇒ Adéquation au schéma théorique général
Préconisations :
Amélioration de la qualité de service
→ réduction des phases d’attente
[email protected],
[email protected]
CFSE’4 - Avril 2005
75
80
85
90
95
100
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Plateforme expérimentale
Plan d’expérience
Observation de l’exécution de consensus
Observation de l’exécution de l’algorithme de consensus
Diagramme post-mortem d’un consensus ne donnant lieu à aucune suspicion
Durée du consensus
(pour l’initiateur : PC5)
Attente majorité d’estimations
temps
(ms)
0
5
10
15
20
25
30
Acquittement tardif
force le renvoi agressif de la décision
Attente majorité d’Ack
35
40
45
50
55
60
65
70
PC−0
PC−5
PDA−1
PDA−2
PDA−3
PDA−4
Phase Décision
Phase d’Estimation
Phase Proposition
⇒ Adéquation au schéma théorique général
Préconisations :
Amélioration de la qualité de service
→ réduction des phases d’attente
[email protected],
[email protected]
CFSE’4 - Avril 2005
75
80
85
90
95
100
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Plateforme expérimentale
Plan d’expérience
Observation de l’exécution de consensus
Résilience de l’infrastructure
Diagramme post-mortem d’un consensus illustrant une fausse suspicion
PDA2 suspecte le coordinateur (PC0)
et envoie un NACK
NACK message
temps
(ms) 0
5
10
15
20
25
30
35
Réception NACK après émission décision
45
75
50
40
55
60
65
70
PC0
PC5
PDA1
PDA2
PDA3
PDA4
Phase Décision (Round 1)
Phase Estimation
(Round 1)
Phase Proposition (Round 1)
Phase Estimation (Round 2)
Préconisations :
Raffinement de l’adaptation :
→ optimisation de la diffusion de décision
→ réglage des paramètres fonction du type d’entité
[email protected],
[email protected]
CFSE’4 - Avril 2005
80
85
90
95
100
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Plateforme expérimentale
Plan d’expérience
Observation de l’exécution de consensus
Résilience de l’infrastructure
Diagramme post-mortem d’un consensus illustrant une fausse suspicion
PDA2 suspecte le coordinateur (PC0)
et envoie un NACK
NACK message
temps
(ms) 0
5
10
15
20
25
30
35
Réception NACK après émission décision
45
75
50
40
55
60
65
70
PC0
PC5
PDA1
PDA2
PDA3
PDA4
Phase Décision (Round 1)
Phase Estimation
(Round 1)
Phase Proposition (Round 1)
Phase Estimation (Round 2)
Préconisations :
Raffinement de l’adaptation :
→ optimisation de la diffusion de décision
→ réglage des paramètres fonction du type d’entité
[email protected],
[email protected]
CFSE’4 - Avril 2005
80
85
90
95
100
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Plateforme expérimentale
Plan d’expérience
Observation de l’exécution de consensus
Résilience de l’infrastructure
Introduction d’une défaillance (→ déconnexion du coordinateur)
Diagramme post-mortem d’un consensus illustrant une défaillance
Temporisation de changement de round
Déconnexion coordinateur PC0
0
100
200
300
400
500
600
700
800
900
1000
1100
1200
1300
1400
1500
1600
1700
1800
1900
2000
2100
2200
PC0
PC5
PDA1
PDA2
PDA3
PDA4
ROUND 1
Préconisations :
Adaptation de la temporisation de changement de round
[email protected],
[email protected]
CFSE’4 - Avril 2005
ROUND 2
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Plateforme expérimentale
Plan d’expérience
Observation de l’exécution de consensus
Résilience de l’infrastructure
Introduction d’une défaillance (→ déconnexion du coordinateur)
Diagramme post-mortem d’un consensus illustrant une défaillance
Déconnexion du coordinateur PC0
après diffusion de la Proposition
Émission Proposition
50
60
70
80
90
100
110
120
130
140
150
160
170
180
190
PC0
PC5
PDA1
PDA2
PDA3
PDA4
messages ESTIMATE
messages ACK
Diffusion Proposition
Préconisations :
Adaptation de la temporisation de changement de round
[email protected],
[email protected]
CFSE’4 - Avril 2005
200
210
220
230
240
250
260
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Plateforme expérimentale
Plan d’expérience
Observation de l’exécution de consensus
Résilience de l’infrastructure
Introduction d’une défaillance (→ déconnexion du coordinateur)
Diagramme post-mortem d’un consensus illustrant une défaillance
Suspicion de PC0 par PC5 qui déclenche le round 2 (coordinateur : PDA1)
2100 2105 2110 2115 2120 2125 2130 2135 2140 2145 2150 2155 2160 2165 2170 2175 2180 2185 2190 2195 2200 2205 2210 2215
PC0
PC5
PDA1
PDA2
PDA3
PDA4
messages ESTIMATE
Diffusion PROPOSITION
Diffusion DECISION
Messages ACK
Préconisations :
Adaptation de la temporisation de changement de round
[email protected],
[email protected]
CFSE’4 - Avril 2005
Diffusion FORWARD
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Plateforme expérimentale
Plan d’expérience
Observation de l’exécution de consensus
Résilience de l’infrastructure
Introduction d’une défaillance (→ déconnexion du coordinateur)
Diagramme post-mortem d’un consensus illustrant une défaillance
Temporisation de changement de round
Déconnexion coordinateur PC0
0
100
200
300
400
500
600
700
800
900
1000
1100
1200
1300
1400
1500
1600
1700
1800
1900
2000
2100
2200
PC0
PC5
PDA1
PDA2
PDA3
PDA4
ROUND 1
Préconisations :
Adaptation de la temporisation de changement de round
[email protected],
[email protected]
CFSE’4 - Avril 2005
ROUND 2
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Plateforme expérimentale
Plan d’expérience
Observation de l’exécution de consensus
Bilan
Validation expérimentale du module de consensus
Génération de traces d’exécution
Analyse comportementale
Evaluations temporelles
Préconisations :
Module de consensus
Limiter les phases d’attente
Restreindre la diffusion de la décision
Lien avec la qualité des détecteurs de défaillances
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Conclusions et Perspectives
Conclusions
Illustration de la démarche complète pour l’analyse comportementale
Difficulté : regroupement et contrôle des différentes étapes
→ Intégration d’outils
Méthode pour s’adapter au mieux à l’environnement
Perspectives
Extension → recherche de schémas d’événements particuliers
Enrichissement des traces
→
niveau module de consensus
→ utilisation de l’information relative aux autres modules
→ généralisation de l’extraction d’informations cohérentes
Généralisation à divers modules distribués
Visualisation du multiniveau
[email protected],
[email protected]
CFSE’4 - Avril 2005
Contexte Général
Module de consensus en environnement variable
Méthodologie pour l’observation
Traces d’éxecution
Conclusions et Perspectives
Conclusions et Perspectives
Conclusions
Illustration de la démarche complète pour l’analyse comportementale
Difficulté : regroupement et contrôle des différentes étapes
→ Intégration d’outils
Méthode pour s’adapter au mieux à l’environnement
Perspectives
Extension → recherche de schémas d’événements particuliers
Enrichissement des traces
→
niveau module de consensus
→ utilisation de l’information relative aux autres modules
→ généralisation de l’extraction d’informations cohérentes
Généralisation à divers modules distribués
Visualisation du multiniveau
[email protected],
[email protected]
CFSE’4 - Avril 2005
Téléchargement