Cours Systemes Distribues s1 Du m1

download Cours Systemes Distribues s1 Du m1

If you can't read please download the document

  • date post

    22-Oct-2015
  • Category

    Documents

  • view

    56
  • download

    11

Embed Size (px)

Transcript of Cours Systemes Distribues s1 Du m1

  • Systmes distribus : Principes et concepts, Dr D. Meslati, Universit de Annaba 1

    SYSTEMES DISTRIBUES : PRINCIPES ET CONCEPTS

    Programme de Premire Anne Master en Informatique

    SUPPORT DE COURS REALISE PAR DR DJAMEL MESLATI

    VERSION 2010

    UNIVERSITE BADJI MOKHTAR-ANNABA FACULTE DES SCIENCES DE LINGENIEUR DEPARTEMENT DINFORMATIQUE

  • Systmes distribus : Principes et concepts, Dr D. Meslati, Universit de Annaba 2

    INTRODUCTION

  • Systmes distribus : Principes et concepts, Dr D. Meslati, Universit de Annaba 3

    PROGRAMME OFFICIEL

    DESCRIPTION

    Intitul de la matire : Systmes distribus : Principes et concepts Code : Semestre : 1 Unit dEnseignement : UE2 Code : UE2 Enseignant responsable de lUE : Dr Djamel MESLATI Enseignant responsable de la matire: Dr Djamel MESLATI Nombre dheures denseignement : 3h Cours Nombre dheures de travail personnel pour ltudiant : 2h Nombre de crdits : 5 Coefficient de la Matire : 1 Objectifs de lenseignement Ce cours vise introduire les principes de base et les concepts des systmes distribus. Sur le plan thorique, ltude des architectures et des paradigmes de communication constitue 60% du cours. Sur le plan pratique, il est vivement recommand dtudier lAPI du multithreading de Java et le dveloppement de quelques modles de synchronisation classiques (producteur/comsommateur, lecteurs/rdacteurs, ) ainsi que ltude de lAPI Java-RMI et llaboration dun exemple de session de communication. Connaissances pralables recommandes Langage orient objets, systmes dexploitation, logique mathmatique, compilation, rseaux et communication

    CONTENU

    Chapitre 1 Introduction aux systmes distribus (20%) 1.1 Dfinitions et caractristiques

    Concurrence, partage de ressources, communication par message, absence dhorloge commune, indpendance des pannes

    1.2 Exemples de systmes distribus Internet, intranet et systmes mobiles

    1.3 Problmes Lhtrognit, la concurrence, la scurit, les pannes, absence dinformations globales sur un systme distribu

    1.4 Dfis et objectifs Linteroprabilit, louverture, linvariance lchelle (scalability), lefficacit, la disponibilit, la gestion de la scurit, le maintien de la consistance des ressource, la transparence (flexibilit), la gestion des situations dexception (dtection des pannes et reprise), la gestion des transactions rparties

    Chapitre 2 Architecture des systmes distribus (30%) 2.1 Taxonomie des systmes distribus 2.2 Architecture Client/serveur

  • Systmes distribus : Principes et concepts, Dr D. Meslati, Universit de Annaba 4

    Principe, rle des processus, rpartition des responsabilits, les variantes du modle client/serveur (agent mobile, code mobile, proxy, )

    2.3 Architecture deux tiers et trois tiers Les application WEB et les bases de donnes, utilit des modles deux tiers et trois tiers, scnario de mise en oeuvre

    2.4 Processus pairs Inconvnients du modle client/serveur, notions et avantages de processus pairs, problmes de coordination

    Chapitre 3 Les paradigmes de communication (30%) 3.1 Le passage de messages

    Quest ce qun Message?, les primitives de communications, primitives bloquantes et non bloquantes, les primitives de passage de messages buffriss

    3.2 Le RPC (Remote Procedure Call) Principe, mcanismes et concepts utiliss, paramtres et rsultats dans le RPC, ldition des liens, exemple

    3.3 Le RMI (Remote Method Invocation) Principe, mcanismes et concepts (interfaces, classes, stub, ), Java RMI

    3.4 Communication de groupe Principe, structure dun groupe, oprations sur les membres (ajout, suppression, recherche, ), laboration de la communication (diffusion, ordonnancement des messages, )

    3.5 Communication par vnements et notifications Principe, metteur/rcepteur, abonnement, notification

    3.6 Communication par mmoire partage Principe, mcanisme dutilisation, maintien de la mmoire (cration, protection, )

    Chapitre 4 Mise en vidence des problmes fondamentaux des systmes distribus (20%) 4.1 Nommage des ressources et des processus

    Processus, fichiers, mmoire, rseaux, objets, 4.2 Rpertoire et dcouverte des services

    DNS (domain name system) et espaces de noms, rsolution des rfrences, identification des services rfrencs, exemple

    4.3 La coordination distribue Lexclusion mutuelle, la synchronisation, linterblocage (mise en vidence)

    4.4 Fiabilit, fautes et scurit Dtection des fautes/pannes, duplication des ressources, reprise aprs pannes, survol des problmes de scurit (menace par code mobile, fuite dinformation, ), survol des techniques de scurit (cryptographie, signature digitale, contrle daccs, )

    REFERENCES BIBLIOGRAPHIQUES

    1- Nicola Santoro, Design and Analysis of Distributed Algorithms, John Wiley & Sons, 2007.

    2- Jia Weijia, Zhou Wanlei, Distributed Network Systems, From Concepts to Implementations, Springer Science, 2005.

    3- George Coulouris, Jean Dollimore & Tim Kindberg, Distributed Systems, Concepts and Design, Addison-Wesley, 2001.

    4- Andrew Tannenbaum, Distributed Operating Systems, Prentice Hall International, 1995. 5- Michel Raynal, Synchronisation et tat global dans les systmes rpartis , Editions

    Eyrolles, 1992.

  • Systmes distribus : Principes et concepts, Dr D. Meslati, Universit de Annaba 5

    CHAPITRE 1

    INTRODUCTION AUX SYSTEMES DISTRIBUES

    CONTENU

    1.1 Dfinitions et caractristiques Concurrence, partage de ressources, communication par message, absence dhorloge commune, indpendance des pannes

    1.2 Exemples de systmes distribus Internet, intranet et systmes mobiles

    1.3 Problmes Lhtrognit, la concurrence, la scurit, les pannes, absence dinformations globales sur un systme distribu

    1.4 Dfis et objectifs Linteroprabilit, louverture, linvariance lchelle (scalability), lefficacit, la disponibilit, la gestion de la scurit, le maintien de la consistance des ressource, la transparence (flexibilit), la gestion des situations dexception (dtection des pannes et reprise), la gestion des transactions rparties.

    1.1 DEFINITIONS ET CARACTERISTIQUES

    A. Tanenbaum et M. Van Steen [Tan 2002], donne la dfinition suivante : Un systme distribus est une collection dordinateurs indpendants qui apparaissent lutilisateur comme un seul systme cohrent.

    De cette dfinition ressortent deux aspects : Le premier est de nature matrielle, il sagit de lautonomie des ordinateurs ou chacun peut excuter des tches en concurrence (c d au mme moment) avec les autres. Le second fait rfrence au logiciel qui laisse apparatre le systme distribu comme une seule entit cohrente. Bien entendu, le second aspect suppose une interconnexion des ordinateurs moyennant un rseau de communication physique.

    Selon G. Coulouris et al [Cou 2001], Un systme distribu ou rparti est un systme dont les composants sont rpartis sur diffrents nuds dun rseau dordinateurs. Ces composants communiquent et coordonnent leurs actions uniquement par lchange de messages.

    Les messages tant des suites de bits reprsentant des informations qui ont un sens pour lmetteur et le rcepteur. Dune manire plus formelle, les systmes rpartis se caractrisent par :

  • Systmes distribus : Principes et concepts, Dr D. Meslati, Universit de Annaba 6

    Une absence de base de temps commune (horloge commune) Une absence de mmoire commune semblable celle dun systme

    multiprocesseur

    Les pannes des composants sont indpendantes

    La motivation principale des systmes rpartis est lamlioration du partage des ressources. Autrement dit, les ressources disponibles dans un ordinateur donn peuvent tre utilises par un autre et vice versa. Par exemple, une imprimante connecte un ordinateur peut recevoir des informations imprimer provenant dun autre ordinateur. De mme, les fichiers disponibles dans un rpertoire dun ordinateur donn peuvent tre manipuls par les autres ordinateurs, etc.

    Naturellement, ce partage de ressources entre tches concurrentes introduit des problmes souvent dsigns par Problmes de concurrence . Ces problmes existent aussi dans les systmes centraliss multitches (systmes multiprocesseurs ou monoprocesseur avec partage de temps). Cependant, dans un systme distribu, les problmes de concurrence se trouve accentus par le fait que la gestion des ressources nest pas centralise et la ncessit doprer des communications entre ordinateurs, ce qui exige des techniques de gestion plus sophistiques.

    La communication dans les systmes distribus sopre entre entits physiques ou logiques et se base sur la possibilit dchange de messages qui est toujours supporte par le rseau physique dordinateurs. Par exemple, lchange entre deux cartes de communication rseau est un change entre entits physiques. Lchange entre deux systmes de gestions de fichiers est un change entre entits logiques. Il en est de mme pour la communication entre applications o lchange sopre entre entits logiques appeles processus. Il existe diverses approches de communications allant dun simple change de bits des protocoles complexes tel que linvocation de mthodes distance (couramment nomm RMI qui est une abrviation de Remote Method Invocation) ou la communication par vnements. Notons cependant que lchange entre entits logiques passe par lchange entre entits physiques.

    Labsence dhorloge commune cite prcdemment comme caractristique des systmes rpartis, signifie que seule la communication de messages peut tre utilise pour coordonner les activits des diffrentes tches du systmes et garantir la cohrence lors du partage des ressources. En effet, il nest pas possible de raliser une synchronisation des horloges des diffrents ordinateurs et coordonner par la suite les tches en fonction dun rfrentiel temporel unique.

    Dans un systme distribu, l