7Aug

Quelle est la différence entre TCP et UDP?

Vous avez probablement vu des références à TCP et UDP lors de la configuration du transfert de port sur un routeur ou lors de la configuration d'un logiciel de pare-feu. Ces deux protocoles sont utilisés pour différents types de données.

TCP / IP est une suite de protocoles utilisés par les périphériques pour communiquer sur Internet et la plupart des réseaux locaux. Il porte le nom de deux de ses protocoles d'origine: le protocole TCP( Transmission Control Protocol) et le protocole IP( Internet Protocol).TCP fournit aux applications un moyen de délivrer( et de recevoir) un flux de paquets d'informations ordonné et contrôlé par erreur sur le réseau. Le protocole UDP( User Datagram Protocol) est utilisé par les applications pour fournir un flux d'informations plus rapide en supprimant les erreurs. Lors de la configuration de certains matériels ou logiciels réseau, vous devrez peut-être connaître la différence.

Ce qu'ils ont en commun

TCP et UDP sont des protocoles utilisés pour envoyer des bits de données - appelés paquets - sur Internet. Les deux protocoles s'appuient sur le protocole IP.En d'autres termes, que vous envoyiez un paquet via TCP ou UDP, ce paquet est envoyé à une adresse IP.Ces paquets sont traités de la même manière, car ils sont transférés de votre ordinateur vers des routeurs intermédiaires et vers la destination.

TCP et UDP ne sont pas les seuls protocoles qui fonctionnent sur IP.Cependant, ils sont les plus largement utilisés.

Fonctionnement de TCP

TCP est le protocole le plus couramment utilisé sur Internet.

Lorsque vous demandez une page Web dans votre navigateur, votre ordinateur envoie des paquets TCP à l'adresse du serveur Web, lui demandant de vous renvoyer la page Web. Le serveur Web répond en envoyant un flux de paquets TCP, que votre navigateur Web relie ensemble pour former la page Web. Lorsque vous cliquez sur un lien, vous connectez, publiez un commentaire ou faites autre chose, votre navigateur Web envoie des paquets TCP au serveur et le serveur renvoie les paquets TCP.

TCP est tout ce qui concerne la fiabilité - les paquets envoyés avec TCP sont suivis donc aucune donnée n'est perdue ou corrompue en transit. C'est pourquoi les téléchargements de fichiers ne sont pas endommagés même s'il y a des problèmes de réseau. Bien sûr, si le destinataire est complètement déconnecté, votre ordinateur abandonnera et vous verrez un message d'erreur indiquant qu'il ne peut pas communiquer avec l'hôte distant.

TCP réalise cela de deux façons. D'abord, il commande les paquets en les numérotant. Deuxièmement, il vérifie les erreurs en demandant au destinataire d'envoyer une réponse à l'expéditeur en lui disant qu'il a reçu le message. Si l'expéditeur n'obtient pas une réponse correcte, il peut renvoyer les paquets pour s'assurer que le destinataire les reçoit correctement.

Process Explorer et d'autres utilitaires système peuvent montrer le type de connexions qu'un processus fait-ici, nous pouvons voir le navigateur Chrome avec des connexions TCP ouvertes à une variété de serveurs Web.

Fonctionnement de UDP

Le protocole UDP fonctionne de manière similaire à TCP, mais il supprime tous les éléments de vérification d'erreurs. Toutes les communications de va-et-vient introduisent une latence, ralentissant les choses.

Lorsqu'une application utilise UDP, les paquets sont simplement envoyés au destinataire. L'expéditeur n'attend pas pour s'assurer que le destinataire a reçu le paquet. Il continue simplement d'envoyer les paquets suivants. Si le destinataire manque quelques paquets UDP ici et là, ils sont juste perdus - l'expéditeur ne les renverra pas. Perdre tous ces frais généraux signifie que les appareils peuvent communiquer plus rapidement.

UDP est utilisé lorsque la vitesse est souhaitable et la correction d'erreur n'est pas nécessaire. Par exemple, UDP est fréquemment utilisé pour les diffusions en direct et les jeux en ligne.

Par exemple, supposons que vous regardiez un flux vidéo en direct, qui est souvent diffusé en utilisant UDP au lieu de TCP.Le serveur envoie juste un flux constant de paquets UDP aux ordinateurs qui regardent. Si vous perdez votre connexion pendant quelques secondes, la vidéo risque de geler ou d'être éreintée pendant un moment, puis de passer au morceau actuel de la diffusion. Si vous constatez une perte de paquets mineure, la vidéo ou l'audio risque d'être déformé pendant un certain temps alors que la vidéo continue de jouer sans les données manquantes.

Cela fonctionne de la même manière dans les jeux en ligne. Si vous manquez certains paquets UDP, les personnages joueurs peuvent apparaître se téléporter sur la carte lorsque vous recevez les paquets UDP les plus récents. Il ne sert à rien de demander les anciens paquets si vous les avez manqués, car le jeu continue sans vous. Tout ce qui compte est ce qui se passe en ce moment sur le serveur de jeu - pas ce qui s'est passé il y a quelques secondes. La correction d'erreurs de Ditching TCP permet d'accélérer la connexion au jeu et de réduire la latence.

Alors quoi?

Une application utilise TCP ou UDP est à la hauteur de son développeur, et le choix dépend de ce dont une application a besoin. La plupart des applications ont besoin de la correction d'erreurs et de la robustesse du protocole TCP, mais certaines applications ont besoin de la vitesse et de la réduction des frais généraux d'UDP.Si vous lancez un outil d'analyse de réseau comme Wireshark, vous pouvez voir les différents types de paquets qui vont et viennent.

Sauf si vous êtes un administrateur réseau ou un développeur de logiciels, cela ne devrait pas vous affecter trop. Si vous configurez votre routeur ou votre pare-feu et que vous n'êtes pas sûr qu'une application utilise TCP ou UDP, vous pouvez généralement sélectionner l'option "Les deux" pour que votre routeur ou pare-feu applique la même règle au trafic TCP et UDP.