Taille a envoyer par socket

dyroj Messages postés 123 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 18 juin 2012 - 3 févr. 2009 à 18:48
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013 - 5 févr. 2009 à 10:14
Mes salutation a tous,
j'ai créer un programme d'envoi de fichier par socket, il marche tres bien par cable mais comme je suis en wifi c'est un peut lent. jenvoi 10000 octect a chaque send, est ce que c'est tros ou pas assez.
je voudrai aussi savoir si vous avez une idée de comment je pourait savoir le debi du transfert et avec calculer estimer le temps qu'il reste. et si possible modifier le debit + ou -.
++

5 réponses

dyroj Messages postés 123 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 18 juin 2012
3 févr. 2009 à 18:56
Ha oui je voulais aussi savoir si c'étais possible de faire mon serveur de maniere à y acceder à partir d'internet sans intervenir physiquement sur le routeur.j'avais lu il y a longtemp quelque chose qui parlait de faire passer les données par le port 80.

cordialement Dyroj;
0
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
4 févr. 2009 à 17:19
Salut,

Par défaut un socket peut supporter 8ko de donnée par envoie (doit 1024*8 octets = 8192).
Cette limite n'est pas anodine et est fortement conseillé lors de transfert de données. malgré cela tu peux facilement la changer (cf. SO_SNDBUF et SO_RDVBUF).

Après rien n'empeche que ce soit ta conenxion Wifi qui soit lente.

Shell
0
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
4 févr. 2009 à 17:23
Regarde ce lien il explique tout de A à Z sur les problèmes et work-around associés au transfert de fichiers :
http://support.microsoft.com/kb/823764/EN-US/

Shell
0
dyroj Messages postés 123 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 18 juin 2012
4 févr. 2009 à 17:43
merci mais je compren pas bien langlai.
tu me dit que par defaut je peut envoyer 8192 octet, mais alors comment sa se fait que moi jarive a en envoyer lagement plus.
et a tu des idée pour mais autre question .
++
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
5 févr. 2009 à 10:14
Je ne vais malheureusement pas avoir le temps de te traduire les éléments important de ce document.
En gros quand tu envoies 10ko de donnée, le socket en envoie d'abord 8ko et après 2ko,  mais ce n'est pas du totu optimisé.
En TCP il y a un checksum sur les données qui est très couteux. En gros quand tu envoie 8ko il y a un checksum, quand tu envoies les 2ko restant il y a encore un checksum, et ainsi de suite....

Pour determiner le débit c'est pas compliqué, entre chaque envoie tu regardes la quantité de données transmises et le temps écoulé. A toi de faire ton petit calcul...

Exemple:
En 1 minute je constate que j'ai envoyé 800ko, j'en déduis alors que mon débit moyen est de 800 / 60 = 13.3ko/sec.

Tu trouveras de nombreuses sources sur ce site qui pouront t'aider, fait une recherche sur socket et transfert fichiers.

Shell
0