Le rôle de la couche transport est de rendre possible la communication logique entre applications.

La communication logique qu'établit la couche transport se fait entre les applications impliquées dans la communication. En effet, lorsque deux hôtes A et B communiquent, c'est par le biais d'une application. Par exemple, si l'application utilisée par l'hôte A est un client de messagerie, cela veut dire que l'hôte B également utilisera un client de messagerie pour lire le message. Donc il s'agit d'une même application dans la transmission et la réception. Voilà pourquoi on parle de end-to-end application communication, ce qui en français est proche de « bout-à-bout ». Par « bout-à-bout », la pensée exprimée est que la communication entre les couches se fait de façon parallèle.

Chaque couche communique parallèlement avec sa couche « homologue ». La couche application de l'hôte émetteur communique directement avec la couche application de l'hôte récepteur, de même que la couche transport de l'émetteur communique directement avec la couche transport de l'hôte récepteur.

Les services de la couche transport :

 ·       Communication orientée connexion : de l'anglais Connection-oriented communication, ce service est bénéfique pour plusieurs applications, notamment parce qu'il interprète la connexion établie entre processus comme étant un flux de données. Ce flux de données n'est en fait qu'une séquence d'octets (8 bits). Ainsi, il faudrait donc gérer l'orientation des octets, qui est également un service de cette couche. Il est plus facile de gérer ce genre de communication que d'avoir affaire au mode orienté non connexion.

·       L'ordre de livraison : nous savons que la couche transport fragmente les données en plusieurs séquences. La couche réseau ne peut pas garantir que les données envoyées arriveront exactement dans l'ordre même de leur envoi. Rappelez-vous, nous avons parlé de cela en introduction aux protocoles, mais sous un autre nom : le contrôle de séquences. C'est la couche transport qui se charge de gérer les séquences, de s'assurer que l'ordre de livraison est le même que l'ordre d'envoi. Cette gestion de séquences se fait en utilisant un numéro de séquence. 

·       Fiabilité : dans la sous-partie précédente, dans l'exemple des cousins et postes, nous avons évoqué implicitement ce qui régissait le principe d'une communication fiable. Nous n'allons pas nous attarder là-dessus, étant donné que nous aurons une sous-partie consacrée à cela. Le but de ce service est de vérifier l'intégralité des paquets car ces derniers peuvent se perdre en cours de transmission à cause de la congestion du réseau. Cette vérification d'intégralité se fait souvent en utilisant un code de détection d'erreurs tel que la somme de contrôle (checksum). La fiabilité consiste aussi à s'assurer que le récepteur reçoit chaque segment qui lui est envoyé. Cela est accompli par l'envoi des ACK et NACK (accusés de réception) à l'émetteur. Il faudrait donc également être en mesure de renvoyer les séquences qui se sont perdues : cela se fait par une requête automatique de renvoi.

·       Gestion de flux : Quand deux personnes parlent, il est nécessaire de donner à celui qui "écoute" le temps de comprendre ce qui est dit, puisqu'il se peut que l'émetteur parle plus vite que le récepteur. Il faut donc gérer cette volubilité, ce flux. Dans les réseaux, il y a des cas où un hôte-émetteur peut transmettre plus vite que ne peut recevoir un 
hôte-récepteur. C'est là qu'intervient l'utilité de la gestion des flux. 

·       Contrôle de congestion : Le contrôle de congestion sert à contrôler le trafic dans un réseau afin de réduire la congestion (saturation) d'un réseau en évitant que les autres clients utilisent les liens de connexion qui sont déjà extrêmement utilisés. 

·    Multiplexing / demultiplexing : La couche transport implémente le multiplexage afin de permettre à plusieurs processus de communiquer sur le même réseau. Les informations sont divisées en segments (PDU) associés à une application spécifique. Concrètement cela consiste en l’utilisation d'un port associé à un socket pour chaque processus d'une machine. Ces informations sont contenues dans l'en-tête du segment de la couche transport.

Numéros de port :

Un numéro de port sert également à identifier quelque chose. Mais ce quelque chose est une application. Le numéro de port est donc le numéro qui nous permet de faire la distinction entre les applications. Nous savons déjà que la couche transport établit une communication bout-à-bout entre les processus d'applications. Alors comment faire pour distinguer les nombreux processus d'une application qui sont en fait des services exécutés sur une machine ? C'est le numéro de port qui permettra de les différencier.

L'organisme IANA (Internet Assigned Numbers Authority) (en) classe les numéros de port en trois catégories principales, comme l'illustre le tableau ci-dessous.

Portée

Catégorie

Description

0 - 1023

Ports bien connus

Ports réservés pour des services bien connus (web, envoi de mail, etc.).

1024 – 49 151

Ports réservés

Ports réservés pour être utilisés par des applications propriétaires.

49 152 – 65 635

Ports dynamiques

Ports « libres » que vous pouvez utiliser pour vos applications. Ils ne sont ni pour des services bien connus, ni réservés par une entreprise quelconque.

Voici quelques ports bien connus :

Protocole

Description

Protocole de transmission

Numéro de port

Statut d'assignation

File Transfert Protocole (FTP)

Protocole de transfert de fichier

TCP

21

Officiel

Secured SHell (SSH)

Protocole permettant l'échange de données par le biais d'un canal sécurisé

TCP & UDP

22

Officiel

Telnet

Utilisé pour l'établissement des sessions à distance

TCP

23

Officiel

Simple Mail Transfer Protocol (SMTP)

Protocole d'envoi de courrier électronique

TCP

25

Officiel

WHOIS protocol

Protocole ou service utilisé pour l'identification d'une machine par son nom de domaine ou son adresse IP. La procédure d'identification se fait par une requête envoyée à un des registres Internet pour obtenir des informations.

TCP

43

Officiel

Domain Name System (DNS)

Protocole de résolution des noms de domaine

TCP & UDP

53

Officiel

HyperText Transfer Protocol (HTTP)

Protocole de téléchargement (principalement de pages web)

TCP & UDP

80

Officiel

Post Office Protocol Version 2 (POP2)

Protocole de retrait de mails d'un serveur de messagerie

TCP

109

Officiel

Post Office Protocol Version 3 (POP3)

Protocole de retrait de mails d'un serveur de messagerie

TCP

110

Officiel

Internet Message Access Protocol (IMAP)

Protocole de retrait et consultation de mails d'un serveur de messagerie

TCP & UDP

143

Officiel

...

...

...

...

...

Il y a tellement de protocoles que nous ne pouvons pas tous les énumérer

 

آخر تعديل: الأربعاء، 2 أبريل 2025، 12:02 AM