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

Boost C++ Discussion :

Boost.Asio : comportement en P2P


Sujet :

Boost C++

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut Boost.Asio : comportement en P2P
    Bonjour,
    Suite à la diffusion d'un post précédent (cf : http://www.developpez.net/forums/d72...recuperer-lip/), j'ai voulu définir un comportement P2P tout en utilisant boost.asio !
    Cependant, je pense que je ne m'y connait pas trop dans cette bibliothèque, malgré avoir lu, re-lu et re-re-lu le tutoriel correspondant. Donc j'aimerais avoir votre avis sur la manière de coder ceci avec boost.asio.

    Je ne demande pas à ce qu'on m'écrive du code (si vous voulez, vous pouvez ), mais plutôt les parties que devrais utiliser dans boost.asio. Par exemple, est-ce qu'il faut que je crée une classe avec un acceptor ? Il y aurait donc deux acceptor pour les clients ?
    Est-ce que je dois voir une personne comme un client et l'autre comme un serveur (et le code correspondant à chacun d'eux) ?

    Merci par avance pour m'éclairer sur cette situation !

  2. #2
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    C'est à toi de voir, mais si c'est bien du P2P, chacun est un serveur pour l'autre, juste pour initier la connexion selon qui connaît qui. C'est ce qui est utilisé dans les grosses bibliothèques P2P.

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    j'imagine alors que boost.asio n'est pas adapté pour le P2P ?

  4. #4
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Ben si, pourquoi ? Une fois que la connexion est créée, pas de problème

  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
    Citation Envoyé par mick009 Voir le message
    j'imagine alors que boost.asio n'est pas adapté pour le P2P ?
    Ben si.
    Une fois que la connexion est établie, les deux peuvent se parler directement, avec une structure comme celle ci par exemple : http://gwenael-dunand.developpez.com...asio/#LVII-C-2.
    Chaque client attend sur un port donné que quelqu'un se connecte (il est en fait serveur). Dès qu'une connexion est établie, il peut dialoguer !

  6. #6
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    OK, j'avais peur que boost asio ne soit pas adapté !!
    Mais encore une ou deux questions :
    - A quoi sert précisément l'acceptor dans boost asio ?
    - si ils servent à "accepter" les entrées, il faudra donc l'utiliser dans une classe, puisqu'il s'utilise généralement pour les serveurs ?

  7. #7
    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
    Un acceptor est là pour "accepter" les connexions entrantes, sur un port donné. La fonction accept prend une socket en paramètre.
    Après, tu peux donc travailler avec ta socket pour envoyer et recevoir des données.
    La mise en place se fait classiquement par une opération asynchrone qui boucle sur la réception de données, et l'envoi se fait quand tu veux en mode asynchrone également. (cf partie chat du tuto)

  8. #8
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    Très bien et bien merci pour vos réponses
    Je mets ce post en résolu !

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

Discussions similaires

  1. Boost::Asio et Visual C++ Express 2005
    Par TocTocKiéLà? dans le forum Boost
    Réponses: 11
    Dernier message: 30/12/2007, 21h11
  2. socket ssl & boost::asio
    Par kass28 dans le forum Boost
    Réponses: 0
    Dernier message: 16/10/2007, 09h38
  3. Boost::Asio et code::blocks
    Par TocTocKiéLà? dans le forum Boost
    Réponses: 10
    Dernier message: 10/08/2007, 23h20
  4. Boost::asio et openssl
    Par Floréal dans le forum Bibliothèques
    Réponses: 1
    Dernier message: 18/07/2007, 16h17
  5. Boost::asio : multi threading ou pas?
    Par Alp dans le forum Boost
    Réponses: 9
    Dernier message: 02/09/2006, 22h01

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