Partilhar via


Resolver problemas do RDP Shortpath para redes públicas

Importante

A utilização do RDP Shortpath para redes públicas com TURN para o Azure Virtual Desktop está atualmente em PRÉ-VISUALIZAÇÃO. Veja Termos de Utilização Complementares da Pré-visualizações do Microsoft Azure para obter os termos legais que se aplicam às funcionalidades do Azure que estão na versão beta, na pré-visualização ou que ainda não foram lançadas para disponibilidade geral.

Se estiver a ter problemas ao utilizar o RDP Shortpath para redes públicas, utilize as informações neste artigo para ajudar a resolver problemas.

Verificar a conectividade do servidor STUN/TURN e o tipo NAT

Pode validar a conectividade aos pontos finais STUN/TURN e verificar se a funcionalidade UDP básica funciona ao executar o executável avdnettest.exe. Eis uma ligação de transferência para a versão mais recente do avdnettest.exe.

Pode executar avdnettest.exe ao fazer duplo clique no ficheiro ou ao executá-lo a partir da linha de comandos. O resultado terá um aspeto semelhante ao seguinte se a conectividade for bem-sucedida:

Checking DNS service ... OK
Checking TURN support ... OK
Checking ACS server 20.202.68.109:3478 ... OK
Checking ACS server 20.202.21.66:3478 ... 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.

Importante

Durante a pré-visualização, TURN só está disponível para ligações a anfitriões de sessão num conjunto de anfitriões de validação. Para configurar o conjunto de anfitriões como um ambiente de validação, veja Definir o conjunto de anfitriões como um ambiente de validação.

Informações de erro registadas no Log Analytics

Seguem-se alguns títulos de erro que poderá ver registados no Log Analytics e o que significam.

ShortpathTransportNetworkDrop

Para o TCP, diferenciamos dois caminhos diferentes - o anfitrião de sessão para o gateway e o gateway para o cliente - mas isso não faz sentido para o UDP, uma vez que não existe um gateway. A outra distinção para TCP é que, em muitos casos, um dos pontos finais, ou talvez alguma infraestrutura no meio, gera um pacote de Reposição TCP (bit de controlo RST), o que causa um encerramento difícil da ligação TCP. Isto funciona porque o TCP RST (e também a FIN TCP para encerramento correto) é processado pelo sistema operativo e também por alguns routers, mas não pela aplicação. Isto significa que, se uma aplicação falhar, o Windows notificará o elemento da rede de que a ligação TCP desapareceu, mas não existe esse mecanismo para UDP.

A maioria dos erros de ligação, como ConnectionFailedClientDisconnect e ConnectionFailedServerDisconnect, são causados por pacotes de Reposição TCP e não por um tempo limite. Não existe nenhuma forma de o sistema operativo ou um router sinalizar algo com o UDP, pelo que a única forma de saber que o elemento da rede se foi é através de uma mensagem de tempo limite.

ShortpathTransportReliabilityThresholdFailure

Este erro é acionado se um pacote específico não passar, mesmo que a ligação não esteja inativa. O pacote é reenviado até 50 vezes, pelo que é improvável, mas pode acontecer nos seguintes cenários:

  1. A ligação era muito rápida e estável antes que de repente parasse de funcionar. O tempo limite necessário até que um pacote seja declarado perdido depende do tempo de ida e volta (RTT) entre o cliente e o anfitrião da sessão. Se o RTT for muito baixo, um lado pode tentar reenviar um pacote com muita frequência, pelo que o tempo que demora a atingir 50 tentativas pode ser inferior ao valor de tempo limite normal de 17 segundos.

  2. O pacote é muito grande. O tamanho máximo do pacote que pode ser transmitido é limitado. O tamanho do pacote é sondado, mas pode oscilar e, por vezes, diminuir. Se isso acontecer, é possível que o pacote que está a ser enviado seja demasiado grande e falhe consistentemente.

ConnectionBrokenMissedHeartbeatThresholdExceeded

Este é um tempo limite ao nível do RDP. Devido a uma configuração incorreta, por vezes, o tempo limite do nível RDP era acionado antes do tempo limite ao nível do UDP.