0% ont trouvé ce document utile (0 vote)
29 vues37 pages

Chp1. Introduction Aux Systèmes Distribués

Ce document présente une introduction aux systèmes distribués, définissant leurs caractéristiques, avantages et inconvénients, ainsi que les critères de conception. Il aborde également les algorithmes répartis et les défis liés à la fiabilité, la performance et la sécurité des systèmes. Enfin, il souligne l'importance de l'adéquation entre l'architecture et le logiciel pour le bon fonctionnement des systèmes distribués.

Transféré par

Bitrus Bitrus
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
29 vues37 pages

Chp1. Introduction Aux Systèmes Distribués

Ce document présente une introduction aux systèmes distribués, définissant leurs caractéristiques, avantages et inconvénients, ainsi que les critères de conception. Il aborde également les algorithmes répartis et les défis liés à la fiabilité, la performance et la sécurité des systèmes. Enfin, il souligne l'importance de l'adéquation entre l'architecture et le logiciel pour le bon fonctionnement des systèmes distribués.

Transféré par

Bitrus Bitrus
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Introduction aux Systèmes

Distribués (Répartis)

Chapitre 1

1
P. Michel BERE
Plan
• Définition
• Critères de Conception d’un S.E.D
• Logiciels?
• Caractéristiques des systèmes repartis
• Algorithmes repartis
• Qualités d’un algorithme reparti
• Critères d’un système distribué
Définitions d’un SD

•Définition [Tanenbaum]: Un ensemble


d’ordinateurs indépendants qui apparaît à
un utilisateur comme un système unique et
Cohérent

• Les machines sont autonomes


•Les utilisateurs ont l’impression d’utiliser
un seul système.
Définitions d’un SD
Définition humoristique, mais qui met l’accent
sur deux points essentiels :
• l’interdépendance entre les éléments d’un système
réparti
• l’importance du traitement des défaillances.

• Un système à plusieurs processeurs n’est pas


forcement un système réparti.

• Qu’est ce qu’un système réparti, distribué,


parallèle?
Concepts matériels
• Taxonomie 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)
Définition
9
10

Objectifs

- Coût : plusieurs processeurs à bas prix


- Puissance de calcul et de stockage : aucune machine
centralisée ne peut rivaliser

- Performance (accélération) : via du calcul parallèle


- Adaptation : à des classes d'applications réelles naturellement
distribuées

- Fiabilité : résistance aux pannes logicielles ou matérielles


- Extensibilité : croissance progressive selon le besoin
11

Avantages/Inconvénients
Avantages
- partage de données
- partage de périphériques
- communication
- souplesse (politiques de placement)
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.
12

Critères de Conception d’un


S.E.D. ou d’un Syst. Opératoire
pour une architecture
distribuée

• Transparence
• Souplesse
• Fiabilité
• Performances
• Dimensionnement
13

Critères de Conception d’un


S.E.D Transparence
• Transparence à l'emplacement: L'utilisateur ne connaît
pas où sont situées les ressources
• Transparence à la migration: Les ressources peuvent être
déplacées sans modification de leur nom
• Transparence à la duplication: L'utilisateur ne connaît
pas le nombre de copies existantes
• Transparence à la concurrence: Plusieurs utilisateurs
peuvent partager en même temps les mêmes ressources
• Transparence au parallélisme: Des tâches peuvent
s’exécuter en parallèle sans que les utilisateurs le sachent
14

Critères de Conception d’un


S.E.D souplesse

• La facilité de modification, de configuration et


d'extension
15

Critères de Conception d’un


S.E.D Fiabilité
Disponibilité, Sécurité, Tolérance aux pannes

• Disponibilité
La disponibilité est la fraction de temps pendant
laquelle le système est utilisable :
- limiter le nombre des composants critiques
- dupliquer les parties clés des composants
logiciels et matériels (redondance)
- mais implique de savoir maintenir la cohérence
des copies
16

Critères de Conception d’un


S.E.D Fiabilité

