Настройка удаленного сеанса зависает при попытке подключения к удаленному рабочему столу

Столкнулся с такой проблемой, что подключение к удаленному рабочему столу в локальной сети зависает на моменте «настройка удаленного сеанса», подключение может происходит 2, 5, 10 минут, но иногда и сразу. Решение в продолжении.

Дело в том, что в новой версии набора протоколов TCP/IP для Windows 7\Server 2008 была реализована функция TCP Receive Window Auto-Tuning — автоматическая настройка окна приема TCP. Теоретически эта функция предназначена для оптимизации пропускной способности и улучшения работы сети, а практически является причиной множества проблем.

Теория
Окно приема TCP используется для ограничения потока данных и для обеспечения возможности контроля потока на принимающей стороне. Окно TCP представляет собой объем данных, который получатель разрешает отправлять за один прием. То есть, чем больше окно, тем лучше работа в сетях с высокой пропускной способностью.
Для TCP/IP в Windows XP\Server 2003 максимальный размер окна приема фиксирован и по умолчению составляет 64КБ. В Windows 7\Server 2008 оптимальный размер окна приема определяется динамически. Для этого измеряется пропускная способности канала и скорость извлечения приложением данных из окна приема, после чего размер окна адаптируется в соответствии с этими параметрами. Автотюнинг использует масштабирование окна TCP, благодаря чему максимальный размер окна приема составляет 16 МБ.
В идеале при включении автотюнинга передача данных по сети должна стать более эффективной. Однако не всё так просто. Например, приложение не успевает извлекать данные, текущее окно приема заполняется и принимающий узел начинает уменьшать его размер. При заполнении максимального окна приема размер текущего окна уменьшается до 0 байт, после чего передача данных прекратится.

Практика
Как я уже говорил, проблему с автотюнингом очень сложно локализовать. Поэтому, при наличии неопределенных проблем с сетевыми подключениями в первую очередь смотрим настройки TCP. Сделать это можно из командной строки (с повышенными привилегиями) командой:

netsh interface tcp show global

Здесь нас интересует параметр ″Уровень автонастройки окна получения″ (англ. Receive Window Auto-Tuning Level). Он может принимать значения:

• disabled — автотюнинг выключен, используется фиксированное значение размера приемного окна TCP — 64KB;
• higlyrestricted — позволяет размеру приемного окна выходить за пределы значения по умолчанию, очень ограниченно превышая его;
• restricted — допускает более существенный рост размера окна относительно значения по умолчанию;
• normal — по умолчанию. Позволяет менять размер окна в зависимости от различных условий работы;
• experimental — позволяет увеличивать размер окна до очень больших значений. Следует применять очень осторожно.

Можно попробовать подобрать нужный уровень, например попробовать higlyrestricted, а если не помогает, то отключить:

netsh interface tcp set global autotuninglevel=disabled

После изменения настройки компьютер следует перезагрузить.
Проблема с автотюнингом присутствует в операционных системах Windows Vista, Windows 7, Windows Server 2008 и 2008 R2. По Windows 8 и Server 2012 пока данных нет, хотя автотюнинг в них есть и используется.

Источник — WindowsNotes.Ru