Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure...

40
Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure d’informatqiue du KEF

Transcript of Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure...

Page 1: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Mr. Mehrez Boulares, Mr. Nour Ben Yahia

2013-2014

Systèmes Répartis

Institut Supérieure d’informatqiue du KEF

Page 2: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Introduction aux systèmes répartis• Les ordinateurs ont subi des changements incroyables depuis leur mise en

opération vers 1945:

– plus en plus de puissance,

– coût de fabrication a constamment diminué permettant aux usagers de disposer d'un objet peu dispendieux compte tenu de ce qu'il nous offre en retour.

• Les appareils subissent des changements constants et de plus en plus rapides tant du point de vue logiciel que matériel. Depuis très peu de temps, nous retrouvons sur le marché des systèmes multiprocesseurs, des systèmes d'exploitation pour le traitement parallèle et des réseaux puissants d'interconnexion. C'est là l'importance de prendre brièvement connaissance avec le système d'exploitation de demain.

• Nous sommes déjà entrés quelque peu dans l'informatique répartie qui elle nous amènera vers l'informatique distribuée.

ISI Kef - 2013/2014

2

Page 3: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Introduction aux systèmes répartis• L'informatique répartie s'oppose à la fois à l'informatique centralisée, celle des

gros ordinateurs, et à l'informatique individuelle, celle des micro-ordinateurs. Elle pallie certains désavantages de cette dernière par :

– Le partage des données grâce à un accès individuel, en lecture, par le réseau à des fichiers communs situés sur un disque quelconque ainsi que par le transfert de fichiers d'un disque à un autre.

– Le partage des applications. Pour l'exploitation individuelle, par le réseau, d'un seul logiciel de base de données sur le disque d'une des machines connectées.

– Le partage des ressources : chaque utilisateur connecté peut utiliser une même imprimante.

– les communications : envoi par le réseau de courrier dans une boîte aux lettres électronique à un ou plusieurs utilisateurs connectés. Accès par le réseau téléphonique à des services d'informations : annuaires, banques de données, etc.

ISI Kef - 2013/2014

3

Page 4: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Introduction aux systèmes répartis

ISI Kef - 2013/2014

4

Page 5: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Introduction aux systèmes répartis

ISI Kef - 2013/2014

5

Page 6: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Exemple de Système Réparti : Un intranet

ISI Kef - 2013/2014

Source : Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design

Edition 3, © Addison-Wesley 2001

6

Page 7: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Pourquoi une informatique répartie• Raisons budgétaires : économie de logiciels, de matériels

• Raisons intrinsèques : adapter le système à l’application

– BDD réparties, Web, systèmes bancaires…

• Besoin de partager

– des informations : fichiers, BDD, messages

– des ressources : unités de stockage, imprimantes, serveurs

– Des services

• Accélérer le calcul

– Parallélisation de tâches

• Alléger la charge : réduire les goulots d'étranglement

• Augmenter la fiabilité : duplication de machines, de données réalisation de ⇒systèmes à haute disponibilité

• Qualité de service : diminuer les coûts, les délais, augmenter la disponibilité

• Réaliser des systèmes ouverts, évolutifs : adjonction facile de matériels et logiciels.

ISI Kef - 2013/2014

7

Page 8: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Inconvénients

• Très peu de logiciels existent sur le marché.

• Le réseau peut très vite saturer.

• La sécurisation des données sensibles est compliquée.

• La mise en œuvre est difficile.

ISI Kef - 2013/2014

8

Page 9: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Définitions (1)• Un système à plusieurs processeurs n’est pas forcément un système réparti

• Qu’est-ce qu’un système réparti, distribué, parallèle ?

• Classification de flynn [1972]:

On différencie les systèmes sur la base du flux d’instructions et de données.

– SISD : PC monoprocesseur

– SIMD : machines vectorielles

– MISD : pipeline

– MIMD : machines multiprocesseurs faiblement et fortement couplées (systèmes parallèles, systèmes distribués, systèmes d’exploitation réseaux)

ISI Kef - 2013/2014

9

Page 10: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

ISI Kef - 2013/2014

10

Page 11: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Classification de Flynn

ISI Kef - 2013/2014

L'acronyme PU, de l'anglais, signifie processeur.Le terme « Instruction Pool » représente l'ensemble des instructions disponibles pour le ou les PU.Le terme « Data Pool » représente l'ensemble des données nécessaires aux calculs.

