Protocoles de transfert de données TCP et UDP. Différence entre TCP et UDP

Les protocoles de couche transport, juste après IP dans la hiérarchie, sont utilisés pour transférer des données entre les processus d'application exécutés sur les nœuds du réseau. Un paquet de données reçu d'un ordinateur à un autre via Internet doit être transféré à un processus gestionnaire, et précisément dans un but précis. La couche transport en assume la responsabilité. Il existe deux protocoles principaux à ce niveau : TCP et UDP.

Définition

TCP— protocole de transport pour le transfert de données dans les réseaux TCP/IP, qui établit au préalable une connexion au réseau.

UDP- un protocole de transport qui transmet des messages datagrammes sans avoir besoin d'établir une connexion sur un réseau IP.

Comparaison

La différence entre les protocoles TCP et UDP réside dans ce que l'on appelle la « garantie de livraison ». TCP nécessite une réponse du client à qui le paquet de données a été livré, une confirmation de livraison, et pour cela il a besoin d'une connexion préétablie. Aussi Protocole TCP est considéré comme fiable, tandis qu'UDP a même reçu le nom de « protocole de datagramme peu fiable ». TCP élimine la perte de données, la duplication et le mélange de paquets, ainsi que les retards. UDP permet tout cela et ne nécessite aucune connexion pour fonctionner. Les processus qui reçoivent des données via UDP doivent se contenter de ce qu'ils reçoivent, même avec des pertes. TCP contrôle l'encombrement de la connexion, UDP ne contrôle rien d'autre que l'intégrité des datagrammes reçus.

D'un autre côté, en raison de cette absence de discernement et de ce manque de contrôle, UDP délivre des paquets de données (datagrammes) beaucoup plus rapidement, donc pour les applications conçues pour une bande passante élevée et échange rapide,UDP peut être considéré comme le protocole optimal. Il s'agit notamment des jeux en réseau et par navigateur, ainsi que des programmes de visionnage de vidéos en streaming et des applications de communication vidéo (ou vocale) : la perte d'un forfait, complet ou partiel, ne change rien, il n'est pas nécessaire de répéter la demande, mais le le téléchargement est beaucoup plus rapide. Le protocole TCP, étant plus fiable, est utilisé avec succès même dans programmes de messagerie, vous permettant de contrôler non seulement le trafic, mais également la longueur du message et la vitesse d'échange du trafic.

Site Web des conclusions

  1. TCP garantit la livraison des paquets de données sous une forme, un ordre et sans perte inchangés, UDP ne garantit rien.
  2. TCP nécessite à l'avance connexion établie, la connexion UDP n'est pas requise.
  3. UDP offre des taux de transfert de données plus élevés.
  4. TCP est plus fiable et contrôle le processus d'échange de données.
  5. UDP est préféré pour les programmes qui lisent vidéo en streaming, visiophonie et téléphonie, jeux en réseau.

Tous les échanges processus réseau les événements survenant sur les ordinateurs sont décrits par les normes généralement acceptées Système OSI. Modèle OSI comprend sept niveaux d'interaction de processus :

  1. Physique. Support de propagation du signal (signaux par câble ou radio);
  2. Canal. Indique un format de données dans lequel les informations sont converties en trames et régies par le protocole Ethernet commun ;
  3. Réseau. Définit les méthodes de routage ;
  4. Transport. Transmet les données via les protocoles TCP, UDP, etc. ;
  5. Session. Fournit un support lors d’une séance de communication;
  6. Exécutif. Prépare les données pour une transmission ultérieure sur le réseau (conversion, décompression, décryptage) ;
  7. Appliqué. Contrôle l'interaction de divers applications personnalisées avec les services réseau.

Pour transférer des données entre deux appareils sur des réseaux Internet différents, la suite de protocoles TCP/IP est utilisée. Le transport des données dans la pile TCP/IP peut être effectué par différents protocoles, notamment TCP et UDP.

Caractéristiques TCP

Le protocole TCP est un flux d'informations sous la forme canal virtuel entre nœuds avec une connexion préétablie obligatoire. Utilisé pour le transfert fiable de grandes quantités d’informations entre les périphériques réseau.

