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 :

[Réseau] Réaliser une plateforme de communication


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Par défaut [Réseau] Réaliser une plateforme de communication
    Bonjour,

    Du premier essai basique à un logiciel ressemblant à MSN Messenger, j'aimerai réaliser un petit logiciel qui permette de communiquer entre plusieurs utilisateurs en LAN et avec IP fixe sous Windows.

    Je ne maitrise pas encore bien tout ce qui est socket, protocole TCP/IP etc... et j'ai plusieurs questions qui me viennent à l'esprit:
    1) Dans le cas où tout le monde envoi un message à tout le monde (multi cast en fait), ai-je besoin d'un serveur quand même? Ou bien tout le monde peut être considérer à la fois comme client et serveur?
    Vous avez une architecture à me proposer ?

    2) J'ai regardé le tuto de TheWalrus, et je regarde aussi boost.asio dans la nouvelle version de boost comme candidat pour mon développement.
    J'utilise WxWidget et j'ai vu qu'il y avait aussi des outils pour gérer les Sockets.
    Une technologie que vous préférez ?


    Merci à tous pour vos éclaircissements !

  2. #2
    Rédacteur

    Avatar de khayyam90
    Homme Profil pro
    Architecte de système d’information
    Inscrit en
    Janvier 2004
    Messages
    10 371
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Janvier 2004
    Messages : 10 371
    Par défaut
    Citation Envoyé par poukill Voir le message
    1) Dans le cas où tout le monde envoi un message à tout le monde (multi cast en fait), ai-je besoin d'un serveur quand même? Ou bien tout le monde peut être considérer à la fois comme client et serveur?
    Le multicast te permet d'envoyer un message entre une machine et un groupe de machines. Tu n'as effectivement plus besoin de serveur pour relayer tes messages, le réseau s'en charge pour toi.
    Cependant le multicast amène un problème de confidentialité, puisque toutes les machines du réseau vont recevoir les paquets, même ceux qui ne sont pas pour elles.

    Une architecture simple : un serveur vers qui chacun se connecte et donne son IP. Quand on se connecte, on interroge le serveur pour connaître les IP de ses contacts, et on peut les contacter directement. Cette architecture fonctionne en LAN mais pas seulement.

    En travaillant exclusivement en LAN, on pourrait en effet se passer de ce serveur en soumettant chaque message à tout le réseau, en ajoutant par exemple le libellé du destinataire, mais ça amène le souci de confidentialité.

    2) J'ai regardé le tuto de TheWalrus, et je regarde aussi boost.asio dans la nouvelle version de boost comme candidat pour mon développement.
    J'utilise WxWidget et j'ai vu qu'il y avait aussi des outils pour gérer les Sockets.
    Une technologie que vous préférez ?
    bien sûr , boost.asio

  3. #3
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Salut,

    Pour l'architecture, je plussoie celle de khayyam. Il me semble que c'est l'architecture "cannonique".

    Et sinon, pour le réseau : boost.asio !
    Il y a ACE mais c'est peut-être un peu lourd pour ça.

  4. #4
    Membre Expert
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Par défaut
    ok d'accord. Merci pour vos réponses khayyam et parrain !
    Je vais partir sur cette architecture simple, mais pas si évidente quand on a jamais mis les pieds encore dans les architectures réseaux!
    Je pensais pouvoir éviter le serveur, car toutes les IP sont fixes, c'est un réseau d'entreprise. Et accessoirement, les personnes à qui je vais distribuer le programme ne sont pas nombreuses.
    Mais bon, programmer un serveur sera sans doute une solution plus générique !

    Je commence et vous tiens au courant !

  5. #5
    Membre Expert
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Par défaut
    Et ce qui concerne le choix du port? Comment trouve t-on les ports de libre sous Windows?

  6. #6
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 294
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 294
    Par défaut
    T'en prends un au pif suffisamment élevé (genre 42856, mais 39856 ferait aussi bien l'affaire) et zou !
    De toute façon si tu essayes d'ouvrir en écoute un port déjà ouvert, ça va échouer.

    MAT.

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

Discussions similaires

  1. Communication réseau avec une Applet
    Par jose.hello dans le forum Applets
    Réponses: 1
    Dernier message: 29/06/2011, 15h46
  2. faisabilitée d'une plateforme de communication
    Par pti_val dans le forum Java ME
    Réponses: 9
    Dernier message: 29/05/2009, 14h56
  3. comment peut-on réaliser une communication usb avec un MC moto ?
    Par Super2006 dans le forum Périphériques
    Réponses: 10
    Dernier message: 25/03/2007, 22h38
  4. [Réseau] Créer une connexion Internet
    Par Tranber dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 17/10/2002, 17h01

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