11

Page 12: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Définitions (1)• MIMD à mémoire partagée

– Les processeurs ont accès à la mémoire comme un espace d'adressage global. Tout changement dans une case mémoire est vu par les autres CPU. La communication inter-CPU est effectuée via la mémoire globale.

• MIMD à mémoire distribuée

– Chaque CPU a sa propre mémoire et son propre système d'exploitation. Ce second cas de figure nécessite un middleware pour la synchronisation et la communication. Un système MIMD hybride est l'architecture la plus utilisée par les superordinateurs. Ces systèmes hybrides possèdent l'avantage d'être très extensibles, performants et à faible coût.

ISI Kef - 2013/2014

12

Page 13: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Définitions (2)• Un système réparti est un ensemble de sites reliés par un réseau, comportant

chacun une ou plusieurs machines.

• "Un système réparti est un système qui vous empêche de travailler quand une machine dont vous n’avez jamais entendu parler tombe en panne" Lamport

• "Du point de vue utilisateur, un système réparti se comporte comme un système traditionnel, mais s’exécute sur de multiples unités indépendantes" Tanenbaum

• Un système d’exploitation réparti fournit et contrôle l’accès aux ressources du système réparti.

• Un système d’exploitation parallèle contrôle l’exécution de programmes sur une machine parallèle (multiprocesseurs).

• Un système d’exploitation de réseaux fournit une plateforme de machines reliées par un réseau chacune exécutant son propre système d’exploitation.

ISI Kef - 2013/2014

13

Page 14: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Exemples de SRs• WWW, FTP, Mail.

• Guichet de banque, agence de voyage.

• Téléphones portables (et bornes).

• Télévision interactive.

• Agents intelligents.

• Robots footballeurs.

ISI Kef - 2013/2014

14

Page 15: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Les différentes structuresLes structures centralisées

•Tous les courriers sont stockés sur C (station centrale).

•1 usager = 1 boîte aux lettres sur C.

• Volume de stockage important sur C.

• Disponibilité du service = disponibilité de C.

• 1 opération = 1 transfert d'informations.

L'architecture centralisée consiste en un noyau central fort autour duquel tous les

périphériques sont regroupés (ou centralisées). Ce noyau central prend la plupart des

actions. L'avantage est une facilité d'administration.

ISI Kef - 2013/2014

15

Page 16: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Les différentes structuresStructure décentralisée-ou répartie

•les architectures de réseau informatique se sont de plus en plus orientées vers une

distribution des ressources et de la puissance informatique.

•Internet est sans doute l'exemple le plus marquant d'un réseau à architecture distribuée

puisqu'il ne possède aucun site central.

•Dans la mise en œuvre de réseaux de moins grande ampleur, le degré de distribution

(ou de centralisation) de la puissance de calcul, des périphériques, des bases de

données dépend de différentes considérations stratégiques, humaines et

professionnelles.

ISI Kef - 2013/2014

16

Page 17: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Les différentes structuresStructure parallèles (Systèmes de haute performance)

Les ordinateurs parallèles sont des machines qui comportent une architecture parallèle,

constituée de plusieurs processeurs identiques, ou non, qui concourent au traitement

d'une application. La performance d'une architecture parallèle est la combinaison des

performances de ses ressources et de leur agencement. (Latence, débit).

ISI Kef - 2013/2014

17

Page 18: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Les différentes structuresStructure parallèles (Systèmes de haute performance)

Architectures parallèles :

– Pas de limite de mémoire.

– Pas de limite de processeurs.

– Accélération des calculs complexes ou coûteux en temps d'occupation CPU (calcul matriciel, simulation numérique, transformée de fourrier...).

– Calcul répétitif sur un large ensemble de données structuré.

– Traitement indépendant.

ISI Kef - 2013/2014

18

Page 19: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Les différentes structuresStructure parallèles (Systèmes de haute performance)

Le parallélisme est la conséquence :

– Besoin des applications.

– Calcul scientifique.

– Traitement d'images.

– Bases de données qui demandent des ressources en CPU et en temps de calcul de plus en plus importantes.

– Limites des architectures séquentielles.

– Performance.

– Capacité d'accès à la mémoire.

– Tolérance aux pannes.

ISI Kef - 2013/2014

