Comprendre UDP

Résolu
cs_gaston06 Messages postés 4 Date d'inscription vendredi 8 décembre 2006 Statut Membre Dernière intervention 26 janvier 2015 - 9 déc. 2006 à 11:26
cs_SoftMaker Messages postés 3 Date d'inscription mardi 1 février 2005 Statut Membre Dernière intervention 16 septembre 2008 - 28 janv. 2007 à 15:17
Bonjour,


J'ai 2 ordis en réseau. Je les ai fait communiquer en UDP avec le controle Winsock de VB5.


Etant débutant, j'ai fait plein de bêtises au départ, mais ça marche quand même très bien! Pourquoi?


1: je n'ai pas mis l'instruction Bind, et ça marche quand même!

2: j'ai changé un PC en oubliant de changer l'adresse IP dans l'autre, et ça marche encore!!

3: quand j'arrête un PC, et que l'autre essaye encore de communiquer,
il reçoit l'erreur 10054: "la connexion est rétablie coté distant". Non
seulement ce message dit le contraire de ce qui se passe, mais en plus
il me semble qu'en mode sans connexion on ne devrait même pas savoir ce
qui se passe à l'autre bout???

Est-ce que XP ou VB font des choses dans mon dos?


Merci pour toute info ou pointeur sur le sujet!


Gaston0

6 réponses

le cancre Messages postés 292 Date d'inscription mercredi 25 octobre 2006 Statut Membre Dernière intervention 27 novembre 2009
10 déc. 2006 à 01:31
salut gaston,
ton histoire est chelou!..
pour les erreurs , il faut voir du coté de icmp <- il est fait pour ca
sinon faut sniffer pour mieux comprendre la situation
3
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 26
11 déc. 2006 à 13:48
salut,

1: le bind est uniquement obligatoire côté serveur...côté client, windows sait bien trouver un port libre tout seul...
2: j'ai pas tout compris...mais rappel toi que UDP est un protocole non connecté...càd que chaque paquet est indépendant...
3: conseil : toujours chercher la définition ANGLAISE d'un code d'erreur : "la connexion est rétablie coté distant" en anglais ca se dit "connection reset by peer" autrement dit : "la connexion a été coupée côté distant"...

ShareVB
3
cs_gaston06 Messages postés 4 Date d'inscription vendredi 8 décembre 2006 Statut Membre Dernière intervention 26 janvier 2015
11 déc. 2006 à 15:34
Merci, Cancre, merci ShareVB,

Concernant 1: je confirme que ça marche sans aucun Bind ni d'un coté ni de l'autre. Et d'ailleurs les messages sont échangés dans les deux sens.

Concernant 2: j'ai refait aussi l'essai: je mets dans le programe des adresses IP fausses et ça marche quand même!!!

Concernant 3, je me doutais que c'est une mauvaise traduc mais il reste
qu'en mode "sans connexion" je ne vois pas comment la connexion peut
être coupée, comment on peut le savoir, et pourquoi on le dit au client?

Pour moi ça reste mystérieux. Je vais essayer de sniffer...Et ICMP ça
se trouve où? dans le routeur ou dans le PC? dans le routeur je n'ai
rien vu avec le programme d'admin., mais je suspecte que c'est lui qui
fait du zèle.

Gaston06
3
le cancre Messages postés 292 Date d'inscription mercredi 25 octobre 2006 Statut Membre Dernière intervention 27 novembre 2009
11 déc. 2006 à 20:45
Lu,
en sniffant les paquets icmp de ton pc, tu pourras te faire une idée de ton problème avec udp

ICMP (Internet Control Message Protocol) permet de gérer les informations relatives aux erreurs du protocole IP.

tu peux avoir des messages icmp du style : 
   Destination non valide
   Redirection
   Temps excédé
   Erreur d'entête
   etc.......
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_SoftMaker Messages postés 3 Date d'inscription mardi 1 février 2005 Statut Membre Dernière intervention 16 septembre 2008
28 janv. 2007 à 14:21
Salut,

Il existe un bug avec le contrôle winsock sous Windows 2000 ( pas sur 98 et NT) XP n'est pas spécifié mais j'ai le même problème sous XP.

Cause : Lorsqu'un paquet UDP est envoyé à un ordinateur distant et que celui-ci n'écoute pas le port spécifié, l'ICMP signale cela
comme une erreur "Impossible de joindre le port ICMP" laquelle se traduit par une erreur 10054 du contrôle Winsock lors de l'utilisation de GetData.

La solution donnée par Microsoft fait entrer mon soft dans une boucle sans fin avec perte de contrôle de VB5 mais je ne désespère pas.

Source Microsoft : http://support.microsoft.com/?scid=kb%3Bfr%3B260018&x=13&y=17
0
cs_SoftMaker Messages postés 3 Date d'inscription mardi 1 février 2005 Statut Membre Dernière intervention 16 septembre 2008
28 janv. 2007 à 15:17
En fait, mon plantage de VB n'a rien à voir avec la solution de Microsoft laquelle marche trés bien.
0
Rejoignez-nous