1 Détection de défaillances et algorithmes répartis pour les GRIDs Marin BERTIER Thèmes SRC Laboratoire d'Informatique de Paris 6 Université Pierre & Marie Curie
2 Contexte ► Développement des GRIDs Grand nombre de sites Organisé hiérarchique ► Niveau local cluster ► Niveau Global Inter-cluster Dissymétrie des communications ► cluster: Fiables et rapides ► Inter-cluster: … Introduction
3 Détection de défaillances ► Impossibilité de résoudre le consensus dans un système asynchrone [FLP85] ► Caractéristiques : Fournissent une liste non fiable des processus suspectés d’être défaillants Complétude : Un processus défaillant doit être considéré comme défaillant par les autres Justesse : Un processus correct ne doit pas être considéré défaillant ► Modèle partiellement synchrone (GTS)
4 Techniques de détection ► Applicatif (refus de services) ► Pinging ► Heatbeat Détecteur sur q p up p down p up p q Détecteur sur q p up p down p up p q Introduction
5 Qualité de service ► Métriques Temps de détection Temps entre deux erreurs (T MR ) Durée des erreurs (T M ) Introduction DF TMTM T MR Processus p up
6 Détecteurs de défaillances ► Fonctionnement « hearbeat » ► Défaillances: crash / ‘recovery’ perte de messages ► Adaptable : Estimations dynamiques Intervalle d’émission ► Permet le transport d’information
7 Organisation ► Organisation hiérarchique ► Communication IP-Multicast au niveau local UDP au niveau global cluster 1 cluster 3 cluster 2 Organisation Hiérarchique
8 Niveaux Hiérarchiques ► Visions: Niveau Local : ► Liste des sites du cluster Niveau global : ► Liste des clusters ► Qualité de service différentes Organisation Hiérarchique
9 Comportement S 1.1 S 1.5 S 1.2 S 1.4 S 1.3 S 1.2 S 2.1 S 3.5 cluster 1 cluster 2 cluster 3 LENT S1.5 S1.4 S1.5 Organisation Hiérarchique
10 Avantages / Désavantages ► Avantages: Nombre de messages (n: nb sites, k: nb groupes) ► Système plat: n * (n -1) ► Hiérarchique: n 2 / k + k 2 – k – 1 ► Si n > k 2 un leader gère moins de messages ► Partitionnement des informations ► Mise en place de mécanisme Élection de leader Organisation Hiérarchique
11 Election de leader ► Sur le principe de : Liste triée de leaders non suspectés (Trusted_Process) Leader : 1er de Trusted_Process ► Objectifs : Temps de recouvrement court Avoir au moins un leader Organisation Hiérarchique
12 Architecture ► Emission de message « I-am-alive » ► Estimation de base Compromis entre le temps de détection et le nombre de fausses détection ► Fournit : Liste de sites suspects Informations sur la détection ► Adaptation de l’intervalle d’émission Couche de base Blackboard Liste de sites suspects Intervalle d’émission Marge de détection QoS observée Couche d’adaptation 1Couche d’adaptation 2 Application 1Application 2 QoS 1 QoS 2 Liste de suspects Liste de suspects i 1 i 2
13 Architecture Couche de base Blackboard Liste de sites suspects Intervalle d’émission Marge de détection QoS observée Couche d’adaptation 1Couche d’adaptation 2 ► Spécifique à l’application ► Adapte la QoS Différents algorithmes ► Adaptation de l’interface Pop ou Push ► Permet différentes vision du système Application 1Application 2 QoS 1 QoS 2 Liste de suspects Liste de suspects i 1 i 2
14 Architecture Couche de base Blackboard Liste de sites suspects Intervalle d’émission Marge de détection QoS observée Couche d’adaptation 1Couche d’adaptation 2 Application 1Application 2 QoS 1 QoS 2 Liste de suspects Liste de suspects i 1 i 2 ► Représente l’utilisateur des détecteurs de défaillance : Service de nommage ► Fournir le besoin en QoS local ► Utilise la liste des sites suspects
15 Couche de base Fonctionnement Architecture Processus q FD de q Processus p h i-1 hihi h i+1 h i+2 ii ii i+1 i+2 Freshness points: i-1 AiAi to
16 Couche de base Estimation de la date d’arrivée ► Calcul de la date butoir Timeout ()= date théorique (EA k+1 ) + marge dynamique ( k+1 ) Timeout ( k+1 )= date théorique (EA k+1 ) + marge dynamique ( k+1 ) ► Date théorique : estimation de Chen ► Marge dynamique (algorithme de jacobson) Architecture
17 Adaptation du délai d’émission ► Motivation : Besoins variables des applications Etat du réseau ► Négocier entre récepteurs et l’émetteur Architecture
18 Performance ► Adaptation : Court terme (Marge) Moyen terme (Estimation date) ► Conclusion Bon compromis entre temps de détection et le nombre de fausses détections DynamiqueRTTChen Nb fausses détections Durée erreurs (ms) 31,625,2336,61 Temps de détection (ms) 5131,75081,795672,53 Performances couche de base
19 Plateforme de test ► Utilisation de « dummynet » (simulateur reseau) Introduction de délai de propagation Variation du délai de propagation Introduction de perte de messages Group 3 Toulouse Group 2 San Francisco Group 1 Paris Délai : 50ms +/- 10ms Perte de messages : 1.2% Délai : 10ms +/- 4ms Perte de messages : 0.5% Délai : 150ms +/- 25ms Perte de messages : 3% Performances couche d’adaptation
20 Organisation ► Conditions: i = 700ms Nb de sites Nb de sites par groupe local Nb de groupes local Organisation à plat Leader en hiérarchique Non leader en hiérarchique Performances couche d’adaptation
21 Conclusion ► Service de détection de défaillances: Scalable Partagé Adaptable Fournissant une QoS locale