So ever since I installed Windows Vista, I’ve been having problems connecting to our Windows Server 2003 workstation through terminal services. Looks like I finally found an answer to the problem. After connecting to the server, I am able to see the desktop, but the connection typically freezes on this screen for about a minute with the following message:

The connection has been lost. Attempting to reconnect to your session…

Connection attempt: x of 20

Apparently this problem is because Windows Vista has a low initial setting on it’s Auto Tuning feature. What Auto-Tuning does is continually adjusts the TCP/IP receive windows size based on current (and changing) network conditions. It seems that many people have reported problems with auto-tuning causing various network timeout issues with some applications and routers. If you’re experiencing any of these problems, you can turn off Auto Tuning as described below.

Here’s what I did to fix this Remote Desktop Connection problem:

  1. I had to create a new shortcut on the desktop. Enter the command “cmd” as the shortcut command.
  2. Right-click on the shortcut and select “Run as Administrator”. This will open up a DOS window.
  3. Enter the following command
    netsh interface tcp set global autotuninglevel=disabled

Here’s another version of how to disable auto-tuning as seen on ComputerBits

 

  1. Open up an Elevated Command Prompt
  2. Enter the following command to disable auto-tuning
    netsh interface tcp set global autotuninglevel=disabled

And if you find that disabling auto-tuning doesn’t fix your problem, you can turn it back on as follows:

  1. Open up an Elevated Command Prompt
  2. Enter the following command to enable auto-tuning
    netsh interface tcp set global autotuninglevel=normal

And if you’d like to just view the states of your current TCP parameters, you can use this command:
netsh interface tcp show global