Vous êtes sur la page 1sur 14

Systèmes Electroniques Numériques – Télécommunications et Réseaux COURS

LES PROTOCOLES DE COMMUNICATION

1. PRÉSENTATION

Un protocole est une méthode standard qui permet la communication entre des processus. Pour gérer les
communications sur le réseau, des protocoles définissent un ensemble de règles et de procédures à
respecter pour émettre et recevoir les données.
Ils existent différents protocoles assurant les fonctions des différentes couches du modèle OSI.

Liste non exhaustive de


Couche du modèle OSI
protocoles
HTTP, FTP, TFTP
Niveau 7 couche application POP, SMTP
DNS, TELNET, SSH
Niveau 6 couche présentation
Niveau 5 couche session
TCP
Niveau 4 couche transport
UDP
IP
Niveau 3 couche réseau
ARP
Niveau 2 couche liaison de données Ethernet II
Niveau 1 couche physique

LES PROTOCOLES DE COMMUNICATION 1/14


Systèmes Electroniques Numériques – Télécommunications et Réseaux COURS

2. LES PROTOCOLES DE LA COUCHE LIAISON DE DONNÉES

La couche liaison de données assure un transit fiable des données sur une liaison physique. Elle contrôle
l’accès au réseau et l’adressage physique.

Le protocole de la couche liaison de donnée le plus utilisé est le protocole Ethernet II.

Constitution de la trame Ethernet II :

64 octets minimum

préambule SFD adresse adresse type de données FCS


destinataire source protocole

7 octets 1 octet 6 octets 6 octets 2 octets 46 à 1500 octets 4 octets

Signification des champs :

 Préambule : il s'agit d'un signal d'horloge permettant la synchronisation entre l'émetteur et le récepteur
