Quelle est la différence entre TCP et UDP?
Vous avez probablement déjà vu des références à TCP et UDP lors de la configuration du transfert de port sur un routeur ou de la configuration du 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 via Internet et la plupart des réseaux locaux. Il porte le nom de deux de ses protocoles d'origine: le protocole de contrôle de transmission (TCP) et le protocole Internet (IP). TCP fournit aux applications un moyen de fournir (et de recevoir) un flux de paquets d'informations ordonné et vérifié 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 la vérification des erreurs. Lors de la configuration de certains logiciels ou matériels réseau, vous devrez peut-être connaître la différence.
Ce qu'ils ont en commun
Les protocoles TCP et UDP sont tous deux des protocoles utilisés pour envoyer des bits de données, appelés paquets par Internet. Les deux protocoles reposent 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 aux routeurs intermédiaires et à la destination..
TCP et UDP ne sont pas les seuls protocoles fonctionnant sur IP. Cependant, ils sont les plus largement utilisés.
Comment fonctionne TCP
TCP est le protocole le plus 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 assemble pour former la page Web. Lorsque vous cliquez sur un lien, que vous vous connectez, postez un commentaire ou faites autre chose, votre navigateur Web envoie des paquets TCP au serveur et le serveur renvoie des paquets TCP..
TCP concerne uniquement la fiabilité: les paquets envoyés avec TCP sont suivis afin qu'aucune donnée ne soit perdue ou corrompue en transit. C'est pourquoi les téléchargements de fichiers ne sont pas corrompus, même s'il y a des problèmes de réseau. Bien sûr, si le destinataire est complètement hors ligne, votre ordinateur va abandonner et un message d'erreur indiquant qu'il ne peut pas communiquer avec l'hôte distant s'affiche..
TCP y parvient de deux manières. Premièrement, il commande les paquets en les numérotant. Deuxièmement, il vérifie les erreurs en faisant en sorte que le destinataire renvoie une réponse à l'expéditeur indiquant qu'il a reçu le message. Si l'expéditeur ne reçoit 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 indiquer le type de connexions établies par un processus. Nous pouvons voir ici le navigateur Chrome avec des connexions TCP ouvertes vers divers serveurs Web..
Comment fonctionne UDP
Le protocole UDP fonctionne de la même manière que le protocole TCP, mais il supprime tout ce qui concerne la vérification des erreurs. Toutes les communications aller-retour introduisent une latence qui ralentit 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 bien reçu le paquet, il continue simplement d'envoyer les paquets suivants. Si le destinataire manque quelques paquets UDP ici et là, ils sont simplement perdus - l'expéditeur ne les renverra pas. En perdant tout ce temps système, les appareils peuvent communiquer plus rapidement..
UDP est utilisé lorsque la vitesse est souhaitable et que la correction d'erreur n'est pas nécessaire. Par exemple, UDP est fréquemment utilisé pour les émissions 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 simplement un flux constant de paquets UDP aux ordinateurs surveillés. Si vous perdez votre connexion pendant quelques secondes, la vidéo risque de geler ou de devenir instable pendant un moment, puis de passer au bit actuel de la diffusion. Si vous rencontrez une perte de paquet mineure, la vidéo ou l'audio peut être déformé pendant un moment car la vidéo continue à être lue sans les données manquantes..
Cela fonctionne de manière similaire dans les jeux en ligne. Si vous manquez des paquets UDP, les personnages des joueurs peuvent sembler se téléporter sur la carte au fur et à mesure que vous recevez les nouveaux paquets UDP. 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, c’est ce qui se passe actuellement sur le serveur de jeu - et non ce qui s’est passé il ya quelques secondes. La correction d'erreur de Ditching TCP permet d'accélérer la connexion au jeu et de réduire le temps de latence.
Et alors?
Qu'une application utilise TCP ou UDP dépend de son développeur, le choix dépend des besoins de l'application. La plupart des applications ont besoin de la correction d'erreur et de la robustesse de TCP, mais certaines applications ont besoin de la vitesse et de la surcharge du protocole UDP. Si vous lancez un outil d'analyse de réseau tel que 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 logiciel de routeur ou de 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..