SlideShare une entreprise Scribd logo
1  sur  44
La technologie des
systèmes distribués
Introduction
01
 Naissance des systèmes distribues
 Définition
 Les avantages et les désavantages
 Critères des systèmes distribué
Présentation des systèmes distribuées
02
Architectures et fonctionnement
03
Communication dans les systèmes
distribuées
04
PLAN
Conclusion
05
 Le Modèle OSI
 Les Sockets
 RPC
Naissance des systèmes distribues
les premiers ordinateurs ont été réalisés
après la Seconde Guerre mondiale,
leur conception repose sur le résultat de
divers prototypes tels que l'Harvard
Mark I et le Z3(calculateur ).
.
le Micral conçu par François Gernelle de
la société R2E dirigée par André Truong
Trong Thi. Basé sur le premier
microprocesseur, l'Intel 8008 8 bits, ses
performances en font le plus petit
ordinateur moderne de l'époque (500
kHz, mémoire RAM de 8 ko en version
de base)
début de 1ere moderne
des ordinateurs
En janvier 1973 est présenté le
premier
micro-ordinateur Micro-processeurs
puissants en quantité (faible
cout).
Avènement des micro-
ordinateurs
L'ENIAC, vers 1950.
1945 1973 1980
IBM Personal Computer, à l'origine
des PC modernes.
-Interconnexion d’un grand
nombre de machines
-Transport d’informatique à
10 Mbits/seconde
-Technologies: Ethernet
(Xerox), Token Ring (IBM)
Réseaux locaux (LAN)
Il devient facile
d’interconnecter des
ordinateurs
Système informatique distribué:
Content A - 40%
Définition:
Un système informatique distribué se compose de plusieurs composants
logiciels qui se trouvent sur plusieurs ordinateurs, mais qui s'exécutent
comme un système unique. Les ordinateurs qui se trouvent dans un
système distribué peuvent être physiquement proches les uns des autres
et connectés par un réseau local, ou ils peuvent être géographiquement
éloignés et connectés par un réseau étendu. Un système distribué peut
comprendre un nombre quelconque de configurations possibles, telles que
des ordinateurs centraux, des ordinateurs personnels, des postes de
travail, des mini-ordinateurs.
Le second fait référence au logiciel qui laisse apparaitre le système
distribue comme une seule entité cohérente. C’est un aspect qui suppose
une interconnexion des ordinateurs moyennant un réseau de
communication physique.
Le premier est de nature matérielle, il s’agit de l’autonomie des
ordinateurs ou chacun peut exécuter des taches en concurrence (au
même moment) avec les autres.
Système informatique distribué:
L'objectif de l'informatique distribuée est de faire fonctionner un tel
réseau comme un seul ordinateur.
On a deux aspects :
Puissance de calcul
Un système pluri-
processeur offre une
puissance de calcul
supérieure a celle d’un seul
processeur.
Economique
Excellent rapport
performance/prix des
microprocesseurs
Haute disponibilité
La défaillance d’une
machine n’affecte pas les
autres
Distribution naturelle de
certaines applications
-Système de contrôle d’une
chaine de production
-Distribution géographique
d’agences bancaires
Les avantages des systèmes
distribués :
Par rapport aux systèmes
centralises :
You can simply
impress your
audience and add a
unique zing.
Content Here
E v o l u t i o n
p r o g r e s s i v e
Evolution de la technologie des processeurs
Partage des
périphériques
Partage des
périphériques couteux :
Exemple : imprimante
laser couleur,
périphériques
d’archivage
Partage des
données
Partage des données
entre les utilisateurs :
Exemple : système de
réservation aérienne
Flexibilité
distribution de la charge
Facilitation des communications
entre personnes
-Courrier électronique :
communication
asynchrone
-Modification possible
des documents
échangés
Les avantages des systèmes
distribués :
Par rapport à des postes de
travail indépendants :
Réseau de
communication
-Saturation
-Perte de messages
Logiciel
-Relativement peu
d’expérience de
conception, mise en
œuvre et utilisation de
logiciels distribués
-La distribution doit elle
être transparente aux
utilisateurs ?
Sécurité
Facilite de partage de
données rend
nécessaire la protection
des données
confidentielles
Facilitation des communications
entre personnes
-Courrier électronique :
communication
asynchrone
-Modification possible
des documents
échangés
Les inconvénients des systèmes
distribués :
la différence entre un système centralisé et un système
distribué
 un système centralisé
la différence entre un système centralisé et un système
distribué
 Systèmes distribués :
Les caractéristique des système distribué
Partage des
ressources
Traitement
simultané
Évolutivité
Détection des
erreurs
Transparence
Les types des systèmes distribués
Cluster Computing
L’informatique en cluster : Ensemble d'ordinateurs connectés qui fonctionnent
ensemble comme une unité pour effectuer des opérationsensemble, fonctionnant
dans un système unique. Les clusters sont généralementconnectés rapidementvia
des réseaux locaux et chaque nœud exécute le même système d'exploitation.
Les propriétés et cas d’utlisations de cluster computing
 Les propriétés
Haute performance
Facile à gérer
Évolutif
Extensibilité
Disponibilité
Souplesse
Rentabilité
 Cas utilisation
Les types des systèmes distribués
Gride Computing
Informatique en grille : Dans l'informatique en grille, le sous-groupe se compose de systèmes distribués, qui
sont souvent configurés comme un réseau de systèmes informatiques, chaque système peut appartenir à un domaine
administratif différent et peut différer considérablement en termes de matériel, de logiciel et de technologie de réseau de
mise en œuvre. .
Les différents départements ont un ordinateur différent avec un système d'exploitation différent pour rendre le nœud de
contrôle présent, ce qui aide différents ordinateurs avec un système d'exploitation différent à communiquer entre eux et à
transférer des messages pour fonctionner.
Les propriétés et cas d’utlisations de gride computing
 Peut résoudre des problèmes plus
