Principes et mécanismes de base pour les Systèmes Répartis


I : Introduction

1 : Définition

Un Système Réparti ou Système Distribué ou Architecture Répartie est défini comme étant une classe de systèmes informatiques comportant plusieurs éléments pouvant fonctionner de manière autonome et reliés par un système de communication qui leur permet d'échanger de l'information en vue de coopérer à une tache commune ou d'accéder à des services communs.

Le médium de communication peut aussi bien être un réseau physique de lignes de communication de processeur à processeur qu'un bus dans une machine.

2 : Rôle d'un Système Réparti

Le rôle d'un S.R. est d'assurer la communication et le partage d'informations entre des applications.

3 : Classification des machines (Modèle de Flynn)

Le Modèle de Flynn classe les machines en 4 architectures distinctes :

Un Système Réparti correspond aux classes MISD (bien que cette architecture soit assez rare) et MIMD. Il n'y a pas de grandes différences au niveau de la problématique entre les machines parallèles et les Systèmes Répartis.

4 : Notion de couplage

Le terme de couplage indique le lien qu'ont les différentes machines entre elles au niveau de la mémoire.

5 : Caractéristiques des Systèmes Répartis :

En général, lorsqu'on parle de S.R., il s'agit de systèmes faiblement couplés avec une topologie prédéfinie au niveau du réseau. Une des caractéristiques du S.R. est l'absence d'état global perceptible à un instant donné par un observateur. Un processus ne connait que les messages qui lui ont été envoyés, ou qui sont passés par lui. Il ne connait pas l'état du réseau, c'est à dire ce qui circule à l'instant T. Pour cette raison, deux machines peuvent avoir une perception différentes de la même série d'évennements.

Exemple :

On considère un S.R. servant à gérer des locations de costumes. 3 messages M1 à M3 signaleront un changement du stock :

On considère que le stock initial comporte 100 costumes. 4 machines (1) à (4) du S.R. reçoivent ces 3 messages dans un ordre différents. Leur vision du stock sera la suivante :

(1) (2) (3) (4)
MessageStock MessageStock MessageStock MessageStock
100 100 100 100
M1120 M1120 M390 M290
M2110 M3108 M1110 M381
M399 M298 M2100 M1101

Ceci montre le besoin de synchroniser les entités d'applications. Ceci s'avère délicat pour la simple raison que toute l'architecture repose sur les réseaux.

II : Modèles de systèmes répartis

Les modèles sont représentés avec les conventions suivantes :

1 : Modèle message

On est ici dans un mode d'exécution asynchrone dans lequel l'emetteur cède le contrôle des informations à 1 récepteur tout en continuant sa propre exécution. On a donc exécution en parallèle de 2 processus. Ceci pose un problème car l'emetteur n'a pas de compte rendu de fin de traitement de l'information par le récepteur.

E ======*====
       /
      /
R ===o=======

2 : Modèle client/serveur

Les applications sont vues comme un ensemble de procédures. Une entité d'apllication peut donc faire appel à une procédure qui s'exécute soit dans le même contexte que l'entité appelante, soit dans une entité qui se trouve sur la même machine, soit dans une entité qui se trouve sur une autre machine. On a un mode d'exécution synchrone, l'appelant restant bloqué pendant le déroulement de la procédure par l'entité chargée de son exécution. On n'a donc pas de parallélisme.

C ===o---------+====
      \       /
       \     /
S ------*===o-------

3 : Modèle à base d'objets

Le S.R. est vu comme un ensemble d'objets. Un objet propose des méthodes qui peuvent être appelées par d'autres objets. Ces objets peuvent être transparents pour l'utilisateur. Ce modèle peut être considéré comme une extension du modèle client/serveur. Le mode d'exécution est également synchrone.

4 : Modèle à base de diffusion

Une application est vue comme un ensemble d'entités structurées en groupes. Le mode de communication entre entités d'une même application est alors la communication de groupe ou diffusion vers des groupes. Un message destiné à un groupe est reçu par chacune des entités du groupe. On peut avoir deux modes d'exécution :

III : Difficultés des Systèmes Répartis

Un S.R. est un ensemble de composants matériels reliés par un réseau d'interconnexion fonctionnant de manière autonome pour réaliser une tâche commune. En raison de ces propriétés, la construction de systèmes et applications répartis pose des problèmes nouveaux pour lesquels des méthodes et outils spécifiques ont été développés :

D'après P. Laurencot (cours : 20/11/2002 - 22/11/2002), retranscrit par RSL (18/12/2002)

Sommaire / Informatique / Systèmes Répartis / Principes de base

Valid HTML 4.01 Created with VIM