Pour garantir une connexion fiable, TCP dispose d'une procédure en trois étapes pour démarrer une session de communication. Dans ce cas, il est demandé au serveur et au client la valeur du port et la valeur ISN. Le paquet TCP doit contenir une somme de contrôle qui détermine l'exactitude du transfert d'informations.

Caractéristique UDP

Protocole UDP représente le flux d'informations entre les nœuds sous forme de datagrammes (paquets de données sans vérification). Dans ce cas, il n'est pas nécessaire de garantir la réception, il n'est pas nécessaire de supprimer les colis en double et de contrôler leur localisation.

La transmission de données via UDP est généralement considérée comme peu fiable, mais elle s'est avérée extrêmement importante et indispensable pour les applications en temps réel, les jeux en ligne, l'IPTV, la VOIP. La capacité d'UDP à éviter la vérification initiale de la connexion, à maintenir l'ordre et l'intégrité permet de supprimer les datagrammes perdus, ce qui entraîne un transfert d'informations plus rapide.

Différences fondamentales entre TCP et UDP

Les fonctions UDP TCP
Procédure de configuration de la connexion Non requis Procédure obligatoire en trois étapes pour démarrer une session de communication
Échange de trafic garanti Des paquets peuvent être perdus L'accusé de réception et la retransmission éliminent la perte de données
Maintenir l'ordre de livraison des messages Datagrammes non ordonnés Ordre strict des paquets transférés
Contrôle et gestion des flux La transmission des paquets de données n'est pas contrôlée Surveille et gère le flux de données
Avertit des surcharges Non protégé contre les surcharges Avertit des surcharges
Maintient les limites des messages transmis Préserve toujours les limites des datagrammes transmis Ne préserve pas les limites des messages transmis, mais garantit leur intégrité
Segmentation et assemblage de packages d'informations Non Prise en charge
Interactions avec des connexions semi-ouvertes La resynchronisation ne se produit pas La connexion s'effectue par resynchronisation
Vérification de l'accessibilité Non Oui

8 réponses

TCP est un flux orienté connexion sur un réseau IP. Il garantit que tous les paquets envoyés atteignent la destination dans le bon ordre. Cela implique l'utilisation de paquets d'accusé de réception renvoyés à l'expéditeur et une retransmission automatique, entraînant des retards supplémentaires et globalement moins de retards. transfert efficace qu'UDP.

UDP est un protocole sans connexion. La communication est orientée datagramme. L'intégrité est garantie sur un seul datagramme. Les datagrammes atteignent leur destination et peuvent échouer ou ne pas arriver du tout. Il est plus efficace que TCP car il n'utilise pas ACK. Il est généralement utilisé pour les communications en temps réel où un petit pourcentage de perte de paquets est préférable à la surcharge d'une connexion TCP.

Dans certaines situations, UDP est utilisé car il permet la transmission transmission de paquets. Ceci est parfois fondamental dans des cas comme le protocole DHCP, puisque la machine client n'a pas encore reçu d'adresse IP (c'est un protocole t26) et il n'y aura aucun moyen d'établir un flux TCP sans adresse IP.

UDP (User Datagram Protocol) est un protocole courant et largement utilisé sur Internet. Cependant, UDP n'est jamais utilisé pour envoyer des données sensibles telles que des pages Web, des informations de bases de données, etc. ; UDP est couramment utilisé pour le streaming audio et vidéo. Médias en streaming tels que des fichiers audio Windows Média(.WMA), Real Player (.RM) et d'autres utilisent UDP car il offre de la vitesse ! La raison pour laquelle UDP est plus rapide que TCP est qu’il n’y a pas de contrôle de flux ni de correction d’erreurs. Les données envoyées sur Internet sont affectées par des collisions et des erreurs seront présentes. N'oubliez pas qu'UDP n'est qu'une question de vitesse. C’est la principale raison pour laquelle le streaming multimédia n’est pas de bonne qualité.

1) TCP est orienté connexion et fiable, tandis que UDP est moins connecté et peu fiable.

