Vous êtes sur la page 1sur 9

MASTER1 : 2012-2013

INTRODUCTION AUX SYSTEMES DISTRIBUES

MASTER1 : 2012-2013 INTRODUCTION AUX SYSTEMES DISTRIBUES UNIVERSITE DE BEJAIA FACULTE DES SCIENCES EXACTES DEPARTEMENT

UNIVERSITE DE BEJAIA FACULTE DES SCIENCES EXACTES DEPARTEMENT D’INFORMATIQUE 1 ème année MASTER

Année universitaire 2012/2013

MODULE DE SYSTEMES DISTRIBUES

Plan

Chapitre I : INTRODUCTION AUX SYSTEMES DISTRIBUES

Chapitre II : ORDONNANCEMENT DES EVENEMENTS DANS UN SYSTEME DISTRIBUE

Chapitre III : COHERENCE DE LINFORMATION DISTRIBUEE

Chapitre IV : TOLERANCE AUX FAUTES

1

Mme Z.TAHAKOURT Maitre assistante Université de Béjaia

MASTER1 : 2012-2013

INTRODUCTION AUX SYSTEMES DISTRIBUES

MASTER1 : 2012-2013 INTRODUCTION AUX SYSTEMES DISTRIBUES Chapitre I : INTRODUCTION AUX SYSTEMES DISTRIBUES Plan du

Chapitre I : INTRODUCTION AUX SYSTEMES DISTRIBUES

Plan du Chapitre

1. Introduction

2. Système distribué Versus système centralisé

3. Caractéristiques des Systèmes distribués

4. Motivations des Systèmes distribués

5. La sécurité des Systèmes distribués

6. Avantages et inconvénients des Systèmes distribués

7. L’algorithmique répartie

8. Les problèmes de la distribution

2

MASTER1 : 2012-2013

INTRODUCTION AUX SYSTEMES DISTRIBUES

MASTER1 : 2012-2013 INTRODUCTION AUX SYSTEMES DISTRIBUES 1. Introduction Un système informatique distribué (réparti)=

1. Introduction

Un système informatique distribué (réparti)= ensemble d’ordinateurs connectés par un réseau de communication.

Réseau de communication
Réseau de communication

Exemples de systèmes distribués (SD) :

Serveur

de fichiers : les fichiers se trouvent

physiquement sur un serveur, mais

virtuellement accessibles à partir de n’importe quelle machine, seulement si le réseau ou le serveur se plante plus d’accès aux fichiers.

Web : un serveur web auquel se connectent des navigateurs web (clients).

SD pour calcul scientifiques : plusieurs machines hétérogènes connectées par un réseau local ou internet (grille de calcul).le principe est le suivant : un ou plusieurs serveur distribue des calculs aux machines clientes, un client exécute son calcul puis renvoie les résultats au serveur. Avantage : utilisation maximum des ressources de calcul, seulement si le réseau ou le serveur plante le système s’arrête.

2. Système distribué Versus système centralisé

Système centralisé :

3

MASTER1 : 2012-2013

INTRODUCTION AUX SYSTEMES DISTRIBUES

MASTER1 : 2012-2013 INTRODUCTION AUX SYSTEMES DISTRIBUES Tout est localisé sur la même machine et accessible

Tout est localisé sur la même machine et accessible par programme

Système logiciel s’exécutant sur une seule machine

Accéder localement aux ressources nécessaires (données, code, périphériques, mémoire,…)

Système distribué :

Ensemble d’ordinateurs standard indépendants communiquent via se réseau par envoi de messages

connectés

en

réseau

Cet ensemble apparait du point de vu de l’utilisateur comme une unique entité

3. Caractéristiques des Systèmes distribués

et

Il n’existe pas de définition rigoureuse de ce qu’un système distribué. On peut essayer de dégager quelques propriétés qui caractérisent les systèmes qui sont universellement considérés comme distribués. Un système est considéré comme distribué s’il présente les caractéristiques suivantes :

Le système est constitué d’un ensemble d’éléments de traitement (processeurs) reliés par des organes de communication qui leur permettent d’échanger de l’information.

Un

élément

d’un

SD

peut

tomber

en

panne

sans

affecter

nécessairement

le

fonctionnement de l’ensemble.

 

Absence

de

mémoire

commune ;

ce

qui

implique

l’impossibilité

de

capter

instantanément l’état global du système au moyen partagées.

 

Absence d’horloge physique commune.

 