19

Page 20: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Comparaison entre différentes architectures

Comparaison des deux architectures de Systèmes de haute performance et de Systèmes distribués

•Un système parallèle de HP est une réponse à un besoin de HP :

– Une solution au problème.

– Un système distribué est une solution à un problème de distribution géographique (historiquement).

– Mais … de nos jours, la distribution peut résoudre un problème de HP. Donc, dans certains cas, un SD peut être considéré comme un système de HP.

ISI Kef - 2013/2014

20

Page 21: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Comparaison entre différentes architectures

• Comparaison des deux architectures centralisée et distribuée

– L'architecture centralisée supporte un noyau central alors que l'architecture distribuée peut supporter plusieurs.

– Le coût de l'une ou l'autre architecture varie suivant le domaine. En règle générale, si les périphériques ne sont pas utilisés à plein temps (par exemple, une imprimante), l'architecture centralisée est plus économique (car on économise en se basant sur le fait que tous les périphériques ne seront jamais tous utilisés en même temps). Dans le cas contraire (carte vidéo, réseau de PC), c'est l'architecture distribuée la plus économique (un gros ordinateur coûte plus cher que 10 petits ordinateurs 10 fois moins puissants).

ISI Kef - 2013/2014

21

Page 22: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Comparaison entre différentes architectures

Comparaison des deux architectures centralisée et distribuée

Du point de vu de l’architecture :

– Pas parallèle/Pas distribué : Machine séquentielle (un seul processeur).

– Parallèle/Pas Distribué : Machines vectorielles, Machines à mémoires partagées, Machines SIMD.

– Pas Parallèle/Distribué : Réseau d’ordinateurs avec communication lente exemple : Internet.

– Parallèle/Distribué : Réseau haut débit.

ISI Kef - 2013/2014

22

Page 23: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

ISI Kef - 2013/2014

23

Page 24: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

ISI Kef - 2013/2014

24

Page 25: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Systèmes parallèles Systèmes répartis Systèmesd’exploitation de réseaux

Processeurs Sites Ressources

Homogènes Hétérogènes Hétérogènes

Partage ou non de mémoire Mémoires individuelles Mémoires individuelles

Couplage fort Couplage failbe Couplage failbe

Topologie du réseau d’interconnexion

Réseau LAN + WAN Réseau LAN

Les users sont au courant de la multiplicité des Processeurs

Les users ont l’impression d’être dans un système centralisé

Les users sont au courant de la multiplicité des Machines

ISI Kef - 2013/2014

25

Page 26: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Identification des problèmes• Que doit résoudre un système réparti ?

– Tolérance aux pannes.

– Passage à l’échelle.

– Nommage et accès aux applications.

– Intégration de l’existant.

– Déploiement des applications.

– Sécurité et authentification.

– Disponibilité de l’application

ISI Kef - 2013/2014

26

Page 27: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Tolérance aux pannes• En anglais : reliability, fault tolerance.

• Un serveur participant à l’application tombe en panne.

• Un serveur envoie des informations erronées.

• Un serveur n’est plus atteignable (mais pas en panne) puis le

• redevient.

• Atomicité dans les applications réparties.

ISI Kef - 2013/2014

27

Page 28: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Passage à l’échelle• En anglais : scalability.

• Ce qui marche pour un utilisateur, marchera-t-il pour 10 000 ?

• Ce qui marche pour un objet, marchera-t-il pour 1 000 000 ?

• Ce qui marche pour un site, marchera-t-il pour 1000 ?

• Exemple : les applications de gestion de commerce

• électronique.

ISI Kef - 2013/2014

28

Page 29: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Nommage et accès aux applications• Nommage et accès aux applications

• En anglais : naming.

• Comment retrouver les objets distants ?

• Un objet = un identifiant + un état + un comportement.

• Applications non réparties : nommage géré par le langage

• (référence) ou par l’OS (adressage).

• Applications réparties : nommage explicite, dynamique ?

• Exemple de nommage : DNS, URL, …

ISI Kef - 2013/2014

29

Page 30: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Intégration de l’existant• En anglais : legacy.

• Connexion sur toutes les ressources d’une entreprise.

• Interopérabilité des applications.

• Transactions réparties.

ISI Kef - 2013/2014

30

Page 31: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Déploiement des applications• Comment installer tous les composants logiciels sur

