IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Programmation socket: client UDP


Sujet :

C++

  1. #1
    Nouveau candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2
    Par défaut Programmation socket: client UDP
    Salut à tous,

    Dernièrement j'ai essayé de faire un petit client daytime UDP sous winXP. Il envoie simplement un datagramme quelconque à un serveur daytime au port 13 qui renvoie une chaine ASCII contenant la date et l'heure (le message envoyé par le client est ignoré). En fait cela marche aussi en TCP. J'ai donc réalisé les deux versions: la version TCP marche parfaitement mais dans la version UDP la fonction recvfrom() bloque . J'ai passé des heures à lire de longues pages sur le mode non connecté (UDP) et je n'arrive toujours pas à debugger mon client!

    Encore merci de votre aide...

  2. #2
    Membre éclairé Avatar de ZaaN
    Inscrit en
    Novembre 2005
    Messages
    819
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 819
    Par défaut
    appareament la fonction reste en attente d un datagramme en entrée. Et elle est blocante.

    plusieurs exemples de solutions : travailler en mode asynchrone, faire un thread qui s'occupe de la transmition UDP.

    Pour commencer je verifierais que ton datagramme transitent bien sur la ligne avec un logiciel genre Wireshark

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 125
    Par défaut
    je connais pas windows mais sur les unix il existe des fonctions comme select ou poll qui permettent de checker un socket sans bloquer
    tu as peut etre les meme sur ton api

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    394
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 394
    Par défaut
    D'expérience le premier truc à vérifier c'est que l'UDP passe bien. La plupart des switchs ne laisse pas passer ces trames dans leur config par défaut.

Discussions similaires

  1. Programmation socket UDP
    Par natanoj dans le forum C
    Réponses: 0
    Dernier message: 07/07/2008, 10h56
  2. cherche exemple client udp socket
    Par - Glop - dans le forum Réseau/Web
    Réponses: 5
    Dernier message: 08/06/2006, 10h52
  3. [SOCKET] Client UDP sur système Unix
    Par be_tnt dans le forum Développement
    Réponses: 1
    Dernier message: 14/04/2006, 21h31
  4. Réponses: 5
    Dernier message: 11/03/2006, 16h18
  5. [Socket] Client UDP
    Par AxldenieD dans le forum Réseau
    Réponses: 12
    Dernier message: 22/11/2005, 12h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo