logo

Qu'est-ce que le protocole de contrôle de transmission (TCP) ?

TCP signifie Protocole de contrôle de transmission . Il s'agit d'un protocole de couche transport qui facilite la transmission des paquets de la source à la destination. Il s'agit d'un protocole orienté connexion, ce qui signifie qu'il établit la connexion avant la communication qui se produit entre les appareils informatiques d'un réseau. Ce protocole est utilisé avec un protocole IP, donc ensemble, ils sont appelés TCP/IP .

La fonctionnalité principale du TCP est de récupérer les données de la couche application. Ensuite, il divise les données en plusieurs paquets, numérote ces paquets et transmet enfin ces paquets à la destination. Le TCP, de son côté, va réassembler les paquets et les transmettre à la couche application. Comme nous savons que TCP est un protocole orienté connexion, la connexion restera établie jusqu'à ce que la communication ne soit pas terminée entre l'expéditeur et le destinataire.

Linux $ maison

Caractéristiques du protocole TCP

Voici les caractéristiques d'un protocole TCP :

    Protocole de couche transport

TCP est un protocole de couche transport car il est utilisé pour transmettre les données de l'expéditeur au destinataire.

    Fiable

TCP est un protocole fiable car il suit le mécanisme de contrôle des flux et des erreurs. Il prend également en charge le mécanisme d'accusé de réception, qui vérifie l'état et l'arrivée sonore des données. Dans le mécanisme d'accusé de réception, le destinataire envoie un accusé de réception positif ou négatif à l'expéditeur afin que celui-ci puisse savoir si le paquet de données a été reçu ou doit être renvoyé.

    L'ordre des données est maintenu

Ce protocole garantit que les données parviennent au destinataire prévu dans le même ordre dans lequel elles sont envoyées. Il ordonne et numérote chaque segment afin que la couche TCP du côté destination puisse les réassembler en fonction de leur ordre.

    Connexion orientée

Il s'agit d'un service orienté connexion, ce qui signifie que l'échange de données n'a lieu qu'après l'établissement de la connexion. Une fois le transfert de données terminé, la connexion sera interrompue.

    Un duplex plein

Il s'agit d'un duplex intégral, ce qui signifie que les données peuvent être transférées dans les deux sens en même temps.

    Orienté flux

TCP est un protocole orienté flux car il permet à l'expéditeur d'envoyer les données sous la forme d'un flux d'octets et permet également au destinataire d'accepter les données sous la forme d'un flux d'octets. TCP crée un environnement dans lequel l'expéditeur et le destinataire sont connectés par un tube imaginaire appelé circuit virtuel. Ce circuit virtuel transporte le flux d’octets sur Internet.

mot-clé final en Java

Nécessité d'un protocole de contrôle des transports

Dans l’architecture en couches d’un modèle de réseau, l’ensemble de la tâche est divisé en tâches plus petites. Chaque tâche est affectée à une couche particulière qui traite la tâche. Dans le Modèle TCP/IP , cinq couches sont la couche d'application, la couche de transport, couche réseau , couche liaison de données et couche physique. La couche transport joue un rôle essentiel en fournissant une communication de bout en bout aux processus directement applicatifs. Il crée 65 000 ports afin que plusieurs applications soient accessibles en même temps. Il récupère les données de la couche supérieure, les divise en paquets plus petits, puis les transmet à la couche réseau.

TCP

Fonctionnement de TCP

Dans TCP, la connexion est établie à l’aide d’une négociation à trois. Le client envoie le segment avec son numéro de séquence. Le serveur, en retour, envoie son segment avec son propre numéro de séquence ainsi que la séquence d'accusé de réception, qui est un de plus que le numéro de séquence du client. Lorsque le client reçoit l'accusé de réception de son segment, il envoie alors l'accusé de réception au serveur. De cette manière, la connexion est établie entre le client et le serveur.

TCP

Avantages du TCP

  • Il fournit un service fiable orienté connexion, ce qui signifie qu'il garantit la livraison des paquets de données. Si le paquet de données est perdu sur le réseau, TCP renverra les paquets perdus.
  • Il fournit un mécanisme de contrôle de flux utilisant un protocole de fenêtre glissante.
  • Il permet la détection des erreurs à l'aide de la somme de contrôle et le contrôle des erreurs à l'aide du protocole Go Back ou ARP.
  • Il élimine la congestion en utilisant un algorithme d'évitement de la congestion du réseau qui inclut divers schémas tels que l'augmentation additive/diminution multiplicative (AIMD), le démarrage lent et la fenêtre de congestion.

Inconvénient du TCP

Cela augmente considérablement la surcharge car chaque segment obtient son propre en-tête TCP, donc la fragmentation par le routeur augmente la surcharge.

Format d'en-tête TCP

TCP
    Port source :Il définit le port de l'application qui envoie les données. Ainsi, ce champ contient l'adresse du port source, qui est de 16 bits.Le port de destination:Il définit le port de l’application côté réception. Ainsi, ce champ contient l'adresse du port de destination, qui est de 16 bits.Numéro de séquence:Ce champ contient le numéro de séquence des octets de données dans une session particulière.Numéro d'accusé de réception :Lorsque l'indicateur ACK est défini, il contient le numéro de séquence suivant de l'octet de données et fonctionne comme un accusé de réception pour les données précédentes reçues. Par exemple, si le récepteur reçoit le numéro de segment « x », il répond « x+1 » comme numéro d'accusé de réception.HLÈN :Il précise la longueur de l'en-tête indiquée par les mots de 4 octets dans l'en-tête. La taille de l'en-tête est comprise entre 20 et 60 octets. La valeur de ce champ serait donc comprise entre 5 et 15.Réservé:Il s'agit d'un champ de 4 bits réservé à une utilisation future, et par défaut, tous sont mis à zéro.Drapeaux
    Il existe six bits de contrôle ou indicateurs :
      URG :Cela représente un indicateur urgent. S'il est défini, les données sont traitées de toute urgence.ACK :Si l'ACK est défini sur 0, cela signifie que le paquet de données ne contient pas d'accusé de réception.PSH :Si ce champ est défini, il demande au périphérique de réception de transmettre les données à l'application de réception sans les mettre en mémoire tampon.TVD :S'il est défini, il demande de redémarrer une connexion.SYNCHRONISATION :Il est utilisé pour établir une connexion entre les hôtes.FIN:Il est utilisé pour libérer une connexion et aucun autre échange de données n'aura lieu.
    La taille de la fenêtre
    C'est un champ de 16 bits. Il contient la taille des données que le récepteur peut accepter. Ce champ est utilisé pour le contrôle de flux entre l'expéditeur et le destinataire et détermine également la quantité de tampon allouée par le récepteur pour un segment. La valeur de ce champ est déterminée par le récepteur.Somme de contrôle
    C'est un champ de 16 bits. Ce champ est facultatif en UDP, mais dans le cas de TCP/IP, ce champ est obligatoire.Pointeur d'urgence
    C'est un pointeur qui pointe vers l'octet de données urgentes si le flag URG est mis à 1. Il définit une valeur qui sera ajoutée au numéro de séquence pour obtenir le numéro de séquence du dernier octet urgent.Possibilités
    Il offre des options supplémentaires. Le champ facultatif est représenté en 32 bits. Si ce champ contient des données inférieures à 32 bits, un remplissage est alors nécessaire pour obtenir les bits restants.