Caractéristiques des systèmes distribués. Chargé de cours : Lévis Thériault Département de génie logiciel et des TI LOG730

Documents pareils
FAMILLE EMC VPLEX. Disponibilité continue et mobilité des données dans et entre les datacenters

Software Engineering and Middleware A Roadmap

1.Introduction - Modèle en couches - OSI TCP/IP

FAMILLE EMC VPLEX. Disponibilité continue et mobilité des données dans et entre les datacenters AVANTAGES

Module BDR Master d Informatique (SAR)

Initiation au HPC - Généralités

WEA Un Gérant d'objets Persistants pour des environnements distribués

3A-IIC - Parallélisme & Grid GRID : Définitions. GRID : Définitions. Stéphane Vialle. Stephane.Vialle@supelec.fr

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing

Mise en place d un projet VDI

Technologie SDS (Software-Defined Storage) de DataCore

Le modèle client-serveur

Architecture distribuée

Grid Technology. ActiveMQ pour le grand collisionneur de hadrons (LHC) Lionel Cons Grid Technology Group Information Technology Department

Infrastructure RDS 2012

Architectures en couches pour applications web Rappel : Architecture en couches

Programmation de services en téléphonie sur IP

Fiche technique RDS 2012

1. Introduction à la distribution des traitements et des données

Intégration de systèmes

Conception des systèmes répartis

Fonctions Réseau et Télécom. Haute Disponibilité

La continuité de service

Le Printemps rajeunit ses listes de mariage en magasin et sur Internet avec Printemps à Deux