2) TCP nécessite traitement supplémentaire au niveau de l'interface réseau, où, comme dans UDP, il n'y en a pas.

3) TCP utilise une poignée de main à trois voies, un contrôle de congestion, un contrôle de flux et d'autres mécanismes pour garantir une transmission fiable.

4) UDP est principalement utilisé dans les cas où le retard des paquets est plus grave que la perte de paquets.

Pensez à TCP comme à UPS/FedEx planifiant des paquets entre deux emplacements, tandis qu'UDP est l'équivalent de l'envoi d'une carte postale à une boîte aux lettres.

UPS/FedEx fera tout son possible pour s'assurer que le colis que vous envoyez arrive à destination et soit reçu à temps. Avec une carte postale, vous avez de la chance si elle arrive, et elle peut échouer ou être en retard (combien de fois avez-vous reçu une carte postale de quelqu'un APRÈS son retour de vacances ?)

TCP est aussi proche d'un protocole de livraison garanti que ce que vous pouvez obtenir avec UDP - c'est simplement le "meilleur effort".

Raisons pour lesquelles UDP est utilisé pour DNS et DHCP :

DNS - TCP nécessite plus de ressources du serveur (qui écoute les connexions) que du client. Plus précisément, lorsqu'une connexion TCP est fermée, le serveur doit mémoriser les données de connexion (les conserver en mémoire) pendant deux minutes pendant un état appelé TIME_WAIT_2. Il s'agit d'une fonctionnalité qui protège contre les paquets dupliqués par erreur d'une connexion précédente qui sont interprétés comme faisant partie de la connexion actuelle. La maintenance de TIME_WAIT_2 utilise la mémoire du noyau sur le serveur. Les requêtes DNS sont petites et proviennent souvent de clients différents. Ce modèle d'utilisation exerce plus de pression sur le serveur que sur les clients. On pensait que l'utilisation d'UDP, qui est sans connexion et sans état sur le client ou le serveur, améliorerait ce problème.

DHCP - DHCP est une extension de BOOTP. BOOTP est un protocole qui ordinateurs clients utilisé pour obtenir des informations de configuration du serveur pendant le démarrage du client. Pour trouver un serveur, une diffusion est envoyée avec une requête aux serveurs BOOTP (ou DHCP). La diffusion ne peut être envoyée que via un protocole sans connexion tel que UDP. Par conséquent, BOOTP nécessitait qu'au moins un paquet UDP soit diffusé vers le serveur. De plus, étant donné que BOOTP s'exécute pendant que le client... démarre, et qu'il s'agit d'une période pendant laquelle la pile TCP/IP du client n'est pas entièrement chargée et en cours d'exécution, UDP peut être le seul protocole que le client est prêt à gérer pendant cette période. ce temps. Enfin, certains clients DHCP/BOOTP n'ont qu'UDP intégré. Par exemple, certains thermostats IP implémentent uniquement UDP. La raison en est qu'ils sont construits avec des processeurs si petits et peu de mémoire qu'ils ne peuvent pas utiliser TCP, mais ils ont quand même besoin d'obtenir une adresse IP lors du démarrage.

Comme mentionné, UDP est également utile pour le streaming multimédia, notamment audio. Les conversations sonnent mieux en fonction du décalage du réseau si vous supprimez simplement les paquets retardés. Vous pouvez le faire avec UDP, mais avec TCP, tout ce que vous obtenez pendant le délai est une pause suivie de l'audio, qui sera toujours retardé aussi longtemps qu'il a déjà été mis en pause. Pour double face conversations téléphoniques C'est inacceptable.

L'une des différences est la réduction

UDP. Envoyez un message et ne regardez pas en arrière s'il atteint l'objectif, protocole sans connexion
TCP: envoyez un message et assurez-vous d'atteindre la destination, protocole orienté connexion

Bonjour à tous, aujourd'hui je vais vous expliquer en quoi le protocole TCP diffère d'UDP. Les protocoles de couche transport, juste après IP dans la hiérarchie, sont utilisés pour transférer des données entre les processus d'application exécutés sur les nœuds du réseau. Un paquet de données reçu d'un ordinateur à un autre via Internet doit être transféré à un processus gestionnaire, et précisément dans un but précis. La couche transport en assume la responsabilité. À ce niveau, il existe deux protocoles principaux : TCP et UDP.