importants et plus complexes dans un
délai plus court. Collaboration facilitée
avec d'autres organisations et
meilleure utilisation des équipements
existants
 Le matériel existant est utilisé au
maximum.
 La collaboration avec les organisations
facilitée
 Les propriétés  Cas utilisation
 Les organisations qui développent
des normes et des pratiques de
grille pour la ligne de guilde
 Fonctionne comme une solution
middleware pour connecter différentes
entreprises.
Architecture des
systemes distribué
01
02
03
Architecture logicielle
Architecture matérielle
Architecture des application
distribuées
ARCHITECTURE MATÉRIELLE
Système multiprocesseur Multiprocesseur a bus
Dans ce cas tout les processeur
accède a la mémoire physique a
travers un bus
Problème: le bus baisse sa
performances considérablement si on
atteins 4 ou 5 processeurs.
Solution: La solution consiste à
ajouter une mémoire cache
Système multiprocesseur Multiprocesseur a switch
Matrice de commutation
Réseau de type oméga
Système multi ordinateur Multi Ordinateur a bus
Le système a mémoire locales basés
bus sont construits a partir
d'ordinateurs(processeurs+ mémoire),
Ies processeurs sont reliée par un
réseau multi accès partagé et
communiquant par diffusion de
messages.
Système multi ordinateur Topologies en hypercube
Un hypercube est un cube a n
dimension ou chaque nœuds est relies
a l’autre n autre nœuds
Architecture logicielle
Système d’exploitation distribue Multiprocesseur MPOS
• Hautes Performances .
• Utilisant des processeur
Multiples
• Son but et de rendre le
nombre des processeur
transparent pour les
application
Communication dans les systèmes distribués
Système d’exploitation distribue Multi ordinateur MCOS
• structure complexe et différent de
MPOS .
• possédant un mécanisme de
communication interprocessus
unique et global .
• les machines possèdent le même
système d'exploitation.
• L'unique moyenne de
Communication est d'envoyer des
messages .
ARCHITECTURE DES APPLICATION DISTRIBUÉ
Architecture Client/serveur
ARCHITECTURE DES APPLICATION DISTRIBUÉ
Le modèle du
mandataire/Cache
ARCHITECTURE DES APPLICATION DISTRIBUÉ
Architecture paire-à-paire (Peer To
Peer)
Protocole de communication dans les systèmes à grande
échelle Modèle en couche OSI (open system interconnexion)
Application
Session
Présentation
Transport
Réseau
Liaison de données
Physique
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
fournit l’interface pour l’utilisateur final qui utilise un appareil connecté à un
réseau.
s’occupe de la transmission des bits de façon brute sur un canal de
communication
Son rôle est un rôle de « liant » : elle va transformer la couche physique en
une liaison a priori exempte d’erreurs de transmission pour la couche
réseau
permet de gérer le sous-réseau, i.e. le routage des paquets sur ce sous-
réseau et l’interconnexion des différents sous-réseaux entre eux
responsable du bon acheminement des messages complets au destinataire
organise et synchronise les échanges entre tâches distantes. Elle réalise le
lien entre les adresses logiques et les adresses physiques des tâches
réparties.
c’est elle qui traite l’information de manière à la rendre compatible entre
tâches communicantes. Elle va assurer l’indépendance entre l’utilisateur et
le transport de l’information.
1
3
2
5
4
6
7
Processus
Émission
Application
Présentation
Session
Transport
Réseau
Liaison de données
Physique
Application
Présentation
Session
Transport
Réseau
Physique
Liaison de données
Processus
Réception
Données
d’applications
Données
d’applications
Unité de données
Unité de données
Unité de données
Unité de données
Unité de données
Unité de données ( bits)
Canal transmission des données
Modèle multi clients/serveur (requête / réponse )
Les sockets / API (Application Program Interface)
Les sockets fournissent une interface d’accès, à partir d’un hôte,
aux interfaces de transport, notamment TCP et UDP
Les port des sockets TCP et UDP sont les principaux transport
dans les sockets
TCP Transmission Control
Protocol (mode connecté)
une liaison est établie au
préalable entre deux hôtes,
et ensuite un flot d’octets est
échangé sur cette liaison
UDP User Datagram Protocol
(mode non connecté)
Aucune liaison n’est établie.
Les messages sont échangés
individuellement.
La connexion en fonction Les Sockets
Serveur créer une socket et se positionne en
écoute de demande de connexion
Serveur en gestion multi-clients
CLIENT1 SERVEUR CLIENT2
Un client faire une demande de connexion
(création d’une socket locale )
Le serveur accepte la connexion
Le client et le serveur sont connectés par le tube ainsi
crée et peuvent lire ou écrire dans leurs sockets
respectives
RPC
J’ai besoin
de faire un
calcul en
utilisons F(x)
J’ai F(x)
RPC (Remote Procedure Call)
Permet de distribuer facilement certaines parties d’une application sur des machines différente
de la même manière que si l’appel était local
Exemple système reparti
connexion
RPC
J’ai besoin
de faire un
calcul en
utilisons F(x)
J’ai F(x)
RPC (Remote Procedure Call)
Permet de distribuer facilement certaines parties d’une application sur des machines différente
de la même manière que si l’appel était local
Exemple système reparti
connexion
Cas normale
Process A
F(X)
F(X)
Process B
Résultat
L’appel et le retour ont lieu
dans un site
L’exécution ce déroule
dans un outre site
Serveur Client
Interpréter la requête Appel de la procédure
Appel de la procédure
Exécution
Résultat
Envoi de l’appel
Envoi de la réponse
Résultat
Paradigme client serveur
Le client
envoie les
paramètrex
d’appels de la
fonction
Le calcul est
effecué coté
serveur et le
résultat est
envoyé au
client
P(x,y)
P(x,y)
R
R
Serveur Client
Interpréter la requête Appel de la procédure
Appel de la procédure
Exécution
Résultat
Envoi de l’appel
Envoi de la réponse
Résultat
Principe
P(x,y) P(x,y)
R
R
RPC étendu
Le modèle RPC a été étendu et adapté sous d’autres noms, mais le paradigme de programmation
reste le même :
COBRA : Common Object Request Broker Architecture ,langage C++ et java (1991);
•La transparence; •La portabilité; •L’interopérabilité; •L’adaptabilité; •La disponibilité; •La stabilité;
Le modèle objet Client/Serveur
en CORBA
Objet CORBA
Bus CORBA
O
R
B
O
R
B
Référence
d’objet
Code
d’implantation
Application cliente Application serveur
Interface
d’objet
Etat d’objet
Requête
Activation
Le modèle RPC a été étendu et adapté sous d’autres noms, mais le paradigme de programmation
reste le même :
COBRA : Common Object Request Broker Architecture ,langage C++ et java (1991);
RPC étendu
RMI : Remote Method Invocation,langage et java (1997);
Opérations (méthodes):
• Débiter
• Consulter
• Transférer…
Java cards : system d’exploitation destiné aux application pour carte à puce
Compte bancaire
Client
Appel de la procédure
Envoi de l’appel
Envoi de la réponse
Résultat
Stub et skelton
Stub ou Souche clinet
• procédure qui porte le nom de
la vraie procédure qu’il
remplace
• donne l’illusion au programme
principal que la procèdure est
bien locale
• gère la connexion
Stub client
Serveur
Interpréter la requête
Appel de la procédure
Exécution
Résultat
Envoi de l’appel
Envoi de la réponse
Stub et skelton
Skelton serveur
Stub ou Tallon,Skelton serveur
• Gère la communication avec
le stub client
• Active la procédure désugnée
en lui transmettant les
paramètres d’appel
• Retourne les valeures de
résultat au stub client

Contenu connexe

Tendances

Projet de fin d étude (1)
Projet de fin d étude (1)Projet de fin d étude (1)
Projet de fin d étude (1)
Sanaa Guissar
 
introduction à la modélisation objet
introduction à la modélisation objetintroduction à la modélisation objet
introduction à la modélisation objet
Amir Souissi
 

Tendances (20)

Tp n 4 linux
Tp n 4 linuxTp n 4 linux
Tp n 4 linux
 
Equipements d'interconnexion
Equipements d'interconnexionEquipements d'interconnexion
Equipements d'interconnexion
 
Architecture des Systèmes Multi-Agents
Architecture des Systèmes Multi-Agents Architecture des Systèmes Multi-Agents
Architecture des Systèmes Multi-Agents
 
Systèmes d'Exploitation - chp2-gestion des processus
Systèmes d'Exploitation - chp2-gestion des processusSystèmes d'Exploitation - chp2-gestion des processus
Systèmes d'Exploitation - chp2-gestion des processus
 
Diagrammes de classes
Diagrammes de classesDiagrammes de classes
Diagrammes de classes
 
Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Architectures 3-tiers (Web)
Architectures 3-tiers (Web)
 
Mise en place d’un laboratoire de sécurité « Scénarios d’Attaques et Détectio...
Mise en place d’un laboratoire de sécurité « Scénarios d’Attaques et Détectio...Mise en place d’un laboratoire de sécurité « Scénarios d’Attaques et Détectio...
Mise en place d’un laboratoire de sécurité « Scénarios d’Attaques et Détectio...
 
Methodes d'accès dans les réseaux locaux
Methodes d'accès dans les réseaux locauxMethodes d'accès dans les réseaux locaux
Methodes d'accès dans les réseaux locaux
 
Architectures n-tiers
Architectures n-tiersArchitectures n-tiers
Architectures n-tiers
 
cours DHCP IPv4 et IPv6
cours DHCP IPv4 et IPv6cours DHCP IPv4 et IPv6
cours DHCP IPv4 et IPv6
 
La sécurité des réseaux sans fil
La sécurité des réseaux sans filLa sécurité des réseaux sans fil
La sécurité des réseaux sans fil
 
Python avancé : Classe et objet
Python avancé : Classe et objetPython avancé : Classe et objet
Python avancé : Classe et objet
 
L Architecture Logicielle En Pratique
L Architecture Logicielle En PratiqueL Architecture Logicielle En Pratique
L Architecture Logicielle En Pratique
 
Travaux Dirigée: Equipements d'interconnexion
Travaux Dirigée: Equipements d'interconnexionTravaux Dirigée: Equipements d'interconnexion
Travaux Dirigée: Equipements d'interconnexion
 
Introduction aux réseaux informatiques
Introduction aux réseaux informatiquesIntroduction aux réseaux informatiques
Introduction aux réseaux informatiques
 
Atm
AtmAtm
Atm
 
Projet de fin d étude (1)
Projet de fin d étude (1)Projet de fin d étude (1)
Projet de fin d étude (1)
 
introduction à la modélisation objet
introduction à la modélisation objetintroduction à la modélisation objet
introduction à la modélisation objet
 
Introduction au reseau
Introduction au  reseauIntroduction au  reseau
Introduction au reseau
 
Chapitre 2: Modèle de référence OSI
Chapitre 2: Modèle de référence OSIChapitre 2: Modèle de référence OSI
Chapitre 2: Modèle de référence OSI
 

Similaire à La technologie des systemes distribués 2 ppt2222.pptx

ADMINISTRER UN ENVIRONNeEMENT CLOUD.pptx
ADMINISTRER UN ENVIRONNeEMENT CLOUD.pptxADMINISTRER UN ENVIRONNeEMENT CLOUD.pptx
ADMINISTRER UN ENVIRONNeEMENT CLOUD.pptx
HindElqasimy
 