• Securité
Les ressources doivent être protégées contre des
utilisations abusives et malveillantes. En
particulier le problème de piratage des données
sur le réseau de communication
17

Critères de Conception d’un


S.E.D Fiabilité

• Tolérance aux pannes


Le système doit être conçu pour masquer les
pannes aux utilisateurs. La panne de certains
serveurs (ou leur réintégration dans le système
après la réparation) ne doit pas perturber
l'utilisation du système en terme de fonctionnalité
18

Critères de Conception d’un


S.E.D Performances
Critères, Problème, Solution,

• Critères
- temps de réponse
- débit (nombre de travaux par heure)
- taux d'utilisation du système
- pourcentage utilisé de la bande passante du
réseau
19

Critères de Conception d’un


S.E.D Performances
• Problèmes
-La communication est en général assez lente dans les
systèmes distribués par rapport accès fichier
- Le mécanisme de tolérance aux pannes requiert
beaucoup d’opérations “inutiles” si pas de panne

• Solutions
Minimiser les échanges de message
- réduire le champ d'application des mécanismes de
reprises sur pannes
20

Critères de Conception d’un S.E.D


Performances: Dimensionnement

• Goulots d'étranglement potentiel si débit d'information très


important
3

Logiciel?

Nous distinguons, historiquement,trois


étapes dans la Conception des logiciels
d’exploitation des réseaux d’ordinateurs.
22

Les systèmes client-serveur


 Chaque site dispose d’un système d’exploitation propre

Peut être
 client : demandeur de services aux autres sites
Ou
serveur : offre des services aux autres sites
23

Systèmes homogènes
 Interconnexion de Systèmes homogènes avec partage de ressources

 Répartition plus ou moins visible Partage de ressources


Réparties sur les différents
sites

Possibilité de réaliser à distance la plupart des appels système


24

Les deux premières approches permettent à un utilisateur, à


partir d’un site donné, d’accéder aux services offerts par un
autre site par ajout des fonctions liées à la répartition à un
système déjà existant.

• Sites parfaitement autonomes


•Architecture matérielle et localisation des différentes fonctions
du système visibles à l’utilisateur.
25

Systèmes d’exploitation répartis


 Développement de la technologie des microprocesseurs
 Apparition des réseaux locaux à haut débit

Concevoir un système unique mis en œuvre sur un ensemble


De sites communiquant entre eux par échange de messages.

• Systèmes conçus au départ comme répartis


• Leurs fonctions de base prennent en compte la répartition.
26

•Ces fonctions sont assurées par un noyau réparti dont


une copie est localisée sur chacun des sites.

•Les fonctions qui mettent en jeu plusieurs sites sont réalisées


Par la coopération des noyaux de ces sites.

L’utilisation de plusieurs processeurs


Est donc transparente aux usagers
27

Caractéristiques des Systèmes


répartis
• Absence de mémoire commune

Impossibilité de capter instantanément


L’état global d’un système réparti au
moyen d’un ensemble de variables partagées.

• Absence d’une horloge physique commune


+
• Variabilité des délais de transmission des
messages
28

Deux éléments distincts du système peuvent


avoir une perception différente de l’état d’un
troisième élément ou sous-système et de
l’ordre des événements qui s’y produisent.

Délai de transmission d’un message entre deux processus


s’exécutant sur deux machines distinctes TRES GRAND
par rapport au temps qui sépare deux points observables
consécutifs sur une même machine.

A un instant donné, un processus s’exécutant sur une machine


ne peut connaître que de manière approchée l’état d’une autre
Machine.
29

Adéquation architecture / logiciel


 Recherche d’une adéquation entre l’architecture
et la structure fonctionnelle des problèmes à résoudre

Faire coopérer plusieurs sites à la résolution d’un problème.

Construire un algorithme résolvant un problème comme un


Ensemble d’unités fonctionnelles (ex: des processus) s’exé-
cutant sur des sites distincts et communiquant par échange
de messages.
30

Algorithmes répartis

