Protocole de datagramme utilisateur (UDP) est un protocole de couche transport. UDP fait partie de la suite de protocoles Internet, appelée suite UDP/IP. Contrairement à TCP, c'est un protocole peu fiable et sans connexion. Il n’est donc pas nécessaire d’établir une connexion avant le transfert de données. L'UDP permet d'établir des connexions à faible latence et tolérant les pertes sur le réseau. L'UDP permet la communication de processus à processus.
Qu’est-ce que le protocole de datagramme utilisateur ?
Bien que le protocole TCP (Transmission Control Protocol) soit le protocole de couche transport dominant utilisé avec la plupart des services Internet ; offre une livraison garantie, une fiabilité et bien plus encore, mais tous ces services nous coûtent des frais généraux et une latence supplémentaires. Ici, UDP entre en scène. Pour les services en temps réel comme les jeux sur ordinateur, la communication vocale ou vidéo et les conférences en direct ; nous avons besoin d'UDP. Puisque des performances élevées sont nécessaires, UDP permet d'abandonner les paquets au lieu de traiter les paquets retardés. Il n'y a pas de vérification des erreurs dans UDP, ce qui permet également d'économiser de la bande passante.

En-tête UDP
L'en-tête UDP est un 8 octets en-tête fixe et simple, tandis que pour TCP, il peut varier de 20 octets à 60 octets. Les 8 premiers octets contiennent toutes les informations d'en-tête nécessaires et la partie restante est constituée de données. Les champs de numéro de port UDP ont chacun une longueur de 16 bits, par conséquent la plage des numéros de port est définie de 0 à 65 535 ; le numéro de port 0 est réservé. Les numéros de port aident à distinguer les différentes demandes ou processus des utilisateurs.

