Auteur Sujet: TCP vs UDP  (Lu 5726 fois)

0 Membres et 1 Invité sur ce sujet

Grincheux

  • Technicien agréé Orange et Bouygues Telecom
  • Abonné Orange adsl
  • *
  • Messages: 131
  • Mathenay (39)
TCP vs UDP
« le: 14 août 2011 à 07:06:30 »
TCP travaille de manière synchrone : Il envoie un paquet et s'assure de sa réception.
UDP travaille plus en asynchrone : Le paquet est envoyé peut importe ce qu'il devient.

Des logiciels comme "La mule" utilisent UDP, donc l'optimisation TCP devient inutile.
La question que je me pose est de savoir si un logiciel qui utilise UDP (DATAGRAM), utilise ce protocole uniquement entre la box et l'ordinateur ou si cela peut être utilisé jusqu'à l'autre bout de la chaîne ?

Exemple :

PC1 -------------->Logiciel(UDP) ------------> Box -----???-------> NRA ----???--------->Logiciel(UDP) ---------------> PC2

Pour faire plus simple, entre la box et le NRA et entre le NRA et la box, quel protocole est utilisé et qui le fixe ?

corrector

  • Invité
TCP vs UDP
« Réponse #1 le: 14 août 2011 à 09:30:21 »
Si PC1 envoie de l'UDP à PC2, alors PC2 reçoit de l'UDP. Les box ne convertissent pas UDP en autre chose!

La box ne fait que du NAT, c'est à dire que l'adresse IP de PC1 est modifiée en celle de la box, et inversement dans l'autre directement, l'adresse IP de la box est modifiée en celle de PC1.

Grincheux

  • Technicien agréé Orange et Bouygues Telecom
  • Abonné Orange adsl
  • *
  • Messages: 131
  • Mathenay (39)
TCP vs UDP
« Réponse #2 le: 14 août 2011 à 09:43:14 »
Merci, je ne savais pas, on peut donc dire que la box est transparente.

corrector

  • Invité
TCP vs UDP
« Réponse #3 le: 14 août 2011 à 09:56:57 »
UDP travaille plus en asynchrone : Le paquet est envoyé peut importe ce qu'il devient.
Requête DNS en UDP : si pas de réponse, la requête est réémise
Requête SUNRPC (utilisé par NFS notamment) en UDP : si pas de réponse, la requête est réémise
etc.
(il y a aussi NetBIOS, SMB, ... qui utilisent UDP.

Tout protocole qui utilise UDP pour èmettre ses requêtes doit gérer lui-même les pertes de paquets. La complexité qui n'est pas dans UDP se retrouve dans toutes les couches au dessus de UDP qui ont besoin de fiabilité.

Avec TCP une grande complexité et une certaine charge protocolaire est imposée, mais un service facile à utiliser est proposé à la couche supérieure; en UDP la charge protocolaire est minimale et le code de la couche UDP est très léger, mais la couche supérieure doit gérer toutes les subtilités.

vivien

  • Administrateur
  • *
  • Messages: 47 228
    • Twitter LaFibre.info
TCP vs UDP
« Réponse #4 le: 14 août 2011 à 09:58:33 »
Les transfert e-mule sont en TCP pas en UDP.

e-mule utilise un port UDP pour autre chose que pour les transfert.

corrector

  • Invité
TCP vs UDP
« Réponse #5 le: 14 août 2011 à 09:59:40 »
les inondations?

Grincheux

  • Technicien agréé Orange et Bouygues Telecom
  • Abonné Orange adsl
  • *
  • Messages: 131
  • Mathenay (39)
TCP vs UDP
« Réponse #6 le: 14 août 2011 à 10:00:02 »
Cela permet d'aller plus vite (l'UDP).

corrector

  • Invité
TCP vs UDP
« Réponse #7 le: 14 août 2011 à 10:14:47 »
Un paquet UDP ne va pas plus vite qu'un paquet TCP.

Par contre si tu as juste un paquet à envoyer, pour dire "coucou" à PC2 et c'est tout il faut :
en TCP :
- ouvrir une connexion :
PC1 > PC2 : TCP SYN(x)
PC2 > PC1 : TCP SYN(y),ACK(x+1)
PC1 > PC2 : TCP ACK(y+1)

- la connexion est établie, on peut transmettre :
PC1 > PC2 : TCP segment = "coucou" (6 octets),ACK(y+1)
PC2 > PC1 : TCP ACK(x+7)

- fermeture de la connexion
PC1 > PC2 : TCP FIN,ACK(y+1)
PC2 > PC1 : TCP ACK(x+8)
PC2 > PC1 : TCP FIN,ACK(x+8)
PC1 > PC2 : TCP ACK(y+2)

Au total, PC1 a envoyé à PC2 : SYN, coucou, FIN
et PC2 a envoyé à PC1 : SYN, FIN

Ensuite PC1 et PC2 doivent porter le deuil de la connexion TCP pendant 2 minutes afin de respecter sa mémoire.

Après tout ça, PC1 et PC2 peuvent enfin oublier cette connexion.

En UDP :
PC1 > PC2 : UDP "coucou"
mais il faut envisager que le coucou soit perdu.

UDP avec système de confirmation :
PC1 > PC2 : UDP "coucou"
PC2 > PC1 : UDP "bien reçu ton coucou"

Donc TCP est efficace pour envoyer de grosses quantités de données, ou plein de messages courts dans une même connexion de façon fiable (avec confirmation), mais pas pour envoyer juste un seul message court.

Grincheux

  • Technicien agréé Orange et Bouygues Telecom
  • Abonné Orange adsl
  • *
  • Messages: 131
  • Mathenay (39)
TCP vs UDP
« Réponse #8 le: 14 août 2011 à 10:42:26 »
Explication TRES claire