В Windows 10/11 и Windows Server 2022/2019/2016 при подключении к серверу удаленных рабочих столов (RDS) используется UDP-порт 3389 в дополнение к стандартному RDP-порту TCP/3389. Когда ваш RDP-клиент подключается к серверу, создается несколько сеансов. Управляющий сеанс TCP (HTTP) используется для передачи команд клавиатуры и мыши, а несколько сеансов UDP — для передачи изображений удаленного рабочего стола.

Проверьте, использует ли ваш клиент MSTSC транспортный режим UDP, нажав кнопку Информация о подключении значок в верхней панели подключения RDP. В нашем случае используется протокол UDP.

The quality of the connection to the remote computer is excellent and UDP is enabled.

Протокол удаленного рабочего стола: Транспорт UDP Протокол удаленного рабочего стола: Транспорт UDP

По мнению Microsoft, использование протокола UDP позволяет значительно улучшить отзывчивость сеанса Remote Desktop за счет уменьшения количества повторных передач и возможности работы через нестабильные соединения с высокой задержкой.

RDP-соединение зависает при использовании протокола UDP

В некоторых случаях использование протокола UDP для RDP-соединения может вызвать проблемы: периодическое зависание изображения, случайное отключение RDP-сессии, пользователи видят черный экран вместо удаленного рабочего стола и т. д. В таких случаях обычно помогает повторное подключение к сеансу RDP. Иногда эта проблема возникает часто и влияет на нормальную работу пользователя.

Возникает проблема с зависанием сеансов RDP:

  • Если вы используете сеансы RDP внутри VPN-туннелей (обычно это происходит при использовании OpenVPN-сервера). Причиной этого является фрагментация UDP-пакетов. Это вызвано фрагментацией UDP-пакетов при их отправке через VPN-туннель (из-за различных настроек MTU);
  • После обновления Windows 11/10 до сборки 22H2/22H2;
  • При использовании шлюза удаленных рабочих столов на Windows Server 2022 и порта 3391 для UDP-трафика.
Более того, проблема не связана с низкой производительностью хоста RDS, как описано в примере по ссылке: сервер имеет достаточно свободных ресурсов, память и процессор не используются с высокой скоростью.

Как отключить протокол UDP в RDP

Чтобы решить проблему зависания сеансов RDP при использовании VPN-туннелей, можно попробовать отключить использование транспортного протокола UDP.

Вы можете отключить UDP в RDP с помощью групповой политики.

  1. Откройте локальную консоль редактора GPO (gpedit.msc);
  2. Развернуть Конфигурация компьютера -> Административные шаблоны -> Компоненты Windows -> Службы удаленных рабочих столов -> Хост сеанса удаленного рабочего стола -> Подключения;
  3. Включите политику Выберите транспортные протоколы RDP и установите значение Выбрать тип транспорта = Использовать только TCP; GPO: заставить RDP использовать только TCPGPO: заставить RDP использовать только TCP
  4. Перезапустите RDS/RDP-сервер, чтобы настройки вступили в силу;
  5. Снова подключитесь к RDP-серверу и щелкните значок Информация о подключении. Должно появиться следующее сообщение:
The quality of the connection to the remote computer is good.

TCP-транспорт для удаленного рабочего столаTCP-транспорт для удаленного рабочего стола

Это означает, что для соединения RDP используется только TCP.

Этот метод позволяет отключить использование транспортного протокола UDP на стороне сервера RDP/RDS. Предположим, вы хотите отключить UDP для Remote Desktop на стороне клиента. В этом случае необходимо включить Отключение UDP на клиенте в разделе Конфигурация компьютера -> Административные шаблоны -> Компоненты Windows -> Службы удаленных рабочих столов -> Клиент подключения к удаленному рабочему столу. Групповая политика: Отключить UDP на клиенте Групповая политика: Выключить UDP на клиенте

После внесения изменений обновите параметры локальной политики с помощью команды gpupdate /force и перезапустите клиент mstsc.exe.

Вы также можете включить эту опцию в реестре (политика GPO, упомянутая выше, соответствует fClientDisableUDP параметр реестра):

reg add "HKLM\software\policies\microsoft\windows nt\Terminal Services\Client" /v fClientDisableUDP /d 1 /t REG_DWORD

Чтобы отключить UDP по RDP на компьютерах, подключенных к домену Active Directory, необходимо настроить GPO с помощью консоли управления групповой политикой домена (gpmc.msc).