Variabilité des délais de transmission de messages ce qui implique que deux éléments d’un SD peuvent avoir des informations différentes sur un troisième élément, et voir des événements s’y produire dans des ordres différents.

4. Motivations des Systèmes distribués

Les principales motivations (objectifs) derrière le développement d’un SD sont :

Faire communiquer des applications existantes, tout en respectant l’autonomie locales de chacune d’elles ; la principale fonction du système est dans ce cas la communication d’information.

Utiliser et partager des ressources existantes, comme par exemple :

4

MASTER1 : 2012-2013

INTRODUCTION AUX SYSTEMES DISTRIBUES

MASTER1 : 2012-2013 INTRODUCTION AUX SYSTEMES DISTRIBUES 1. un système de fichier afin d’utiliser des fichiers

1. un système de fichier afin d’utiliser des fichiers à partir de n’importe quelle machine.

2. Partage d’imprimante entre plusieurs machines.

3. Accès à une base de données partagée.

Réduire le temps d’exécution d’une grosse application par l’exécution parallèle de plusieurs modules sur des processeurs différents ( clustering), Comipar exemple :

1.

Le calcul scientifique distribué sur un ensemble de machine.

Augmenter la disponibilité d’un système en assurant la redondance du matériel, des données ou des traitements, comme par exemple :

 

1. existence de plusieurs imprimantes sur le réseau qui permet d’imprimer sur n’importe laquelle

2. existence de plusieurs copies de données par réplication des données dans les bases de données distribuées.

Garantir la transparence, c'est-à-dire donner l’illusion que l’ensemble des machines se comportent exactement comme un système monoprocesseur :

1. Accès : les utilisateurs ne doivent pas pouvoir savoir où sont placées les ressources

2. Concurrence : des accès simultanés aux ressources doivent pouvoir se faire sans interférence entre eux.

3. Migration : les processus et données mobiles doivent être sans modification du nom et du chemin d’accès.

4. Réplication : des utilisateurs accèdent à des copies multiples des données sans le savoir.

5. Parallélisme : les processus devraient pouvoir s’exécuter en parallèle sans que l’utilisateur le sache.

5. La sécurité des Systèmes distribués

La nature des SD fait qu’ils sont souvent sujets à des attaques :

Les communications à travers le réseau peuvent être interceptées.

On ne connait pas toujours bien un élément distant avec qui on communique

5

MASTER1 : 2012-2013

INTRODUCTION AUX SYSTEMES DISTRIBUES

MASTER1 : 2012-2013 INTRODUCTION AUX SYSTEMES DISTRIBUES Des solutions à ces problèmes :   Connexion sécurisée

Des solutions à ces problèmes :

 

Connexion sécurisée par authentification avec les éléments distants.

 

Cryptage des messages circulant sur le réseau.

 

6.

Avantages et inconvénients des Systèmes distribués

 

6.1

Avantages

 

Partage de données : de multiples utilisateurs peuvent accéder à une base de données

partagées. Partage de périphériques : de multiples utilisateurs peuvent partager des ressources chères telles que des imprimantes en couleurs par exemple.

Communication :

facilite

la

communication

interpersonnelle

avec

le

courrier

électronique par exemple. Rapidité d’exécution : un SD peut avoir une puissance de calcul global plus importante

qu’un gros ordinateur. Fiabilité : le système peut continuer à fonctionner même si une machine tombe en

 

panne.

6.2

Inconvénients

Logiciels : peu de logiciels existants actuellement pour les SD. Réseau : le réseau peut être saturé ou provoquer d’autres problèmes. Sécurité : les données confidentielles peuvent être piratées.

7. L’algorithmique répartie

L’algorithmique répartie ou calcul réparti (distribué) est un calcul parallèle réalisé par un ensemble de processus qui utilisent plusieurs processeurs (un ou plusieurs processus par processeurs). La communication entre ces processus peut être réalisée par :

1. Mémoire partagée, ou

2. Echange de message.

Un calcul réparti se fait sur un système réparti.

7.1 Modèles temporels d’un système distribué

Il existe deux modèles temporels de SD :

a) Synchrone : il existe des bornes sur les vitesses des processus, sur les délais de transmission et sur la dérive des horloges.

b) Asynchrone : aucune borne.

6

MASTER1 : 2012-2013

INTRODUCTION AUX SYSTEMES DISTRIBUES

MASTER1 : 2012-2013 INTRODUCTION AUX SYSTEMES DISTRIBUES Modèles de communication : Synchrone /asynchrone Communication

Modèles de communication : Synchrone /asynchrone

Communication Synchrone