Définition:
• Un algorithme réparti est un algorithme parallèle
composé d’un ensemble fini de processus séquentiels
communiquant entre eux par échange de messages.

Réaliser un service Réaliser une observation


Calcul de fonctions
• Election • Exclusion mutuelle • Détection d’interblocage
•Protocoles de com- • Détection de la terminaison
• Arborescence couvrante
munication : •Détection de propriétés stables
• Chemins minimaux,…
(indépendament d’une propriété
 Synchrone (RDV)
Synchronisme virtuel stable particulière).
(total, causal, atomique,…)
31

Quelques algorithmes de
contrôle réparti
• Exclusion mutuelle:
Il s’agit d’attribuer un privilège équitablement à un
ensemble de processus communicants qui coopèrent
à la réalisation d’un but commun (le privilège ne
peut être possédé indéfiniment par un même
processus).

• Election:
Il y a élection d’un processus par l’ensemble des autres
processus lorsque le privilège lui sera attribué une
fois pour toute.
32

Quelques algorithmes
de contrôle réparti
• Interblocage:
C’est la situation dans laquelle se trouve un ensemble de processus (au
moins deux) telle que chaque processus de l’ensemble attend l’occurrence
d’un événement qui ne peut être produit que par un autre processus de
ce même ensemble.
 Evénement :
 Libération d’une ressource
 Arrivée d’un message

Deux types d’interblocage


• Interblocage de compétition (lié aux ressources)
• Interblocage lié à la communication : chaque processus
attend un message d’un autre processus alors qu’aucun message n’est en
transit.
33

Quelques algorithmes de
contrôle réparti
• Terminaison:
Comment peut-on détecter la terminaison d’un
algorithme réparti ?

Facile si l’on pouvait disposer d’un état global instantané


décrivant l’état des processus et des voies de communication.

Un algorithme réparti sera dit terminé si tous les processus


Sont passifs et il n’y a aucun message en transit.
34

Qualité d’un algorithme réparti

• Quelques critères
 Réseau de communication
 Duplication des messages
 Altération des messages
 Déséquencement des messages
 Délai de transmission fini
 Délai de transmission borné

 Trafic engendré
 Nombre de messages engendrés pour produire un résultat

 Temps de calcul
35

Qualité d’un algorithme réparti


 Symétrie

Un algorithme est dit symétrique si tous les processus exécute le même texte.
Tous les processus jouent alors le même rôle.

Meilleure résistance aux pannes des processus

 Etat local ou global


La connaissance d’un état local uniquement pour prendre une décision

 Réduction du nombre de messages échangés


 Chaque processus est plus autonome par rapport aux autres

Meilleure résistance aux pannes


36

Critère d’un système


distribué
 Le système doit pouvoir fonctionner (au moins de façon dégradée) même en cas
de défaillance de certains de ses éléments

 Le système doit pouvoir résister à des perturbations du système de


communication (perte de messages, déconnexion temporaire, performances
dégradées)

 Le système doit pouvoir résister à des attaques contre sa sécurité (tentatives de


violation de la confidentialité et de l’intégrité, usage indu de ressources, déni de
service)

 Le système doit pouvoir facilement s’adapter pour réagir à des changements


d’environnement ou de conditions d’utilisation

 Le système doit préserver ses performances lorsque sa taille croît (nombre


d’éléments, nombre d’utilisateurs, étendue géographique)  dimensionnement
37

Critère d’un système


distribué
Difficultés
 Propriété d’asynchronisme du système de communication (pas de borne
supérieure stricte pour le temps de transmission d’un message
 Conséquence : difficulté pour détecter les défaillances

 Dynamisme (la composition du système change en permanence)


 Conséquences : difficulté pour définir un état global

 Difficulté pour administrer le système


 Grande taille (nombre de composants, d’utilisateurs, dispersion
géographique)
 Conséquence : la capacité de croissance (scalability) est une propriété
importante, mais difficile à réaliser
38

Vous aimerez peut-être aussi