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