Que signifient TCP et UDP ?

TCP– protocole de transport pour le transfert de données dans les réseaux TCP/IP, qui établit au préalable une connexion au réseau.

UDP– un protocole de transport qui transmet des messages datagrammes sans qu'il soit nécessaire d'établir une connexion sur un réseau IP.

Permettez-moi de vous rappeler que les deux protocoles fonctionnent au niveau de la couche transport du modèle OSI ou TCP/IP, et il est très important de comprendre en quoi ils diffèrent.

Différence entre les protocoles TCP et UDP

La différence entre les protocoles TCP et UDP réside dans ce que l'on appelle la « garantie de livraison ». TCP nécessite une réponse du client à qui le paquet de données a été livré, une confirmation de livraison, et pour cela il a besoin d'une connexion préétablie. En outre, le protocole TCP est considéré comme fiable, tandis qu'UDP a même reçu le nom de « protocole de datagramme peu fiable ». TCP élimine la perte de données, la duplication et le mélange de paquets, ainsi que les retards. UDP permet tout cela et ne nécessite aucune connexion pour fonctionner. Les processus qui reçoivent des données via UDP doivent se contenter de ce qu'ils reçoivent, même avec des pertes. TCP contrôle l'encombrement de la connexion, UDP ne contrôle rien d'autre que l'intégrité des datagrammes reçus.

D'un autre côté, en raison de cette non-sélectivité et de ce manque de contrôle, UDP délivre les paquets de données (datagrammes) beaucoup plus rapidement. Par conséquent, pour les applications conçues pour un débit élevé et un échange rapide, UDP peut être considéré comme le protocole optimal. Il s'agit notamment des jeux en réseau et par navigateur, ainsi que des programmes de visionnage de vidéos en streaming et des applications de communication vidéo (ou vocale) : la perte d'un forfait, complet ou partiel, ne change rien, il n'est pas nécessaire de répéter la demande, mais le le téléchargement est beaucoup plus rapide. Le protocole TCP, étant plus fiable, est utilisé avec succès même dans les programmes de messagerie, vous permettant de contrôler non seulement le trafic, mais également la longueur du message et la vitesse d'échange du trafic.

Examinons les principales différences entre TCP et UDP.

  1. TCP garantit la livraison des paquets de données sous une forme, un ordre et sans perte inchangés, UDP ne garantit rien.
  2. TCP numérote les paquets au fur et à mesure de leur transmission, mais pas UDP.
  3. TCP fonctionne en mode full duplex, dans un seul paquet, vous pouvez envoyer des informations et confirmer la réception du paquet précédent.
  4. TCP nécessite une connexion préétablie, UDP ne nécessite pas de connexion, c'est juste un flux de données.
  5. UDP offre des taux de transfert de données plus élevés.
  6. TCP est plus fiable et contrôle le processus d'échange de données.
  7. UDP est préférable pour les programmes qui lisent des vidéos en streaming, de la visiophonie et de la téléphonie, ainsi que des jeux en réseau.
  8. UPD ne contient pas de fonctions de récupération de données

Des exemples d'applications UDP incluent, par exemple, le transfert de zones DNS, Active Directory, il n'y a aucune exigence de fiabilité. Très souvent, ils aiment poser de telles questions lors des entretiens, il est donc très important de connaître les différences entre TCP et UDP.

En-têtes TCP et UDP

Regardons à quoi ressemblent les en-têtes des deux protocoles de transport, car ici les différences sont cardinales.

En-tête UDP

  • Port source 16 bits > La spécification du port source pour UDP est facultative. Si ce champ est utilisé, le destinataire peut envoyer une réponse à ce port.
  • Port de destination 16 bits > Numéro de port de destination
  • Longueur UDP 16 bits > Longueur du message, y compris l'en-tête et les données.
  • Somme de contrôle 16 bits > Somme de contrôle d'en-tête et de données pour vérification