Introduction aux systèmes d-exploitation (2).ppt
Introduction aux systèmes d-exploitation (2).pptIntroduction aux systèmes d-exploitation (2).ppt
Introduction aux systèmes d-exploitation (2).ppt
MahdiHERMASSI1
 
Architectures parallèles.pdf
Architectures parallèles.pdfArchitectures parallèles.pdf
Architectures parallèles.pdf
YasmineChihab1
 

Similaire à La technologie des systemes distribués 2 ppt2222.pptx (20)

Cour1
Cour1Cour1
Cour1
 
srep_cours_01.pdf
srep_cours_01.pdfsrep_cours_01.pdf
srep_cours_01.pdf
 
Grid computing
Grid computingGrid computing
Grid computing
 
Cours sys 2PPT20.pdf
Cours sys 2PPT20.pdfCours sys 2PPT20.pdf
Cours sys 2PPT20.pdf
 
Cours6 informatique201801
Cours6 informatique201801Cours6 informatique201801
Cours6 informatique201801
 
LES RESEAUX INFORMATIQUES.pdf
LES RESEAUX INFORMATIQUES.pdfLES RESEAUX INFORMATIQUES.pdf
LES RESEAUX INFORMATIQUES.pdf
 
Diaporamas-Réseaux Informatiques.pdf
Diaporamas-Réseaux Informatiques.pdfDiaporamas-Réseaux Informatiques.pdf
Diaporamas-Réseaux Informatiques.pdf
 
chapitre 1 les reseaux informatiques .pptx
chapitre 1 les reseaux informatiques  .pptxchapitre 1 les reseaux informatiques  .pptx
chapitre 1 les reseaux informatiques .pptx
 
Smi5 cours partie1
Smi5 cours partie1Smi5 cours partie1
Smi5 cours partie1
 
Chapitre 03
Chapitre 03Chapitre 03
Chapitre 03
 
Cours s5 réseau FSO
Cours s5 réseau FSOCours s5 réseau FSO
Cours s5 réseau FSO
 
ADMINISTRER UN ENVIRONNeEMENT CLOUD.pptx
ADMINISTRER UN ENVIRONNeEMENT CLOUD.pptxADMINISTRER UN ENVIRONNeEMENT CLOUD.pptx
ADMINISTRER UN ENVIRONNeEMENT CLOUD.pptx
 
Cours de microcontrôleurs
Cours de microcontrôleursCours de microcontrôleurs
Cours de microcontrôleurs
 
Architectures bigdata
Architectures bigdataArchitectures bigdata
Architectures bigdata
 
Introduction aux systèmes d-exploitation (2).ppt
Introduction aux systèmes d-exploitation (2).pptIntroduction aux systèmes d-exploitation (2).ppt
Introduction aux systèmes d-exploitation (2).ppt
 
Tiny os_2
Tiny os_2Tiny os_2
Tiny os_2
 
Chapitre1
Chapitre1Chapitre1
Chapitre1
 
Chapitre1
Chapitre1Chapitre1
Chapitre1
 
Architectures parallèles.pdf
Architectures parallèles.pdfArchitectures parallèles.pdf
Architectures parallèles.pdf
 
Réseaux internet
Réseaux internetRéseaux internet
Réseaux internet
 

Plus de kaoutarghaffour (6)

PROCESS VERBALE.pdf
PROCESS VERBALE.pdfPROCESS VERBALE.pdf
PROCESS VERBALE.pdf
 
Entreposage1-converted.pdf
Entreposage1-converted.pdfEntreposage1-converted.pdf
Entreposage1-converted.pdf
 
Science Subject for Elementary - 1st Grade_ Physical Science by Slidesgo.pptx
Science Subject for Elementary - 1st Grade_ Physical Science by Slidesgo.pptxScience Subject for Elementary - 1st Grade_ Physical Science by Slidesgo.pptx
Science Subject for Elementary - 1st Grade_ Physical Science by Slidesgo.pptx
 
Architecture des systèmes distribue.pptx
Architecture des systèmes distribue.pptxArchitecture des systèmes distribue.pptx
Architecture des systèmes distribue.pptx
 
distcomp.ppt
distcomp.pptdistcomp.ppt
distcomp.ppt
 
distcomp.ppt
distcomp.pptdistcomp.ppt
distcomp.ppt
 

