Slow File Download Over VPN

file-sharingvpnwindows-server-2003windows-xp

We are experiencing difficulty with a Windows Server 2003 that is connected to our network via a VPN.

Everything seems to work fine with this server except file share downloads to local machines.

The local machines are running Windows XP. Remote Desktop connections to the same server work great. Uploads to file shares also work acceptibly. (This is surprising because the network between us is actually rated higher for download than upload.)

When dragging and dropping files to the local system, there is a delay > 10 seconds before any progress bar activity. Download of files via the command prompt has the same characteristics. Delay is incurred for each file to be transferred, not once for the entire connection. I have tried ping address -f -l 1472 to verify that this is not a "black hole router" problem http://support.microsoft.com/kb/314825. Same delay regardless of whether a mapped drive or a UNC path is used or whether the connection is made by specifying the IP address instead of the host name. Disabling "NetBIOS over TCP/IP" also did not help. The registry does not have any advanced TCP/IP settings (such as MTU) altered from their defaults. I tried reducing MTU in the registry and that didn't help either.

Any ideas? Also, workarounds that involve adjusting the local XP machine configuration instead of the LAN/WAN or server configuration would be greatly appreciated, if possible.

Best Answer

Sniff the traffic between the client and the server and see what's happening. There's no better way to get to the bottom of a protocol problem than to see what the computers are saying to each other.

The SMB protocol is a total dog when running over a latent network. I also suspect that you're seeing "progress bar" activity sooner on uploads because of implementation artifacts of the Windows shell, not because data is actually being transferred sooner. My guess is that the same kind of things are happening on every file transfer. A per-file latency lends some creedence to such a conclusion.