En-tête UDP
- Port source : Le port source est un champ de 2 octets utilisé pour identifier le numéro de port de la source.
- Le port de destination: Il s'agit d'un champ de 2 octets de long, utilisé pour identifier le port du paquet destiné.
- Longueur: La longueur est la longueur de l'UDP incluant l'en-tête et les données. C'est un champ de 16 bits.
- Somme de contrôle : La somme de contrôle est un champ de 2 octets de long. Il s'agit du complément à un de 16 bits de la somme du complément à un de l'en-tête UDP, du pseudo-en-tête des informations de l'en-tête IP et des données, complétées par zéro octet à la fin (si nécessaire) pour former un multiple de deux. octets.
Remarques - Contrairement à TCP, le calcul de la somme de contrôle n'est pas obligatoire en UDP. Aucun contrôle d’erreur ou contrôle de flux n’est fourni par UDP. Par conséquent, UDP dépend d'IP et d'ICMP pour le rapport d'erreurs. UDP fournit également des numéros de port afin de pouvoir différencier les demandes des utilisateurs.
Applications d'UDP
- Utilisé pour une communication simple demande-réponse lorsque la taille des données est inférieure et qu'il y a donc moins de soucis concernant le contrôle du flux et des erreurs.
- Il s'agit d'un protocole approprié pour la multidiffusion car UDP prend en charge la commutation de paquets.
- UDP est utilisé pour certains protocoles de mise à jour de routage comme RIP (Routing Information Protocol).
- Normalement utilisé pour les applications en temps réel qui ne peuvent pas tolérer des délais inégaux entre les sections d'un message reçu.
- UDP est largement utilisé dans les jeux en ligne, où une faible latence et une communication à haut débit sont essentielles pour une bonne expérience de jeu. Les serveurs de jeux envoient souvent de petits paquets de données fréquents aux clients, et UDP est bien adapté à ce type de communication car il est rapide et léger.
- Les applications multimédias en streaming, telles que l'IPTV, la radio en ligne et la vidéoconférence, utilisent UDP pour transmettre des données audio et vidéo en temps réel. La perte de certains paquets peut être tolérée dans ces applications, car les données circulent en continu et ne nécessitent pas de retransmission.
- Les services VoIP (Voice over Internet Protocol), tels que Skype et WhatsApp, utilisent UDP pour la communication vocale en temps réel. Le retard dans la communication vocale peut être perceptible si les paquets sont retardés en raison du contrôle de la congestion, c'est pourquoi UDP est utilisé pour garantir une transmission de données rapide et efficace.
- DNS (Domain Name System) utilise également UDP pour ses messages de requête/réponse. Les requêtes DNS sont généralement petites et nécessitent un temps de réponse rapide, ce qui fait d'UDP un protocole adapté à cette application.
- DHCP (Dynamic Host Configuration Protocol) utilise UDP pour attribuer dynamiquement des adresses IP aux appareils d'un réseau. Les messages DHCP sont généralement petits et le délai provoqué par la perte ou la retransmission des paquets n'est généralement pas critique pour cette application.
- Les implémentations suivantes utilisent UDP comme protocole de couche de transport :
- NTP (Protocole de temps réseau)
- DNS (Service de noms de domaine)
- BOOTP, DHCP.
- NNP (Protocole d'actualités réseau)
- Protocole de la citation du jour
- TFTP, RTSP, RIP.
- La couche application peut effectuer certaines tâches via UDP-
- Tracer l'itinéraire
- Enregistrer l'itinéraire
- Horodatage
- UDP prend un datagramme de la couche réseau, attache son en-tête et l'envoie à l'utilisateur. Donc ça marche vite.
- En fait, UDP est un protocole nul si vous supprimez le champ de somme de contrôle.
- Réduisez les besoins en ressources informatiques.
- Lorsque vous utilisez la multidiffusion ou la diffusion pour transférer.
- La transmission de paquets en temps réel, principalement dans les applications multimédia.
Avantages d'UDP
- Vitesse: UDP est plus rapide que TCP car il ne nécessite pas l'établissement d'une connexion et la garantie d'une livraison fiable des données.
- Latence plus faible : puisqu'il n'y a pas d'établissement de connexion, la latence est plus faible et le temps de réponse est plus rapide.
- Simplicité: UDP a une conception de protocole plus simple que TCP, ce qui le rend plus facile à mettre en œuvre et à gérer.
- Prise en charge de la diffusion : UDP prend en charge la diffusion vers plusieurs destinataires, ce qui le rend utile pour des applications telles que le streaming vidéo et les jeux en ligne.
- Taille de paquet plus petite : UDP utilise des tailles de paquets plus petites que TCP, ce qui peut réduire la congestion du réseau et améliorer les performances globales du réseau.
- Le protocole UDP (User Datagram Protocol) est plus efficace en termes de latence et de bande passante.
Inconvénients de l'UDP
- Aucune fiabilité : UDP ne garantit pas la livraison des paquets ni l'ordre de livraison, ce qui peut entraîner des données manquantes ou en double.
- Pas de contrôle de congestion : UDP n'a pas de contrôle de congestion, ce qui signifie qu'il peut envoyer des paquets à un débit susceptible de provoquer une congestion du réseau.
- Pas de contrôle de flux : UDP n'a pas de contrôle de flux, ce qui signifie qu'il peut submerger le récepteur de paquets qu'il ne peut pas gérer.
- Vulnérable aux attaques : UDP est vulnérable aux attaques par déni de service, dans lesquelles un attaquant peut inonder un réseau de paquets UDP, submergeant ainsi le réseau et provoquant son blocage.
- Cas d'utilisation limités : UDP ne convient pas aux applications qui nécessitent une transmission fiable des données, telles que les transferts de courrier électronique ou de fichiers, et convient mieux aux applications qui peuvent tolérer une certaine perte de données, telles que le streaming vidéo ou les jeux en ligne.
Pseudo-en-tête UDP
- Le but de l'utilisation d'un pseudo-en-tête est de vérifier que le paquet UDP a atteint sa bonne destination
- La destination correcte consiste en une machine spécifique et un numéro de port de protocole spécifique au sein de cette machine

Pseudo-en-tête UDP
Détails du pseudo-en-tête UDP
- L'en-tête UDP lui-même spécifie uniquement le numéro de port du protocole. Ainsi, pour vérifier la destination, UDP sur la machine émettrice calcule une somme de contrôle qui couvre l'adresse IP de destination ainsi que le paquet UDP.
- À la destination finale, le logiciel UDP vérifie la somme de contrôle à l'aide de l'adresse IP de destination obtenue à partir de l'en-tête du paquet IP qui transportait le message UDP.
- Si la somme de contrôle correspond, alors il doit être vrai que le paquet a atteint l'hôte de destination prévu ainsi que le port de protocole correct au sein de cet hôte.
Interface utilisateur
Une interface utilisateur doit permettre la création de nouveaux ports de réception, des opérations de réception sur les ports de réception qui renvoient les octets de données et une indication du port source et de l'adresse source, ainsi qu'une opération permettant d'envoyer un datagramme, spécifiant les données, la source et l'adresse source. ports de destination et adresse à envoyer.
Interface IP
- Le module UDP doit être capable de déterminer l'adresse Internet source et de destination ainsi que le champ de protocole à partir de l'en-tête Internet.
- Une interface UDP/IP possible renverrait l'intégralité du datagramme Internet, y compris l'intégralité de l'en-tête Internet, en réponse à une opération de réception.
- Une telle interface permettrait également à l'UDP de transmettre un datagramme Internet complet avec en-tête à l'adresse IP à envoyer. l'adresse IP vérifierait la cohérence de certains champs et calculerait la somme de contrôle de l'en-tête Internet.
- L'interface IP permet au module UDP d'interagir avec la couche réseau de la pile de protocoles, qui est responsable du routage et de la livraison des données sur le réseau.
- L'interface IP fournit un mécanisme permettant au module UDP de communiquer avec d'autres hôtes du réseau en fournissant un accès au protocole IP sous-jacent.
- L'interface IP peut être utilisée par le module UDP pour envoyer et recevoir des paquets de données sur le réseau, à l'aide de mécanismes de routage et d'adressage IP.
- L'interface IP fournit un niveau d'abstraction qui permet au module UDP d'interagir avec la couche réseau sans avoir à gérer directement les complexités du routage et de l'adressage IP.
- L'interface IP gère également la fragmentation et le réassemblage des paquets IP, ce qui est important pour les transmissions de données volumineuses pouvant dépasser la taille maximale des paquets autorisée par le réseau.
- L'interface IP peut également fournir des services supplémentaires, tels que la prise en charge des paramètres de qualité de service (QoS) et des mécanismes de sécurité tels qu'IPsec.
- L'interface IP est un composant essentiel de la suite de protocoles Internet, car elle permet la communication entre les hôtes sur Internet et la transmission transparente des paquets de données sur le réseau.
Questions GATE pour la pratique
- GATE CS 2013, question 12
- GATE CS 2012, Question 65
- GATE CS 2007, question 20
- PORTE CS 2005, question 23
- GATE-IT 2008, question 66
- GATE Mock 2015, question 5
Foire aux questions sur UDP – FAQ
1. Nommez les protocoles qui utilisent UDP ?
Les protocoles qui utilisent le modèle UDP sont :
2. Qu'est-ce qui est le plus rapide : TCP ou UDP ?
UDP est plus rapide que TCP.