La technologie des systemes distribués 2 ppt2222.pptx

  • 2. Introduction 01  Naissance des systèmes distribues  Définition  Les avantages et les désavantages  Critères des systèmes distribué Présentation des systèmes distribuées 02 Architectures et fonctionnement 03 Communication dans les systèmes distribuées 04 PLAN Conclusion 05  Le Modèle OSI  Les Sockets  RPC
  • 3. Naissance des systèmes distribues les premiers ordinateurs ont été réalisés après la Seconde Guerre mondiale, leur conception repose sur le résultat de divers prototypes tels que l'Harvard Mark I et le Z3(calculateur ). . le Micral conçu par François Gernelle de la société R2E dirigée par André Truong Trong Thi. Basé sur le premier microprocesseur, l'Intel 8008 8 bits, ses performances en font le plus petit ordinateur moderne de l'époque (500 kHz, mémoire RAM de 8 ko en version de base) début de 1ere moderne des ordinateurs En janvier 1973 est présenté le premier micro-ordinateur Micro-processeurs puissants en quantité (faible cout). Avènement des micro- ordinateurs L'ENIAC, vers 1950. 1945 1973 1980 IBM Personal Computer, à l'origine des PC modernes. -Interconnexion d’un grand nombre de machines -Transport d’informatique à 10 Mbits/seconde -Technologies: Ethernet (Xerox), Token Ring (IBM) Réseaux locaux (LAN) Il devient facile d’interconnecter des ordinateurs
  • 4. Système informatique distribué: Content A - 40% Définition: Un système informatique distribué se compose de plusieurs composants logiciels qui se trouvent sur plusieurs ordinateurs, mais qui s'exécutent comme un système unique. Les ordinateurs qui se trouvent dans un système distribué peuvent être physiquement proches les uns des autres et connectés par un réseau local, ou ils peuvent être géographiquement éloignés et connectés par un réseau étendu. Un système distribué peut comprendre un nombre quelconque de configurations possibles, telles que des ordinateurs centraux, des ordinateurs personnels, des postes de travail, des mini-ordinateurs.
  • 5. Le second fait référence au logiciel qui laisse apparaitre le système distribue comme une seule entité cohérente. C’est un aspect qui suppose une interconnexion des ordinateurs moyennant un réseau de communication physique. Le premier est de nature matérielle, il s’agit de l’autonomie des ordinateurs ou chacun peut exécuter des taches en concurrence (au même moment) avec les autres. Système informatique distribué: L'objectif de l'informatique distribuée est de faire fonctionner un tel réseau comme un seul ordinateur. On a deux aspects :
  • 6. Puissance de calcul Un système pluri- processeur offre une puissance de calcul supérieure a celle d’un seul processeur. Economique Excellent rapport performance/prix des microprocesseurs Haute disponibilité La défaillance d’une machine n’affecte pas les autres Distribution naturelle de certaines applications -Système de contrôle d’une chaine de production -Distribution géographique d’agences bancaires Les avantages des systèmes distribués : Par rapport aux systèmes centralises :
  • 7. You can simply impress your audience and add a unique zing. Content Here E v o l u t i o n p r o g r e s s i v e Evolution de la technologie des processeurs
  • 8. Partage des périphériques Partage des périphériques couteux : Exemple : imprimante laser couleur, périphériques d’archivage Partage des données Partage des données entre les utilisateurs : Exemple : système de réservation aérienne Flexibilité distribution de la charge Facilitation des communications entre personnes -Courrier électronique : communication asynchrone -Modification possible des documents échangés Les avantages des systèmes distribués : Par rapport à des postes de travail indépendants :
  • 9. Réseau de communication -Saturation -Perte de messages Logiciel -Relativement peu d’expérience de conception, mise en œuvre et utilisation de logiciels distribués -La distribution doit elle être transparente aux utilisateurs ? Sécurité Facilite de partage de données rend nécessaire la protection des données confidentielles Facilitation des communications entre personnes -Courrier électronique : communication asynchrone -Modification possible des documents échangés Les inconvénients des systèmes distribués :
  • 10. la différence entre un système centralisé et un système distribué  un système centralisé
  • 11. la différence entre un système centralisé et un système distribué  Systèmes distribués :
  • 12. Les caractéristique des système distribué Partage des ressources Traitement simultané Évolutivité Détection des erreurs Transparence
  • 13. Les types des systèmes distribués Cluster Computing L’informatique en cluster : Ensemble d'ordinateurs connectés qui fonctionnent ensemble comme une unité pour effectuer des opérationsensemble, fonctionnant dans un système unique. Les clusters sont généralementconnectés rapidementvia des réseaux locaux et chaque nœud exécute le même système d'exploitation.
  • 14. Les propriétés et cas d’utlisations de cluster computing  Les propriétés Haute performance Facile à gérer Évolutif Extensibilité Disponibilité Souplesse Rentabilité  Cas utilisation
  • 15. Les types des systèmes distribués Gride Computing Informatique en grille : Dans l'informatique en grille, le sous-groupe se compose de systèmes distribués, qui sont souvent configurés comme un réseau de systèmes informatiques, chaque système peut appartenir à un domaine administratif différent et peut différer considérablement en termes de matériel, de logiciel et de technologie de réseau de mise en œuvre. . Les différents départements ont un ordinateur différent avec un système d'exploitation différent pour rendre le nœud de contrôle présent, ce qui aide différents ordinateurs avec un système d'exploitation différent à communiquer entre eux et à transférer des messages pour fonctionner.
  • 16. Les propriétés et cas d’utlisations de gride computing  Peut résoudre des problèmes plus importants et plus complexes dans un délai plus court. Collaboration facilitée avec d'autres organisations et meilleure utilisation des équipements existants  Le matériel existant est utilisé au maximum.  La collaboration avec les organisations facilitée  Les propriétés  Cas utilisation  Les organisations qui développent des normes et des pratiques de grille pour la ligne de guilde  Fonctionne comme une solution middleware pour connecter différentes entreprises.
  • 17. Architecture des systemes distribué 01 02 03 Architecture logicielle Architecture matérielle Architecture des application distribuées
  • 19. Système multiprocesseur Multiprocesseur a bus Dans ce cas tout les processeur accède a la mémoire physique a travers un bus Problème: le bus baisse sa performances considérablement si on atteins 4 ou 5 processeurs. Solution: La solution consiste à ajouter une mémoire cache
  • 20. Système multiprocesseur Multiprocesseur a switch Matrice de commutation Réseau de type oméga
  • 21. Système multi ordinateur Multi Ordinateur a bus Le système a mémoire locales basés bus sont construits a partir d'ordinateurs(processeurs+ mémoire), Ies processeurs sont reliée par un réseau multi accès partagé et communiquant par diffusion de messages.
  • 22. Système multi ordinateur Topologies en hypercube Un hypercube est un cube a n dimension ou chaque nœuds est relies a l’autre n autre nœuds
  • 24. Système d’exploitation distribue Multiprocesseur MPOS • Hautes Performances . • Utilisant des processeur Multiples • Son but et de rendre le nombre des processeur transparent pour les application
  • 25. Communication dans les systèmes distribués
  • 26. Système d’exploitation distribue Multi ordinateur MCOS • structure complexe et différent de MPOS . • possédant un mécanisme de communication interprocessus unique et global . • les machines possèdent le même système d'exploitation. • L'unique moyenne de Communication est d'envoyer des messages .
  • 27. ARCHITECTURE DES APPLICATION DISTRIBUÉ Architecture Client/serveur
  • 28. ARCHITECTURE DES APPLICATION DISTRIBUÉ Le modèle du mandataire/Cache
  • 29. ARCHITECTURE DES APPLICATION DISTRIBUÉ Architecture paire-à-paire (Peer To Peer)
  • 30.
  • 31. Protocole de communication dans les systèmes à grande échelle Modèle en couche OSI (open system interconnexion) Application Session Présentation Transport Réseau Liaison de données Physique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . fournit l’interface pour l’utilisateur final qui utilise un appareil connecté à un réseau. s’occupe de la transmission des bits de façon brute sur un canal de communication Son rôle est un rôle de « liant » : elle va transformer la couche physique en une liaison a priori exempte d’erreurs de transmission pour la couche réseau permet de gérer le sous-réseau, i.e. le routage des paquets sur ce sous- réseau et l’interconnexion des différents sous-réseaux entre eux responsable du bon acheminement des messages complets au destinataire organise et synchronise les échanges entre tâches distantes. Elle réalise le lien entre les adresses logiques et les adresses physiques des tâches réparties. c’est elle qui traite l’information de manière à la rendre compatible entre tâches communicantes. Elle va assurer l’indépendance entre l’utilisateur et le transport de l’information. 1 3 2 5 4 6 7
  • 32. Processus Émission Application Présentation Session Transport Réseau Liaison de données Physique Application Présentation Session Transport Réseau Physique Liaison de données Processus Réception Données d’applications Données d’applications Unité de données Unité de données Unité de données Unité de données Unité de données Unité de données ( bits) Canal transmission des données
  • 33. Modèle multi clients/serveur (requête / réponse ) Les sockets / API (Application Program Interface) Les sockets fournissent une interface d’accès, à partir d’un hôte, aux interfaces de transport, notamment TCP et UDP Les port des sockets TCP et UDP sont les principaux transport dans les sockets TCP Transmission Control Protocol (mode connecté) une liaison est établie au préalable entre deux hôtes, et ensuite un flot d’octets est échangé sur cette liaison UDP User Datagram Protocol (mode non connecté) Aucune liaison n’est établie. Les messages sont échangés individuellement.
  • 34. La connexion en fonction Les Sockets Serveur créer une socket et se positionne en écoute de demande de connexion Serveur en gestion multi-clients CLIENT1 SERVEUR CLIENT2 Un client faire une demande de connexion (création d’une socket locale ) Le serveur accepte la connexion Le client et le serveur sont connectés par le tube ainsi crée et peuvent lire ou écrire dans leurs sockets respectives
  • 35. RPC J’ai besoin de faire un calcul en utilisons F(x) J’ai F(x) RPC (Remote Procedure Call) Permet de distribuer facilement certaines parties d’une application sur des machines différente de la même manière que si l’appel était local Exemple système reparti connexion
  • 36. RPC J’ai besoin de faire un calcul en utilisons F(x) J’ai F(x) RPC (Remote Procedure Call) Permet de distribuer facilement certaines parties d’une application sur des machines différente de la même manière que si l’appel était local Exemple système reparti connexion Cas normale Process A F(X) F(X) Process B Résultat L’appel et le retour ont lieu dans un site L’exécution ce déroule dans un outre site
  • 37. Serveur Client Interpréter la requête Appel de la procédure Appel de la procédure Exécution Résultat Envoi de l’appel Envoi de la réponse Résultat Paradigme client serveur Le client envoie les paramètrex d’appels de la fonction Le calcul est effecué coté serveur et le résultat est envoyé au client P(x,y) P(x,y) R R
  • 38. Serveur Client Interpréter la requête Appel de la procédure Appel de la procédure Exécution Résultat Envoi de l’appel Envoi de la réponse Résultat Principe P(x,y) P(x,y) R R
  • 39. RPC étendu Le modèle RPC a été étendu et adapté sous d’autres noms, mais le paradigme de programmation reste le même : COBRA : Common Object Request Broker Architecture ,langage C++ et java (1991);
  • 40. •La transparence; •La portabilité; •L’interopérabilité; •L’adaptabilité; •La disponibilité; •La stabilité;
  • 41. Le modèle objet Client/Serveur en CORBA Objet CORBA Bus CORBA O R B O R B Référence d’objet Code d’implantation Application cliente Application serveur Interface d’objet Etat d’objet Requête Activation
  • 42. Le modèle RPC a été étendu et adapté sous d’autres noms, mais le paradigme de programmation reste le même : COBRA : Common Object Request Broker Architecture ,langage C++ et java (1991); RPC étendu RMI : Remote Method Invocation,langage et java (1997); Opérations (méthodes): • Débiter • Consulter • Transférer… Java cards : system d’exploitation destiné aux application pour carte à puce Compte bancaire
  • 43. Client Appel de la procédure Envoi de l’appel Envoi de la réponse Résultat Stub et skelton Stub ou Souche clinet • procédure qui porte le nom de la vraie procédure qu’il remplace • donne l’illusion au programme principal que la procèdure est bien locale • gère la connexion Stub client
  • 44. Serveur Interpréter la requête Appel de la procédure Exécution Résultat Envoi de l’appel Envoi de la réponse Stub et skelton Skelton serveur Stub ou Tallon,Skelton serveur • Gère la communication avec le stub client • Active la procédure désugnée en lui transmettant les paramètres d’appel • Retourne les valeures de résultat au stub client

