HTTP File Upload Operation Takes a Long Time to Complete

来源:百度文库 编辑:神马文学网 时间:2024/05/08 11:19:24
View products that this article applies to.
Article ID : 329781
Last Review : June 30, 2005
Revision : 3.1
This article was previously published under Q329781
IMPORTANT: This article contains information about modifying the registry. Before you modify the registry, make sure to back it up and make sure that you understand how to restore the registry if a problem occurs. For information about how to back up, restore, and edit the registry, click the following article number to view the article in the Microsoft Knowledge Base:256986 (http://support.microsoft.com/kb/256986/EN-US/) Description of the Microsoft Windows Registry
SYMPTOMS
When you use the HTTP File Upload feature to upload multi-megabyte files, the upload operation may take a very long time to complete.
Note This issue is documented in Request For Comment (RFC) 1867, "Form-based File Upload in HTML."Back to the top
CAUSE
This issue occurs because the default Winsock Send buffer is 8 kilobytes (KB), and therefore Internet Explorer supplies the data in 8 KB chunks. On an average network, this equals approximately 80 KB per second (KBps), regardless of network bandwidth.
For additional information, click the article number below to view the article in the Microsoft Knowledge Base:214397 (http://support.microsoft.com/kb/214397/EN-US/) INFO: Design Issues - Sending Small Data Segments Over TCP w/Winsock
Back to the top
RESOLUTION
To resolve this issue, configure Internet Explorer to increase the Send buffer when communicating with Winsock. This increases network performance when you use the HTTP File Upload method. To do this, follow these steps.
WARNING: If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.
1. Start Registry Editor (Regedt32.exe).
2. Locate and then click the following registry key: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
3. On the Edit menu, click Add Value, and then add the following registry value: Value name: SocketSendBufferLength
Data type: REG_DWORD
Radix: Decimal
Value data: Buffer size that you want (in bytes)
Buffer size value options: 16-KB Buffer = 16384
24-KB Buffer = 24576
32-KB Buffer = 32768
40-KB Buffer = 40960
48-KB Buffer = 49152
56-KB Buffer = 57344
64-KB Buffer = 65536
4. Quit Registry Editor.