• différents clients et serveurs ?

• Lorsque je change un nom de serveur ou j’en ajoute un, je

• recompile ? je redéploie ? ou je peux configurer

• automatiquement le redéploiement ?

ISI Kef - 2013/2014

31

Page 32: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Sécurité et authentification• Confidentialité.

• Intégrité :

– Droits d’accès, Pare-Feu.

• Authentification :

– Identification des applications partenaires.

– Non-répudiation.

– Messages authentifiés.

• Combien de personnes utilisent l’application, qui sont-ils ?

– Nécessité de se protéger contre les intrusions.

– Nécessité de stocker les accès des clients dans des fichiers journaux.

ISI Kef - 2013/2014

32

Page 33: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Disponibilité d’une application répartie• Exemple : un serveur qui fait de la tolérance aux pannes ne

• peut plus assurer d’autres tâches.

• Permettre des accès simultanés sur un même objet :

• Sérialiser les objets.

• Paralléliser les accès.

• Appliquer différentes politiques.

• Multi-threading.

ISI Kef - 2013/2014

33

Page 34: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Notions de Middleware• Middleware = Intergiciel = classe de logiciels systèmes agissant en qualité

d’infrastructure pour le développement ou le déploiement d’applications reparties: exemple CORBA

• Supporte des applications tournant sur des plateformes matérielles et logicielles différentes.

• Le middleware fournit :

– un support de haut niveau pour la distribution exemple invocation de méthodes à distance.

– Des services de désignation, sécurité, transactionnels

ISI Kef - 2013/2014

34

Page 35: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

• Le Middleware conceptualise et réalise les fonctions suivantes :– communications entre les applications réparties,– échanges de données,– facilités de mise en œuvre.

• Il résout les problèmes d’intégration et d’interopérabilité :– indépendance entre les applications et le système d’exploitation,– portabilité des applications,– partage des services distribués.

• Services d’un Middleware :– communication,– localisation,– transactions,– sécurité,– administration

ISI Kef - 2013/2014

35

Page 36: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Types de Middleware• Middleware de bases de données (ODBC)

• Middleware à messages MOM Message OrientedMiddleware : IBM MQSeries, Microsoft Message Queues.

• Middleware à objets répartis (CORBA, JAVA RMI)

• Middleware à composants (EJB, COM/DCOM, Web services)

• Middleware à environnement : XML

ISI Kef - 2013/2014

36

Page 37: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Historique et état de l’art• 1960

– Syst. temps partagé(unix), envir. Graphiques, réseaux•1970

– Ordinateurs personnels, Stations de travail– Client/serveur, Réseaux locaux : Ethernet– XeroxDFS

•1980– Systèmes ouverts,Tolérance aux fautes– Premiers serveurs de fichiers– Évolution du C/S : Appel de procédures àdistance– DNS en 85,– Amoebaen 84, Mach en 86, Chorus en 88

•1990– Internet, E-commerce – AFS, NFS, LDAP– DCE, corba, com/dcom

ISI Kef - 2013/2014

37

Page 38: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Le modèle Client-Serveur (1/2)• Coté serveur :

– Externalisation de services.– Attente de requêtes en provenances de clients puis exécution des requêtes en

séquentiel ou en parallèle.– Interface : Skeleton

• reçoit l’appel sous forme de « stream »• décapsule les paramètres• demande l’exécution• renvoi les paramètres (par références) et les résultats

• Coté client :– Émission de requêtes puis attente de la réponse.– Initiateur du dialogue.– Interface : Stub

• Reçoit l’appel en local• encapsule les paramètres• attends les résultats du serveur• décapsule les résultats• redonne la main à la fonction appelante

ISI Kef - 2013/2014

38

Page 39: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Le modèle Client-Serveur (2/2)• Client/Serveur « traditionnel » :

– RPC

• Client/Serveur « à objets » :

– RMI, CORBA, DCOM

• Client/Serveur « de données » :

– Requêtes SQL

• Client/Serveur « WEB » :

– CGI, Servlet, asp, jsp, php,...

ISI Kef - 2013/2014

39

Page 40: Mr. Mehrez Boulares, Mr. Nour Ben Yahia 2013-2014 Systèmes Répartis Institut Supérieure dinformatqiue du KEF.

Du centralisé vers le réparti

ISI Kef - 2013/2014

40