: Synchrone /asynchrone Communication Synchrone Même notion de temps, transmission instantanée,

Même notion de temps, transmission instantanée, généralement bornée.

Communication Asynchrone

généralement bornée. Communication Asynchrone Est-ce qu’il sait que j’ai eu sa réponse ? Mail : On

Est-ce qu’il sait que j’ai eu sa réponse ?

Mail : On se voit à 12h

sait que j’ai eu sa réponse ? Mail : On se voit à 12h Ok Ack
Ok Ack Ok
Ok
Ack Ok
Ack Ack
Ack Ack
eu sa réponse ? Mail : On se voit à 12h Ok Ack Ok Ack Ack

Est-ce qu’elle sait que j’ai eu son Ack Ok?

Nota : Pour notre cours on s’intéressera au deuxième modèle, à savoir « asynchrone ».

7

MASTER1 : 2012-2013

INTRODUCTION AUX SYSTEMES DISTRIBUES

MASTER1 : 2012-2013 INTRODUCTION AUX SYSTEMES DISTRIBUES 7.2 Avantages et inconvénients d’un système distribué

7.2

Avantages et inconvénients d’un système distribué asynchrone

a)

Avantages :

 

1. Meilleures tolérances aux défaillances → décentralisa on des décisions)

2. Meilleure efficacité → autonomie rela ves des processus

Ce qui implique un couplage faible, donc moins de risques de blocages mutuels.

c)

Inconvénients : Contrôle des processus plus difficile, causée par :

1. L’asynchronisme : évaluations instantanées impossibles (expressions réparties sur

plusieurs processus)

2. Des défaillances : maintien de la cohérence du calcul difficile

3. Des deux (asynchronisme + défaillances) : comment distinguer entre un processus lent et processus crashé ou arrêté.

7.3

Calcul réparti asynchrone fiable

On considère dans ce qui suit le modèle du système suivant :

Ensemble de processus p1, p2, …, pn.

Séquences d’événements locaux par processus

 

o

Histoire de P i

: [e i,1 ; e i,2 ; … ; e i,x ; …[

o

h i,x =[ e i,1 ; e i,2 ; … ; e i,x ]

o

h i,x+1 = h i,x .[ e i,x+1 ]

trois types d’événements :

o

o

o

e i,1

interne (mise à jour de l’état local du processus)

Emission de message m sur un processus p i vers un processus p j . Evénement émission de m vers p j . Action : envoyer (m, p j ) Effet : dépose m dans le canal c i,j

Réception de message m sur un processus P j . Evénement réception de m depuis p i . Action : délivrer (m) Effet : retire m du canal c i,j : met à jour les variables de P j .

e i,2

e i,3

e i,4

e i,x-1

8

e i,x

MASTER1 : 2012-2013

INTRODUCTION AUX SYSTEMES DISTRIBUES

MASTER1 : 2012-2013 INTRODUCTION AUX SYSTEMES DISTRIBUES P i 8. Les problèmes de la distribution De

P i

MASTER1 : 2012-2013 INTRODUCTION AUX SYSTEMES DISTRIBUES P i 8. Les problèmes de la distribution De

8. Les problèmes de la distribution

De ce qui précède on peut mettre en évidence les principaux problèmes du traitement distribué.

Désignation des éléments ou des entités (machines, processus, fichiers,…) :

C’est-à-dire la connaissance des éléments formant le système, en les identifiant en les localisant. Le système de désignation des entités est l’ensemble des conventions, procédures et structures de données qui permettent de donner un nom unique à chaque entité et d’utiliser ce nom pour y accéder.

Synchronisation des activités et ordre des événements :

Une propriété des SD est l’impossibilité de déterminer un état global instantané du système. Sur un site donné, les informations sur le reste du système ne peuvent être que partielles ou périmées. En dépit de ces incertitudes, il faut néanmoins pouvoir synchroniser des activités qui se déroulent sur des sites différents (Chapitre II).

Gestion de la cohérence de l’information distribuée :

Le problème de la gestion d’informations distribuées est lié au précédent. Il faut pouvoir assurer la cohérence mutuelle d’informations distribuées en l’absence d’état global. Ce problème se pose notamment pour la gestion cohérente de copies multiples d’une même information que des impératifs de disponibilité et d’efficacité amènent à conserver (Chapitre III).

Tolérance aux pannes :

L’objectif visé est d’assurer le fonctionnement d’un système éventuellement dans un

mode dégradé, en présence de panne de ses éléments (processeurs, mémoires, système

de communication) (Chapitre IV).

9