
Si vous débutez avec TCP/IP, vous vous demandez probablement pourquoi il existe deux protocoles de couche transport (TCP et UDP).
Pourquoi n'en avons-nous pas qu'un seul ? Après tout, TCP semble être la meilleure option de toute façon.
L'objectif de ce court tutoriel d'introduction est d'expliquer les différences fondamentales entre les deux et pourquoi chaque protocole est nécessaire, et quand ils sont utilisés.
TCP et UDP se situent tous deux au niveau de la couche transport de la pile de protocoles TCP/IP et utilisent tous deux le protocole IP.
Les applications sont conçues pour utiliser l'un ou l'autre protocole en fonction de leurs besoins.
TCP- Protocole de contrôle de transmission
TCP est un protocole orienté connexion avec récupération d'erreur et retransmission intégrées.
Vous pouvez comparer une connexion TCP à une connexion téléphonique.
Avec une connexion téléphonique, vous devez d'abord établir la connexion en composant le numéro, et une fois que l'appelant répond, vous disposez d'un canal de communication bidirectionnel.
Vous pouvez ensuite parler et, une fois que vous avez terminé, vous raccrochez la connexion.
Avec le TCP, vous établissez la connexion en utilisant la poignée de main à trois voies. Le transport TCP s'occupe des erreurs sur la liaison, et l'application peut être sûre que les données reçues sont exemptes d'erreurs. Tout comme pour une connexion téléphonique, lorsque vous utilisez une connexion, personne d'autre ne peut l'utiliser.
Le TCP est utilisé par les protocoles d'application qui ont besoin d'une garantie de livraison des messages.
HTTP, FTP, SMTP, POP3, IMAP4 et de nombreux autres protocoles d'application Internet courants utilisent TCP.
UDP - Protocole de datagramme utilisateur
UDP est un protocole sans connexion. Vous pouvez comparer UDP au courrier électronique ou à la poste normale. Avec le courrier électronique ou un message écrit, vous envoyez votre message, mais vous ne savez pas si ce message a été reçu ou non. L'UDP ne corrige pas et ne récupère pas les erreurs dans le message. Toute détection et récupération d'erreur est de la responsabilité de l'application qui reçoit le message.
Comme il n'y a pas de configuration de la connexion, l'UDP est plus rapide que le TCP et se traduit par un trafic réseau moins important.
En outre, il ne consomme pas de ressources sur la machine réceptrice car il ne maintient pas de connexion ouverte.
Les applications utilitaires comme le DNS, le DHCP, le RIP et d'autres utilisent l'UDP. L'utilisation de l'UDP devrait augmenter avec l'IOT car les données de type capteur sont idéales pour l'envoi via UDP par rapport à TCP. Pour plus de détails, il existe une comparaison TCP/UDP côte à côte très utile.
En-têtes TCP et UDP
L'en-tête UDP (8 octets) est considérablement plus petit que l'en-tête TCP (20 octets). Les en-têtes UDP et TCP contiennent tous deux des champs de port source et de port de destination de 16 bits. Le champ du port source est utilisé pour répondre au message.
Ports TCP et UDP
Les protocoles TCP et UDP utilisent tous deux des ports. Vous pouvez avoir une application s'exécutant sur un ordinateur utilisant le port TCP 80 et une autre application utilisant le port UDP 80.
Une adresse d'application est effectivement :
Adresse IP + protocole (TCP ou UDP) + numéro de port.