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

Visual C++ Discussion :

Taille optimal d'un buffer de lecture ecriture dans un socket


Sujet :

Visual C++

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Taille optimal d'un buffer de lecture ecriture dans un socket
    Bonjour ,

    J'ai une appli. Client Server qui s'échange message et données.
    J'utilise CSocket pour l'échange.

    Je me pose la question de la taille optimal du buffer pour le send et le received .
    Pour l'instant j'utilise un BYTE* de 4096. Je peux transporter des fichiers lourd ( 500Meg 600Meg ). Je me dit donc que j'augmenterais bien la taille du buffer .Il y t'il une raison pour que je ne le fasse pas ?


    Quelqu'un peut il me répondre sur ce sujet?

  2. #2
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Salut,
    Je ne comprend pas très bien ta question. Il s'agit de la taille à positionner avec SetSockOpt (SO_SNDBUF/SO_RCVBUF) ? Ou il s'agit de tes propres buffers internes ?

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Bonjour ,

    En fait j'aimerais savoir s'il y a une limitation de la taille du buffer dans l'utilisation des methodes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    virtual int Receive(
       void* lpBuf,
       int nBufLen,
       int nFlags = 0 
    );
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    virtual int Send(
       const void* lpBuf,
       int nBufLen,
       int nFlags = 0 
    );
    de la classe CAsyncSocket

  4. #4
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    A mon sens, ce sont la taille des buffers internes, ceux réglés justement par SetSockOpt (SO_SNDBUF/SO_RCVBUF) ?

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Effectivement ça dois être ça.
    Mais bon maintenant y a t'il une limitation dans la taille de ces buffers ?
    En fait ce que j'aimerais savoir c'est si 'il a un rapport entre vitesse de transport de mon fichier et taille du buffer ?

  6. #6
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Citation Envoyé par jafque Voir le message
    Effectivement ça dois être ça.
    Mais bon maintenant y a t'il une limitation dans la taille de ces buffers ?
    Je ne sais pas. Faudrait potasser la doc microsoft...
    Citation Envoyé par jafque Voir le message
    En fait ce que j'aimerais savoir c'est si 'il a un rapport entre vitesse de transport de mon fichier et taille du buffer ?
    Oui et non. Par exemple, pour la réception, si le temps de lecture est supérieur au temps d'arrivée des données, alors la taille du buffer va influer sur le temps d'émission de l'autre partie. Mais, en général, j'aurais tendance à penser que ton noeud va se situer sur le réseau.
    Faudrait que tu fasses des tests avec tes applis pour voir quel cas s'applique dans ta configuration.

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Effectivement ,

    Un tout grand merci pour ces réponses

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

Discussions similaires

  1. probleme lecture ecriture dans des fichiers
    Par xman_genius dans le forum C
    Réponses: 9
    Dernier message: 16/01/2007, 20h50
  2. Lecture ecriture dans un fichier binaire
    Par laetous dans le forum C
    Réponses: 13
    Dernier message: 26/08/2006, 09h50
  3. C -> Perl : Lecture ecriture sur des Sockets
    Par caesarvanou dans le forum Programmation et administration système
    Réponses: 2
    Dernier message: 05/05/2006, 12h20
  4. ouverture/lecture/ecriture dans un fichier en mode binaire
    Par dirty_boy dans le forum Débuter
    Réponses: 2
    Dernier message: 15/03/2006, 09h38
  5. [JDBC]lecture/ecriture dans une base de donnée
    Par tarik75 dans le forum JDBC
    Réponses: 7
    Dernier message: 30/06/2005, 13h42

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