Shortpath RDP para Área de Trabalho Virtual do Azure
Artigo
O Shortpath RDP estabelece um transporte direto baseado em UDP entre um dispositivo local de aplicativo do Windows ou 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 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. A UDP oferecerá melhor confiabilidade de conexão e latência mais consistente. Esse 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 Shortpath RDP pode ser usado de duas maneiras:
Redes gerenciadas, em que a conectividade direta é estabelecida entre o cliente e o host de sessão ao usar uma conexão privada, como uma VPN (rede virtual privada). 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 de sessão, em que você precisa habilitar o ouvinte do Shortpath RDP 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 de sessão, usando o protocolo STUN (Simple Traversal Underneath NAT) entre um cliente e um host de sessão. Não é necessário permitir as portas de entrada no host da sessão.
Redes públicas, em que a conectividade direta é estabelecida entre o cliente e o host de 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 STUN (Simple Traversal Under NAT) entre um cliente e um host de sessão.
Uma conexão UDP indireta usando o protocolo TURN (Traversal Using Relay NAT) com uma retransmissão entre um cliente e um host de sessão.
O transporte Shortpath RDP é baseado em URCP (Protocolo Universal de Controle de Taxa). O URCP aprimora o UDP com o monitoramento ativo das condições de rede e fornece a utilização de links justa e completa. O URCP opera em níveis baixos de atraso e perda, conforme necessário.
Importante
O Shortpath RDP para redes públicas com TURN só está disponível na nuvem pública do Azure.
Principais benefícios
O uso do Shortpath RDP tem os seguintes benefícios principais:
O uso do URCP para melhorar o UDP alcança o melhor desempenho, aprendendo dinamicamente os parâmetros de rede e fornecendo o protocolo com um mecanismo de controle de taxa.
A remoção de pontos de retransmissão 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 sensíveis à latência e métodos de entrada.
Além disso, para redes gerenciadas:
O Shortpath RDP traz suporte para configurar a prioridade de QoS (Qualidade de Serviço) para conexões RDP por meio de marcas do DSCP (ponto de código de serviços diferenciados).
O transporte Shortpath RDP permite limitar o tráfego de rede de saída especificando uma taxa de aceleração para cada sessão.
Como o Shortpath RDP funciona
Para saber como o Shortpath RDP funciona para redes gerenciadas e redes públicas, selecione cada uma das guias a seguir.
Ter conectividade de linha de visão direta significa que o cliente pode se conectar diretamente ao host da sessão sem ser bloqueado por firewalls.
Observação
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 de VPN baseadas em TCP dão suporte ao UDP aninhado, elas adicionam sobrecarga herdada do controle de congestionamento TCP, o que reduz o desempenho do RDP.
Para usar o Shortpath RDP 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 apresenta uma visão geral de alto nível das conexões de rede ao usar o Shortpath RDP para redes gerenciadas e hosts de sessão ingressados em um domínio do Active 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 suas funcionalidades. Esses recursos são negociados usando o seguinte processo:
O host da sessão envia a lista de seus endereços IPv4 e IPv6 ao cliente.
O cliente inicia o thread em segundo plano para estabelecer um transporte baseado em UDP paralelo diretamente a um dos endereços IP de sessão.
Embora o cliente esteja investigando os endereços IP fornecidos, ele continua a estabelecer a conexão inicial sobre o 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, ele estabelecerá uma conexão segura usando o TLS sobre a UDP confiável.
Depois de estabelecer o transporte Shortpath RDP, todos os DVCs (Canais Virtuais Dinâmicos), incluindo gráficos remotos, entrada e redirecionamento de dispositivo, são movidos para o novo transporte. No entanto, se uma topologia de rede ou firewall impedir que o cliente estabeleça a conectividade UDP direta, o RDP continuará com um transporte de conexão reversa.
Se os usuários tiverem o Shortpath da RDP para rede gerenciada e redes públicas disponíveis para eles, o primeiro algoritmo encontrado 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, há os tipos de conexão direta e indireta:
Conexão direta: o 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 de sessão devem ser capazes de se conectar uns aos outros por meio de um endereço IP público e uma porta negociada. No entanto, a maioria dos clientes não conhece o próprio endereço IP público, pois ele reside atrás de um dispositivo de gateway NAT (Conversão de Endereços de Rede). O STUN é um protocolo para a autodescoberta de um endereço IP público por trás de um dispositivo de gateway NAT e o cliente para determinar o próprio endereço IP voltado para o público.
Para que um cliente use o STUN, a rede dele deve permitir o tráfego UDP. Supondo que o cliente e o host de 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 por meio de um servidor intermediário entre um cliente e um host de sessão quando uma conexão direta não é possível. O TURN é uma extensão do STUN. Usar o TURN significa que o endereço IP público e a porta são conhecidos com antecedência, o que pode ser permitido por meio de firewalls e outros dispositivos de rede.
O TURN normalmente autoriza o acesso ao servidor por meio de nome de usuário/senha e o modo de operação preferencial dele é usar soquetes UDP. Se firewalls ou outros dispositivos de rede bloquearem o tráfego UDP, a conexão fará fallback para um transporte de conexão reversa baseado em TCP.
Quando uma conexão está sendo estabelecida, o ICE (Interactive Connectivity Establishment) 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 preferenciais.
Cada sessão RDP usa uma porta UDP atribuída dinamicamente de um intervalo de portas efêmeras (49152 a 65535 por padrão) que aceita o tráfego do shortpath RDP. A Porta 65330 é ignorada nesse 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 pelos clientes para redes públicas.
Dica
O Shortpath RDP para redes públicas funcionará automaticamente sem nenhuma configuração adicional. Para isso, é necessário que redes e firewalls permitam o tráfego e as configurações de transporte RDP no sistema operacional Windows para hosts e clientes da sessão que usem 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 Shortpath RDP para redes públicas em que os hosts de sessão ingressaram no Microsoft Entra ID.
Conversão de endereços de rede e firewalls
A maioria dos clientes da Área de Trabalho Virtual do Azure é executada em computadores na rede privada. O acesso à Internet é fornecido por meio de um dispositivo de Gateway da NAT (conversão de endereços de rede). Portanto, o Gateway da NAT modifica todas as solicitações de rede da rede privada e destinadas à Internet. A intenção dessa modificação é compartilhar um único endereço IP público em todos os computadores na rede privada.
Devido à modificação do pacote IP, o destinatário do tráfego verá o endereço IP público do Gateway da NAT em vez do remetente real. Quando o tráfego voltar para o Gateway da NAT, ele terá o cuidado de encaminhá-lo ao destinatário pretendido sem o conhecimento do remetente. Na maioria dos cenários, os dispositivos ocultos por trás de tal NAT não sabem que a conversão está acontecendo e não sabem o endereço de rede do Gateway da NAT.
A NAT é aplicável às Redes Virtuais do Microsoft Azure em que residem todos os hosts da sessão. Quando um host da sessão tenta acessar o endereço de rede na Internet, o Gateway da NAT (o seu próprio ou o padrão fornecido pelo Azure) ou o Azure Load Balancer executa a conversão de endereços. Para obter mais informações sobre vários tipos de Conversão de Endereço de Rede de Origem, consulte Usar SNAT (Conversão de Endereço de Rede de Origem) para conexões de saída.
Normalmente, a maioria das redes 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 técnicas diferentes para controlar o fluxo de dados a fim de 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 do UDP geralmente usam heurística com base em endereços de pacote a fim de associar o tráfego a fluxos de UDP e permiti-lo ou bloqueá-lo.
Há muitas implementações diferentes da NAT disponíveis. Na maioria dos casos, o Gateway da NAT e o 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 suas funcionalidades. Se o Shortpath RDP para redes públicas estiver habilitado no host da sessão, o host da sessão inicia então um processo chamado reunião de candidatos:
O host da sessão enumera todas as interfaces de rede atribuídas a um host da sessão, incluindo interfaces virtuais como VPN e Teredo.
O serviço do Windows de Serviços de Área de Trabalho Remota (TermService) aloca os soquetes UDP em cada interface e armazena o par IP:Port na tabela candidata como um candidato local.
O serviço de Serviços de Área de Trabalho Remota usa cada soquete UDP alocado na etapa anterior para tentar alcançar 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 alcançar o servidor STUN, o servidor STUN responderá com o IP público e a porta. Essas informações são armazenadas na tabela candidata como um candidato reflexivo.
Depois que o host da sessão reúne todos os candidatos, ele usa o transporte de conexão reversa estabelecido para passar a lista de candidatos ao cliente.
Quando o cliente recebe a lista de candidatos do host da sessão, o cliente também realiza a reunião do candidato do seu lado. Em seguida, o cliente envia sua lista de candidatos para o host da sessão.
Depois que o host da sessão e o cliente trocam suas listas de candidatos, ambos os partidos tentam se conectar uns com os outros usando todos os candidatos reunidos. Essa tentativa de conexão é simultânea em ambos os lados. Muitos dos Gateways da 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 da NAT é o motivo pelo qual a conexão simultânea é essencial. Se o STUN falhar porque está bloqueado, uma tentativa de conexão indireta será feita usando o TURN.
Após a troca inicial de pacotes, o cliente e o host da sessão podem estabelecer um ou muitos fluxos de dados. Nesses fluxos de dados, o RDP escolhe o caminho de rede mais rápido. O cliente então estabelece uma conexão segura usando o TLS sobre a UDP confiável com o host da sessão e inicia o transporte de Shortpath RDP.
Depois que o RDP estabelece o transporte do Shortpath RDP, todos os DVCs (Canais Virtuais Dinâmicos), incluindo gráficos remotos, entrada e redirecionamento de dispositivo são movidos para o novo transporte.
Se os usuários tiverem o shortpath RDP para a rede gerenciada e as redes públicas disponíveis para eles, o algoritmo encontrado primeiro será usado, o que significa que o usuário usará qualquer conexão estabelecida primeiro para essa sessão. Para obter mais informações, confira exemplo de cenário 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 Shortpath RDP para redes públicas usando o 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á encargos de rede de saída padrão do Azure cobrados 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 dar suporte ao Shortpath RDP para redes públicas, normalmente, você não precisa de 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 é exclusivo 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 Shortpath RDP usa o UDP para estabelecer um fluxo de dados, se um firewall na sua rede bloquear o tráfego UDP, o Shortpath RDP falhará e a conexão retornará para o 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 da sessão para o cliente é necessária. Infelizmente, você não consegue prever onde os usuários estão localizados na maioria dos casos. Portanto, recomendamos permitir a conectividade UDP de saída de seus hosts da 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 o Shortpath RDP.
Se o seu ambiente usa NAT Simétrica, que é o mapeamento de um só IP:Port de origem privada para um IP:Port de destino público exclusivo, você pode usar uma conexão indireta com TURN. Esse será o caso se você usar o Firewall do Azure e o Gateway da NAT do Azure. Para obter mais informações sobre NAT com redes virtuais do Azure, consulte Conversão de Endereços de Rede de Origem com redes virtuais.
Se os usuários tiverem o Shortpath RDP tanto para as redes gerenciadas quanto para as redes públicas disponíveis 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, confira Cenários de exemplo.
Disponibilidade de TURN
O TURN está disponível nas seguintes regiões do Azure:
Australia Southeast
Índia Central
Leste dos EUA
Leste dos EUA 2
França Central
Oeste do Japão
Norte da Europa
Centro-Sul dos Estados Unidos
Sudeste Asiático
Sul do Reino Unido
Oeste do Reino Unido
Europa Ocidental
Oeste dos EUA
Oeste dos EUA 2
Rede virtual do host da sessão
Nome
Fonte
Porta de origem
Destino
Porta de destino
Protocolo
Ação
Ponto de extremidade do servidor do Shortpath RDP
Sub-rede de VM
Qualquer
Qualquer
1024-65535 (padrão 49152-65535)
UDP
Allow
STUN/TURN UDP
Sub-rede de VM
Qualquer
20.202.0.0/16
3478
UDP
Allow
STUN/TURN TCP
Sub-rede de VM
Qualquer
20.202.0.0/16
443
TCP
Allow
Rede do cliente
Nome
Fonte
Porta de origem
Destino
Porta de destino
Protocolo
Ação
Ponto de extremidade do servidor do Shortpath RDP
Rede do cliente
Qualquer
Endereços IP públicos atribuídos ao Gateway da NAT ou Firewall do Azure (fornecidos pelo ponto de extremidade STUN)
1024-65535 (padrão 49152-65535)
UDP
Allow
STUN/TURN UDP
Rede do cliente
Qualquer
20.202.0.0/16
3478
UDP
Allow
STUN/TURN TCP
Rede do cliente
Qualquer
20.202.0.0/16
443
TCP
Allow
Suporte ao Teredo
Embora não seja necessário ao Shortpath RDP, o Teredo adiciona candidatos extras de passagem da NAT e aumenta a chance de conexão bem-sucedida do Shortpath RDP em redes somente IPv4. Para saber como habilitar o Teredo em hosts e clientes de sessão, confira Habilitar suporte ao Teredo.
Suporte UPnP
Para melhorar as chances de uma conexão direta, no lado do cliente da Área de Trabalho Remota, o Shortpath RDP pode usar o UPnP para configurar um mapeamento de porta no roteador NAT. O UPnP é uma tecnologia padrão usada por vários aplicativos, como Xbox, Otimização de Entrega e Teredo. O UPnP está geralmente disponível em roteadores normalmente encontrados em uma rede doméstica. O UPnP é habilitado por padrão na maioria dos roteadores e pontos de acesso domésticos, mas geralmente é desabilitado na rede corporativa.
Recomendações gerais
Aqui estão algumas recomendações gerais ao usar o Shortpath RDP para redes públicas:
Evite usar configurações de túneis à força se os usuários acessarem a Área de Trabalho Virtual do Azure pela Internet.
Verifique se você não está usando configurações de NAT ou CGN (Carrier-Grade-NAT).
Recomende aos usuários que eles não desabilitem o UPnP em seus roteadores domésticos.
Evitar usar serviços de inspeção de pacotes na nuvem.
Evitar usar soluções VPN baseadas em TCP.
Habilitar conectividade IPv6 ou Teredo.
Segurança da conexão
O Shortpath RDP estende os recursos de multitransporte RDP. Ele não substitui o transporte de conexão reversa, mas o complementa. 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 reversa. Todas as tentativas de conexão são ignoradas, a menos que correspondam primeiro à sessão de conexão reversa. O Shortpath RDP é estabelecido após a autenticação e, se for estabelecido com êxito, o transporte de conexão reversa será descartado e todo o tráfego flui sobre o Shortpath RDP.
O Shortpath RDP usa uma conexão segura usando o TLS sobre a 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 de 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 as Configurações de certificado do ouvinte da Área de Trabalho Remota.
Observação
A segurança oferecida pelo Shortpath RDP é 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 Shortpath da RDP é 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 em uma rede pública (Internet). Uma conexão direta, como uma VPN, não está disponível. O UDP é permitido por meio do firewall ou do 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 de sessão em 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 Shortpath da RDP 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 o Shortpath da RDP para redes públicas pela conexão VPN direta será feita, pois ela tem a menor latência, conforme mostrado pela linha verde.
Cenário 4
O Shortpath da RDP 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 em uma rede pública ou em uma conexão VPN direta. Quando o cliente inicia a conexão, há tentativas simultâneas de conexão usando o Shortpath da RDP para redes gerenciadas por meio da porta 3390 (por padrão) e do Shortpath da RDP para redes públicas por meio do protocolo ICE/STUN. O primeiro algoritmo encontrado 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 primeiro algoritmo encontrado selecione a conexão usando o Shortpath da RDP 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 Shortpath da RDP para redes gerenciadas não está habilitado. Para impedir que ICE/STUN use uma rota específica, um administrador pode bloquear uma das rotas para o tráfego do UDP. Bloquear uma rota garantiria que o caminho restante seja 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
O Shortpath da RDP para redes públicas e redes gerenciadas está configurado, no entanto, não foi possível estabelecer uma conexão UDP usando uma 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 de sessão em uma rede pública (Internet).
Cenário 7
O Shortpath da RDP para redes públicas e redes gerenciadas está configurado, no entanto, não foi possível estabelecer uma conexão UDP. Nesse caso, o Shortpath da RDP falhará e a conexão retornará ao transporte de conexão reversa baseado em TCP.