Adopter une approche unifiée en matière d`accès aux applications

DG-ADAJ: Une plateforme Desktop Grid

Rapport de certification

CH.3 SYSTÈMES D'EXPLOITATION

Gestion des identités Christian-Pierre Belin

La haute disponibilité de la CHAINE DE

Domain Name System Extensions Sécurité

Vérifier la qualité de vos applications logicielle de manière continue

Administration de systèmes

NFP111 Systèmes et Applications Réparties

Service WEB, BDD MySQL, PHP et réplication Heartbeat. Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox

Chapitre I. La couche réseau. 1. Couche réseau 1. Historique de l Internet

Oléane VPN : Les nouvelles fonctions de gestion de réseaux. Orange Business Services

Pour les entreprises de taille moyenne. Descriptif Produit Oracle Real Application Clusters (RAC)

Installation et configuration d un serveur DHCP (Windows server 2008 R2)

La Continuité d Activité

Sommaire. Couverture de zone de surveillance dans les réseaux de capteurs. De quoi parle-t-on ici (1/2)? Objectif. De quoi parle-t-on ici (2/2)?

Les environnements de calcul distribué

MOBILITE. Datasheet version 3.0

Planifier la migration des applications d entreprise dans le nuage

VMWare Infrastructure 3

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Cours Bases de données

«clustering» et «load balancing» avec Zope et ZEO

FORMATION CXA01 CITRIX XENAPP & WINDOWS REMOTE DESKTOP SERVICES

Table des matières. Chapitre 1 Les architectures TSE en entreprise

Tests de montée en charge & Haute disponibilité

Programmation parallèle et distribuée

Présentation d HyperV

Livre blanc sur l authentification forte

Cours 13. RAID et SAN. 2004, Marc-André Léger

Continuité d activité : le choix des armes

Travail d équipe et gestion des données L informatique en nuage

Unitt Zero Data Loss Service (ZDLS) La meilleure arme contre la perte de données

Architecture de la grille

Connaître les Menaces d Insécurité du Système d Information

EMC AVAMAR. Logiciel et système de sauvegarde avec déduplication

NOTIONS DE RESEAUX INFORMATIQUES

Livre blanc Haute disponibilité sous Linux

Annuaires LDAP et méta-annuaires

La Latecion protection anti-intrusion Web Web Le concept «Zero effort Security» La protection des applications Extranet

Le travail collaboratif et l'intelligence collective

Le cadre des Web Services Partie 1 : Introduction

Technologie data distribution Cas d usage.

Architectures d'intégration de données

Parallélisme et Répartition

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Optimisation de la mise en œuvre de la virtualisation des postes de travail et des applications

Environnements de Développement

Module : Virtualisation à l aide du rôle Hyper-V

Services OSI. if G.Beuchot. Services Application Services Présentation - Session Services Transport - Réseaux - Liaison de Données - Physique

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères

Contributions à l expérimentation sur les systèmes distribués de grande taille

Le Ro le Hyper V Troisie me Partie Haute disponibilite des machines virtuelles

Mobile OGSI.NET: Grid Computing on Mobile Devices

Un concept multi-centre de données traditionnel basé sur le DNS

文 档 密 级 : 机 密 华 为 机 密, 未 经 许 可 不 得 扩 散

Prise en compte des ressources dans les composants logiciels parallèles

Chapitre 7. Le Protocole SNMP 7.1 INTRODUCTION COMPOSANTES POUR L UTILISATION FONCTIONNEMENT LE PAQUET SNMPV1...

LOG4430 : Architecture et conception avancée

MEAD : temps réel et tolérance aux pannes pour CORBA

Cours des réseaux Informatiques ( )

NOTE DE SYNTHESE Virtualisation de postes utilisateurs

Computer Networking: A Top Down Approach Featuring the Internet, 2 nd edition. Jim Kurose, Keith Ross Addison-Wesley, July ENPC.

La plate forme VMware vsphere 4 utilise la puissance de la virtualisation pour transformer les infrastructures de Datacenters en Cloud Computing.

Services Réseaux - Couche Application. TODARO Cédric

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Armelin ASIMANE. Services RDS. de Windows Server 2012 R2. Remote Desktop Services : Installation et administration

ETUDE ET IMPLÉMENTATION D UNE CACHE L2 POUR MOBICENTS JSLEE

Configuration automatique

SafeKit. Sommaire. Un livre blanc de Bull Evidian

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Patrons de Conception (Design Patterns)

Manuel d installation serveurs

Le e s tocka k ge g DAS,NAS,SAN

DÉVELOPPEMENT INFONUAGIQUE - meilleures pratiques

Transcription:

Caractéristiques des systèmes distribués Chargé de cours : Lévis Thériault Département de génie logiciel et des TI LOG730

Sommaire Définition des systèmes distribués Conséquences de la définition Motivations pour les systèmes distribués Exemples de systèmes distribués Les défis à relever 2

Objectif du chapitre Définir et identifier les caractéristiques des systèmes distribués Placer les systèmes distribués dans un contexte réaliste par des exemples Atteindre des connaissances sur les défis reliés à l hétérogénéité, l ouverture (openness), la sécurité, l extensibilité (scalability), la gestion des défaillances, la concurrence et la transparence 3

Définition des systèmes distribués Maarten Van Steen, Andrew S. Tanenbaum: «Ensemble d ordinateurs indépendants qui paraissent à l utilisateur comme étant un seul système cohérent» 4

Définition des SD Coulouris, Dollimore, Kindberg (2nd edition): «Ensemble d ordinateurs autonomes liés par réseau, avec des logiciels conçus pour produire des caractéristiques de traitement intégrés» Exclut les clients légers 5

Définition des SD Coulouris, Dollimore, Kindberg (3rd and 4th edition): «Système formé de composants matériels ou logiciels localisés sur des ordinateurs reliés par réseau qui communiquent et coordonnent leurs actions par seulement le passage de messages» Exclut les systèmes fortement couplés 6

Processus Flux d instruction S exécutent en concurrence Interagissent dans le but d atteindre un but Coordonnent leurs activités en échangeant des informations par moyens de messages transférés à travers de réseau 7

Conséquences de la définition Concurrence: - Processus concurrents et autonomes - Permet le partage de ressources entre utilisateurs: données, services et matériels - Problèmes typiques des systèmes concurrents: impasse (deadlock), communication moins fiable 8

Conséquences de la définition Absence d horloge globale: - Coordination par passage de messages asynchrone - Limite la précision de synchronisation d horloge Pas d état globale: - Aucun processus dans un SD ne peut savoir l état courante globale du système 9

Conséquences de la définition Défaillances indépendantes: - Processus s exécutent en indépendance et en isolation - Défaillance d un processus peut rester indétectable par un autre - Défaillance du réseau isolent les processus et les parties du système 10

Motivations pour les SD Partage de ressources: - Ressources rares ou coûteuses peuvent être partagées Balancement de charge - Pour avoir plus de performance - Les machines les plus sollicitées peuvent être allégées en ajoutant plusieurs machines miroirs 11

Motivations pour les SD Puissance de calcul parallèle (Clusters): - Plusieurs processeurs travaillent le même problème afin de le résoudre rapidement Séparation physique entraîne une fiabilité - Pour quelle raison? Économie: - Les processeurs distribués offrent le meilleur rapport performance / prix que les mainframes (10 rapide, 1000 cher) 12

Exemples de SD Internet Intranet Périphériques d information sans fil Système multimédia distribué Clusters Etc. 13

Exemple: Internet Ordinateurs, applications et réseaux hétérogènes ISP intranet backbone satellite link desktop computer: server: network link: 14

Exemple: Intranet Réseau administré localement Propriété (ex., réseau de l ÉTS) Connecté à l Internet à travers le router Fournit des services internes et externes print and other servers email server Desktop computers Web server Local area network email server File server print other servers the rest of the Internet router/firewall 15

Exemple: Périphériques d information sans fil Téléphones cellulaires Portables dans un LAN sans fil Internet Host intranet Wireless LAN WAP gateway Home intranet Printer Camera Mobile phone Laptop Host site 16

Les défis à relever 1. Hétérogénéité 2. Ouverture (openness) 3. Sécurité 4. Extensibilité (scalability) 5. Gestion des défaillances 6. Concurrence 7. Transparence 17

Défi 1: hétérogénéité Hétérogénéité: variété et différence Hétérogénéité doit être masquée Hétérogénéité à plusieurs niveaux: - Réseaux - Système d exploitation - Langages de programmation Les normes sont exigées 18

Défi 1: hétérogénéité Logiciels à couche intermédiaire (Middleware): - Permettent de masquer les couches logicielles - Permettent à des nœud hétérogènes de se communiquer - Uniformisent les modèles de traitement - Fournissent un support pour les applications distribuées: - Appel des objets distants - Accès distant à SQL - Traitement des transactions distribuées Exemples: CORBA, Java RMI, Microsoft DCOM 19

Défi 1: hétérogénéité Code mobile: code conçu pour migrer entre plusieurs ordinateurs - Besoin de surmonter l hétérogénéité du matériel Machine virtuelle: - Compilateurs génère un code intermédiaire (bytecode) pour la MV - MV implémentée pour chaque type de matériels 20

Défi 2: ouverture Systèmes ouverts: - Assurent l extensibilité et la maintenabilité - Facilitent l ajout de nouvelles ressources partagées Facteurs importants: - Spécification et documentation - Publication des interfaces - Mécanismes de communication uniformes - Tests de vérification et validation de tous les périphériques 21

Défi 2: ouverture Exemple historique: UNIX & C ouvert pour - Développeurs d applications: tous les outils disponibles à travers les interfaces des appels systèmes - Vendeurs de matériels et administrateurs des systèmes : facilité d étendre pour de nouveaux périphériques - Vendeurs de logiciels et utilisateurs: indépendance du matériel 22

Défi 2: ouverture Autres exemples: - Protocole Internet: RFC (Request For Comments) - Discussion - Spécification du protocole - CORBA (Common Objects Request Broker Architecture) - Spécification des interfaces - www.omg.org 23

Défi 3: sécurité Trois composantes: - Confidentialité (protection contre divulgation d information à des individus non-autorisés - Intégrité (protection contre les modifications nonautorisées) - Disponibilité (protection contre les attaques) Le défi: - Envoyer des informations sensibles à travers le réseau d une façon efficace et fiable 24

Défi 3: sécurité Exemple 1: accéder des informations sur les examens par un système de fichier à travers le réseau - Authentification: comment peut on être sur que seul le professeur peut accéder aux données? Exemple 2: envoyer un numéro de carte de crédit à travers l Internet - Confidentialité: seul le site recevant peut lire les données Solution: cryptographie 25

Défi 3: sécurité Problèmes non résolus: - Rupture d un service par des messages de bombardement - Sécurité du code mobile: - Effets imprévisibles - Comportement du cheval de Troie 26

Défi 4: extensibilité Un SD est extensible s il reste efficace quand le nombre d usagers ou de ressources augmente Défis: - Contrôler les coûts de ressources - Contrôler les pertes de performance - Prévenir la rupture de ressources - Éviter les goulots d étranglement des performances 27

Défi 4: extensibilité Augmentation exponentielle des ordinateurs dans l Internet Date Ordinateurs Serveurs Web Percentage 1993, Juillet 1,776,000 130 0.008 1995, Juillet 6,642,000 23,500 0.4 1997, Juillet 19,540,000 1,203,096 6 1999, Juillet 56,218,000 6,598,697 12 Voir aussi le site Web: http://www.wallonie-isoc.org/internet_documents-enfrancais/hobbes_internet-timeline_trad.htm 28

Défi 5: gestion des défaillances Détection - Erreurs possibles (e.g. : vérification de la somme de contrôle) - Erreurs impossibles (serveur brisé, serveur lent) - Défi: gérer les défaillances indétectables 29

Défi 5: gestion des défaillances Masquage - Des défauts peuvent être masqués - Duplication - Espace: e.g..: écrire sur plusieurs disques - Time: e.g.: transmission de messages multiples 30

Défi 5: gestion des défaillances Tolérance (e.g: fureteur qui détecte des erreurs) Recouvrement: - Restaurer l état correcte du système - Revenir en arrière en utilisant un fichier journal (log files) 31

Défi 5: gestion des défaillances Redondance: - Tolérer les défauts en utilisant des composants redondants - Possible avec la duplication - Peut exister à plusieurs niveaux: matériels, logiciels et conception - E.g.: routes redondantes dans le réseau, duplication des tables de noms dans plusieurs serveurs de noms 32

Défi 6: concurrence Gérer plusieurs requêtes simultanées pour la même ressource Synchroniser les processus ou les fils d exécution (Threads) Les objets et ressources partagés doivent garantir l exactitude Éviter les impasses ou interblocages (deadlock) 33

Défi 7: transparence Masquer l hétérogénéité et la nature distribuée du système pour paraître à l usager comme un seul système 8 types de transparence (ANSA / ISO) - Accès, localisation, concurrence, duplication, défaillance, mobilité, performance et l extensibilité 34

Défi 7: transparence Accès: permet aux ressources locaux et distantes d être accédées en utilisant les mêmes opérations Localisation: permet aux ressources d être accédées sans connaître leurs localisations Concurrence: permet à plusieurs tâches d opérer en concurrence sans interférence Duplication: permet à plusieurs instances du ressource d être utilisées pour augmenter la fiabilité et la performance sans connaissance de la duplication de la part des utilisateurs et des applications 35

Défi 7: transparence Défaillance: permet la dissimulation des défauts. Mobilité: permet le mouvement des ressources et des clients du système sans affecter le fonctionnement des programmes. Performance: permet au système de se configurer pour améliorer la performance lorsque la charge varie. Extensibilité: permet au système et aux applications de s étendre sans changer la structure du système ou les algorithmes des applications. 36

Conclusion Système distribué - Autonome, ordinateurs interconnectés Plusieurs motivations pour l utilisation des SD SD sont très communes de nos jours: - E.g.: Internet, LAN Défis: hétérogénéité, ouverture, sécurité, extensibilité (scalability), gestion des défaillances, concurrence, transparence 37

À faire Les exercices 1.1, 1.2, 1.7 et 1.11 pour le prochain cours 38