En-tête TCP

  • Port source 16 bits > Numéro de port source
  • Port de destination 16 bits > Numéro de port de destination
  • Numéro de séquence 32 bits > Le numéro de séquence est généré par la source et utilisé par la destination pour réorganiser les paquets afin de créer le message d'origine et d'envoyer un accusé de réception à la source.
  • Numéro d'accusé de réception 32 bits > Si le bit ACK du champ Contrôle est activé, ce champ contient le prochain numéro de séquence attendu.
  • Longueur d'en-tête de 4 bits > Informations sur le début du paquet de données.
  • réserver > Réservé pour une utilisation future.
  • Somme de contrôle 16 bits > Somme de contrôle d'en-tête et de données ; il détermine si le paquet a été corrompu.
  • Indicateur d'urgence 16 bits > Ce champ fournit au périphérique cible des informations sur l'urgence des données.
  • Options > Valeurs facultatives qui peuvent être spécifiées selon les besoins.

La taille de la fenêtre permet d'économiser du trafic, considérons que lorsque sa valeur est 1, alors pour chaque réponse envoyée, l'expéditeur attend une confirmation, ce qui n'est pas tout à fait rationnel.

Avec une taille de fenêtre de 3, l'expéditeur envoie déjà 3 trames, et attend de 4, ce qui implique qu'il a les trois trames, +1.

J'espère que vous avez maintenant une idée des différences entre les protocoles TCP et UDP.

Protocole UDP

Protocole de datagramme utilisateur (UDP) est un protocole simple, sans connexion, orienté datagramme, qui fournit un service de transport rapide, mais pas nécessairement fiable. Il prend en charge les interactions un-à-plusieurs et est donc souvent utilisé pour la transmission de datagrammes en diffusion et en multidiffusion.

Le protocole Internet (IP) est le principal protocole d'Internet. Transmission Control Protocol (TCP) et UDP sont des protocoles de couche de transport construits sur un protocole sous-jacent.

TCP/IP est un ensemble de protocoles, également appelé Internet Protocol Suite, composé de quatre couches. N'oubliez pas que TCP/IP n'est pas simplement un protocole, mais une famille ou un ensemble de protocoles constitué d'autres protocoles de niveau inférieur tels qu'IP, TCP et UDP. UDP est situé au niveau de la couche de transport au-dessus d'IP (protocole couche réseau). La couche transport assure la communication entre les réseaux via des passerelles. Il utilise des adresses IP pour envoyer des paquets de données sur Internet ou un autre réseau à l'aide de divers pilotes de périphérique.

Avant de commencer à comprendre le fonctionnement d'UDP, examinons quelques termes de base que vous devez bien connaître. Ci-dessous, nous définirons brièvement les principaux termes associés à UDP :

Paquets

Dans les communications de données, un paquet est une séquence de chiffres binaires représentant des données et des signaux de contrôle transmis et commutés via l'hôte. À l'intérieur de l'emballage, ces informations se trouvent selon un format spécial.

Datagrammes

Un datagramme est un paquet de données unique et indépendant qui transporte suffisamment d'informations pour voyager de la source à la destination. Aucun trafic supplémentaire n'est donc requis entre la source, la destination et le réseau de transport.

MTU (unité de transmission maximale)

MTU caractérise couche de liaison et correspond au nombre maximum d'octets pouvant être transmis dans un paquet. En d’autres termes, la MTU est le plus gros paquet qu’un environnement réseau donné peut transporter. Par exemple, Ethernet a une MTU fixe de 1 500 octets. Dans UDP, si la taille du datagramme est supérieure à la MTU, le protocole IP effectue la fragmentation en divisant le datagramme en morceaux plus petits (fragments) afin que chaque fragment soit inférieur à la MTU.

Ports

Pour faire correspondre les données entrantes à un processus spécifique exécuté sur un ordinateur, UDP utilise des ports. UDP transmet le paquet à l'emplacement approprié en utilisant le numéro de port spécifié dans l'en-tête UDP du datagramme. Les ports sont représentés par des nombres de 16 bits et prennent donc des valeurs allant de 0 à 65 535. Les ports, également appelés points de terminaison de connexion logique, sont divisés en trois catégories :

    Ports bien connus - de 0 à 1023

    Ports enregistrés - de 1024 à 49151

    Ports dynamiques/privés - 49152 à 65535

