TCP et UDP : quelles différences ?
TCP et UDP : quelles différences ?
Lors de la configuration d'un réseau local ou d'un VPN, on demande souvent de choisir entre TCP et UDP. Voici ce qu'il faut savoir sur ces deux protocoles très utilisés pour les connexions IP, et donc sur Intern,et.
Si Internet et les réseaux locaux sont aujourd'hui utilisables par n'importe qui – et c'est tant mieux ! –, il n'en demeure pas moins qu'ils reposent sur des technologies complexes. Et il arrive parfois que lors de la configuration d'un logiciel, on se retrouve confronté à des paramètres un brin obscurs, dont le rôle n'est pas facile à deviner. C'est le cas notamment des protocoles TCP et UDP qui apparaissent dans certaines réglages d'appareils ou d'applications comme des box Internet ou des VPN. Pas simple de choisir quand on ne sait pas de quoi il s'agit… Sans entrer dans des considérations trop techniques, il est bon de savoir à quoi correspondent ces deux acronymes et, surtout, de connaître leurs avantages et leurs inconvénients respectifs quand il faut effectuer un choix.
À quoi servent les protocoles TCP/IP et UDP/IP ?
TCP et UDP – de leurs vrais noms, TCP/IP et UDP/IP – sont des protocoles de communication réseau. Dit simplement, ce sont deux "façons" de communiquer en transférant des flux de données numériques. Car, sur un réseau informatique, comme sur une route, il y a un "code" qui repose sur des règles pour que tout le monde se comprenne bien tout en évitant que les données circulent de manière anarchique.
TCP et UDP sont ainsi deux techniques utilisées pour le transport de données en IP – Internet Protocol, le protocole qui régit les tous les échanges sur Internet. Ces deux protocoles permettent d'envoyer des données d'une machine source vers une machine destinataire par paquets – c'est le principe même du protocole IP, où tout circule sous forme de paquets de données. Tous deux utilisent évidemment des adresses IP pour identifier l'expéditeur et le destinataire, mais également des numéros de ports (de 1 à 65535) pour identifier les applications qui communiquent. De fait, TCP et UDP servent exactement à la même chose – le transport de paquets –, mais ils le font de façon assez différente.
Quelles sont les particularités du protocole TCP ?
TCP/IP est un protocole bilatéral – on parle aussi de "mode connecté" – qui repose sur des échanges entre la machine source et la machine destinataire. L'acronyme TCP signifie Transmission Control Protocol, soit protocole de contrôle de transmission en français. Avec TCP, les deux machines communiquent en permanence. Ainsi, la machine source établit d'abord une connexion avec la machine destinataire : une forme de "contact" de politesse pour se présenter et la prévenir qu'elle va lui envoyer des données. Une procédure classique que l'on appelle handshaking (poignée de mains). Une fois la connexion établie, la source envoie des paquets numérotés dans un certain ordre au destinataire qui accuse réception à chaque fois après avoir vérifié que les données sont intactes grâce à un mécanisme de contrôle. Si ce n'est pas le cas, la source renvoie aussitôt le paquet manquant ou corrompu.Pour faire simple, TCP est ainsi considéré comme un protocole axé sur la qualité de transmission. Qualité qui se paye en vitesse, car, du fait des échanges permanents entre la source et le destinataire, la transmission des données prend du temps.
Quelles sont les particularités du protocole UDP ?
UDP signifie User Datagram Protocol, protocole de datagramme utilisateur, en français, ce qui n'est guère parlant. Contrairement à TCP/IP, UDP/IP est un protocole unilatéral – on parle aussi de mode de transmission "sans connexion" ou "non connecté" – dans lequel il n'y a pas d'échange permanent, pas même de "politesse". En UDP, la machine source envoie des paquets non numérotés à la machine de destination, mais sans la prévenir. Il n'y a pas de conversation. Et il n'y a pas de renvoi de données si un paquet est perdu ou corrompu en chemin. Il y a bien un contrôle d'erreur à l'arrivée, mais le destinataire doit faire avec ce qu'il reçoit, sans accuser (bonne) réception et sans pouvoir demander un renvoi. De ce fait, UDP est plus "rapide" et plus "léger" que TCP. Ce protocole est surtout utilisé dans les cas où la pmerte d'un paquet n'est pas critique et quand la vitesse et le temps réel priment – tels que les flux en streaming vidéo par exemple.
Comment choisir entre TCP et UDP ?
Vous l'aurez compris, TCP et UDP se distinguent sur deux plans : la qualité et la vitesse. Du fait de ses échanges permanents, TCP est bien adapté aux communications nécessitant une transmission de données parfaite, sans perte. Au prix d'une lenteur toute relative. C'est un protocole qualifié de "robuste" et utilisé par la plupart des applications (navigateur Web, transfert de fichiers, messagerie, etc.). Plus "rustique", UDP privilégie la vitesse à la fiabilité. Et comme il n'exige pas de connexion persistante, il libère des ressources système de chaque côté, ce qui allège les applications. Il est surtout employé dans les applications nécessitant du temps réel, comme le jeu vidéo ou les conversations audio-vidéo.
En résumé, quand vous devez choisir entre les deux protocoles lors d'une configuration, prenez TCP pour la fiabilité et UDP pour la rapidité. Et si vous avez des doutes, faites des tests comparatifs pour voir ce qui fonctionne le mieux en pratique, le choix étant toujours réversible.