Устранение неполадок RDP Shortpath для общедоступных сетей
Эта статья помогает устранить неполадки при использовании протокола удаленного рабочего стола (RDP) Shortpath для общедоступных сетей.
Проверка STUN, подключения к серверу TURN и типа NAT
Вы можете проверить подключение к конечным точкам STUN и TURN и проверить, работает ли базовая функция протокола UDP, выполнив исполняемый avdnettest.exe. Вот ссылка на скачивание последней версии avdnettest.exe.
Вы можете запустить avdnettest.exe , дважды щелкнув файл или выполнив его из командной строки. Выходные данные выглядят примерно так, если подключение выполнено успешно:
Checking DNS service ... OK
Checking TURN support ... OK
Checking ACS server <IP Address:Port Number> ... OK
Checking ACS server <IP Address:Port Number> ... OK
You have access to TURN servers and your NAT type appears to be 'cone shaped'.
Shortpath for public networks is very likely to work on this host.
Сведения об ошибках, зарегистрированные в Log Analytics
Ниже приведены некоторые заголовки ошибок, которые могут отображаться в Log Analytics и то, что они означают.
ShortpathTransportNetworkDrop
Для подключений протокола TCP существуют два разных пути:
- От узла сеанса к шлюзу
- От шлюза к клиенту
Однако для подключений UDP это различие неприменимо, так как шлюз не участвует. Другое различие для TCP заключается в том, что во многих случаях одна из конечных точек или, возможно, какая-то инфраструктура в середине, создает пакет сброса TCP (бит управления RST), что приводит к жесткому завершении tcp-подключения. Это работает, так как TCP RST (а также TCP FIN для корректного завершения работы) обрабатывается операционной системой, а также некоторыми маршрутизаторами, но не приложением. Это означает, что если приложение завершает работу, Windows уведомляет одноранговый узел о том, что TCP-подключение отсутствует, но такой механизм не существует для UDP.
Большинство ошибок подключения, таких как ConnectionFailedClientDisconnect и ConnectionFailedServerDisconnect, вызваны пакетами сброса TCP, а не временем ожидания. Для операционной системы или маршрутизатора нет способа сигнализировать о чем-либо с помощью UDP, поэтому единственным способом узнать, что одноранговый узел исчезает по истечении времени ожидания.
ShortpathTransportReliabilityThresholdFailure
Эта ошибка активируется, если определенный пакет не проходит, даже если подключение не является мертвым. Пакет обижается до 50 раз, поэтому маловероятно, но может произойти в следующих сценариях:
- Подключение быстро и стабильно, прежде чем он внезапно перестанет работать. Время ожидания, необходимое, пока пакет не будет объявлен потерянным, зависит от времени кругового пути (RTT) между узлом клиента и сеанса. Если RTT низка, одна сторона может попытаться повторно отправить пакет часто, поэтому время, необходимое для достижения 50 попыток, может быть меньше обычного значения времени ожидания в 17 секунд.
- Пакет большой. Максимальный размер пакета, который можно передать, ограничен. Размер пакета проверяется, но может изменяться и иногда сжиматься. В этом случае возможно, что отправленный пакет слишком велик и последовательно завершится сбоем.
ConnectionBrokenMissedHeartbeatThresholdExceeded
Это время ожидания уровня RDP. Из-за неправильной настройки время ожидания уровня RDP иногда активируется до истечения времени ожидания уровня UDP.