Notez que les ports UDP peuvent recevoir plusieurs messages à la fois. Dans certains cas, les services TCP et UDP peuvent utiliser les mêmes numéros de port, tels que 7 (Echo) ou 23 (Telnet).

UDP utilise les ports connus suivants :

La liste des ports UDP et TCP est gérée par l'IANA (Internet Assigned Numbers Authority).

Adresses IP

Un datagramme IP se compose d'adresses IP source et de destination de 32 bits. L'adresse IP de destination spécifie le point de terminaison du datagramme UDP et l'adresse IP source est utilisée pour obtenir des informations sur la personne qui a envoyé le message. À destination, les paquets sont filtrés et ceux dont les adresses source ne sont pas incluses dans l'ensemble d'adresses valide sont rejetés sans notification à l'expéditeur.

Une adresse IP de monodiffusion identifie de manière unique un hôte sur un réseau, tandis qu'une adresse IP de multidiffusion identifie un groupe spécifique d'adresses sur un réseau. Les adresses IP de diffusion sont reçues et traitées par tous les hôtes réseau local ou un sous-réseau spécifique.

Durée de vie

La valeur de durée de vie, ou TTL (time-to-live), vous permet de définir une limite supérieure sur le nombre de routeurs par lesquels un datagramme peut passer. La valeur TTL empêche les paquets d'atteindre boucles sans fin. Il est initialisé par l'expéditeur et décrémenté de un par chaque routeur qui traite le datagramme. Lorsque la valeur TTL devient nulle, le datagramme est supprimé.

Envoi de groupe

La multidiffusion est une méthode ouverte et basée sur des normes permettant de distribuer simultanément des informations identiques à plusieurs utilisateurs. Le multicast est la fonctionnalité principale du protocole UDP ; il n'est pas possible avec le protocole TCP. La multidiffusion permet une interaction un-à-plusieurs, rendant par exemple possible des utilisations telles que l'envoi de nouvelles et de courriers à plusieurs destinataires, la radio Internet ou des programmes de démonstration en temps réel. La multidiffusion ne charge pas autant le réseau que la transmission diffusion, puisque les données sont envoyées à plusieurs utilisateurs à la fois :

Comment fonctionne UDP

Lorsqu'une application basée sur UDP envoie des données à un autre hôte du réseau, UDP y ajoute un en-tête de huit bits contenant les numéros de port de destination et source, la longueur totale des données et une somme de contrôle. IP ajoute son en-tête au-dessus du datagramme UDP, formant un datagramme IP :

La figure précédente indique que la longueur totale de l'en-tête UDP est de huit octets. En théorie taille maximum Un datagramme IP fait 65 535 octets. Avec 20 octets d'en-tête IP et 8 octets d'en-tête UDP, la longueur des données utilisateur peut atteindre 65 507 octets. Cependant, la plupart des programmes fonctionnent avec des données taille plus petite. Ainsi, pour la plupart des applications, la longueur par défaut est d'environ 8 192 octets, puisqu'il s'agit de la quantité de données lues et écrites par le réseau. système de fichiers(NFS). Vous pouvez définir les tailles des tampons d'entrée et de sortie.

La somme de contrôle est nécessaire pour vérifier si les données ont été livrées correctement à leur destination ou si elles ont été corrompues. Il couvre à la fois l'en-tête UDP et les données. Un octet de remplissage est utilisé si le nombre total d'octets dans le datagramme est impair. Si la somme de contrôle reçue est nulle, le destinataire enregistre une erreur de somme de contrôle et rejette le datagramme. Bien qu’une somme de contrôle soit une fonctionnalité facultative, il est toujours recommandé de l’inclure.

À l'étape suivante, la couche IP ajoute 20 octets d'en-tête qui incluent la durée de vie, les adresses IP source et de destination, ainsi que d'autres informations. Cette action est appelée encapsulation IP.

