logo

Protocoles de couche transport

  • La couche transport est représentée par deux protocoles : TCP et UDP.
  • Le protocole IP de la couche réseau transmet un datagramme d'un hôte source à l'hôte de destination.
  • De nos jours, le système d'exploitation prend en charge les environnements multi-utilisateurs et multitraitements, un programme en cours d'exécution est appelé un processus. Lorsqu'un hôte envoie un message à un autre hôte, cela signifie que le processus source envoie un processus à un processus de destination. Les protocoles de la couche transport définissent certaines connexions à des ports individuels appelés ports de protocole.
  • Un protocole IP est un protocole d'hôte à hôte utilisé pour transmettre un paquet de l'hôte source à l'hôte de destination, tandis que les protocoles de couche de transport sont des protocoles de port à port qui fonctionnent au-dessus des protocoles IP pour transmettre le paquet depuis l'hôte d'origine. port vers les services IP et des services IP vers le port de destination.
  • Chaque port est défini par une adresse entière positive, et elle est de 16 bits.
Protocoles de couche transport

UDP

  • UDP signifie Protocole de datagramme utilisateur .
  • UDP est un protocole simple et fournit une fonctionnalité de transport non séquencé.
  • UDP est un protocole sans connexion.
  • Ce type de protocole est utilisé lorsque la fiabilité et la sécurité sont moins importantes que la vitesse et la taille.
  • UDP est un protocole de niveau transport de bout en bout qui ajoute des adresses au niveau du transport, un contrôle des erreurs de somme de contrôle et des informations de longueur aux données de la couche supérieure.
  • Le paquet produit par le protocole UDP est appelé datagramme utilisateur.

Format du datagramme utilisateur

Le datagramme utilisateur a un en-tête de 16 octets illustré ci-dessous :

Protocoles de couche transport

Où,

    Adresse du port source :Il définit l'adresse du processus applicatif qui a délivré un message. L'adresse du port source est une adresse de 16 bits.Adresse du port de destination :Il définit l'adresse du processus de candidature qui recevra le message. L'adresse du port de destination est une adresse de 16 bits.Longueur totale:Il définit la longueur totale du datagramme utilisateur en octets. C'est un champ de 16 bits.Somme de contrôle :La somme de contrôle est un champ de 16 bits utilisé dans la détection des erreurs.

Inconvénients du protocole UDP

  • UDP fournit les fonctions de base nécessaires à la livraison de bout en bout d'une transmission.
  • Il ne fournit aucune fonction de séquençage ou de réorganisation et ne spécifie pas le paquet endommagé lors du signalement d'une erreur.
  • UDP peut découvrir qu'une erreur s'est produite, mais il ne précise pas quel paquet a été perdu car il ne contient pas d'ID ou de numéro de séquence d'un segment de données particulier.

TCP

  • TCP signifie Transmission Control Protocol.
  • Il fournit des services complets de couche de transport aux applications.
  • Il s'agit d'un protocole orienté connexion, c'est-à-dire la connexion établie entre les deux extrémités de la transmission. Pour créer la connexion, TCP génère un circuit virtuel entre l'expéditeur et le destinataire pendant la durée d'une transmission.

Caractéristiques du protocole TCP

    Transfert de données en flux :Le protocole TCP transfère les données sous forme de flux contigu d'octets. TCP regroupe les octets sous forme de segments TCP, puis les transmet à la couche IP pour les transmettre à la destination. TCP lui-même segmente les données et les transmet à l'IP.Fiabilité:TCP attribue un numéro de séquence à chaque octet transmis et attend un accusé de réception positif du TCP récepteur. Si ACK n'est pas reçu dans un intervalle de délai d'attente, les données sont retransmises vers la destination.
    Le TCP récepteur utilise le numéro de séquence pour réassembler les segments s'ils arrivent dans le désordre ou pour éliminer les segments en double.Contrôle de flux:Lors de la réception, TCP renvoie un accusé de réception à l'expéditeur indiquant le nombre d'octets qu'il peut recevoir sans déborder de son tampon interne. Le nombre d'octets est envoyé en ACK sous la forme du numéro de séquence le plus élevé qu'il peut recevoir sans aucun problème. Ce mécanisme est également appelé mécanisme de fenêtre.Multiplexage :Le multiplexage est un processus d'acceptation des données de différentes applications et de transfert vers les différentes applications sur différents ordinateurs. À la réception, les données sont transmises à l'application appropriée. Ce processus est connu sous le nom de démultiplexage. TCP transmet le paquet à la bonne application en utilisant les canaux logiques appelés ports.Connexions logiques :La combinaison de sockets, de numéros de séquence et de tailles de fenêtre est appelée une connexion logique. Chaque connexion est identifiée par la paire de sockets utilisée par les processus d'envoi et de réception.Un duplex plein:TCP fournit un service Full Duplex, c'est-à-dire le flux de données dans les deux sens en même temps. Pour obtenir un service Full Duplex, chaque TCP doit disposer de tampons d'envoi et de réception afin que les segments puissent circuler dans les deux sens. TCP est un protocole orienté connexion. Supposons que le processus A souhaite envoyer et recevoir les données du processus B. Les étapes suivantes se produisent :
    • Établissez une connexion entre deux TCP.
    • Les données sont échangées dans les deux sens.
    • La connexion est terminée.

