We are getting slow file uploads using HTTPS in Internet Explorer.

We have several hundred computers, and are currently undergoing a lease rotation (new machines replacing the now ex-lease machines).

On some of the machines, we are noticing that a normally 30 second file upload to an external website using https is taking over 90 seconds (actually experimentation has show that it is more like 110-130 seconds).

Generally, a machine will work ok, and then start going slow. The new machines almost universally have this problem (I'm getting some information second hand so I'm not sure if all of the new machines are having the problem). All users on a machine, once it starts to go slow, have the slowness problem. Generally, the old machines don't have the problem.

For computers having the problem, looking at the network traffic, it looks like the file is being uploaded in 16K byte chunks (11 TCP messages) followed by a 3/10 of a second delay before the next set of messages is sent. Oh, yeah, something you should know : we are in Australia, but all of our web traffic goes through Canada, and the destination site is in the US (I think). I'm trying to set up a test on an unaffected computer with WireShark.

We have implemented the BreakingBufferSize fix in the registry, to LocalMachine/.../IE/Main/... and CurrentUser/.../IE/Main/... (as well as in LocalMachine/.../policies/... (although this was done by someone else)). To no avail.

We are running Windows XP SP2. The problem happens in both IE 6 and IE 7. Due to being under a corporate umbrella (hence the Canadian connection), our systems are probably not especially current on XP patches.

Any ideas as to what's causing this annoying problem?


The solution turned out to be: HTTP File Upload Operation Takes a Long Time to Complete


When you use the HTTP File Upload feature to upload multi-megabyte files, the upload operation may take a very long time to complete.

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.

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.


Compare the wireshark trace of good and bad hosts. On your kind of network, latency is the key problem. If there are too many acknowledgements then the transfer rate will suffer. The way to limit their number is to increase the tcp windows size. But it is complicated due dependency of different mysterious parameters.

Compare the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters key on new and old hosts. maybe the old hosts were twiked.

Is it happening only on https connections? have you tried other kinds of uploads?

search google for "tcp xp window size"

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy