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

Entrée/Sortie Java Discussion :

INetAdress.isReachable(x) - triple echo


Sujet :

Entrée/Sortie Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 9
    Par défaut INetAdress.isReachable(x) - triple echo
    Bonjour tout le monde,

    Je suis débutant en programmation "réseau" et j'ai remarqué quelque chose de bizarre et qui m'ennuie assez :p

    Contexte : Il s'agit d'un application Windows destinée a fonctionner dans un petit réseau local (1 seul switch) qui va pinger et, plus tard, tester l'état de differents serveurs sur la machine.

    Voici donc le morceau de code qui me pose "problème"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
                            // Se trouve dans un bloc "try"
    			InetAddress inad;
    			inad = InetAddress.getByAddress(ip);
     
    			// Ping
    			if (inad.isReachable(2000))
    			{
    				res[2] = "ON";
    			}
    			else
    			{
    				res[2] = "OFF";
    			}
    Mon problème :
    - le timeout est ici fixé à 2000ms, l'application fonctionne parfaitement ainsi mais engendre une perte de temps considérable.

    - 2000ms est quasiment le minimum que je peux mettre pour que ca fonctionne alors qu'un ping.exe vers la machine distante donne un temps de réponse de grand maximum 2ms.

    - j'ai sniffé le réseau à l'aide de Wireshark (Ethereal) et je remarque que mon programme réalise 3 échos, à la facon du ping.exe.

    Pas grave me dis-je, je vais créer manuellement le socket sur le port 7 (echo), mais je remarque qu'il m'envoie à nouveau 3 échos!


    Si vous avez une solution pour éviter ce triple echo, je suis tout ouïe

  2. #2
    Membre expérimenté Avatar de jibbi
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 165
    Par défaut
    Salut,

    Avec ping.exe tu peux imposer le nombre d'écho:
    pour un seul écho:
    ping 127.0.0.1 -n 1
    pour connaitre tous les options:
    ping -?

  3. #3
    Membre Expert
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Par défaut
    Pour le problème du Timeout qui augmente le temps d'exécution de l'appli, tu peux faire ces appels en parallèle dans des Threads. Cela complique le code mais tu devrais t'y retrouvé un terme de performances.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 9
    Par défaut
    Citation Envoyé par jibbi
    Salut,

    Avec ping.exe tu peux imposer le nombre d'écho:
    pour un seul écho:
    ping 127.0.0.1 -n 1
    pour connaitre tous les options:
    ping -?
    Ce qu'il me faudrait en fait, c'est la même option mais en Java

    Citation Envoyé par iohack
    Pour le problème du Timeout qui augmente le temps d'exécution de l'appli, tu peux faire ces appels en parallèle dans des Threads. Cela complique le code mais tu devrais t'y retrouvé un terme de performances.
    Vi, j'y pensais également, mais faut encore que je me penche sur la question des threads, j'ai jamais manipulé ces bêtes là :p


    Sinon personne a une idée d'où peut venir et comme éviter ce triple écho?

Discussions similaires

  1. Triple click
    Par guejo dans le forum MFC
    Réponses: 17
    Dernier message: 17/07/2014, 13h42
  2. [InetAdress] isReachable : pb ping avec serveurs linux
    Par tck-lt dans le forum Entrée/Sortie
    Réponses: 8
    Dernier message: 23/08/2005, 18h28
  3. probleme d' echo dans un batch
    Par zorian dans le forum Windows
    Réponses: 16
    Dernier message: 18/05/2004, 17h21
  4. [HARDWARE]Problème d'écho audio
    Par Tostaki dans le forum Composants
    Réponses: 5
    Dernier message: 07/12/2003, 23h38
  5. Envoyer un message icmp (Echo Request)
    Par ovdz dans le forum Développement
    Réponses: 5
    Dernier message: 19/06/2003, 14h14

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