Vous êtes sur la page 1sur 41

Les modèles client‐serveur et

Poste à poste
Doc.Ing. IMANE HALKHAMS

1
Présentation

• Le Principe du client / serveur repose sur une communication


d’égal à égal entre les applications ; communication réalisée par
dialogue entre processus deux à deux:
• un processus client
• un processus serveur
• Les processus ne sont pas identiques mais forment plutôt un
système coopératif se traduisant par un échange de données.
• == > le client réceptionne les résultats finaux délivrés par le
serveur.

2
Le serveur

• Un programme serveur
– tourne en permanence, attendant des requêtes
– peut répondre à plusieurs clients en même temps
• Nécessite
– une machine robuste et rapide, qui fonctionne 24h/24
• alimentation redondante, redondante, technologie
technologie RAID …
– La présence d’administrateurs systèmes et réseau pour gérer les
serveur

3
Le serveur

Exemples de serveurs:

• Serveur de fichiers (NFS)

• Serveur d’applications

• Serveur de bases de données

• Serveur de noms (annuaire (annuaire des services

4
Le client

• Un « logiciel client » utilise le service offert par un serveur,


• Le « client » est la machine sur laquelle s’exécute le logiciel client,
• Le client est raccordé par une liaison temporaire.
• Le client envoie des requêtes et reçoit des réponses.

== > Obligation de respecter le protocole entre les deux processus


communicants. La pile de protocoles TCP/IP très souvent utilisée
(Internet par ex).

5
L’architecture client-serveur

6
L’architecture client-serveur

7
L’architecture client-serveur

• Communication par messages


– Requête : paramètres d’appel, spécification du service requis
– Réponse : résultats, indicateur éventuel d’exécution ou d’erreur
– Communication synchrone (dans le modèle de base) : le client est
bloqué en attente de la réponse.

8
Les principes généraux

9
Les modèles client-serveur

10
Les modèles client-serveur

11
Communication client - serveur

• Pour consulter le serveur, l’adresse IP du serveur ne suffit pas, car


le serveur (machine physique) peut comporter différents services; il
faut préciser le service demandé au moyen d’un numéro de port, qui
permet d’atteindre un processus particulier sur la machine serveur.
Un numéro de port comprend 16 bits (0 à 65 535) et est associé à un
protocole de transport donné (le port TCP et le port UDP).
Les numéros de 0 à 1023 sont réservés, par convention, à des
services spécifiques.
Exemples (avec TCP)

12
Gestion des processus

• Modes de gestion des requêtes:

• Itératif
 le processus serveur traite les requêtes les unes après les autres

• Concurrent basé sur le parallélisme réel


=> système multiprocesseurs par exemple

13
Notion de Sockets (prises de raccordement)

• Pour programmer une application client-serveur, il est commode d’utiliser


les sockets. Les sockets fournissent une interface qui permet d’utiliser
facilement les protocoles de transport tels que TCP et UDP.
Une socket est simplement un moyen de désigner l’extrémité d’un canal de
communication bidirectionnel, côté client ou serveur, en l’associant à un
port
14
Notion de Sockets (prises de raccordement)

C’est une interface entre le programme d'application et les protocoles


de communication.

15
Notion de Sockets (prises de raccordement)
Les sockets fournissent une
interface d’accès, à partir d’un
hôte, aux interfaces de transport,
notamment TCP et UDP
• TCP (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 (mode non connecté) :
aucune liaison n’est établie. Les
messages sont échangés
individuellement
16
Algorithms

17
Algorithms

18
Mode connecté / non connecté
Deux réalisations possibles:
– Mode connecté (protocole TCP)
– Mode non connecté (protocole UDP)
• Mode connecté
➔Ouverture d’une liaison, suite d’échanges, fermeture de la liaison
➔Le serveur préserve son état entre deux requêtes
➔Garanties de TCP : ordre, contrôle de flux, fiabilité
➔Adapté aux échanges ayant une certaine durée

19
Mode connecté / non connecté
• Mode non connecté
➔Les requêtes successives sont indépendantes
➔Pas de préservation de l’état entre les requêtes
➔Le client doit indiquer son adresse à chaque requête (pas de
liaison permanente)
➔Pas de garanties particulières (UDP)
➔ Adapté aux échanges brefs (réponse en 1 message) et pour faire
de la diffusion.

20
Poste à poste
Les réseaux postes à postes (peer to peer)

Les réseaux « postes à postes » sont également appelés des réseaux « Peer
to Peer » en anglais, ou « point à point » ou « d’égal à égal ». Les réseaux
postes à postes ne comportent en général que peu de postes, moins d’une
dizaine de postes, parce que chaque utilisateur fait office d’administrateur
de sa propre machine, il n’y a pas d’administrateur central, ni de super
utilisateur, ni de hiérarchie entre les postes, ni entre les utilisateurs.

Dans un réseau peer to peer chaque poste est à la fois client et serveur.
Toutes les stations ont le même rôle, et il n’y a pas de statut privilégié pour
l’une des stations (comme c’est le cas avec le Contrôleur Principal de
Domaine (le CPD) dans un réseau Clients Serveurs Windows NT).
21
Poste à poste

Chaque utilisateur décide lui-même des partages sur son disque dur
et des permissions qu’il octroie aux autres utilisateurs. Mais une
ressource partagée l’est pour tous les autres utilisateurs, c’est le
concept de « partage arbitraire » développé par Microsoft.

Une ressource partagée sur un ordinateur apparaît sur les autres


ordinateurs qui s’y sont connectés sous la forme d’une lettre de
lecteur qui vient s’ajouter aux différentes partitions déjà présentes
sur la machine, c’est ce que l’on appelle monter un lecteur distant.

22
Poste à poste

Les réseaux Poste à Poste permettent de travailler en équipe, ou en


« groupe de travail », et il peut coexister plusieurs groupes de travail
au sein d’un même réseau (ce qui permet de constituer une
segmentation logique des machines du réseau).

Donc, le poste à poste est une configuration réseau dans laquelle les
machines peuvent jouer indifféremment le rôle de client ou celui de
serveur.

23
Poste à poste
Inconvénients des réseaux d'égal à égal:
Les réseaux d'égal à égal ont énormément d'inconvénients:

• ce système n'est pas du tout centralisé, ce qui le rend très difficile


à administrer
• la sécurité est très peu présente
• aucun maillon du système n'est fiable
• Ainsi, les réseaux d'égal à égal ne sont valables que pour un petit
nombre d'ordinateurs (généralement une dizaine), et pour des
applications ne nécessitant pas une grande sécurité (il est donc
déconseillé pour un réseau professionnel avec des données
sensibles).
24
Poste à poste
Inconvénients des réseaux d'égal à égal:
Les réseaux d'égal à égal ont énormément d'inconvénients:

• ce système n'est pas du tout centralisé, ce qui le rend très difficile


à administrer
• la sécurité est très peu présente
• aucun maillon du système n'est fiable
• Ainsi, les réseaux d'égal à égal ne sont valables que pour un petit
nombre d'ordinateurs (généralement une dizaine), et pour des
applications ne nécessitant pas une grande sécurité (il est donc
déconseillé pour un réseau professionnel avec des données
sensibles).
25
Poste à poste
Administration d'un réseau poste à poste
Le réseau poste à poste répond aux besoins d’une petite entreprise mais
peut s’avérer inadéquat dans certains environnements. Voici les questions
à résoudre avant de choisir le type de réseau : On désigne par le terme
"Administration" :
• Gestion des utilisateurs et de la sécurité
• Mise à disposition des ressources
• Maintenance des applications et des données
• Installation et mise à niveau des logiciels utilisateurs
• Dans un réseau poste à poste typique, il n’y a pas d’administrateur.
Chaque utilisateur administre son propre poste. D'autre part tous les
utilisateurs peuvent partager leurs ressources comme ils le souhaitent
(données dans des répertoires partagés, imprimantes, cartes fax etc.)
26
Poste à poste
Notions de sécurité
La politique de sécurité minimale consiste à mettre un mot de passe
à une ressource. Les utilisateurs d’un réseau poste à poste
définissent leur propre sécurité et comme tous les partages peuvent
exister sur tous les ordinateurs, il est difficile de mettre en œuvre un
contrôle centralisé. Ceci pose également un problème de sécurité
globale du réseau car certains utilisateurs ne sécurisent pas du tout
leurs ressources.

27
Poste à poste
A. Architecture centralisée : le peer-to-peer assisté
Le réseau peer to peer le plus connu du grand public est sans doute
Napster. Son originalité réside dans le fait qu’il utilise une architecture
centralisée ce qui a contribué à son succès mais aussi à sa perte. Un tel
dispositif semble représenter actuellement la solution la plus confortables
pour échanger des fichiers dans une communauté (musique, DVD...). Mais
dans la réalité, ce type d'architecture exige un tel investissement en
ressource que les services restent rarement de bonne qualité (lenteur,
disponibilité...). Soit ils sont saturés, soit ils sont limités en termes
d'utilisateurs simultanés autorisés.

28
Poste à poste
A. Architecture centralisée : le peer-to-peer assisté
• Un utilisateur recherche un fichier ressource en envoyant une requête
au serveur central
• Le serveur central répond et transmet la liste des ordinateurs utilisateurs
proposant le fichier demandé.
• L'utilisateur télécharge le fichier directement à partir d'un des
ordinateurs renseignés par le serveur.

29
Poste à poste
A. Architecture centralisée : le peer-to-peer assisté
• Un utilisateur recherche un fichier ressource en envoyant une requête
au serveur central
• Le serveur central répond et transmet la liste des ordinateurs utilisateurs
proposant le fichier demandé.
• L'utilisateur télécharge le fichier directement à partir d'un des
ordinateurs renseignés par le serveur.

30
Poste à poste
A. Architecture centralisée : le peer-to-peer assisté
Les limites : Au niveau de la sécurité, une architecture P2P centralisée
s'avère particulièrement vulnérable. Elle ne propose qu'une seule porte
d'entrée, son serveur centralisé, ce qui constitue le talon d'Achille de tout
le réseau. Il suffirait effectivement de bloquer ce serveur pour déconnecter
tous les utilisateurs et stopper le fonctionnement de l'ensemble du réseau.
Autre chose, le fait de passer à travers une architecture centralisée, où il
faut s'enregistrer pour pouvoir y accéder, ne garantit bien évidemment
aucun anonymat. Le service connaît l'adresse IP de votre machine et le
type de fichiers que vous téléchargez. Il peut facilement élaborer des
profils d'utilisateurs.

31
Poste à poste
Une amélioration du Peer-to-Peer centralisé:
Pour résoudre les problèmes de robustesse et
améliorer la qualité de connexion avec le
serveur, le serveur central de l’architecture
centralisée est remplacé par un anneau de
serveur. Ceci permet d’éviter la chute du réseau
si une panne se produit sur un serveur, car il y a
toujours un point de connexion valide aux
serveurs. De plus l’utilisation de plusieurs
serveurs permet de mieux répartir les demandes
de connexions et donc de limiter la chute de
bande passante.

32
Poste à poste
Une amélioration du Peer-to-Peer centralisé:
Chaque serveur peut avoir accès aux
informations des clients connectés sur les autres.
L’accès aux données partagées est donc
totalement transparent pour les utilisateurs.

33
Poste à poste
De l’architecture centralisée vers l’architecture décentralisée

34
Poste à poste
De l’architecture centralisée vers l’architecture décentralisée
Nous avons vu que l’architecture centralisée pose des problèmes de
sécurité, robustesse, et de limitation de la bande passante. Les
problèmes sont directement issus de l’utilisation de serveurs dont le
seul but est de posséder l’annuaire des clients.
Si on désire supprimer les serveurs centraux il faut donc trouver le
moyen de constituer un annuaire sur chaque client, puis de les faire
communiquer. C'est sur ces mécanismes que sont basés les réseaux
Peer to Peer décentralisés. Il n’y a donc plus de serveurs centraux, ce
sont tous les éléments du réseau qui vont jouer ce rôle. Chaque
machine dans ses rôles est identique à une autre, c’est pour cela que
l’on appelle ces types de réseaux pur peer to peer.

35
Poste à poste
De l’architecture centralisée vers l’architecture décentralisée
Un grand avantage de ce nouveau type de réseaux, est en théorie le
total anonymat qu’il procure.
En effet en évitant de communiquer avec une machine centralisant les
demandes et les annuaires, on évite les problèmes de récupération
des données utilisateurs.

36
Poste à poste
D. Architecture décentralisée
Contrairement aux réseaux centralisés, ou il suffisait de se connecter
au serveur pour avoir accès aux informations, il faut pour avoir accès à
une information en décentralisé :
• Apprendre la topologie du réseau sur lequel le client est connecté.
• Rechercher l’information sur tous les nœuds.
• Recevoir une réponse d’un
nœud répondant aux critères.

37
Poste à poste
D. Architecture décentralisée
Création de l’annuaire:
Le client A se connecte sur le réseau, il
ne connaît pas la topologie du réseau.
• Pour connaître les autres membres du
réseau A va "broadcaster" une
demande d’identification des nœuds du
réseau.
• Les nœuds recevant la demande vont
à leur tour la répercuter sur tous les
nœuds voisins et ainsi de suite (comme
les nœuds B, C et D).

38
Poste à poste
D. Architecture décentralisée
Création de l’annuaire:
• Lorsque que la trame est reçue et
identifiée par un autre client, le nœud
renvoi une trame d’identification à A.
• Ainsi A va peu à peu pouvoir identifier
tous les nœuds du réseau et se créer un
annuaire.

39
Poste à poste
D. Architecture décentralisée
La recherche d’information et la
récupération de données:
L’annuaire est créé, maintenant A désire
lancer une recherche d’information :
• Cette demande va être transmise à
tous les nœuds proches de A qui vont à
leur tour la transmettre.
• Lorsqu’un est capable de répondre à
la demande de A (B), il émet une
réponse vers A contenant la liste des
fichiers répondants aux critères de
recherches.
40
Poste à poste
D. Architecture décentralisée
La recherche d’information et la
récupération de données:
• A reçoit toutes les réponses
correspondantes à sa demande.
• Un index des fichiers est créé en local
sur A.
• L’utilisateur n’a plus qu’à choisir les
fichiers qu’il désire récupérer.
• Le téléchargement se fait réellement
de machine à machine sans passer par
le réseaux, par exemple A communique
directement avec B.
41

Vous aimerez peut-être aussi