Notes de l'éditeur

  1. Dans les systèmes reparties, chaque node prend sa propre décision. Le comportement final du système est l’agrégat des décisions des nodes individuels. Notez qu’il n’y a pas d’entité unique qui reçoit et répond à la demande. Exemple – Système de recherche Google. Chaque requête est traitée par des centaines d’ordinateurs qui parcourent le Web et renvoient les résultats pertinents. Pour l’utilisateur, Google semble être un système, mais il s’agit en fait de plusieurs ordinateurs travaillant ensemble pour accomplir une seule tâche (renvoyer les résultats à la requête de recherche).
  2. Les systèmes informatiques distribués présentent les caractéristiques suivantes :   Partage des ressources : un système distribué peut partager du matériel, des logiciels ou des données.   Traitement simultané : plusieurs machines peuvent traiter la même fonction simultanément.   Évolutivité : la capacité de calcul et de traitement peut être mise à l'échelle selon les besoins lorsqu'elle est étendue à des machines supplémentaires.   Détection des erreurs : les défaillances peuvent être détectées plus facilement.   Transparence : un nœud peut accéder aux autres nœuds du système et communiquer avec eux.
  3. D'un point de vu abstrait, un ordinateur, se compose de deux types d'entités essentielles les mémoires et tes processeurs. un système distribué physique est comme une collection de mémoires et de processeurs interconnectés de telle sorte de pouvoir communiquer. Quel que soit le système distribué considéré, il est possible de le classer dans les quatre catégories suivantes :
  4. C’est le modèle le plus utilisé et le plus important. Les processus représentant le système reparti, jouent les rôles de client pour un service et de serveur pour un autre. Dans le modèle Client/serveur, on distingue deux modèles selon que le service est effectué par un ou plusieurs serveurs. Dans ce dernier cas, plusieurs serveurs coopèrent pour exécuter une requête d’un client donnée.
  5. Un cache est un espace mémoire qui maintient une copie des objets récemment utilisés proches, vis-à-vis du client, que les objets originaux. Un objet reçu est ajouté au cache remplaçant éventuellement un objet existant. Lorsqu’un client demande un objet, le gestionnaire du cache essaye d’abord de le trouver dans le cache et le transmet au client. Si l’objet n’est pas dans le cache, le gestionnaire transmet la demande au serveur qui détient l’objet. Le cache peut être gère par le client lui-même comme il peut être gère par un gestionnaire indépendant dit serveur Mandataire (appelé aussi Proxy). Dans ce dernier cas, le cache peut être utilisé par plusieurs clients. Par exemple, dans le web, les mandataires maintiennent des caches des pages récemment visitées mais avant de livrer une page à un client, le mandataire vérifie au moyen d’une requête spéciale, du protocole HTTP, si la page qu’il a est conforme à l’originale. Les mandataires permettent d’augmenter les performances en diminuant le temps de réponse
  6. Dans ce type d’architecture, il n’existe pas de distribution, en termes de clients et de serveurs, entre les composants (processus) d’un système distribué. Les processus jouent des rôles similaires et coopèrent d’égal à égal pour réaliser une activité repartie. Le terme Peer-to-Peer désigne tout simplement où les participants (les pairs) mettent en partage des ressources locales (qui peuvent être des capacités de traitement, des fichiers, des espaces de stockage, des moyens de communication, ...) sans utilisation de serveurs M1:R&SD Page 19 spécifiques. Les participants partagent les ressources locales en établissant des communications directes entre eux moyennant les protocoles TCP/IP. Ainsi, chaque participant est à la fois un client et un serveur. Il est un serveur de ce qu’il possède et souhaite partager et client de ce que les autres mettent à sa disposition.
  7. Maintenant que nous connaissons les différentes structures des systèmes distribués nous interviennons les details de la communication dans les systemes Distribués. On commence par protocole de communication (modele en couche Osi develooppé par iso(international standards organization) Le modèle est utilisé pour décrire chaque composant de la communication de données pour pouvoir établir des règles et des normes pour les applications et l'infrastructure du réseau. Le modèle OSI permet aux fabricants de créer leurs propres protocoles et normes d'équipement tout en permettant l'interconnexion avec d'autres fabricants. Les couches basses (1, 2, 3 et 4) sont nécessaires à l’acheminement des informations entre les extrémités concernées et dépendent du support physique. Les couches hautes (5, 6 et 7) sont responsables du traitement de l’information relative à la gestion des échanges entre systèmes informatiques. Par ailleurs, les couches 1 à 3 interviennent entre machines voisines, et non entre les machines d’extrémité qui peuvent être séparées par plusieurs routeurs. Les couches 4 à 7 sont au contraire des couches qui n’interviennent qu’entre hôtes distants.
  8. Transmission de données au travers du modèle OSI Le processus émetteur remet les données à envoyer au processus récepteur à la couche application qui leur ajoute un entête application AH (éventuellement nul). Le résultat est alors transmis à la couche présentation. La couche présentation transforme alors ce message et lui ajoute (ou non) un nouvel entête (éventuellement nul). La couche présentation ne connaît et ne doit pas connaître l’existence éventuelle de AH ; pour la couche présentation, AH fait en fait partie des données utilisateur. Une fois le traitement terminé, la couche présentation envoie le nouveau « message » à la couche session et le même processus recommence. Les données atteignent alors la couche physique qui va effectivement transmettre les données au destinataire. A la réception, le message va remonter les couches et les entêtes sont progressivement retirés jusqu’à atteindre le processus récepteur : -----Le concept important est le suivant : il faut considérer que chaque couche est programmée comme si elle était vraiment horizontale, c’est à dire qu’elle dialoguait directement avec sa couche paire réceptrice. Au moment de dialoguer avec sa couche paire, chaque couche rajoute un entête et l’envoie (virtuellement, grâce à la couche sous-jacente) à sa couche paire.
  9. Les sockets sont utilisé dans bon nombre d’applications structurées en Client/serveur Par exeple l’ettablissemen d’une cnnexion entre deux processus se fait de la manière suivante : Une socket d'écoute sert à attendre les connexions des clients • A la connexion d'un client, une socket de service est initialisée pour communiquer avec ce client pour faire maintenire une conexion entre deux processus se fait de la manière suivantes: -Envoi de données à un client serveur on précise l'adresse du client dans le paquet à envoyer (UDP) utilise la socket correspondant au client(TCP) -Réception de données venant d'un client quelconque se met en attente d'un paquet et regarde de qui il vient (UDP ) doit se mettre en attente de données sur toutes les sockets actives (TCP) À partir de chaque processus (ou thread ) peut être producteur ou consommateur de données
  10. On entend par Remote Procedure Call ou bien communication synchrone tout procédé qui permet Et bien sur L’exécution se fait de facon séquentielle vis-à-vis d’un programme Pour bien comprire on va donc faire un exemlpe D’un système reparti dans lequel les machine sans interconnecté et collabore pour réalisé un calcule en commun , une machine a besoin d’une fonction F(x) sauf que cette fonction et implémenté dans une autre machine , donc au lieu de réécrire le code de cette fonction dans la machine qui a un besoin on peux profiter de cette connexion entre les deux machine pour résoudre cette problème ou besoin
  11. Alors au lieu de faire rappel au fonction localement comme on 'a dans le cas normale , on peux dans notre cas appeler la fonction via le réseaux connecter l’exécution ce fait selon la machine B après l’exécution il retourne le résulta a la machine qui a fait l’appel Alors on peux déduire que l’objective d’RPC et de dissimuler l’appel qui été réaliser a distance et donnée l’impréssion au programmeur qui a été réaliser localement c’est-à-dire un appel de procédure normale ce qui’est en effet une sollution moderne pour les problem du socket , qui est simple a utiliser et donne des resultat plus vite et identique a ceux d’un eppel local
  12. En effet il y a une grande différence entre les socket et RPC Les socket est un moyen de faire une communication inter-processus Sauf que RPC est une technique de programmation mais les deux suivie le paradigme client serveur c’est-à-dire le programme qui est entrain de faire l’appel de procédure est concèderai comme étant le client et l’a qu’on trouve le procedure a distance est concidére comme serveur Le RPC suive le Paradigme client serveur
  13. Principe: l’orsque le client est besoin d’un procédure par exemple P(x,y) il va faire un appel , il a l’impression de faire l’appel localement sauf que cette appel va être envoi via le réseaux puis le serveur va interpréter cette requête voir de quelle procédure il s'agit puis l’executé ensuite il retourne le résultat au client bien sur grâce a la connectivite des deux system client et serveur
  14. COBRA : Common Object Request Broker Architecture
  15. La CORBA (Common Object Request Broker Architecture) est une technologie qui permet aux applications logicielles de communiquer entre elles. Pour ce faire, il fournit un moyen standard à différents programmes d'envoyer et de recevoir des messages. Cela permet aux entreprises de créer des systèmes capables d'interagir, quelles que soient les langues de programmation dans lesquelles ils ont été écrits ou le système d'exploitation sur lequel ils fonctionnent. CORBA présente des avantages importants pour les systèmes distribués comme: •La transparence; •La portabilité; •L’interopérabilité; •L’adaptabilité; •La disponibilité; •La stabilité.
  16. CORBA propose un modèle de coopération : La notion de client/serveur n’intervient qu’uniquement lors de l’utilisation d’un objet : l’application implantant l’objet est le serveur, l’application utilisant l’objet est le client. Application cliente : programme qui invoque les méthodes des objets à travers le bus CORBA. Référence de l’objet : structure désignant l’objet CORBA et contenant l’information nécessaire pour le localiser sur le bus. Interface de l’objet : type abstrait spécifiant l’objet par ses méthodes et ses attributs, se définit au moyen du langage IDL. Requête : le mécanisme d’invocation d’une méthode ou d’un accès à un attribut de l’objet. Bus CORBA : achemine les requêtes de l’application cliente vers l’objet en masquant tous les problèmes d’hétérogénéité (langages, systèmes d’exploitation, matériels, réseaux). Objet CORBA : objet logiciel cible (entité virtuelle gérée par le bus CORBA). Activation : processus d’association d’un objet d’implantation à un objet CORBA. Code d’implantation : regroupe les traitements associés à l’implantation de l’objet CORBA. Par exemple, une classe Java ou un ensemble de fonctions C. Application serveur : structure d’accueil des objets d’implantation et des exécutions des opérations : un processus Unix par exemple. COBRA : Common Object Request Broker Architecture ^^^Pour qu'il y ait une communication entre un client et un serveur CORBA, il faut que le client et le serveur possèdent chacun un ORB : une application client-serveur possède au minimum deux ORB. ORB est L’Object Request Architecture (ORB) est un bus logiciel permettant le dialogue entre les objets serveurs et les différents clients qui s’y connectent.
  17. Alors après l’adaptation de cobra en vient de crée RMI qui sont spécifiques au langage JAVA. Cela impose utilisation d’un seul langage sur ensemble des hôtes qui désirent utiliser ce procédé , et ainsi il' est devenue le conquerront de cobra L’implimentation la plus connut du RMI c’est de Java cards qu’est un … Alors on’a une carte a puce implementer par java cards qui suive la technique de RMI avec cette puce on peux faire appel a des operation au méthodes Toute c’est methode son realizer don un serveur a distance la ou ce trouve le compte bancaire sur lequel les methode s’aplique
  18. Cette technique de programation vient d’introduire de nouveux concepte dans RPC c’est stub et skelton , il faut savoir qu’au niveau du client c’est pas le programme principal qui fait l’Appel de la procédure ou bien qui recoi le resultat c’est plutôt un sous programme qu’on appel stub client Gère la connexion : transmet les paramètres vers la machine ou se trouve la procèdure Et récupère les résultat
  19. Pour la coté serveur celui qui va Interpréter la requête determiner de qu’elle procedure il sagit et donner resultat c’est