« TCP & UDP » : différence entre les versions

De Justine's wiki
Aller à la navigation Aller à la recherche
(Page créée avec « = UDP : User Datagram Protocol = Défini dans la RFC 768 le 28/8/1980, qui n'as pas été modifiée depuis, contrairement à tous les autres protocoles qui ont reçu bea... »)
 
Aucun résumé des modifications
Ligne 1 : Ligne 1 :


= UDP : User Datagram Protocol =
= UDP : User Datagram Protocol =


Défini dans la RFC 768 le 28/8/1980, qui n'as pas été modifiée depuis, contrairement à tous les autres protocoles qui ont reçu beaucoup de correctifs.
Défini dans la RFC 768 le 28/8/1980, qui n'as pas été modifiée depuis, contrairement à tous les autres protocoles qui ont reçu beaucoup de correctifs.


Avec IP, on dialogue entre machines... Avec UDP, on dialogue entre processus : on ajoute un port source et un port de destination.
Avec IP, on dialogue entre machines... Avec UDP, on dialogue entre processus : on ajoute un port source et un port de destination.


La notion de port introduit la notion de "service réseau" : Il peut y avoir plusieurs services réseau par équipement. Chaque service réseau écoute sur un port différent, et les services peuvent être totalement différent, et chacun écoute sur un port spécifique. UDP se place au-dessus d'IP, et son format de datagramme est le suivant:
La notion de port introduit la notion de "service réseau" : Il peut y avoir plusieurs services réseau par équipement. Chaque service réseau écoute sur un port différent, et les services peuvent être totalement différent, et chacun écoute sur un port spécifique. UDP se place au-dessus d'IP, et son format de datagramme est le suivant:


[[File:UDPHeader.png|484x258px]]
[[File:UDPHeader.png|300x150px|UDPHeader.png]]


*Un port source optionnel (0 par défaut)  
*Un port source optionnel (0 par défaut)  
Ligne 16 : Ligne 16 :
*Des données.  
*Des données.  


Les données utiles sont générées par l'application; elles sont encapsulées dans UDP. On voit apparaître la notion d'extrémité de communication. Une extrémité de communication est : un tuple (@IP, Port UDP) (un socket, quoi...). Un port est l'équivalent d'une porte dans une maison; on peut avoir plusieurs portes sur un bâtiment.
Les données utiles sont générées par l'application; elles sont encapsulées dans UDP. On voit apparaître la notion d'extrémité de communication. Une extrémité de communication est : un tuple (@IP, Port UDP) (un socket, quoi...). Un port est l'équivalent d'une porte dans une maison; on peut avoir plusieurs portes sur un bâtiment.


Un serveur UDP est un tuple "@IP + port UDP" côté serveur, et la même chose pour un client UDP. Le client va ouvrir un port UDP (ou pas, c'est optionnel : il ne le fait que si il veut un réponse; si il n'ouvre pas de port le port source sera à 0) et envoyer des datagrammes au serveur UDP, qui répondra sur le port que le client a ouvert.
Un serveur UDP est un tuple "@IP + port UDP" côté serveur, et la même chose pour un client UDP. Le client va ouvrir un port UDP (ou pas, c'est optionnel : il ne le fait que si il veut un réponse; si il n'ouvre pas de port le port source sera à 0) et envoyer des datagrammes au serveur UDP, qui répondra sur le port que le client a ouvert.


Le checksum (ou somme de contrôle) est réalisé lors de l'envoi et de la réception du datagramme. Si le checksum présent est différent du checksum fait à l'arrivée, la trame est détruite. Il est réalisé sur l'en-tête UDP + une pseudo-en-tête IP, ce qui ne colle pas trop au modèle OSI.
Le checksum (ou somme de contrôle) est réalisé lors de l'envoi et de la réception du datagramme. Si le checksum présent est différent du checksum fait à l'arrivée, la trame est détruite. Il est réalisé sur l'en-tête UDP + une pseudo-en-tête IP, ce qui ne colle pas trop au modèle OSI.
Ligne 24 : Ligne 24 :
Lorsqu'une trame UDP est émise, on a pas d'A/R, cela doit être contrôlé par les couches d'au-dessus. On a pas de réémission en cas de perte ni de gestion de la congestion. UDP est utilisé lorsque l'on a peu de données à transporter, et avec peu d'échanges.
Lorsqu'une trame UDP est émise, on a pas d'A/R, cela doit être contrôlé par les couches d'au-dessus. On a pas de réémission en cas de perte ni de gestion de la congestion. UDP est utilisé lorsque l'on a peu de données à transporter, et avec peu d'échanges.


Les protocoles UDP les plus connus sont :
Les protocoles UDP les plus connus sont :


*DHCP  
*DHCP  

Version du 24 novembre 2018 à 23:21

UDP : User Datagram Protocol

Défini dans la RFC 768 le 28/8/1980, qui n'as pas été modifiée depuis, contrairement à tous les autres protocoles qui ont reçu beaucoup de correctifs.

Avec IP, on dialogue entre machines... Avec UDP, on dialogue entre processus : on ajoute un port source et un port de destination.

La notion de port introduit la notion de "service réseau" : Il peut y avoir plusieurs services réseau par équipement. Chaque service réseau écoute sur un port différent, et les services peuvent être totalement différent, et chacun écoute sur un port spécifique. UDP se place au-dessus d'IP, et son format de datagramme est le suivant:

UDPHeader.png

  • Un port source optionnel (0 par défaut)
  • Un port de destination
  • Une longueur de datagramme (en-tête + Données)
  • Un checksum
  • Des données.

Les données utiles sont générées par l'application; elles sont encapsulées dans UDP. On voit apparaître la notion d'extrémité de communication. Une extrémité de communication est : un tuple (@IP, Port UDP) (un socket, quoi...). Un port est l'équivalent d'une porte dans une maison; on peut avoir plusieurs portes sur un bâtiment.

Un serveur UDP est un tuple "@IP + port UDP" côté serveur, et la même chose pour un client UDP. Le client va ouvrir un port UDP (ou pas, c'est optionnel : il ne le fait que si il veut un réponse; si il n'ouvre pas de port le port source sera à 0) et envoyer des datagrammes au serveur UDP, qui répondra sur le port que le client a ouvert.

Le checksum (ou somme de contrôle) est réalisé lors de l'envoi et de la réception du datagramme. Si le checksum présent est différent du checksum fait à l'arrivée, la trame est détruite. Il est réalisé sur l'en-tête UDP + une pseudo-en-tête IP, ce qui ne colle pas trop au modèle OSI.

Lorsqu'une trame UDP est émise, on a pas d'A/R, cela doit être contrôlé par les couches d'au-dessus. On a pas de réémission en cas de perte ni de gestion de la congestion. UDP est utilisé lorsque l'on a peu de données à transporter, et avec peu d'échanges.

Les protocoles UDP les plus connus sont :

  • DHCP
  • DNS
  • SNMP
  • TFTP
  • Les jeux en réseau
  • SIP