Comme mentionné précédemment, la taille maximale des paquets est de 65 507 octets. Si un paquet dépasse la taille MTU par défaut, la couche IP divise le paquet en segments. Ces segments sont appelés fragments, et le processus de division des données en segments est fragmentation. L'en-tête IP contient toutes les informations sur le fragment.

Lorsque l'application émettrice « lance » un datagramme sur le réseau, il est acheminé vers l'adresse IP de destination spécifiée dans l'en-tête IP. Lors du passage par un routeur, la valeur de durée de vie (TTL) dans l'en-tête IP est réduite de un.

Lorsqu'un datagramme arrive à une destination et un port donnés, la couche IP vérifie son en-tête pour voir si le datagramme est fragmenté. Si tel est le cas, le datagramme est assemblé selon les informations contenues dans l'en-tête. Enfin couche d'application récupère les données filtrées en supprimant l’en-tête.

Inconvénients de l'UDP

Par rapport à TCP, UDP présente les inconvénients suivants :

    Aucun signal d'accusé de réception. Avant d'envoyer un paquet UDP, le côté émetteur n'échange pas de signaux de prise de contact avec le côté récepteur. Par conséquent, l’expéditeur n’a aucun moyen de savoir si le datagramme a atteint le système de destination. Par conséquent, UDP ne peut pas garantir que les données seront effectivement livrées à destination (par exemple, si le système ou le réseau final est en panne).

    En revanche, TCP est orienté connexion et permet la communication entre les hôtes connectés au réseau à l'aide de paquets. TCP utilise des signaux d'établissement de liaison pour vérifier que les données ont été transportées avec succès.

    Utiliser des sessions. La nature orientée connexion de TCP est prise en charge par les sessions entre hôtes. TCP utilise un identifiant de session pour garder une trace des connexions entre deux hôtes. UDP ne prend pas en charge les sessions en raison de sa nature sans connexion.

    Fiabilité. UDP ne garantit pas qu'une seule copie des données sera remise au destinataire. Envoyer système final grande quantité de données, UDP les divise en petites parties. UDP ne garantit pas que ces pièces seront livrées à leur destination dans le même ordre dans lequel elles ont été créées à la source. En revanche, TCP utilise des numéros de séquence ainsi que des numéros de port et envoie régulièrement des accusés de réception pour garantir une livraison ordonnée des données.

    Sécurité. TCP est plus sécurisé qu'UDP. Dans de nombreuses organisations, les pare-feu et les routeurs ne permettent pas le passage des paquets UDP. En effet, les pirates peuvent tirer parti des ports UDP sans établir de connexions explicites.

    Contrôle de flux. UDP n'a aucun contrôle de flux et, par conséquent, une application UDP mal conçue peut capturer une partie importante des flux. bande passante réseaux.

Avantages de l'UDP

Par rapport à TCP, UDP présente les avantages suivants :

    Aucune connexion établie. UDP est un protocole sans connexion, il élimine donc la surcharge associée à l'établissement des connexions. Étant donné qu'UDP n'utilise pas de prise de contact, les délais de connexion sont également évités. C'est pourquoi le DNS privilégie UDP par rapport à TCP : le DNS serait beaucoup plus lent s'il s'exécutait sur TCP.

    Vitesse. UDP est plus rapide que TCP. Pour cette raison, de nombreuses applications préfèrent UDP à TCP. Les mêmes fonctionnalités qui rendent TCP plus robuste (telles que les signaux de prise de contact) le ralentissent également.

    Diversité topologique. UDP prend en charge les communications un-à-un et un-à-plusieurs, tandis que TCP ne prend en charge que les communications un-à-un.

    Frais généraux. Travailler avec TCP signifie une surcharge accrue, la surcharge imposée par UDP est nettement inférieure. TCP utilise beaucoup plus de ressources que UDP système opérateur, et par conséquent, dans les environnements où les serveurs servent plusieurs clients simultanément, UDP est largement utilisé.

    Taille de l'en-tête. Pour chaque paquet, l'en-tête UDP ne fait que huit octets, tandis que TCP a des en-têtes de 20 octets, et UDP consomme donc moins de bande passante réseau.