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 :

UDP entre 2 clients sans serveur ?


Sujet :

Entrée/Sortie Java

  1. #1
    Candidat au Club
    Inscrit en
    Août 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 3
    Points : 2
    Points
    2
    Par défaut UDP entre 2 clients sans serveur ?
    bonjour à tous,
    On a pour projet de faire un mini chat en Java, on nous demande après que les clients se connectent à un serveur, puissent s'envoyer des messages mais sans que ces messages ne passent via le serveur !
    Est ce que c'est possible de faire ça avec UDP ?
    J'ai essayé plusieurs solutions mais sans résultat... Si aucun a une idée je serais preneur. Merci à vous et bonne journée

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 547
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 547
    Points : 21 602
    Points
    21 602
    Par défaut
    Bien sûr, s'ils ne sont pas derrière un NAT (ou si un seul d'entre eux l'est.)
    Client, serveur, pas de serveur... Tout ça c'est relatif. UDP c'est deux machines qui parlent ensemble, le "serveur" n'est jamais que la machine qui attendait qu'une autre vienne lui parler. Si n'importe laquelle peut contacter l'autre, il n'y a pas de question de client ou de serveur. Il n'y a rien de particulier à faire, les machines doivent connaître l'IP et le port l'une de l'autre, et se parler normalement par UDP.

    "Et s'ils sont tous les deux derrière un NAT ?"
    Là... Dans le cas général c'est pas possible. Il existe des solutions spécifiques compatibles avec tels ou tels serveurs NAT, et la solution la plus populaire c'est STUN/TURN, un système où le serveur aide les deux clients à établir une connexion directe entre eux. C'est aussi ce qu'utilise WebRTC.
    Mais ça ne marche pas partout.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Candidat au Club
    Inscrit en
    Août 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    L'application tournera sur les serveur local de la fac(pas de NAS).
    Dans de ce cas et connaissant l'adresse ip et le port des clients qui seront connectés, il suffit juste d'envoyer des DatagramPacket(adresse,port) d'un client a l'autre ?

  4. #4
    Membre éprouvé
    Avatar de star
    Homme Profil pro
    .
    Inscrit en
    Février 2004
    Messages
    830
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Corée Du Nord

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Février 2004
    Messages : 830
    Points : 970
    Points
    970
    Billets dans le blog
    1
    Par défaut
    Donne-nous plus de précisions sur les solutions que tu as essayé mais qui n'ont pas fonctionné...
    Peut-être que l'une d'elles pourrait être une des solutions possibles
    Parce qu'on peut très bien envisager d'utiliser soit UDP ou bien TCP
    A vrai dire, c'est soit l'un soit l'autre du moins en JAVA
    .
    Diviser c'est régner : United we stand, Divided we fall
    .

  5. #5
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par mehdi.laakel Voir le message
    L'application tournera sur les serveur local de la fac(pas de NAS).
    Dans de ce cas et connaissant l'adresse ip et le port des clients qui seront connectés, il suffit juste d'envoyer des DatagramPacket(adresse,port) d'un client a l'autre ?
    Oui, tu peux même aller plus loin sur un réseau local en utilisant un adresse multicast, comme ça tout le monde cause à tout le monde.

Discussions similaires

  1. discussion entre socket client et serveur (TCP)
    Par xokami35x dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 08/06/2008, 20h21
  2. Fin de conversation entre client et serveur
    Par Stany dans le forum C++
    Réponses: 2
    Dernier message: 15/07/2005, 12h07
  3. [OUTIL]Outil de trace SQL entre 1 client et 1 serveur
    Par Laurent Dardenne dans le forum Oracle
    Réponses: 12
    Dernier message: 15/04/2005, 20h44
  4. [Java] Communication entre client et serveur
    Par danje dans le forum CORBA
    Réponses: 1
    Dernier message: 14/12/2004, 19h08

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