L'opération de téléchargement d'un fichier HTTP est très longue à se terminer

IMPORTANT : cet article contient des informations sur la modification du Registre. Avant de modifier le Registre, pensez à le sauvegarder et assurez-vous que vous savez le restaurer en cas de problème. Pour plus d'informations sur la sauvegarde, la restauration et la modification du Registre, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
256986 Description du Registre de Microsoft Windows

Symptômes

Lorsque vous utilisez la fonctionnalité de téléchargement de fichiers HTTP pour télécharger des fichiers de plusieurs mégaoctets, l'opération de téléchargement peut durer très longtemps.

Remarque Ce problème est décrit dans le document RFC (Request For Comment) 1867 intitulé « Form-based File Upload in HTML » (Téléchargement de fichiers basés sur des formulaires à l'aide du protocole HTML).

Cause

Ce problème se produit, car la taille de la mémoire tampon d'envoi Winsock par défaut étant de 8 Ko, Internet Explorer fournit les données sous forme de segments de 8 Ko. Sur un réseau moyen, cela équivaut approximativement à 80 Kilo-octets par seconde (Ko/s), quelle que soit la bande passante.

Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :

214397 INFORMATIONS : Problèmes de conception – Envoi de petits segments de données via TCP avec Winsock

Résolution

Pour résoudre ce problème, configurez Internet Explorer de façon à augmenter la mémoire tampon d'envoi lors de la communication avec Winsock. Cette action optimise les performances réseau lorsque vous utilisez la méthode de téléchargement de fichiers HTTP. Pour cela, procédez comme suit :

AVERTISSEMENT Toute mauvaise utilisation de l'Éditeur du Registre risque de générer des problèmes graves, pouvant vous obliger à réinstaller votre système d'exploitation. Microsoft ne peut pas garantir que les problèmes résultant d'une mauvaise utilisation de l'Éditeur du Registre puissent être résolus. Vous assumez l'ensemble des risques liés à l'utilisation de cet outil.
  1. Démarrez l'Éditeur du Registre (Regedt32.exe).
  2. Recherchez la clé de Registre suivante, puis cliquez sur celle-ci :
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
  3. Dans le menu Edition, cliquez sur Ajout d'une valeur, puis ajoutez la valeur de Registre suivante :
    Nom de la valeur : SocketSendBufferLength
    Type de données : REG_DWORD
    Base : Decimal
    Données de la valeur : Taille de mémoire tampon souhaitée (en octets)
    Options de taille de mémoire tampon :

    Mémoire tampon de 16 Ko = 16384
    Mémoire tampon de 24 Ko = 24576
    Mémoire tampon de 32 Ko = 32768
    Mémoire tampon de 40 Ko = 40960
    Mémoire tampon de 48 Ko = 49152
    Mémoire tampon de 56 Ko = 57344
    Mémoire tampon de 64 Ko = 65536
  4. Fermez l'Éditeur du Registre.
Veillez à tester chaque valeur, en commençant par la mémoire tampon de 16 Ko. Lorsque la vitesse de téléchargement devient acceptable, sélectionnez la valeur de mémoire tampon correspondante.

Statut

Ce comportement est inhérent au produit.

Plus d'informations

Lorsque vous utilisez la procédure décrite dans la section « Résolution » de cet article, les programmes utilisant la fonction WININETAPI HTTPSendRequest (tel que décrit sur le site Web MSDN (Microsoft Developer Network) suivant) allouent et demandent une mémoire tampon d'envoi Winsock, tel que défini par la clé de Registre.

Pour plus d'informations sur la fonction HTTPSendRequest, reportez-vous au site Web de Microsoft à l'adresse suivante (en anglais) :

Pour plus d'informations sur le comportement de la mémoire tampon d'envoi Winsock, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft.

214397 INFORMATIONS : Problèmes de conception – Envoi de segments de données via TCP avec Winsock
Propriétés

ID d'article : 329781 - Dernière mise à jour : 29 janv. 2008 - Révision : 1

Commentaires