I have a web service running under IIS 6.0 on a Windows Server 2003 R2 machine. One of the web service calls returns a very large dataset (10 mb). When the client application receives this it gets the first 100 kb or so instantly then transfer slows to around 5-6 kb/s. I tried tweaking every setting I could find and nothing helped.
Next I set up filezilla on the same server and had it server a 10 mb pdf. Downloading this pdf to the same client machine exhibits the same behavior, first 100 or so kb comes through at 500 kb/s then it drops to 5-6 kbs for the rest.
From there I've now tried tweaking various registry settings such as the tcpack one but nothing is helping it. The machine has no load on it, these test requests I'm making are the only requests. I'm on the same LAN as this machine, the ping is essentially 0 as it is just a simple router between my client and this server. This same client hooked up to a windows 2008 server running IIS 7 gets the entire 10 mb file in about 3 seconds -- unfortunately I can't tell all of our customers to upgrade to IIS 7/win 2008 :)
Any suggestions on where to look or what to try next? I see a lot of similar questions but none seem to provide an answer for this case, I mean this is a serious application server on an enterprise LAN transferring files at 5kbs something very basic must be wrong here right?
--- I can't answer my own question for a few hours yet but this is the answer:
Coding Gorilla's answer led me to start looking at the NIC settings, it was at this point that I realized this is a XEN virtual server with an emulated NIC (I'm just a programmer trying to get this server running so I had assumed it was a real server).
A few quick searches later led me to this kb article: http://support.microsoft.com/kb/888750
I used method 2, rebooted and now everything is running full speed again. Hopefully this will help others.