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 = 655364. Test the upload performance.
5. If not acceptable, repeat steps 1 - 4 with the next higher buffer size.