(la valeur de chaque octet est 10101010).
 SFD (Starting Frame Delimiter) : il indique le début de la trame (sa valeur est 10101011).
 Adresse destinataire : il s'agit de l'adresse physique de l'équipement à qui la trame est envoyée.
 Adresse source : il s'agit de l'adresse physique de l'équipement qui envoie la trame.
 Type de protocole : il indique le protocole de couche supérieure (c'est à dire la couche réseau) utilisé.
Type de protocole
valeur protocole de la
(en hexadécimal) couche réseau

0800 IPv4
86DD IPv6
0806 ARP
8035 RARP
8138 IPx
8141 SNMP

 Données : il s'agit des données du protocole de couche supérieure, par exemple un datagramme IP. Si
le datagramme occupe moins de 46 octets, des octets de bourrage sont ajoutés pour atteindre cette
valeur.
 FCS : (Frame Check Sequence) il s'agit du résultat d'un calcul portant sur les quatre autres champs. A
la réception de la trame, la couche liaison de donnée effectue le même calcul et compare les deux
résultats. Si ces résultats sont différents, une erreur de transmission s'est produite. La trame est alors
ignorée.
Le calcul effectué est un calcul polynomial appelé CRC (Cyclique Redundancy Code).

LES PROTOCOLES DE COMMUNICATION 2/14


Systèmes Electroniques Numériques – Télécommunications et Réseaux COURS

3. LES PROTOCOLES DE LA COUCHE RÉSEAU

La couche réseau de modèle OSI permet la connectivité et la sélection du chemin entre deux systèmes hôtes
à travers les différents nœuds du réseau.

 Le protocole IP (Internet Protocol) :


Le protocole IP permet d’indiquer la route à travers les différents nœuds d’un réseau pour que le paquet ou
datagramme atteigne son destinataire. Pour cela chaque hôte est identifié par son adresse IP et son masque
de sous réseau. Une troisième information, l’adresse de la passerelle, permet d’orienter les paquets destinés
à un hôte n’appartenant pas au réseau local.

Constitution du paquet IP :

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Longueur
Version Type de service Longueur totale du datagramme
d'en-tête
(4 bits) (8 bits) (16 bits)
(4 bits)
Identification Drapeau Position du fragment
(16 bits) (3 bits) (13 bits)
Durée de vie Protocole Somme de contrôle de l’en-tête
(8 bits) (8 bits) (16 bits)
Adresse IP source
(32 bits)
Adresse IP destination
(32 bits)
Options
(facultatif et longueur variable)
Données
(longueur variable)

Signification des champs :

 Version : il s'agit de la version du protocole IP que l'on utilise. Actuellement on utilise encore
essentiellement la version 4. La version 6 utilise une autre structure de datagramme.
 Longueur d'en-tête (en anglais IHL pour Internet Header Length) : il s'agit du nombre de mots de 32
bits constituant l'en-tête. La valeur minimale est 5 ce qui correspond à 5 x 32 bits = 20 octets.
 Type de service : il indique la façon selon laquelle le datagramme doit être traité.
Les 3 premiers bits indiquent la priorité de 000 (priorité la moins élevée – 0 1 2 3 4 5 6 7
par défaut) jusqu’à 111 (priorité la plus élevée – supervision réseau).
Priorité Service
Les 4 bits suivants indiquent respectivement au routeur :
o de choisir le chemin ayant un délai de transmission le plus court
+fiable
+débit
-délai

-coût

possible 0
o un débit élevé
o de diriger les datagrammes vers des liaisons fiables
o de choisir un chemin ayant un coût minimum
Le dernier bit est réservé pour des évolutions futures. Il doit rester à 0.
 Longueur totale du datagramme : il indique la taille totale du datagramme en octets. La taille de ce
champ étant de 2 octets, la taille totale du datagramme ne peut dépasser 65536 octets. Utilisé
conjointement avec la taille de l'en-tête, ce champ permet de déterminer où se situe le début des
données. Si un datagramme est fragmenté, ce champ fait référence à la longueur du fragment courant et
non à la longueur du datagramme initial.

LES PROTOCOLES DE COMMUNICATION 3/14


Systèmes Electroniques Numériques – Télécommunications et Réseaux COURS

Remarque : la fragmentation
Si un routeur reçoit un datagramme trop long pour le support sur lequel il doit l’envoyer, il est obligé de
fragmenter ce datagramme. C'est-à-dire le découper en fragments de taille inférieure.
Le routeur va ensuite envoyer ces fragments de manière indépendante et les réencapsuler (il ajoute un en-tête
à chaque fragment) en ajoutant des informations afin que la machine de destination puisse réassembler les
fragments dans le bon ordre (rien ne dit que les fragments vont arriver dans le bon ordre étant donné qu'ils
sont acheminés indépendamment les uns des autres...). Les informations permettant le réassemblage sont
contenue dans les champs identification, drapeau et déplacement de fragment.

 Identification (en anglais ID pour identification) : il sert à identifier un datagramme ou les fragments d’un
datagramme. Ce champ à la même valeur pour tous les fragments provenant d’un même datagramme.
 Drapeau (en anglais flag) : il sert à gérer la fragmentation.
o Le premier n'est pas utilisé et doit rester à 0.
o Le second (appelé DF : Don't Fragment, en français Ne pas fragmenter) sert à interdire la
fragmentation d’un datagramme. Lorsque l’indicateur est à 1 la fragmentation est interdire. Lorsque
l’indicateur est à 0 la fragmentation est autorisée. Si jamais un datagramme a ce bit positionné à un
et que le routeur ne peut pas l'acheminer sans le fragmenter, alors le datagramme est rejeté avec
un message d'erreur
o Le dernier (appelé MF : More Fragments, en français Fragments à suivre) indique que d’autres
fragments vont suivre. Lorsque l’indicateur est à 1, d’autres fragments vont encore arriver. Lorsque
l’indicateur est à 0, le fragment est le dernier (donc que le routeur devrait être en possession de
tous les fragments précédents) ou bien le datagramme n'a pas fait l'objet d'une fragmentation.
 Position du fragment ou décalage de fragment : il permet de connaître la place qu’a le premier octet
de donnée du fragment dans le datagramme initial. L'unité de mesure de ce champ est de 8 octets. Ainsi
une valeur de 10 signifie que le premier octet de données du fragment est en fait l’octet 80 du
datagramme. Le premier fragment ou un datagramme non fragmenté a une valeur de zéro.
 Durée de vie (en anglais TTL pour Time To Live) : il indique le nombre maximal de routeurs à travers
lesquels le datagramme peut passer. Ainsi ce champ est décrémenté à chaque passage dans un
routeur, lorsque celui-ci atteint la valeur critique de 0, le routeur détruit le datagramme. Cela évite
l'encombrement du réseau par les datagrammes perdus.
 Protocole : il indique à quel protocole de niveau plus élevé est destiné le datagramme.
Protocole
valeur protocole de la
(en décimal) couche transport

6 TCP
17 UDP
1 ICMP

 Somme de contrôle de l'en-tête (en anglais header checksum) : il contient une valeur qui permet de
contrôler l'intégrité de l'en-tête afin de déterminer si celui-ci n'a pas été altéré pendant la transmission.
La somme de contrôle est le complément à un sur 16 bits de la somme des compléments à 1 de tous les
mots de 16 bits de l'en-tête (champ somme de contrôle exclu). Celle-ci est en fait telle que lorsque l'on
fait la somme des champs de l'en-tête (somme de contrôle incluse), on obtient un nombre avec tous les
bits positionnés à 1.
 Adresse IP source : il représente l'adresse IP de la machine émettrice, il permet au destinataire de
répondre.
 Adresse IP destination : il représente l’adresse IP du destinataire du message.
 Options : il s’agit d’options diverses. L'espace restant après les options sera rempli avec des zéros
pour avoir une longueur multiple de 32 bits.
 Données : il s’agit des données du datagramme proprement dites.

LES PROTOCOLES DE COMMUNICATION 4/14


Systèmes Electroniques Numériques – Télécommunications et Réseaux COURS

 Le protocole ARP (Address Resolution Protocol) :


Le protocole de résolution d’adresse ARP permet d’obtenir l'adresse MAC d’une station dont on connaît
l’adresse IP.

Constitution du paquet ARP :

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Type d’adresse physique Type d’adresse logique
(2 octets) (2 octets)
Longueur de l’adresse Longueur de l’adresse
Opération
physique logique
(2 octets)
(1 octet) (1 octet)
Adresse physique de l’émetteur …
(4 premiers octets …)
… suite de l’Adresse physique de l’émetteur Adresse IP de l’émetteur …
(… 2 derniers octets) (2 premiers octets …)
… suite de l’Adresse IP de l’émetteur … Adresse physique du destinataire …
(… 2 derniers octets) (2 premiers octets …)
… suite de l’Adresse physique du destinataire
(… 4 derniers octets)
Adresse IP du destinataire
(4 octets)

Valeur des champs sur un réseau Ethernet utilisant le protocole IP :

Type d’adresse physique : 00 01 indique un réseau Ethernet classique


Type d’adresse logique : 08 00 indique un réseau utilisant le protocole IP
Longueur de l’adresse physique : 06 indique que l’adresse MAC est composée de 6 octets
Longueur de l’adresse logique : 04 indique que l’adresse IP est composée de 4 octets (IP v4)
Opération : 00 01 indique une requête ARP
00 02 indique une réponse ARP

Description d’un échange ARP :

Une station A veut envoyer un paquet IP à une station B du réseau local. La station A connaît l’adresse IP
de la station B mais ne connaît pas son adresse MAC.
• Etape 1 : La station A fabrique un paquet de requête ARP contenant l’adresse MAC de A, l’adresse IP
de A, l’adresse IP de B. L’adresse MAC de destination inconnue aura pour valeur 0.
• Etape 2 : Ce paquet est encapsulé dans une trame qui va être diffusée à toutes les stations du réseau
local. L’adresse source est l’adresse MAC de A. L’adresse de destination sera l’adresse de diffusion
(FF FF FF FF FF FF). Le type de protocole a pour valeur 08 06 (protocole ARP).
• Etape 3 : Toutes les stations du réseau local vont donc devoir prendre en compte cette trame et
analyser le paquet qui s’y trouve encapsulé. Les stations qui ne reconnaissent pas leur propre
adresse IP dans le champ IP destination ne font rien de plus. Par contre la station B qui reconnaît son
adresse IP doit fabriquer un paquet réponse ARP qui contient l’adresse MAC de B, l’adresse IP de B,
l’adresse MAC de A et l’adresse IP de A.
• Etape 4 : Ce paquet est encapsulé dans une trame qui va être envoyée à la station A. L’adresse
source est l’adresse MAC de B. L’adresse de destination est l’adresse MAC de A. Le type de
protocole a pour valeur 08 06 (protocole ARP). La station B va également mettre à jour sa table ARP.
• Etape 5 : La station A qui reçoit directement la trame (point à point) va pouvoir envoyer son paquet IP
dans une trame ayant la bonne adresse MAC de destination. La station A va également mettre à jour
sa table ARP. Ceci permettra de ne pas refaire une requête ARP lors du prochain envoi à la station B.

LES PROTOCOLES DE COMMUNICATION 5/14


Systèmes Electroniques Numériques – Télécommunications et Réseaux COURS

4. LES PROTOCOLES DE LA COUCHE TRANSPORT

La couche transport assure le contrôle du transfert de bout en bout entre les deux systèmes d’extrémité. Elle
segmente puis rassemble le flux de données. Elle permet également d’établir et de raccorder les circuits virtuels
lorsque plusieurs connexions sont initiées. Finalement, elle assure la fiabilité du transport en assurant d’une
part la détection des pannes et la reprise de l’information et d’autre part le contrôle du flux d’informations.

 Les protocoles orientés ou non connexion :


On distingue deux catégories de protocoles selon le niveau de contrôle des données que l'on désire.
Les protocoles orientés connexion opérant un contrôle de transmission des données pendant une
communication établie entre deux machines. La machine réceptrice envoie des accusés de réception lors
de la communication, ainsi la machine émettrice est garante de la validité des données qu'elle envoie. Les
données sont ainsi envoyées sous forme de flot. TCP est un protocole orienté connexion.
Les protocoles non orientés connexion ne contrôle pas la transmission. La machine émettrice envoie
des données sans prévenir la machine réceptrice, et la machine réceptrice reçoit les données sans envoyer
d'avis de réception à la première. UDP est un protocole non orienté connexion.
 La notion de ports :
Les protocoles de la couche transport utilisent la notion de ports. En effet de nombreux programmes
peuvent être exécutés simultanément. On peut par exemple, en même temps, consulter plusieurs pages
HTLM avec plusieurs navigateurs et télécharger un fichier en utilisant FTP.
Toutes ces applications utilisent le même protocole de transport. Il est donc nécessaire de distinguer
l’application à laquelle sont destinés les messages. Pour ce faire chacune des applications se voit attribuer
une adresse unique, codée sur 16 bits et nommée port. Une liste d'applications associées à la valeur du
port est présentée en annexe 1.
Le message aura une destination unique en associant l’adresse IP de la machine qui reçoit le message et le
numéro de port qui permet à cette machine d’orienter les données vers l’application concernée. Cette
combinaison de l’adresse IP et du numéro port est appelée socket.
 Le protocole UDP (User Datagram Protocol) :
Le protocole UDP non orienté connexion est très simple, il ne fournit pas de contrôle d’erreurs. Il sera utilisé
lorsque les segments peu nombreux et de petite taille ne justifie pas que soit établie une connexion.
Constitution du segment UDP :

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Port source Port destination
(16 bits) (16 bits)
Longueur Somme de contrôle
(16 bits) (16 bits)
Données
(longueur variable)

Signification des champs :


 Port source : il s'agit du numéro de port correspondant à l'application émettrice du segment UDP. Ce
champ représente une adresse de réponse pour le destinataire. Ainsi, ce champ est optionnel, cela
signifie que si l'on ne précise pas le port source, les 16 bits de ce champ seront mis à zéro, auquel cas
le destinataire ne pourra pas répondre. (Cela n'est pas forcément nécessaire, notamment pour des
messages unidirectionnels.)
 Port destination : il s’agit du port correspondant à l'application de la machine destinataire à laquelle on
s'adresse.
 Longueur : il s’agit du nombre de mots de 8 bits constituant le segment, en-tête comprise. L'en-tête a
une longueur de 4 x 16 bits (soient 8 x 8 bits) donc le champ longueur est nécessairement supérieur ou
égal à 8 octets.
 Somme de contrôle : il s'agit d'une somme de contrôle réalisée de telle façon à pouvoir contrôler
l'intégrité du segment.
 Données : il s’agit des données du segment proprement dites.

LES PROTOCOLES DE COMMUNICATION 6/14


Systèmes Electroniques Numériques – Télécommunications et Réseaux COURS

 Le protocole TCP (Transmission Control Protocol) :


Le protocole TCP permet, au niveau des applications, de gérer les données en provenance (ou à
destination) de la couche inférieure du modèle (le protocole IP). TCP est un protocole orienté connexion,
c'est-à-dire qu'il permet à deux machines qui communiquent de contrôler l'état de la transmission. La
machine émettrice (celle qui demande la connexion) est appelée client, tandis que la machine réceptrice est
appelée serveur.

Le protocole TCP permet de :


 remettre en ordre les paquets en provenance du protocole IP,
 vérifier le flot de données afin d'éviter une saturation du réseau,
 formater les données en segments de longueur variable afin de les "remettre" au protocole IP,
 multiplexer les données, c'est-à-dire de faire circuler simultanément des informations provenant de
d’applications distinctes sur une même ligne,
 initialiser et mettre fin à une communication.

Constitution du segment TCP :

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Port source Port destination
(16 bits) (16 bits)
Numéro de séquence
(32 bits)
Numéro d’acquittement
(32 bits)
Déplacement
Réservé Drapeaux Fenêtre
(6 bits) (6 bits) (16 bits)
(4 bits)
Somme de contrôle Pointeur de message urgent
(16 bits) (16 bits)
Options
(facultatif et longueur variable)
Données
(longueur variable)

Signification des champs :


 Port source : Port relatif à l'application en cours sur la machine source
 Port destination : Port relatif à l'application en cours sur la machine de destination
 Numéro d’ordre (en anglais sequence number) : Lorsque le drapeau SYN est à 0, le numéro d'ordre est
celui du premier mot du segment en cours. Lorsque SYN est à 1, le numéro d'ordre est égal au numéro
d'ordre initial (ISN) utilisé pour synchroniser les numéros de séquence.
 Numéro d'accusé de réception (en anglais acknowledgment number) : il correspond au numéro d'ordre
du prochain segment attendu, et non le numéro du dernier segment reçu.
 Décalage des données : il permet de repérer le début des données dans le paquet. Le décalage est ici
essentiel car le champ d'options est de taille variable.
 Réservé : Champ inutilisé actuellement mais prévu pour l'avenir.
 Drapeaux (en anglais flags) : Les drapeaux représentent des informations supplémentaires :
o URG : si ce drapeau est à 1 le paquet doit être traité de façon urgente. 0 1 2 3 4 5
o ACK (Acknowledge) : si ce drapeau est à 1 le paquet est un accusé de
URG
ACK
PSH

SYN
RST

FIN

réception.
o PSH (PUSH) : si ce drapeau est à 1, le paquet fonctionne suivant la méthode
PUSH.
o RST (RESET) : si ce drapeau est à 1, la connexion est réinitialisée.
o SYN : si ce drapeau est à 1, on demande l’établissement de la connexion.
o FIN : si ce drapeau est à 1, la connexion s'interrompt.
 Fenêtre : Champ permettant de connaître le nombre d'octets que le récepteur souhaite recevoir sans
accusé de réception
 Somme de contrôle (en anglais Checksum ou CRC): La somme de contrôle est réalisée en faisant la
somme des champs de données de l'en-tête, afin de pouvoir vérifier l'intégrité de l'en-tête

LES PROTOCOLES DE COMMUNICATION 7/14


Systèmes Electroniques Numériques – Télécommunications et Réseaux COURS

 Pointeur d'urgence : Indique le numéro d'ordre à partir duquel l'information devient urgente
 Options : Des options diverses. L'espace restant après les options sera rempli avec des zéros pour
avoir une longueur multiple de 32 bits.
 Données : il s’agit des données du segment proprement dites.

Etablissement d’une connexion :

L'établissement de la connexion entre deux applications se fait souvent selon le schéma suivant :
 Les ports TCP doivent être ouverts
 L'application sur le serveur est passive, c'est-à-dire que l'application est à l'écoute, en attente d'une
connexion
 L'application sur le client fait une requête de connexion sur le serveur dont l'application est en
ouverture passive. L'application du client est dite "en ouverture active"

Etant donné que le processus de communication est basé sur un numéro d'ordre, il faut que les machines
émettrices et réceptrices (client et serveur) connaissent le numéro d'ordre initial de l'autre machine. Les deux
machines doivent donc synchroniser leurs séquences grâce à un mécanisme en trois échanges
communément appelé three ways handshake (littéralement : poignée de main en trois temps).
 Dans un premier temps la machine émettrice (le client)
transmet un segment dont le drapeau SYN est à 1 (pour Etablissement de la connexion :
signaler qu'il s'agit d'un segment de synchronisation), avec un client serveur
numéro d'ordre que l'on appelle numéro d'ordre initial du
client. SYN 1, ACK 0
 Dans un second temps la machine réceptrice (le serveur) SQ n
envoie un accusé de réception, c'est-à-dire un segment dont le
drapeau ACK est à 1 et le drapeau SYN est à 1 (car il s'agit là SYN 1, ACK 1
encore d'une synchronisation). Ce segment contient le numéro SQ m
d'ordre de cette machine (du serveur) qui est le numéro AR n+1
d'ordre initial du serveur. Le champ accusé de réception
contient le numéro d'ordre initial du client incrémenté de 1 (qui
SYN 0, ACK 1
assure que le serveur répond à la requête du client).
SQ n+1
 Enfin, le client transmet au serveur un accusé de réception,
AR m+1
c'est-à-dire un segment dont le drapeau ACK est à 1, dont le
drapeau SYN est à zéro (il ne s'agit plus d'un segment de
synchronisation). Son numéro d'ordre est incrémenté et le SQ : numéro d’ordre
numéro d'accusé de réception représente le numéro d'ordre AR : numéro d’accusé de réception
initial du serveur incrémenté de 1. SYN : bit SYN
ACK : bit ACK

Transfert des données :

Le protocole TCP permet d'assurer le transfert des données de façon


Transfert de données :
fiable en utilisant un système d'accusé de réception permettant au
client serveur
client et au serveur de s'assurer de la bonne réception mutuelle des
données. SQ 56
Lors de l'émission d'un segment, un numéro d'ordre est associé. A AR 203
réception du segment, la machine réceptrice va retourner un segment
dont le drapeau ACK est à 1 (afin de signaler qu'il s'agit d'un accusé
SQ 203
de réception) accompagné d'un numéro d'accusé de réception
AR 57
indiquant le numéro d’ordre du prochain segment attendu.

SQ 57
AR 204

SQ : numéro d’ordre


AR : numéro d’accusé de réception

LES PROTOCOLES DE COMMUNICATION 8/14


Systèmes Electroniques Numériques – Télécommunications et Réseaux COURS

Re-émission des données perdues :

De plus, grâce à une minuterie déclenchée dès réception d'un Re-émission des données
segment au niveau de la machine émettrice, le segment est réexpédié perdues :
dès que le temps imparti est écoulé, car dans ce cas la machine
client serveur
émettrice considère que le segment est perdu.
SQ 57
Toutefois, si le segment n'est pas perdu et qu'il arrive tout de même à AR 204
destination, la machine réceptrice saura grâce au numéro d'ordre qu'il
s'agit d'un doublon et ne conservera que le dernier segment arrivé à
destination. SQ 57
AR 204

SQ 204
AR 58

SQ : numéro d’ordre


AR : numéro d’accusé de réception

Méthode de la fenêtre glissante :

Dans de nombreux cas, il est possible de limiter le nombre d'accusés


Méthode de la fenêtre glissante :
de réception, afin de désengorger le réseau, en fixant un nombre de
séquence au bout duquel un accusé de réception est nécessaire. Ce client serveur
nombre est stocké dans le champ fenêtre de l'en-tête TCP. SQ 56
On appelle cette méthode "méthode de la fenêtre glissante" car on AR 203
définit une fourchette de séquences n'ayant pas besoin d'accusé de SQ 203
réception, et celle-ci se déplace au fur et à mesure que les accusés de AR 57
réception sont reçus. De plus, la taille de cette fenêtre n'est pas fixe.
En effet, le serveur peut inclure dans ses accusés de réception en SQ 57
stockant dans le champ fenêtre la taille de la fenêtre qui lui semble la AR 204
plus adaptée.

SQ 204
AR 60

SQ : numéro d’ordre


AR : numéro d’accusé de réception
Fin de connexion :

Le client peut demander à mettre fin à une connexion au même titre que le serveur.
La fin de la connexion se fait de la manière suivante :
 Une des machines envoie un segment avec le drapeau FIN à 1, et l'application se met en état
d'attente de fin, c'est-à-dire qu'elle finit de recevoir le segment en cours et ignore les suivants
 Après réception de ce segment, l'autre machine envoie un accusé de réception avec le drapeau FIN
à 1 et continue d'expédier les segments en cours. Suite à cela la machine informe l'application qu'un
segment FIN a été reçu, puis envoie un segment FIN à l'autre machine, ce qui clôture la connexion...

LES PROTOCOLES DE COMMUNICATION 9/14


Systèmes Electroniques Numériques – Télécommunications et Réseaux COURS

5. LE PROTOCOLE ICMP

Le protocole ICMP (Internet Control Message Protocol) est un protocole qui permet de gérer les informations
relatives aux erreurs. Il permet non pas de corriger ces erreurs mais de faire part de ces erreurs aux
protocoles des couches voisines. Ainsi, le protocole ICMP est utilisé par tous les routeurs, qui l'utilisent pour
signaler une erreur (appelé Delivery Problem).
Le message ICMP est encapsulé dans un paquet IP.

Constitution du message ICMP :

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Type Code Somme de contrôle
(8 bits) (8 bits) (16 bits)
Message
(longueur variable)

Signification du message ICMP :


Code
Type

Message Signification du message

Ce message est utilisé pour la commande PING. Cette commande, permettant de tester le réseau,
8 0 Demande d'ECHO
envoie un datagramme à un destinataire et lui demande de le restituer
0 0 Réponse d’ECHO Ce message est utilisé pour la commande PING. Il s’agit de la restitution du datagramme envoyé
3 0 Destinataire inaccessible Le réseau n'est pas accessible
3 1 Destinataire inaccessible La machine n'est pas accessible
3 2 Destinataire inaccessible Le protocole n'est pas accessible
3 3 Destinataire inaccessible Le port n'est pas accessible
3 4 Destinataire inaccessible Fragmentation nécessaire mais impossible à cause du drapeau (flag) DF
3 5 Destinataire inaccessible Le routage a échoué
3 6 Destinataire inaccessible Réseau inconnu
3 7 Destinataire inaccessible Machine inconnue
3 8 Destinataire inaccessible Machine non connectée au réseau (inutilisé)
3 9 Destinataire inaccessible Communication avec le réseau interdite
3 10 Destinataire inaccessible Communication avec la machine interdite
3 11 Destinataire inaccessible Réseau inaccessible pour ce service
3 12 Destinataire inaccessible Machine inaccessible pour ce service
3 11 Destinataire inaccessible Communication interdite (filtrage)
Le volume de données envoyé est trop important, le routeur envoie ce message pour prévenir qu'il
4 0 Source Quench
sature afin de demander de réduire la vitesse de transmission
Le routeur remarque que la route d'un ordinateur n'est pas optimale et envoie l'adresse du routeur à
5 0 Redirection pour un hôte
rajouter dans la table de routage de l'ordinateur
Redirection pour un hôte et Le routeur remarque que la route d'un ordinateur n'est pas optimale pour un service donné et
5 1
un service donné envoie l'adresse du routeur à rajouter dans la table de routage de l'ordinateur
Le routeur remarque que la route d'un réseau entier n'est pas optimale et envoie l'adresse du
5 2 Redirection pour un réseau
routeur à rajouter dans la table de routage des ordinateurs du réseau
Redirection pour un réseau Le routeur remarque que la route d'un réseau entier n'est pas optimale pour un service donné et
5 3
et un service donné envoie l'adresse du routeur à rajouter dans la table de routage des ordinateurs du réseau
Ce message est envoyé lorsque le temps de vie d'un datagramme est dépassé. L'en-tête du
11 0 Temps dépassé
datagramme est renvoyé pour que l'utilisateur sache quel datagramme a été détruit
Temps de ré-assemblage Ce message est envoyé lorsque le temps de ré-assemblage des fragments d'un datagramme est
11 1
de fragment dépassé dépassé.
Ce message est envoyé lorsqu'un champ d'un en-tête est erronné. La position de l'erreur est
12 0 En-tête erronné
retournée
13 0 Timestamp request Une machine demande à une autre son heure et sa date système (universelle)
La machine réceptrice donne son heure et sa date système afin que la machine émettrice puisse
14 0 Timestamp reply
déterminer le temps de transfert des données
15 0 Demande d'adresse réseau Ce message permet de demander au réseau une adresse IP
16 0 Réponse d'adresse réseau Ce message répond au message précédent
Demande de masque de
17 0 Ce message permet de demander au réseau un masque de sous-réseau
sous-réseau
Réponse de masque de
18 0 Ce message répond au message précédent
sous-réseau

LES PROTOCOLES DE COMMUNICATION 10/14


Systèmes Electroniques Numériques – Télécommunications et Réseaux COURS

ANNEXE 1 : Liste d'applications associées à la valeur du port

valeur protocole
associé
application
(en décimal)

20 TCP FTP Donnée


21 TCP FTP Contrôle
22 TCP SSH
23 TCP TELNET
25 TCP SMTP
53 UDP DNS
67 UDP BootP / DHCP Serveur
68 UDP BootP / DHCP Client
69 UDP TFTP
80 TCP HTTP
88 TCP KERBEROS
110 TCP POP3
113 TCP Service d'authentification
137 UDP NetBios (Service Nom)
138 NetBios (Service Datagramme)
139 TCP NetBios (Service Session)
161 UDP SNMP
443 TCP HTTPS
520 UDP Routage (RIP...)
546 UDP DHCP v6 Client
547 UDP DHCP v6 Serveur
750 TCP/UDP KERBEROS

remarque :
Les ports 0 à 1023 sont les «ports reconnus» ou réservés («Well Known Ports»). Ils sont, de manière
générale, réservés aux processus système ou aux programmes exécutés par des utilisateurs privilégiés. Un
administrateur réseau peut néanmoins lier des services aux ports de son choix.
Les ports 1024 à 49151 sont appelés «ports enregistrés» («Registered Ports»).
Les ports 49152 à 65535 sont les «ports dynamiques et/ou privés» («Dynamic and/or Private Ports»).
Ainsi, un serveur (un ordinateur que l'on contacte et qui propose des services) possède des numéros de port
fixes auxquels l'administrateur réseau a associé des services. Ainsi, les ports d'un serveur sont généralement
compris entre 0 et 1023 (fourchette de valeurs associées à des services connus).
Du côté du client, le port est choisi aléatoirement parmi ceux disponibles par le système d'exploitation. Ainsi,
les ports du client ne seront jamais compris entre 0 et 1023 car cet intervalle de valeurs représente les ports
connus.

LES PROTOCOLES DE COMMUNICATION 11/14


Systèmes Electroniques Numériques – Télécommunications et Réseaux COURS

ANNEXE 2 : Association des protocoles des différentes couches

Chaque protocole est encapsulé dans un protocole particulier de niveau inférieur. Ainsi un message HTTP
est encapsulé dans un segment TCP. Ce segment TCP est encapsulé dans un datagramme IP. Et enfin, ce
datagramme IP est encapsulé dans une trame Ethernet II.

COUCHE APPLICATION HTTP SMTP POP3 DNS TFTP

80 25 110 53 69

COUCHE TRANSPORT TCP UDP

06 17

COUCHE RESEAU ARP IP

0x806 0x800

COUCHE LIAISON DE DONNEES Ethernet II

LES PROTOCOLES DE COMMUNICATION 12/14


Systèmes Electroniques Numériques – Télécommunications et Réseaux COURS

ANNEXE 3 : Les autres protocoles de la couche liaison de données

La trame 802.1Q

Pour identifier les trames issues de différents réseaux locaux virtuels (VLAN) l'organisme IEEE a développé
la norme 802.1Q. Ce standard complète l'en-tête de la trame Ethernet pour y ajouter une balise de VLAN
(VLAN TAG). Ce champ TAG est constitué de 4 octets. Le champ FCS est recalculé en prenant en compte
le TAG.
Constitution de la trame 802.1Q :
adresse adresse TAG type de données FCS
destinataire source (inséré) protocole (modifié)

6 octets 6 octets 4 octets 2 octets 46 à 1500 octets 4 octets

TPID TCI

16 bits 16 bits

Signification du champ TAG :


Contenu du champ TPID (Tag Protocol IDentifier) :
Le champ TPID identifie le protocole de la balise insérée. Dans le cas de la balise 802.1Q, la valeur de ce
champ est fixée à 0x8100.
Contenu du champ TCI (Tag Control Information):
TCI
Priorité CFI VID

3 bits 1 bits 12 bits

• Priorité : il indique la priorité (de 0 à 7) d'une trame d'un VLAN relativement aux autres VLAN. On
met ainsi en place une politique de qualité de service QoS (Quality of Service) décrite dans la norme
802.1P.
• CFI (Canonical Format Indicator) : il assure la compatibilité entre les adresses MAC Ethernet et
Token Ring. Un commutateur Ethernet fixera toujours cette valeur à 0. Si un port Ethernet reçoit
une valeur 1 pour ce champ, alors la trame ne sera pas propagée puisqu'elle est destinée à un port
«sans balise» (untagged port).
• VID (Vlan IDentifier) : il identifie le réseau local virtuel (VLAN) auquel appartient la trame. Il est
possible de coder 4096 VLAN.

LES PROTOCOLES DE COMMUNICATION 13/14


Systèmes Electroniques Numériques – Télécommunications et Réseaux COURS

La trame 802.11

Constitution d'une trame 802.11 :

Frame Duration / adresse 1 adresse 2 adresse 3 Sequence adresse 4 données FCS


Control ID control

2 octets 2 octets 6 octets 6 octets 6 octets 2 octets 6 octets 0 à 2312 octets 4 octets

Sens de la trame :

To DS From DS Signification
Trame entre deux stations d’un réseau ad-hoc ou trame de contrôle entre un point d’accès et une station.
0 0

Trame issue d’une station sans fil et à destination d’une autre station. Cette trame transitant via un point
1 0
d’accès, c’est l’adresse du point d’accès qui est utilisée comme destination suivante.
Trame issue d’un point d’accès et à destination d’une station sans fil, la source pouvant être filaire ou sans
0 1
fil.
Trame issue d’un point d’accès et à destination d’un autre point d’accès, utilisée pour l’interconnexion de
1 1
réseaux locaux par un pont sans fil.

Adresses :

DA adresse destination adresse MAC de la station destination présente sur un réseau sans fil ou sur un réseau filaire.
SA adresse source adresse MAC de la station source présente sur un réseau sans fil ou sur un réseau filaire.
TA adresse de l’émetteur radio adresse MAC de la station ayant placé le message sur le réseau sans fil.
RA adresse du récepteur radio adresse MAC de la station recevant le message sur le réseau sans fil.

Le vecteur d'allocation du réseau (Network Allocation Vector) :

Le N.A.V. permet l’évitement des collisions dans 802.11. L’émetteur d’une trame 802.11 réserve le canal
pour une durée déterminée. Les autres stations ne doivent pas émettre durant ce temps là. La mise en place
du NAV s’effectue par l’intermédiaire du champ « duration ». La valeur est exprimée en microseconde (μs).

LES PROTOCOLES DE COMMUNICATION 14/14

Vous aimerez peut-être aussi