Introduction aux Réseaux Informatiques
(Réseaux 1)
V
Architecture, Topologie et Protocoles
Mahamat ABDOUNA
([Link]@[Link])
Année académique 2023 - 2024
A RCHITECTURES DE
RÉSEAUX
A RCHITECTURE C LIENT /S ERVEUR
Une architecture client-serveur représente l’environnement dans lequel
des applications de machines clientes communiquent avec des
applications de machines de type serveurs.
L’exemple classique est le navigateur Web d’un client qui demande (on
parle de “requête”) le contenu d’une page Web à un serveur Web qui lui
renvoie le résultat (on parle de “réponse”).
F IGURE 10 – Architecture client-serveur
15 87
L ES TYPES D ’ ARCHITECTURE CLIENT- SERVEUR
Si toutes les ressources nécessaires sont présentes sur un seul serveur,
on parle d’architecture à deux niveaux ou 2 tiers (1 client + 1 serveur).
F IGURE 11 – Architecture client-serveur
Si certaines ressources sont présentes sur un deuxième serveur (par
exemple des bases de données), on parle d’architecture à trois niveaux
ou 3 tiers (1 client interroge le premier serveur qui lui-même interroge le
deuxième serveur).
F IGURE 12 – Architecture client-serveur
Au delà de 3 acteurs, on parle d’architecture à n tiers.
16 87
A RCHITECTURE P EER - TO -P EER
Contrairement à l’architecture Client-Serveur, le modèle Peer-to-Peer ne
se distingue pas entre le modèle client-serveur, mais chaque nœud peut
être un client ou un serveur selon le nœud est-ce qu’il demande ou fournit
le service. Puisque chaque noeud est considéré comme un pair.
F IGURE 13 – Architecture peer-to-peer
Le réseau Peer-to-Peer a l’avantage par rapport au réseau client-serveur
est que le serveur n’est pas encombré car les services sont fournis par
plusieurs nœuds distribués dans un système peer-to-peer.
17 87
C LIENT- SERVEUR Vs P EER - TO -P EER
Différences clés entre le réseau client-serveur, et le réseau
peer-to-peer (1/2)
Dans le modèle de réseau client-serveur il y a un serveur dédié et
des clients spécifiques, alors que dans le modèle peer-to-peer
chaque nœud peut servir à la fois d’un serveur et client ;
Dans le modèle client-serveur, le serveur fournit des services au
client. Cependant, dans le peer-to-peer, chaque pair peut fournir
des services et peut également demander des services ;
Dans le modèle client-serveur, le partage d’informations est plus
important alors que dans le modèle peer-to-peer, la connectivité
entre homologues est plus importante.
Dans le modèle client-serveur, les données sont stockées sur un
serveur centralisé, tandis que dans le peer-to-peer, chaque
homologue a ses propres données.
18 87
C LIENT- SERVEUR Vs P EER - TO -P EER
Différences clés entre le réseau client-serveur, et le réseau
peer-to-peer (2/2)
Dans le modèle peer-to-peer, les serveurs sont distribués dans un
système, il y a donc moins de risques de plantage pour le serveur,
mais dans le modèle client-serveur, il y a un serveur unique pour
les clients.
Le modèle client-serveur est plus coûteux à mettre en œuvre que le
peer-to-peer.
19 87
A RCHITECTURE D ’ UN RÉSEAU
F IGURE 14 – Architecture d’un réseau local
20 87
Q U ’ EST- CE
QU ’ UN
PROTOCOLE ?
D ÉFINITION D ’ UN PROTOCOLE
Les hommes ont imaginer de mettre en réseau les ordinateurs pour
communiquer, échanger des données.
Il a donc fallu mettre au point des liaisons physiques entre les
ordinateurs pour que l’information puisse circuler, mais aussi un langage
de communication pour qu’il puisse y avoir un réel échange, on a décidé
de nommer ces langages : protocoles.
Il en existe plusieurs, exactement comme ils existe plusieurs langues sur
la Terre.
Ensemble de règles et de procédures à respecter pour émettre et recevoir
des données sur un réseau.
Exemple :
Un réseau de malfaiteurs va communiquer avec son propre «
vocabulaire ».
Les différents malfaiteurs échangent leurs « produits » (drogues,
objets volés, informations) dans des lieux « sécurisés » et avec leurs
propres « règles ».
Ce protocole de communication doit être connu des 2 malfaiteurs
pour pouvoir réaliser des échanges.
21 87
P ROTOCOLE TCP : T RANSMISSION C ONTROL
P ROTOCOL
TCP est un protocole orienté connexion, c’est-à-dire qu’il permet à deux
machines qui communiquent de contrôler l’état de la transmission.
Les caractéristiques principales du protocole TCP sont les suivantes :
TCP permet de remettre en ordre les datagrammes en provenance
du protocole IP
TCP permet de vérifier le flot de données afin d’éviter une saturation
du réseau
TCP permet de formater les données en segments de longueur
variable afin de les "remettre" au protocole IP
TCP permet de multiplexer les données, c’est-à-dire de faire circuler
simultanément des informations provenant de sources (applications
par exemple) distinctes sur une même ligne
TCP permet enfin l’initialisation et la fin d’une communication de
manière courtoise.
22 87
P ROTOCOLE IP : I NTERNET P ROTOCOL
C’est un des protocoles les plus importants d’Internet (ou des réseaux
locaux) car il permet l’élaboration et le transport des datagrammes IP
(les paquets de données), sans toutefois en assurer la "livraison".
En réalité le protocole IP traite les datagrammes IP indépendamment les
uns des autres en définissant leur représentation, leur routage et leur
expédition. Le protocole IP détermine le destinataire du message grâce à
3 champs :
Le champ adresse IP : Adresse de la machine.
Le champ masque de sous-réseau : Un masque de sous-réseau
qui permet au protocole IP de déterminer la partie de l’adresse IP qui
concerne le réseau.
Le champ passerelle par défaut : Permet au protocole IP de savoir
à quelle machine remettre le datagramme si jamais la machine de
destination n’est pas sur le réseau local.
23 87
P ROTOCOLE UDP
UDP (User Datagram Protocol) est un protocole de communication
alternatif au protocole TCP (Transmission Control Protocol) utilisé
principalement pour envoyer des messages courts appelés datagrammes,
mais, il s’agit d’un protocole moins fiable et sans connexion.
24 87
P ROTOCOLES SSH ET T ELNET
SSH et Telnet sont deux protocoles réseau qui sont utilisés pour se
connecter à un ordinateur distant, en se connectant à ce système au sein
d’un réseau ou sur Internet, et pour contrôler ce système à l’aide de
commandes à distance. Donc, les deux sont considérés comme des
émulateurs terminaux. SSH signifie Secure Shell et qui permet à
l’utilisateur d’échanger des données entre deux ordinateurs d’un réseau à
l’aide d’une connexion cryptée sécurisée. Telnet est un protocole réseau
de base qui est utilisé pour communiquer avec un système distant en
utilisant un terminal textuel virtuellement.
25 87
P ROTOCOLE FTP
FTP (File Transfer Protocol) est utilisé pour envoyer / recevoir des fichiers
depuis l’ordinateur distant. FTP établit deux connexions entre client et
serveur, l’une pour les informations de contrôle et l’autre pour les données
à transférer. Les informations de contrôle portent des commandes /
réponses. L’authentification doit d’abord être effectuée au moyen de la
validation du nom d’utilisateur et du mot de passe. Une fois cela fait, les
fichiers peuvent être transférés entre deux systèmes. FTP gère les
fichiers au format binaire.
TFTP (Trivial File Transfer Protocol) est plus simple que le protocole FTP,
assure le transfert de fichiers entre le processus client et le processus
serveur, mais ne fournit pas d’authentification utilisateur ni d’autres
fonctions utiles prises en charge par FTP. TFTP utilise UDP tandis que
FTP utilise TCP.
26 87
P ROTOCOLE SMTP
Le protocole SMTP (Simple Mail Transfer Protocol) est un protocole de
communication standard pour l’envoi de courriers électroniques sur des
réseaux d’entreprise et sur Internet. SMTP a été développé au début des
années 1980 et reste l’un des protocoles les plus populaires au monde.
F IGURE 15 – SMTP
Le logiciel de messagerie utilise généralement le protocole SMTP pour
l’envoi et le protocole POP3 (Post Office Protocol 3) ou IMAP (Internet
Message Access Protocol) pour la réception du courrier. Jusqu’à présent,
Il n’existe pas d’alternative au protocole SMTP.
27 87
P ROTOCOLE HTTP
HTTP signifie « Hypertext Transfer Protocol ». HTTP est le protocole
utilisé pour transférer des données sur le Web. Il fait partie de la suite de
protocoles Internet et définit les commandes et les services utilisés pour
la transmission des données de pages Web.
28 87
M ODÈLE OSI
M ODÈLE OSI
L’architecture OSI (Open Systems Interconnection) a vu le jour fin des
années 1970 et a été conçue par des ingénieurs américains spécialisés
en Architecture Informatique.
On parle de « modèle de référence pour l’interconnexion des
systèmes ouverts » qui définit la façon dont les ordinateurs doivent
communiquer.
29 87
U N MODÈLE EN COUCHES ( LAYERS )
Que ce soit le modèle OSI ou le modèle TCP/IP, ce sont des modèles dits
« en couches ». Une telle forme de modèle permet de visualiser
l’interaction entre les différents protocoles intervenant dans chaque
couche mais également les interactions avec les couches
supérieures et inférieures.
La norme OSI dispose de 7 couches, chacune ayant un rôle qui lui est
propre.
F IGURE 16 – Modèle OSI
30 87
L A COUCHE P HYSIQUE
Cette couche est chargée de la transmission des bits de données (en
binaire) sur les différents supports existants (câble RJ45, fibre
optique...). Dans cette couche on y associe également le hub
(concentrateur) qui se charge de la transmission des données dans un
réseau sans cibler le destinataire selon son adresse physique (MAC)
ou son adresse logique (IP).
F IGURE 17 – Différents supports de la couche physique
31 87
L A COUCHE LIAISON DE DONNÉES
Elle définie les méthodes de transmission des données entre les
périphériques d’un même réseau local (LAN) et gère la détection
d’erreurs de transmission. Le protocole de réseau local à commutation
de paquet le plus utilisé que l’on trouve dans cette couche sera Ethernet.
Les adresses physiques des cartes réseaux (MAC) sont associées à
cette couche. De même que les switchs qui sont chargés de relier entre
eux plusieurs périphériques d’un même réseau.
F IGURE 18 – Différents supports de la couche liaison de données
32 87
L A COUCHE R ÉSEAU
La couche réseau gère les communications entre les machines
placées sur différents réseaux en utilisant l’adressage logique des
équipements (adressage IP). Cette couche est en charge d’acheminer
les données d’un réseau A à un réseau B en empruntant le meilleur
chemin, ce qui se fait au moyen de routeurs et de protocoles de routage.
F IGURE 19 – Support de la couche réseau
33 87
L A COUCHE T RANSPORT
Elle est chargée de la gestion des problèmes de transport (renvoi des
données si manquantes) et donc de la fiabilité des communications.
Cette couche joue également un rôle dans le contrôle de flux (débit) et
permet d’utiliser en simultanée plusieurs applications utilisant des
protocoles/ports différents. Elle fait le lien entre une application et le
protocole réseau de communication utilisé (notamment TCP ou UDP).
TCP et UDP
Le protocole de transport TCP (Transport Control Protocol) est un
protocole dit « orienté connexion ». Avant l’envoi de données, TCP
s’assure que le destinataire est en mesure de recevoir ces données.
Il utilise également les accusés de réception pour s’assurer de la
remise des données.
34 87
L A COUCHE T RANSPORT
TCP et UDP
TCP contrôle également l’intégrité des données transmises. En cas
de corruption des données, l’expéditeur peut alors les retransférer. C’est
donc un protocole très fiable et le plus utilisé actuellement.
Le protocole de transport UDP (User Datagram Protocol) est en
revanche lui « non orienté connexion ». Il transfère les données sans
se soucier si le destinataire est apte à les recevoir. Avec le protocole
UDP, nous ne sommes pas non plus capables de dire si les données
ont bien été transmises.
F IGURE 21 – Protocole de transport UDP
35 87
L A COUCHE T RANSPORT
TCP et UDP
Le protocole de transport UDP est donc bien moins fiable que son
homologue TCP. En revanche, il est plus beaucoup rapide puisqu’il ne
nécessite pas d’échanges préalables à l’envoi ou suite à la réception de
données. Il est préféré pour les services pouvant supporter une
légère altération tels que le DNS (Domain Name System), le NTP
(Network Time Protocol) ou encore, de nos jours, pour des services de
vidéos en streaming ou en direct.
36 87
L A COUCHE SESSION
La couche session fournie des services à la couche « Présentation »
afin d’organiser sa méthode de dialogue et de gérer les
ouvertures/fermetures des sessions dans ET entre les applications.
On peut retrouver dans cette couche le protocole RPC (Remote
Procedure Call) qui assure la communication entre un client qui émet
une requête et un serveur qui répond à la requête ou encore l’ancien
système de nommage NetBIOS qui permet d’établir des sessions entre
différents ordinateurs.
F IGURE 22 – Couche session
37 87
L A COUCHE P RÉSENTATION
Elle fournie une représentation commune des données
demandées/attendues par une application. Plus simplement, elle gère le
codage/décodage des données (ASCII, unicode, HTML. . . ). Cette
couche convertie les données de façon exploitable pour
l’application.
F IGURE 23 – Couche présentation
38 87
L A COUCHE APPLICATION
La couche application permet d’obtenir une connectivité finale entre
les parties telles que le service et l’application utilisant ledit service
(ex : service de messagerie (SMTP) et client de messagerie Outlook,
service web (HTTP) et navigateur internet Firefox, serveur de téléphonie
Asterisk (VoIP) et téléphone IP). Cette couche est le point d’accès aux
services d’un réseau et fait le lien en l’Homme et la machine.
F IGURE 24 – Couche application
Il est important de préciser que chaque couche est totalement
indépendante des autres et ne s’occupe que de son cas. L’intérêt de
ceci étant que n’importe quelle couche peut subir des modifications
sans en impacter les autres.
De même, une couche ne peut interagir qu’avec une couche
adjacente. Cela garanti que pour communiquer, toutes les couches du
modèle OSI devront bien être parcourue.
39 87