Master Réseaux et Systèmes Distribués (RSD) Algorithmique des systèmes

Slides:



Advertisements
Présentations similaires
©1/16 Chapitre 5 : Le gestionnaire en tant que planificateur 5.1Qu’est-ce que la planification? 5.2 Pourquoi les gestionnaires doivent-ils planifier? 5.3L’élaboration.
Advertisements

CHAftITREI ARCHITECTURE de BASE. Modèle de Von Neumann Langage d’assemblage1 John Von Neumann est à l'origine d'un modèle de machine universelle de traitement.
SRT 2 NTP. Nécessité ● Les ordinateurs utilisent des horloges à quartz – Peu de précision – Tendance à dériver – Parfois plusieurs secondes par jour.
Université de Nantes CHORD Vincent Trève. Introduction ● Problématique – Comment accéder efficacement aux données réparties sur un système pair à pair?
1 Programmation Orientée Objet ● Qu'est-ce qu'un objet ● Collaboration des objets ● Les classes ● Relations entre les classes – “Utilise”, “Contient”,
1 Mise en place de la gestion de projet à la Chartreuse Octobre 2012 DAG.
DIAGRAMME DE DEPLOIEMENT Exposé de: MBALLA MEKONGO Michèle MBOUNA FEUZE William SIEYADJEU Alex Lionel CHOPGWE Leonard NDUMATE Landry TIDJON Lionel.
Sommaire : I.Introduction II.Fibre optique (pr é sentation g é n é ral de la fibre) III.Les techniques de transmissions -Multiplexage temporelle (TDM)
Les Méthodes De Conception Dans les Systèmes D’information Réaliser par : Bouriche Imane Gramez Nadjet 2014/2015 Université Ferhat Abbas – Sétif Faculté.
ARCHITECTURE MULTITENANT CONTAINER DATABASE ET PLUGGABLE DATABASES Pr. A. MESRAR
ARCHITECTURE RESEAUX.
Plan 1. La chaîne de transmission numérique
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
FARAH.Z "Cours sécurité1" /2016
Algorithmique Distribuée
FORMATION COTATION ISO
Modélisation mathématique des systèmes asservis
Le Cycle de vie d’un logiciel
Découverte et mise en service Temps de séquence : 3 heures
Master Réseaux et Systèmes Distribués (RSD) Algorithmique des systèmes
CHAPITRE III Hypothèses de la Résistance des Matériaux
Initiation aux bases de données et à la programmation événementielle
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Master Réseaux et Systèmes Distribués (RSD)
introduction à TCP seuls certains aspects du protocole seront traités
Analyse temporelle des systèmes asservis
L’Instruction de Test Alternatif
La biologie du comportement
Master Réseaux et Systèmes Distribués (RSD) Algorithmique des systèmes
Master Réseaux et Systèmes Distribués (RSD) Algorithmique des systèmes
Master Réseaux et Systèmes Distribués (RSD) Algorithmique des systèmes
Master Réseaux et Systèmes Distribués (RSD) Algorithmique des systèmes
Master Réseaux et Systèmes Distribués (RSD) Algorithmique des systèmes
Master Réseaux et Systèmes Distribués (RSD) Algorithmique des systèmes
Plans d’expériences: Plans factoriels
Formation sur la SACD à l’intention des EPR -- Participants avec expérience 29 août 2017.
8/23/2018 2:32 AM Cinématique But :
Modèle OSI.
Notion De Gestion De Bases De Données
OUTIL DE LA MAINTENANCE CONDITIONNELLE
Méthodologie scientifique
Programmation Orientée Objet
Formation sur les bases de données relationnelles.
Diagrammes UML 420-KE2-LG.
Master Réseaux et Systèmes Distribués (RSD) Algorithmique des systèmes
La mission SUIVI DE GESTION
SDRP & MA Problème du rendez vous : un algorithme probabiliste et une analyse probabiliste 09/11/2018.
Kastagné Cédrick Chambreuil Maskime Giraudeau Damiheing
Élections locales probabilistes
Corrélations & Télécommunications
Les indices simples Définition
Mesures de Position Dispersion et Forme
Echange de Données ALE / I-DOC Pierre-Olivier GREGOIRE Julien HUYNH
Bilan de projet pour [Nom du projet]
Présentation 9 : Calcul de précision des estimateurs complexes
La reproduction sexuée: un gage de diversité
Un Mécanisme d‘Adaptation Guidé par le Contexte en Utilisant une Représentation par Objets Manuele Kirsch Pinheiro Laboratoire LSR – IMAG, Équipe SIGMA.
et de la Recherche Scientifique
Systèmes de Transport Intelligent: Interactions
Opérateurs et fonctions arithmétiques Opérateurs de relation Opérateurs logiques Cours 02.
SPIH Système de Paiements Interbancaires Haïtien
L’analyse de la valeur des projets informatiques
Le D.R.P. - Quelques jours de fonctionnement
Design, innovation et créativité
Chapter 11: Récursivité Java Software Solutions Second Edition
Elections locales probabilistes
UC : Diagramme des cas d’utilisation Req : Diagramme d’exigence
I. Aouichak, I. Elfeki, Y. Raingeaud, J.-C. Le Bunetel
Type Tableau Partie 1 : Vecteurs
Transcription de la présentation:

Badr Benmammar badr.benmammar@gmail.com Master Réseaux et Systèmes Distribués (RSD) Algorithmique des systèmes et applications réparties Modélisation Conceptuelle des Systèmes Distribués Badr Benmammar badr.benmammar@gmail.com

Plan Partie III : Algorithmique distribuée Éléments de base d’un système distribué Modèles conceptuels de systèmes distribués Modèle d’interaction Modèle de fautes Détecteur de pannes

Éléments de base d’un système distribué Processus communiquant. Canaux de communication. Processus E Processus R Tampon Emission Tampon Réception Canal

Canal de communication Canal de communication point à point entre 2 processus. Caractéristiques : Uni ou bi-directionnel. Fiable ou non : perd/modifie ou pas des messages. Ordre de réception par rapport à l’émission. FIFO = les messages sont reçus dans l’ordre où ils sont émis. Synchrone ou asynchrone. Synchrone : l’émetteur et le récepteur se synchronisent pour réaliser l’émission et/ou la réception. Asynchrone : pas de synchronisation entre émetteur et récepteur. Taille des tampons de message cotés émetteur et récepteur. Limitée ou illimitée

Modèle des sockets TCP Bidirectionnel. Fiable. FIFO. Asynchrone en émission. Emetteur n’est pas bloqué quand il émet quoique fasse le récepteur. Synchrone pour la réception. On reçoit quand l’émetteur émet sauf si données non lues dans le tampon coté récepteur. Taille limitée des tampons.

Performances d’un canal Latence : délai entre l’émission d’un message et sa réception. Bande passante : nombre d’informations transitant par unité de temps exprimé en bits/seconde. Gigue : variation de temps pour délivrer des messages d’une série (variation de la latence). Important dans le cadre des données multimédia nécessitant des synchronisations. La voix sur IP. Perte de messages : due à des phénomènes de congestion sur le réseau.

Modèles conceptuels de systèmes distribués Objectif : observer et comprendre le comportement d’un système. On modélise un système distribué selon plusieurs dimensions. Modèle d’interaction. Modèle de canal. Modèle temporel. Modèle de fautes. Modèle de sécurité. Non traité dans ce cours.

Modèle d’interaction d’un système distribué Contient un modèle de canal et un modèle temporel. Modèle de canal : uni ou bi-directionnel, fiable ou non, ordre de réception par rapport à l’émission, synchrone ou asynchrone, taille des tampons de message cotés émetteur et récepteur. Modèle temporel : deux modèles principaux : Système distribué synchrone : possède les 3 caractéristiques suivantes : Le temps pour exécuter une étape du processus est compris entre une borne min et une borne max connues. Un message émis est reçu dans un délai max connu. L’horloge locale d’un processus dérive au plus d’une certaine durée connue et bornée du temps réel. Système distribué asynchrone : il n’y aucune borne. Sur la durée d’exécution d’une étape du processus. Sur le délai de réception d’un message. Sur la dérive de l’horloge locale d’un processus par rapport au temps réel.

Processus correct : processus non planté, qui ne fait pas de fautes. Modèle de fautes 4 grands types de fautes ou pannes : Franches : le processus ne fait plus rien. Par omission : des messages sont perdus ou non délivrés. Arbitraires ou byzantines : le processus renvoie des valeurs fausses et/ou fait «n’importe quoi», ne respectant pas ses spécifications, en donnant des résultats non-conformes. Cas de fautes les plus complexes à gérer. Temporelles : uniquement pour un système distribué synchrone (dépassement des bornes temporelles). Processus correct : processus non planté, qui ne fait pas de fautes.

Fautes Franches Le processus ne fait plus rien. Classification des fautes : Crash-stop : un processus s’arrête et reste hors-service. Crash-recovery : un processus s’arrête mais il peut se relancer après un certain temps.

Fautes par omission Processus ou canal ne réalise pas une action. Classification des fautes : Omission du canal : un message positionné dans un tampon d’émission d’un processus n’arrive jamais dans le tampon de réception du destinataire. Omission en émission : un processus envoie un message mais il n’est pas placé dans le tampon d’émission. Omission en réception : un message est placé dans le tampon de réception d’un processus mais le processus ne le reçoit pas. Processus E Processus R Tampon Emission Tampon Réception Canal

Fautes arbitraires/byzantines Fautes quelconques et souvent difficilement détectables. Processus : Calcul erroné ou non fait. État interne faux. Valeur fausse renvoyée pour une requête. Canal : Message modifié, dupliqué voire supprimé. Message « créé ». En pratique peu de fautes arbitraires sur les canaux car les couches réseaux assurent la fiabilité de la communication.

Fautes arbitraires/byzantines On distingue couramment les pannes byzantines naturelles des pannes byzantines volontaires. Pannes byzantines naturelles proviennent généralement d’erreurs physiques non détectées (mémoire, transmissions réseaux, etc.). Pannes byzantines volontaires proviennent principalement d’attaques visant à faire échouer le système (sabotage, virus, etc.).

Fautes temporelles Uniquement pour un système distribué synchrone : dépassement des bornes temporelles. Une étape du processus s’exécute en plus de temps que la borne prévue. Un message émis est reçu après un délai supérieur à la borne prévue. L’horloge locale dérive d’une valeur supérieure à la borne prévue.

Uniquement pour un système distribué synchrone Résumé sur les fautes 4 grands types de pannes Arbitraires ou byzantines Franches Par omission Temporelles Crash-stop Uniquement pour un système distribué synchrone Crash-recovery Naturelles Volontaires Omission du canal Omission en émission Omission en réception

Détecteur de pannes Définition : élément associé aux processus «essayant» de déterminer l’état des autres processus. Généralement, on se base sur une communication fiable. Messages non perdus. Classification des caractéristiques des détecteurs : Complétude : un processus fautif est soupçonné de l’être par un processus correct. Exactitude : un processus correct n’est jamais soupçonné par aucun processus correct. Deux variantes à chaque fois : Forte : par tous les processus. Faible : par au moins un processus.

Classification de détecteurs de pannes Complétude : Forte : tout processus fautif finit par être soupçonné par tous les processus corrects. Faible : tout processus fautif finit par être soupçonné par au moins un processus correct. Les deux complétudes sont équivalentes : Par principe, la forte implique la faible. La faible implique la forte. Localement, un détecteur gère la liste des processus qu’il soupçonne comme fautifs. Les détecteurs s’échangent leurs listes via diffusion. Au bout d’un certain temps, un processus soupçonné fautif sera référencé comme fautif par tous les processus.

Classification de détecteurs de pannes Exactitude : Version totale : Forte : aucun processus correct n’est jamais soupçonné par aucun processus correct. Faible : au moins un processus correct n’est jamais soupçonné par aucun processus correct. Version plus faibles : vérifiée au bout d’un certain temps. Finalement forte : au bout d’un certain temps, aucun processus correct n’est plus jamais soupçonné par aucun processus correct. Finalement faible : au bout d’un certain temps, au moins un processus correct n’est plus jamais soupçonné par aucun processus correct.

Classification de détecteurs de pannes Au final, 8 combinaisons : Exactitude Forte Faible Finalement Forte Finalement Faible P Complétude Mais complétude forte équivalent à la faible, reste donc 4 combinaisons. Détecteur parfait (fiable) : classe P(erfect). Complétude et exactitude fortes. Tout processus fautif finit par être soupçonné par tous les processus corrects. Aucun processus correct n’est jamais soupçonné par aucun processus correct.

Réalisation de détecteurs de pannes : synchrone vs asynchrone Système synchrone (timeouts pour détecter les pannes). DélaiTrans. DélaiTrans. DélaiTrait. T = 2 DélaiTrans. + DélaiTrait.

Réalisation de détecteurs de pannes : synchrone vs asynchrone Système synchrone (timeouts pour détecter les pannes). Système asynchrone : difficulté (voire impossibilité) de différencier un message lent d’un processus mort. Importance des délais de garde. Trop petit : soupçonne avec erreur des processus. Trop grand : temps long avant de détecter la mort d’un processus. DélaiTrans. DélaiTrans. DélaiTrait. T = 2 DélaiTrans. + DélaiTrait.

Réalisation de détecteurs de pannes : synchrone vs asynchrone Système synchrone : Grace au délai borné de réception des messages, on sait qu’on recevra un message dans un certain délai si le processus est vivant. Peut construire un détecteur de pannes fiable (parfait). Système asynchrone : Temps de propagation des messages non bornés. Difficulté (voire impossibilité) de différencier un message lent d’un processus mort. Détecteur parfait est non réalisable dans un système asynchrone. Mais souvent on peut se contenter de détecteurs imparfaits.

Bibliographie

Algorithmique distribuée Algorithmique et techniques de base des systèmes répartis, Sacha Krakowiak, Cours de M2 recherche "Systèmes et Logiciel", Université Joseph Fournier (Grenoble). http://lig-membres.imag.fr/krakowia/Files/Enseignement/M2R-SL/SR/ Conception des Systèmes répartis, Gérard Padiou, enseignements à l’ENSEEIHT (Toulouse). http://padiou.perso.enseeiht.fr/ Synchronisation et état global dans les systèmes répartis, Serge Raynal, Eyrolles, 1992.