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

Réseau C Discussion :

Comment testers des programmes client-serveur sur 1 seule machine


Sujet :

Réseau C

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 92
    Points : 77
    Points
    77
    Par défaut Comment testers des programmes client-serveur sur 1 seule machine
    Bonjour,

    Je suis entrain de travailler sur un projet de jeu sur réseau local, j'ai 2 programmes joueurs et 1 programme arbitre qui tourne sur le même réseau.

    Les 2 joueurs se connectent sur l'arbitre et ils se connectent entre eux aussi. Toutes les connexions sont faites en mode connecté.

    Mais quand je lancais ces 3 processus sur la même machine, j'ai eu un problème:
    Les 2 joueurs peuvent se connecter à l'arbitre sans problème( l'arbitre est le server ), mais lorsque les 2 joueurs essayaient de se connecter, j'ai eu un message d'erreur:

    Address already in use.

    C'est parce que j'ai mis "localhost" pour toutes les sockets serveur(l'adresse de l'arbitre, l'adresse du joueur qui joue le rôle serveur) ???
    Et est-ce qu'on est obligé de tester les programmes sur un réseau ??

    Merci d'avance.

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    utilise une vmware et fait tourner un de tes programme dedans

    ou alors, il y a l'option SO_REUSEPORT à passer avant le bind() avec setsockopt().
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 92
    Points : 77
    Points
    77
    Par défaut
    Merci pour votre réponse ram-0000,

    En fait, le professeur nous a donné 2 fonctions pour créer la socket serveur et la socket client. Il nous suffit de les utiliser pour créer des sockets.

    J'ai utilisé le nom de machine "localhost" pour toutes les sockets serveur et ils n'ont pas pris le même port. Mais j'ai toujours le même problème.
    Sinon comme vous dites, peut être il faut installé une machine virtuelle.

    Mais ce que je comprends pas est que sur une machine on peut installer plusieurs serveur, MySQL, Apache etc. qui tournent simultanément et écoutent sur des ports différents.

    le miens aussi, par exemple l'arbitre écoute le port 5000, et un joueur crée un serveur sur le port 3000. ils sont tous sur "localhost", mais ils ne sont pas sur le même port.

    Parce que la structure n'est pas encore complète, après chaque joueur va encore créer une connexion avec un processus moteur qui calcule des coups à jouer.

  4. #4
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    Je n'ai pas compris, les 2 joueurs utilisent et bind le même port local comme serveur ou bien c'est un port distinct
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 92
    Points : 77
    Points
    77
    Par défaut
    Citation Envoyé par ram-0000 Voir le message
    Je n'ai pas compris, les 2 joueurs utilisent et bind le même port local comme serveur ou bien c'est un port distinct
    Pour l'instant, y a 3 processus et 2 serveurs.
    - le serveur arbitre, qui valide les coups joués.
    - le serveur joueur, qui attend la demande de connexion de l'autre joueur.
    - le client joueur, qui se connecte à l'autre joueur.

    Ces 3 programmes sont tous sur "localhost", mais ile écoutent pas sur le même port.

  6. #6
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    Alors ton erreur "Address already in use." c'est autre chose
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 92
    Points : 77
    Points
    77
    Par défaut
    Je pense que j'ai trouvé l'erreur, c'est la boucle de jeux qui fait créer plusieurs sockets sur un même port.

    Merci beaucoup ram

  8. #8
    Membre du Club
    Profil pro
    Développeur Web
    Inscrit en
    Novembre 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2007
    Messages : 65
    Points : 53
    Points
    53
    Par défaut localhost
    Salut, si votre serveur est en listening, tu peut lancer le client sur 127.0.0.1

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment mettre des inputs radio (modifiés) sur une seule ligne
    Par algerino77 dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 13/11/2014, 18h54
  2. Aide sur un programme Client Serveur
    Par clubmed01 dans le forum Linux
    Réponses: 33
    Dernier message: 29/05/2012, 11h22
  3. Réponses: 3
    Dernier message: 29/08/2009, 01h35
  4. Application client/serveur sur un seul poste
    Par Just-Soft dans le forum Bases de données
    Réponses: 6
    Dernier message: 12/09/2008, 10h45
  5. comment avoir un réseau client/serveur sur la meme poste?
    Par rebhihabib dans le forum Développement
    Réponses: 9
    Dernier message: 29/02/2008, 18h28

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