Shortpath RDP para Área de Trabalho Virtual do Azure
Artigo
O RDP Shortpath estabelece um transporte direto baseado em UDP entre um aplicativo Windows de dispositivo local ou o aplicativo de Área de Trabalho Remota em plataformas com suporte e host de sessão na Área de Trabalho Virtual do Azure.
Por padrão, o protocolo RDP (Remote Desktop Protocol) tenta estabelecer uma sessão remota usando UDP e usa um transporte de conexão reversa baseado em TCP como um mecanismo de conexão de fallback. O transporte baseado em UDP oferece melhor confiabilidade de conexão e latência mais consistente. O transporte de conexão reversa baseado em TCP fornece a melhor compatibilidade com várias configurações de rede e tem uma alta taxa de sucesso para estabelecer conexões RDP.
O RDP Shortpath pode ser usado de duas maneiras:
Redes gerenciadas, onde a conectividade direta é estabelecida entre o cliente e o host da sessão ao usar uma conexão privada, como uma rede virtual privada (VPN). Uma conexão usando uma rede gerenciada é estabelecida de uma das seguintes maneiras:
Uma conexão UDP direta entre o dispositivo cliente e o host da sessão, onde você precisa habilitar o ouvinte RDP Shortpath e permitir que uma porta de entrada em cada host de sessão aceite conexões.
Uma conexão UDP direta entre o dispositivo cliente e o host da sessão, usando o protocolo Simple Traversal Underneath NAT (STUN) entre um cliente e o host da sessão. As portas de entrada no host da sessão não precisam ser permitidas.
Redes públicas, onde a conectividade direta é estabelecida entre o cliente e o host da sessão ao usar uma conexão pública. Há dois tipos de conexão ao usar uma conexão pública, que são listados aqui em ordem de preferência:
Uma conexão UDP direta usando o protocolo Simple Traversal Underneath NAT (STUN) entre um cliente e um host de sessão.
Uma conexão UDP indireta usando o protocolo Traversal Using Relay NAT (TURN) com um relé entre um cliente e um host de sessão.
O transporte usado para RDP Shortpath é baseado no Universal Rate Control Protocol (URCP). O URCP melhora o UDP com monitoramento ativo das condições da rede e fornece uma utilização justa e completa do link. A URCP opera com baixos níveis de atraso e perda, conforme necessário.
Importante
O RDP Shortpath para redes públicas com TURN só está disponível na nuvem pública do Azure.
Principais benefícios
Usar o RDP Shortpath tem os seguintes benefícios principais:
Usando o URCP para melhorar o UDP alcança o melhor desempenho aprendendo dinamicamente os parâmetros da rede e fornecendo ao protocolo um mecanismo de controle de taxa.
A remoção de pontos de relé extra reduz o tempo de ida e volta, o que melhora a confiabilidade da conexão e a experiência do usuário com aplicativos e métodos de entrada sensíveis à latência.
Além disso, para redes geridas:
O RDP Shortpath oferece suporte para configurar a prioridade de Qualidade de Serviço (QoS) para conexões RDP por meio de marcas DSCP (Ponto de Código de Serviços Diferenciados).
O transporte RDP Shortpath permite limitar o tráfego de rede de saída especificando uma taxa de aceleração para cada sessão.
Como funciona o RDP Shortpath
Para saber como o RDP Shortpath funciona para redes gerenciadas e redes públicas, selecione cada uma das guias a seguir.
Ter conectividade direta de linha de visão significa que o cliente pode se conectar diretamente ao host da sessão sem ser bloqueado por firewalls.
Nota
Se você estiver usando outros tipos de VPN para se conectar ao Azure, recomendamos usar uma VPN baseada em UDP. Embora a maioria das soluções VPN baseadas em TCP ofereça suporte a UDP aninhado, elas adicionam sobrecarga herdada do controle de congestionamento TCP, o que diminui o desempenho do RDP.
Para usar o RDP Shortpath para redes gerenciadas, você deve habilitar um ouvinte UDP em seus hosts de sessão. Por padrão, a porta 3390 é usada, embora você possa usar uma porta diferente.
O diagrama a seguir fornece uma visão geral de alto nível das conexões de rede ao usar o RDP Shortpath para redes gerenciadas e hosts de sessão ingressados em um domínio do Ative Directory.
Sequência de conexão
Todas as conexões começam estabelecendo um transporte de conexão reversa baseado em TCP pelo Gateway de Área de Trabalho Virtual do Azure. Em seguida, o cliente e o host da sessão estabelecem o transporte RDP inicial e começam a trocar seus recursos. Esses recursos são negociados usando o seguinte processo:
O host da sessão envia a lista de seus endereços IPv4 e IPv6 para o cliente.
O cliente inicia o thread em segundo plano para estabelecer um transporte paralelo baseado em UDP diretamente para um dos endereços IP do host da sessão.
Enquanto o cliente está investigando os endereços IP fornecidos, ele continua a estabelecer a conexão inicial através do transporte de conexão reversa para garantir que não haja atraso na conexão do usuário.
Se o cliente tiver uma conexão direta com o host da sessão, o cliente estabelecerá uma conexão segura usando TLS sobre UDP confiável.
Depois de estabelecer o transporte RDP Shortpath, todos os canais virtuais dinâmicos (DVCs), incluindo gráficos remotos, entrada e redirecionamento de dispositivo, são movidos para o novo transporte. No entanto, se um firewall ou topologia de rede impedir que o cliente estabeleça conectividade UDP direta, o RDP continuará com um transporte de conexão inversa.
Se os usuários tiverem o RDP Shortpath para rede gerenciada e redes públicas disponíveis para eles, o algoritmo encontrado pela primeira vez será usado. O usuário usará qualquer conexão estabelecida primeiro para essa sessão.
Para fornecer a melhor chance de uma conexão UDP ser bem-sucedida ao usar uma conexão pública, existem os tipos de conexão direta e indireta :
Conexão direta: STUN é usado para estabelecer uma conexão UDP direta entre um cliente e um host de sessão. Para estabelecer essa conexão, o cliente e o host da sessão devem ser capazes de se conectar um ao outro por meio de um endereço IP público e uma porta negociada. No entanto, a maioria dos clientes não sabe seu próprio endereço IP público, pois eles se sentam atrás de um dispositivo de gateway NAT (Network Address Translation). STUN é um protocolo para a autodescoberta de um endereço IP público por trás de um dispositivo gateway NAT e o cliente para determinar seu próprio endereço IP voltado para o público.
Para um cliente usar STUN, sua rede deve permitir o tráfego UDP. Supondo que o cliente e o host da sessão possam rotear diretamente para o endereço IP e a porta descobertos do outro, a comunicação é estabelecida com UDP direto pelo protocolo WebSocket. Se firewalls ou outros dispositivos de rede bloquearem conexões diretas, uma conexão UDP indireta será tentada.
Conexão indireta: TURN é usado para estabelecer uma conexão indireta, retransmitindo o tráfego através de um servidor intermediário entre um cliente e um host de sessão quando uma conexão direta não é possível. TURN é uma extensão do STUN. Usar TURN significa que o endereço IP público e a porta são conhecidos com antecedência, o que pode ser permitido através de firewalls e outros dispositivos de rede.
TURN normalmente autoriza o acesso ao servidor via nome de usuário / senha e seu modo preferido de operação é usar soquetes UDP. Se firewalls ou outros dispositivos de rede bloquearem o tráfego UDP, a conexão retornará a um transporte de conexão reversa baseado em TCP.
Quando uma conexão está sendo estabelecida, o Estabelecimento de Conectividade Interativa (ICE) coordena o gerenciamento de STUN e TURN para otimizar a probabilidade de uma conexão ser estabelecida e garantir que a precedência seja dada aos protocolos de comunicação de rede preferidos.
Cada sessão RDP usa uma porta UDP atribuída dinamicamente a partir de um intervalo de portas efêmeras (49152 a 65535 por padrão) que aceita o tráfego RDP Shortpath. A porta 65330 é ignorada desse intervalo, pois é reservada para uso interno pelo Azure. Você também pode usar um intervalo de portas menor e previsível. Para obter mais informações, consulte Limitar o intervalo de portas usado por clientes para redes públicas.
Gorjeta
O RDP Shortpath para redes públicas funcionará automaticamente sem qualquer configuração adicional, fornecendo redes e firewalls que permitam o tráfego e as configurações de transporte RDP no sistema operacional Windows para hosts de sessão e clientes que estejam usando seus valores padrão.
O diagrama a seguir fornece uma visão geral de alto nível das conexões de rede ao usar o RDP Shortpath para redes públicas onde os hosts de sessão ingressaram no Microsoft Entra ID.
Conversão de endereços de rede e firewalls
A maioria dos clientes de Área de Trabalho Virtual do Azure é executada em computadores na rede privada. O acesso à Internet é fornecido através de um dispositivo de gateway NAT (Network Address Translation). Portanto, o gateway NAT modifica todas as solicitações de rede da rede privada e destinadas à Internet. Tal modificação pretende compartilhar um único endereço IP público em todos os computadores da rede privada.
Devido à modificação do pacote IP, o destinatário do tráfego verá o endereço IP público do gateway NAT em vez do remetente real. Quando o tráfego voltar para o gateway NAT, ele terá o cuidado de encaminhá-lo para o destinatário pretendido sem o conhecimento do remetente. Na maioria dos cenários, os dispositivos escondidos por trás de tal NAT não estão cientes de que a tradução está acontecendo e não sabem o endereço de rede do gateway NAT.
O NAT é aplicável às Redes Virtuais do Azure onde residem todos os anfitriões de sessão. Quando um host de sessão tenta acessar o endereço de rede na Internet, o Gateway NAT (seu próprio ou padrão fornecido pelo Azure) ou o Balanceador de Carga do Azure executa a conversão de endereço. Para obter mais informações sobre vários tipos de Conversão de Endereço de Rede de Origem, consulte Usar SNAT (Tradução de Endereço de Rede de Origem) para conexões de saída.
A maioria das redes normalmente inclui firewalls que inspecionam o tráfego e o bloqueiam com base em regras. A maioria dos clientes configura seus firewalls para impedir conexões de entrada (ou seja, pacotes não solicitados da Internet enviados sem uma solicitação). Os firewalls empregam diferentes técnicas para rastrear o fluxo de dados e distinguir entre tráfego solicitado e não solicitado. No contexto do TCP, o firewall rastreia pacotes SYN e ACK e o processo é simples. Os firewalls UDP geralmente usam heurísticas baseadas em endereços de pacotes para associar o tráfego aos fluxos UDP e permitir ou bloqueá-lo.
Existem muitas implementações NAT diferentes disponíveis. Na maioria dos casos, gateway NAT e firewall são as funções do mesmo dispositivo físico ou virtual.
Sequência de conexão
Todas as conexões começam estabelecendo um transporte de conexão reversa baseado em TCP pelo Gateway de Área de Trabalho Virtual do Azure. Em seguida, o cliente e o host da sessão estabelecem o transporte RDP inicial e começam a trocar seus recursos. Se o RDP Shortpath para redes públicas estiver habilitado no host da sessão, o host da sessão iniciará um processo chamado coleta de candidatos:
O host de sessão enumera todas as interfaces de rede atribuídas a um host de sessão, incluindo interfaces virtuais como VPN e Teredo.
O serviço Windows Remote Desktop Services (TermService) aloca soquetes UDP em cada interface e armazena o par IP:Port na tabela candidata como um candidato local.
O serviço Serviços de Área de Trabalho Remota usa cada soquete UDP alocado na etapa anterior para tentar acessar o Servidor STUN da Área de Trabalho Virtual do Azure na Internet pública. A comunicação é feita enviando um pequeno pacote UDP para a porta 3478.
Se o pacote chegar ao servidor STUN, o servidor STUN responderá com o IP público e a porta. Esta informação é armazenada na tabela de candidatos como um candidato reflexivo.
Depois que o host da sessão reúne todos os candidatos, o host da sessão usa o transporte de conexão reversa estabelecido para passar a lista de candidatos para o cliente.
Quando o cliente recebe a lista de candidatos do host da sessão, o cliente também realiza a coleta de candidatos ao seu lado. Em seguida, o cliente envia sua lista de candidatos para o host da sessão.
Após o anfitrião da sessão e o cliente trocarem suas listas de candidatos, ambas as partes tentam se conectar usando todos os candidatos coletados. Esta tentativa de conexão é simultânea em ambos os lados. Muitos gateways NAT são configurados para permitir o tráfego de entrada para o soquete assim que a transferência de dados de saída o inicializa. Esse comportamento dos gateways NAT é a razão pela qual a conexão simultânea é essencial. Se o STUN falhar porque está bloqueado, uma tentativa de conexão indireta será feita usando TURN.
Após a troca inicial de pacotes, o cliente e o host da sessão podem estabelecer um ou vários fluxos de dados. A partir desses fluxos de dados, o RDP escolhe o caminho de rede mais rápido. Em seguida, o cliente estabelece uma conexão segura usando TLS sobre UDP confiável com o host da sessão e inicia o transporte RDP Shortpath.
Depois que o RDP estabelece o transporte RDP Shortpath, todos os canais virtuais dinâmicos (DVCs), incluindo gráficos remotos, entrada e redirecionamento de dispositivo, passam para o novo transporte.
Se seus usuários tiverem o RDP Shortpath para rede gerenciada e redes públicas disponíveis para eles, o algoritmo encontrado pela primeira vez será usado, o que significa que o usuário usará qualquer conexão estabelecida primeiro para essa sessão. Para obter mais informações, consulte o cenário de exemplo 4.
Importante
Ao usar um transporte baseado em TCP, o tráfego de saída do host da sessão para o cliente é por meio do Gateway de Área de Trabalho Virtual do Azure. Com o RDP Shortpath para redes públicas usando STUN, o tráfego de saída é estabelecido diretamente entre o host da sessão e o cliente pela Internet. Isso remove um salto que melhora a latência e a experiência do usuário final. No entanto, devido às alterações no fluxo de dados entre o host da sessão e o cliente em que o Gateway não é mais usado, haverá cobranças de rede de saída padrão do Azure cobradas adicionalmente por assinatura para a largura de banda da Internet consumida. Para saber mais sobre como estimar a largura de banda usada pelo RDP, consulte Requisitos de largura de banda RDP.
Configuração de rede
Para oferecer suporte ao RDP Shortpath para redes públicas, normalmente não é necessária nenhuma configuração específica. O host da sessão e o cliente descobrirão automaticamente o fluxo de dados direto, se for possível em sua configuração de rede. No entanto, cada ambiente é único, e algumas configurações de rede podem afetar negativamente a taxa de sucesso da conexão direta. Siga as recomendações para aumentar a probabilidade de um fluxo de dados direto.
Como o RDP Shortpath usa UDP para estabelecer um fluxo de dados, se um firewall na sua rede bloquear o tráfego UDP, o RDP Shortpath falhará e a conexão retornará ao transporte de conexão reversa baseado em TCP. A Área de Trabalho Virtual do Azure usa servidores STUN fornecidos pelos Serviços de Comunicação do Azure e pelo Microsoft Teams. Pela natureza do recurso, a conectividade de saída dos hosts de sessão para o cliente é necessária. Infelizmente, na maioria dos casos, não é possível prever onde os usuários estão localizados. Portanto, recomendamos permitir a conectividade UDP de saída de seus hosts de sessão para a Internet. Para reduzir o número de portas necessárias, você pode limitar o intervalo de portas usado pelos clientes para o fluxo UDP. Use as tabelas a seguir para referência ao configurar firewalls para RDP Shortpath.
Se o seu ambiente usa NAT simétrico, que é o mapeamento de um único IP:Port de origem privada para um destino público exclusivo IP:Port, então você pode usar uma conexão indireta com TURN. Esse será o caso se você usar o Firewall do Azure e o Azure NAT Gateway. Para obter mais informações sobre NAT com redes virtuais do Azure, consulte Tradução de endereços de rede de origem com redes virtuais.
Onde os usuários têm RDP Shortpath para rede gerenciada e redes públicas está disponível para eles, então o primeiro algoritmo encontrado será usado. O usuário usará qualquer conexão estabelecida primeiro para essa sessão. Para obter mais informações, consulte Cenários de exemplo.
Disponibilidade TURN
TURN está disponível nas seguintes regiões do Azure:
Austrália Sudeste
Índia Central
E.U.A. Leste
E.U.A. Leste 2
França Central
Oeste do Japão
Europa do Norte
E.U.A. Centro-Sul
Sudeste Asiático
Sul do Reino Unido
Oeste do Reino Unido
Europa Ocidental
E.U.A. Oeste
E.U.A. Oeste 2
Rede virtual de host de sessão
Nome
Origem
Porta de origem
Destino
Porta de destino
Protocolo
Ação
Ponto de extremidade do servidor RDP Shortpath
Sub-rede VM
Qualquer
Qualquer
1024-65535 (padrão 49152-65535)
UDP
Permitir
ATORDOAMENTO/VIRAR UDP
Sub-rede VM
Qualquer
20.202.0.0/16
3478
UDP
Permitir
ATORDOAMENTO/VIRAR TCP
Sub-rede VM
Qualquer
20.202.0.0/16
443
TCP
Permitir
Rede de clientes
Nome
Origem
Porta de origem
Destino
Porta de destino
Protocolo
Ação
Ponto de extremidade do servidor RDP Shortpath
Rede de clientes
Qualquer
Endereços IP públicos atribuídos ao Gateway NAT ou ao Firewall do Azure (fornecidos pelo ponto de extremidade STUN)
1024-65535 (padrão 49152-65535)
UDP
Permitir
ATORDOAMENTO/VIRAR UDP
Rede de clientes
Qualquer
20.202.0.0/16
3478
UDP
Permitir
ATORDOAMENTO/VIRAR TCP
Rede de clientes
Qualquer
20.202.0.0/16
443
TCP
Permitir
Suporte Teredo
Embora não seja necessário para o RDP Shortpath, o Teredo adiciona candidatos adicionais à travessia de NAT e aumenta a chance de a conexão RDP Shortpath bem-sucedida em redes somente IPv4. Para saber como habilitar o Teredo em hosts e clientes de sessão, consulte Habilitar suporte a Teredo.
Suporte UPnP
Para melhorar as chances de uma conexão direta, no lado do cliente de Área de Trabalho Remota, RDP Shortpath pode usar UPnP para configurar um mapeamento de porta no roteador NAT. UPnP é uma tecnologia padrão usada por vários aplicativos, como Xbox, Otimização de Entrega e Teredo. UPnP está geralmente disponível em roteadores normalmente encontrados em uma rede doméstica. O UPnP é ativado por padrão na maioria dos roteadores domésticos e pontos de acesso, mas geralmente é desativado na rede corporativa.
Recomendações gerais
Aqui estão algumas recomendações gerais ao usar o RDP Shortpath para redes públicas:
Evite usar configurações de encapsulamento de força se seus usuários acessarem a Área de Trabalho Virtual do Azure pela Internet.
Certifique-se de que não está a utilizar configurações de NAT duplo ou Carrier-Grade-NAT (CGN).
Recomende aos seus utilizadores que não desativem o UPnP nos seus routers domésticos.
Evite usar serviços de inspeção de pacotes na nuvem.
Evite usar soluções VPN baseadas em TCP.
Habilite a conectividade IPv6 ou Teredo.
Segurança da Ligação
O RDP Shortpath amplia os recursos de multitransporte do RDP. Não substitui o transporte de ligação inversa, mas complementa-o. A intermediação de sessão inicial é gerenciada por meio do serviço de Área de Trabalho Virtual do Azure e do transporte de conexão inversa. Todas as tentativas de conexão são ignoradas, a menos que correspondam primeiro à sessão de conexão inversa. O Shortpath RDP é estabelecido após a autenticação e, se estabelecido com êxito, o transporte de conexão reversa é descartado e todo o tráfego flui pelo Shortpath RDP.
O RDP Shortpath usa uma conexão segura usando TLS sobre UDP confiável entre o cliente e o host da sessão usando os certificados do host da sessão. Por padrão, o certificado usado para criptografia RDP é gerado automaticamente pelo sistema operacional durante a implantação. Você também pode implantar certificados gerenciados centralmente emitidos por uma autoridade de certificação corporativa. Para obter mais informações sobre configurações de certificado, consulte Configurações de certificado de ouvinte da Área de Trabalho Remota.
Nota
A segurança oferecida pelo RDP Shortpath é a mesma oferecida pelo transporte de conexão reversa TCP.
Cenários de exemplo
Aqui estão alguns cenários de exemplo para mostrar como as conexões são avaliadas para decidir se o RDP Shortpath é usado em diferentes topologias de rede.
Cenário 1
Uma conexão UDP só pode ser estabelecida entre o dispositivo cliente e o host da sessão através de uma rede pública (internet). Uma conexão direta, como uma VPN, não está disponível. UDP é permitido através de firewall ou dispositivo NAT.
Cenário 2
Um firewall ou dispositivo NAT está bloqueando uma conexão UDP direta, mas uma conexão UDP indireta pode ser retransmitida usando TURN entre o dispositivo cliente e o host da sessão através de uma rede pública (internet). Outra conexão direta, como uma VPN, não está disponível.
Cenário 3
Uma conexão UDP pode ser estabelecida entre o dispositivo cliente e o host da sessão em uma rede pública ou em uma conexão VPN direta, mas o RDP Shortpath para redes gerenciadas não está habilitado. Quando o cliente inicia a conexão, o protocolo ICE/STUN pode ver várias rotas e avaliará cada rota e escolherá aquela com a menor latência.
Neste exemplo, uma conexão UDP usando RDP Shortpath para redes públicas através da conexão VPN direta será feita, pois tem a menor latência, conforme mostrado pela linha verde.
Cenário 4
O RDP Shortpath para redes públicas e redes gerenciadas está habilitado. Uma conexão UDP pode ser estabelecida entre o dispositivo cliente e o host da sessão através de uma rede pública ou através de uma conexão VPN direta. Quando o cliente inicia a conexão, há tentativas simultâneas de conexão usando RDP Shortpath para redes gerenciadas através da porta 3390 (por padrão) e RDP Shortpath para redes públicas através do protocolo ICE/STUN. O algoritmo encontrado pela primeira vez será usado e o usuário usará qualquer conexão estabelecida primeiro para essa sessão.
Como passar por uma rede pública tem mais etapas, por exemplo, um dispositivo NAT, um balanceador de carga ou um servidor STUN, é provável que o algoritmo encontrado pela primeira vez selecione a conexão usando o RDP Shortpath para redes gerenciadas e seja estabelecido primeiro.
Cenário 5
Uma conexão UDP pode ser estabelecida entre o dispositivo cliente e o host da sessão em uma rede pública ou em uma conexão VPN direta, mas o RDP Shortpath para redes gerenciadas não está habilitado. Para impedir que o ICE/STUN use uma rota específica, um administrador pode bloquear uma das rotas para o tráfego UDP. Bloquear uma rota garantiria que o caminho restante fosse sempre usado.
Neste exemplo, o UDP é bloqueado na conexão VPN direta e o protocolo ICE/STUN estabelece uma conexão pela rede pública.
Cenário 6
Tanto o RDP Shortpath para redes públicas quanto as redes gerenciadas estão configurados, no entanto, uma conexão UDP não pôde ser estabelecida usando conexão VPN direta. Um firewall ou dispositivo NAT também está bloqueando uma conexão UDP direta usando a rede pública (internet), mas uma conexão UDP indireta pode ser retransmitida usando TURN entre o dispositivo cliente e o host da sessão através de uma rede pública (internet).
Cenário 7
Tanto o RDP Shortpath para redes públicas quanto as redes gerenciadas estão configurados, no entanto, não foi possível estabelecer uma conexão UDP. Nesse caso, o RDP Shortpath falhará e a conexão retornará ao transporte de conexão reversa baseado em TCP.
Saiba mais sobre a conectividade de rede da Área de Trabalho Virtual do Azure em Noções básicas sobre a conectividade de rede da Área de Trabalho Virtual do Azure.