Format des segments TCP

Protocoles de couche transport

Où,

    Adresse du port source :Il est utilisé pour définir l'adresse du programme d'application dans un ordinateur source. C'est un champ de 16 bits.Adresse du port de destination :Il permet de définir l'adresse du programme d'application dans un ordinateur de destination. C'est un champ de 16 bits.Numéro de séquence:Un flux de données est divisé en deux ou plusieurs segments TCP. Le champ du numéro de séquence de 32 bits représente la position des données dans un flux de données d'origine.Numéro d'accusé de réception :Un numéro d'accusé de réception de 32 champs accuse réception des données provenant d'autres appareils communicants. Si le champ ACK est défini sur 1, alors il spécifie le numéro de séquence que le récepteur s'attend à recevoir.Longueur de l'en-tête (HLEN) :Il spécifie la taille de l'en-tête TCP en mots de 32 bits. La taille minimale de l’en-tête est de 5 mots et la taille maximale de l’en-tête est de 15 mots. Par conséquent, la taille maximale de l’en-tête TCP est de 60 octets et la taille minimale de l’en-tête TCP est de 20 octets.Réservé:Il s'agit d'un champ de six bits réservé pour une utilisation future.Bits de contrôle :Chaque bit d'un champ de contrôle fonctionne individuellement et indépendamment. Un bit de contrôle définit l'utilisation d'un segment ou sert de contrôle de validité pour d'autres champs.

Il existe au total six types d'indicateurs dans le champ de contrôle :

    URG :Le champ URG indique que les données d'un segment sont urgentes.ACK :Lorsque le champ ACK est défini, il valide le numéro d'accusé de réception.PSH :Le champ PSH est utilisé pour informer l'expéditeur qu'un débit plus élevé est nécessaire. Ainsi, si possible, les données doivent être transmises avec un débit plus élevé.TVD :Le bit de réinitialisation est utilisé pour réinitialiser la connexion TCP en cas de confusion dans les numéros de séquence.SYNCHRONISATION :Le champ SYN est utilisé pour synchroniser les numéros de séquence dans trois types de segments : demande de connexion, confirmation de connexion (avec le bit ACK activé) et accusé de réception de confirmation.FIN:Le champ FIN est utilisé pour informer le module TCP récepteur que l'expéditeur a fini d'envoyer des données. Il est utilisé dans la terminaison de connexion dans trois types de segments : demande de terminaison, confirmation de terminaison et accusé de réception de confirmation de terminaison.
      La taille de la fenêtre:La fenêtre est un champ de 16 bits qui définit la taille de la fenêtre.Somme de contrôle :La somme de contrôle est un champ de 16 bits utilisé dans la détection des erreurs.Pointeur urgent :Si l'indicateur URG est défini sur 1, alors ce champ de 16 bits est un décalage par rapport au numéro de séquence indiquant qu'il s'agit d'un dernier octet de données urgentes.Options et rembourrage :Il définit les champs facultatifs qui transmettent les informations supplémentaires au destinataire.

Différences entre TCP et UDP

Base de comparaison TCP UDP
Définition TCP établit un circuit virtuel avant de transmettre les données. UDP transmet les données directement à l'ordinateur de destination sans vérifier si le récepteur est prêt à recevoir ou non.
Type de connexion C'est un protocole orienté connexion C'est un protocole sans connexion
Vitesse lent haut
Fiabilité C'est un protocole fiable. C'est un protocole peu fiable.
Taille de l'en-tête 20 octets 8 octets
reconnaissance Il attend l'accusé de réception des données et a la possibilité de renvoyer les paquets perdus. Il ne prend pas d'accusé de réception et ne retransmet pas la trame endommagée.