NOTE: The subject behavior is described in Request For Comment (RFC) 1867, "Form-based File Upload in HTML".

NOTE: See Form-based Device Input and Upload in HTML.

The slow performance occurs because the default Winsock Send buffer is 8 KB (kilobytes) , which roughly translates to 80 KBps (KB per second), regardless of network bandwidth.

You can cause Internet Explorer to use a larger Send buffer when communicating with Winsock:

NOTE: Make sure that REG.EXE, built into Windows XP and Windows Server 2003, or REG.EXE from the Windows 2000 Support Tools on the CD-ROM, is available on your computer.

1. Close all instances of Internet Explorer.

2. Open a CMD.EXE window.

3. Type the following command and press Enter:

REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /V SocketSendBufferLength /T REG_DWORD /F /D <Buffer Size in 8 KB increments>

where <Buffer Size in 8 KB increments> should be tested with the lowest acceptable value from the following table:

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. Test the upload performance.

5. If not acceptable, repeat steps 1 - 4 with the next higher buffer size.