El uso de RDP Shortpath para redes públicas con TURN para Azure Virtual Desktop se encuentra actualmente en versión preliminar. Consulte Términos de uso complementarios para las versiones preliminares de Microsoft Azure para conocer los términos legales que se aplican a las características de Azure que se encuentran en la versión beta, en versión preliminar o que todavía no se han publicado para que estén disponibles con carácter general.
Las conexiones a Azure Virtual Desktop usan el Protocolo de control de transmisión (TCP) o el Protocolo de datagramas de usuario (UDP). RDP Shortpath es una característica de Azure Virtual Desktop que establece un transporte basado en UDP directo entre un cliente de Escritorio remoto de Windows admitido y el host de sesión. De forma predeterminada, el Protocolo de escritorio remoto (RDP) intenta establecer la conexión mediante UDP y usa un transporte de conexión inversa basado en TCP como mecanismo de conexión de reserva. Este transporte proporciona la mejor compatibilidad con varias configuraciones de red y tiene una alta tasa de éxito para establecer conexiones RDP. El transporte basado en UDP ofrece una mejor fiabilidad de conexión y una latencia más coherente.
RDP Shortpath se puede usar de dos maneras:
Redes administradas, donde se establece la conectividad directa entre el cliente y el host de sesión cuando se usa una conexión privada, como una red privada virtual (VPN).
Redes públicas, donde se establece la conectividad directa entre el cliente y el host de sesión cuando se usa una conexión pública. Hay dos tipos de conexión al usar una conexión pública, que se enumeran aquí en orden de preferencia:
Una conexión UDP directa mediante el protocolo Simple Traversal Underneath NAT (STUN) entre un cliente y un host de sesión.
Una conexión UDP indirecta mediante el protocolo Traversal Using Relay NAT (TURN) con una retransmisión entre un cliente y un host de sesión. Esto está en versión preliminar.
El transporte que se usa para RDP Shortpath se basa en el protocolo de control de velocidad universal (URCP). URCP mejora UDP con la supervisión activa de las condiciones de la red y proporciona un uso equitativo y completo de los vínculos. URCP funciona con niveles de retraso y pérdida bajos, según sea necesario.
Importante
Durante la versión preliminar, TURN solo está disponible para las conexiones a los hosts de sesión de un grupo de hosts de validación. Para configurar el grupo de hosts como entorno de validación, consulte Definición del grupo de hosts como entorno de validación.
RDP Shortpath para redes públicas con TURN solo está disponible en la nube pública de Azure.
Ventajas principales
El uso de RDP Shortpath tiene las siguientes ventajas clave:
Mediante URCP para mejorar UDP, se consigue el mayor rendimiento al aprender dinámicamente los parámetros de red y proporcionar un protocolo con un mecanismo de control de velocidad.
La eliminación de los puntos de retransmisión adicional reduce el tiempo de ida y vuelta, lo que mejora la fiabilidad de la conexión y la experiencia del usuario con aplicaciones y métodos de entrada sensibles a la latencia.
Además, para redes administradas:
RDP Shortpath permite configurar la prioridad de la calidad de servicio (QoS) para las conexiones RDP mediante marcas de punto de código de servicios diferenciados (DSCP).
El transporte de RDP Shortpath permite limitar el tráfico de red saliente mediante la especificación de una tasa de limitación para cada sesión.
Funcionamiento de RDP Shortpath
Para obtener información sobre cómo funciona RDP Shortpath para redes administradas y redes públicas, seleccione cada una de las pestañas siguientes.
VPN de sitio a sitio o de punto a sitio (IPsec), como Azure VPN Gateway
Tener una conectividad de línea de visión directa significa que el cliente pueda conectarse directamente al host de sesión, sin bloqueo por parte de los firewalls.
Nota:
Si usa otros tipos de red privada virtual para conectarse a Azure, se recomienda usar una VPN basada en UDP. Aunque la mayoría de las soluciones de red privada virtual basadas en TCP admiten el protocolo UDP anidado, agregan una sobrecarga heredada del control de congestión TCP, lo que ralentiza el rendimiento de RDP.
Para usar RDP Shortpath para redes administradas, debe habilitar un agente de escucha UDP en los hosts de sesión. De manera predeterminada, se usa el puerto 3390, aunque puede usar otro puerto.
En el diagrama siguiente se proporciona información general de alto nivel de las conexiones de red al usar RDP Shortpath para redes administradas y hosts de sesión unidos a un dominio de Active Directory.
Secuencia de la conexión
Todas las conexiones comienzan estableciendo un transporte de conexión inversa basado en TCP a través de la puerta de enlace de Azure Virtual Desktop. A continuación, el cliente y el host de sesión establecen el transporte RDP inicial y comienzan a intercambiar sus funcionalidades. Estas funcionalidades se negocian mediante el siguiente proceso:
El host de sesión envía la lista de sus direcciones IPv4 e IPv6 al cliente.
El cliente inicia el subproceso en segundo plano para establecer un transporte paralelo basado en UDP directamente en una de las direcciones IP del host de sesión.
Mientras el cliente está sondeando las direcciones IP proporcionadas, este continúa estableciendo la conexión inicial a través del transporte de conexión inversa para garantizar que no haya ningún retraso en la conexión del usuario.
Si el cliente tiene una conexión directa con el host de sesión, establece una conexión segura con TLS sobre una conexión UDP confiable.
Después de establecer el transporte de RDP Shortpath, todos los canales virtuales dinámicos (DVCs) se mueven al nuevo transporte, incluidos los gráficos remotos, la entrada y el redireccionamiento del dispositivo. Sin embargo, si un firewall o una topología de red impide que el cliente establezca conectividad UDP directa, RDP continúa con un transporte de conexión inversa.
Si los usuarios tienen RDP Shortpath para una red administrada y las redes públicas disponibles para ellos, se usará el primer algoritmo que se encuentre. El usuario empleará la conexión que se establezca primero para esa sesión.
Para proporcionar la mejor oportunidad de que una conexión UDP se realice correctamente al usar una conexión pública, existen los tipos de conexión directa e indirecta:
Conexión directa: STUN se usa para establecer una conexión UDP directa entre un cliente y un host de sesión. Para establecer esta conexión, el cliente y el host de sesión deben poder conectarse entre sí a través de una dirección IP pública y un puerto negociado. Sin embargo, la mayoría de los clientes no conocen su propia dirección IP pública, ya que se encuentran detrás de un dispositivo de puerta de enlace de traducción de direcciones de red (NAT). STUN es un protocolo para la detección automática de una dirección IP pública desde detrás de un dispositivo de puerta de enlace NAT y el cliente para determinar su propia dirección IP pública.
Para que un cliente use STUN, su red debe permitir el tráfico UDP. Suponiendo que tanto el cliente como el host de sesión pueden enrutar directamente a la dirección IP detectada del otro y al puerto, la comunicación se establece con UDP directo a través del protocolo WebSocket. Si los firewalls u otros dispositivos de red bloquean conexiones directas, se intentará establecer una conexión UDP indirecta.
Conexión indirecta: TURN se usa para establecer una conexión indirecta mediante la retransmisión del tráfico a través de un servidor intermedio entre un cliente y un host de sesión cuando no es posible una conexión directa. TURN es una extensión de STUN. El uso de TURN significa que la dirección IP pública y el puerto se conocen de antemano, lo que se puede permitir a través de firewalls y otros dispositivos de red.
TURN normalmente autoriza el acceso al servidor a través de un nombre de usuario y una contraseña y su modo de operación preferido es usar sockets de UDP. Si los firewalls u otros dispositivos de red bloquean el tráfico UDP, la conexión volverá a un transporte de conexión inversa basado en TCP.
Cuando se establece una conexión, el Establecimiento de conectividad interactiva (ICE) coordina la administración de STUN y TURN para optimizar la probabilidad de establecer una conexión y asegurarse de que la prioridad se conceda a los protocolos de comunicación de red preferidos.
Cada sesión RDP usa un puerto UDP asignado dinámicamente desde un rango de puertos efímeros (de 49152 a 65535 de forma predeterminada) que acepta el tráfico RDP Shortpath. El puerto 65330 se omite de este intervalo, ya que está reservado para el uso interno por parte de Azure. También puede usar un rango de puertos más pequeño y predecible. Para obtener más información, vea Limitar el intervalo de puertos que usan los clientes para redes públicas.
Sugerencia
RDP Shortpath para redes públicas funcionará automáticamente sin ninguna configuración adicional, siempre que las redes y los firewalls permitan el tráfico y que la configuración de transporte de RDP en el sistema operativo Windows para los hosts de sesión y los clientes usen sus valores predeterminados.
En el diagrama siguiente, se proporciona información general de alto nivel de las conexiones de red al usar RDP Shortpath para redes públicas donde los hosts de sesión se unieron a Azure Active Directory (Azure AD).
Traducción de direcciones de red y firewalls
La mayoría de los clientes de Azure Virtual Desktop se ejecutan en equipos de la red privada. El acceso a Internet se proporciona a través de un dispositivo de puerta de enlace de traducción de direcciones de red (NAT). Por lo tanto, la puerta de enlace NAT modifica todas las solicitudes de red de la red privada y destinadas a Internet. Esta modificación pretende compartir una única dirección IP pública en todos los equipos de la red privada.
Debido a la modificación del paquete IP, el destinatario del tráfico verá la dirección IP pública de la puerta de enlace NAT en lugar del emisor real. Cuando el tráfico vuelva a la puerta de enlace NAT, se encargará de desviarlo hacia el destinatario previsto sin que el emisor lo sepa. En la mayoría de los escenarios, los dispositivos ocultos detrás de dicha NAT no son conscientes de que la traducción está teniendo lugar y no conocen la dirección de red de la puerta de enlace NAT.
NAT es aplicable a las redes virtuales de Azure, donde residen todos los hosts de sesión. Cuando un host de sesión intenta acceder a la dirección de red en Internet, NAT Gateway (la suya o una predeterminada proporcionada por Azure) o Azure Load Balancer realiza la traducción de direcciones. Para obtener más información sobre varios tipos de traducción de direcciones de red de origen, consulte Uso de la traducción de direcciones de red de origen (SNAT) para las conexiones salientes.
La mayoría de las redes suelen incluir firewalls que inspeccionan el tráfico y lo bloquean en función de las reglas. La mayoría de los clientes configuran los firewalls para evitar conexiones entrantes (es decir, paquetes no solicitados desde Internet enviados sin solicitud). Los firewalls emplean diferentes técnicas para realizar un seguimiento del flujo de datos y distinguir entre el tráfico solicitado y no solicitado. En el contexto de TCP, el firewall realiza un seguimiento de los paquetes SYN y ACK, y el proceso es sencillo. Los firewalls UDP suelen usar heurística en función de las direcciones de paquetes para asociar el tráfico a los flujos UDP y permitirlo o bloquearlo.
Hay muchas implementaciones NAT diferentes disponibles. En la mayoría de los casos, la puerta de enlace NAT y el firewall son las funciones del mismo dispositivo físico o virtual.
Secuencia de la conexión
Todas las conexiones comienzan estableciendo un transporte de conexión inversa basado en TCP a través de la puerta de enlace de Azure Virtual Desktop. A continuación, el cliente y el host de sesión establecen el transporte RDP inicial y comienzan a intercambiar sus funcionalidades. Si RDP Shortpath para redes públicas está habilitado en el host de sesión, el host de sesión inicia un proceso denominado recopilación de candidatos:
El host de sesión enumera todas las interfaces de red asignadas a un host de sesión, incluidas las interfaces virtuales, como VPN y Teredo.
El Servicio de Escritorio remoto del servicio de Windows (TermService) asigna sockets UDP en cada interfaz y almacena el par IP:Puerto en la tabla candidata como un candidato local.
El Servicio de Escritorio remoto usa cada socket UDP asignado en el paso anterior para intentar alcanzar el servidor STUN de Azure Virtual Desktop en la red pública de Internet. La comunicación se realiza enviando un paquete UDP pequeño al puerto 3478.
Si el paquete llega al servidor STUN, el servidor STUN responde con la dirección IP pública y el puerto. Esta información se almacena en la tabla candidata como candidato reflexivo.
Después de que el host de sesión recopile todos los candidatos, el host de sesión usa el transporte de conexión inversa establecido para pasar la lista de candidatos al cliente.
Cuando el cliente recibe la lista de candidatos del host de sesión, el cliente también realiza la recopilación de candidatos en su lado. A continuación, el cliente envía su lista de candidatos al host de sesión.
Después de que el host de sesión y el cliente intercambien sus listas de candidatos, ambas partes intentan conectarse entre sí mediante todos los candidatos recopilados. Este intento de conexión es simultáneo en ambos lados. Muchas puertas de enlace NAT están configuradas para permitir el tráfico entrante al socket tan pronto como la transferencia de datos de salida la inicializa. Este comportamiento de las puertas de enlace NAT es la razón por la que la conexión simultánea es esencial. Si se produce un error en STUN porque está bloqueado, se realiza un intento de conexión indirecta mediante TURN.
Después del intercambio de paquetes inicial, el cliente y el host de sesión pueden establecer uno o varios flujos de datos. En estos flujos de datos, RDP elige la ruta de acceso de red más rápida. A continuación, el cliente establece una conexión segura con TLS sobre UDP confiable con el host de sesión e inicia el transporte RDP Shortpath.
Después de que RDP establezca el transporte RDP Shortpath, los canales virtuales dinámicos (DVC), incluidos los gráficos remotos, la entrada y el redireccionamiento del dispositivo se trasladan al nuevo transporte.
Si los usuarios tienen RDP Shortpath para redes administradas y redes públicas disponibles para ellos, se usará el algoritmo que se encuentre primero, lo que significa que el usuario usará la conexión que se establezca primero para esa sesión. Para obtener más información, consulte el ejemplo de escenario 4.
Importante
Cuando se usa un transporte basado en TCP, el tráfico saliente del host de sesión al cliente se realiza a través de la puerta de enlace de Azure Virtual Desktop. Con RDP Shortpath para redes públicas que usan STUN, el tráfico saliente se establece directamente entre el host de sesión y el cliente a través de Internet. Esto quita un salto que mejora la latencia y la experiencia del usuario final. Sin embargo, debido a los cambios en el flujo de datos entre el host de sesión y el cliente donde ya no se usa la puerta de enlace, habrá cargos de red de salida de Azure estándar facturados además por suscripción para el ancho de banda de Internet consumido. Para más información sobre la estimación del ancho de banda usado por RDP, consulte Requisitos de ancho de banda de RDP.
Configuración de red
Para admitir RDP Shortpath para redes públicas, normalmente no necesita ninguna configuración determinada. El host de sesión y el cliente detectarán automáticamente el flujo de datos directo si es posible en la configuración de red. Sin embargo, cada entorno es único y algunas configuraciones de red pueden afectar negativamente a la tasa de éxito de la conexión directa. Siga las recomendaciones siguientes para aumentar la probabilidad de un flujo de datos directo.
Dado que RDP Shortpath usa UDP para establecer un flujo de datos, si un firewall de la red bloquea el tráfico UDP, RDP Shortpath producirá un error y la conexión volverá al transporte de conexión inversa basado en TCP. Azure Virtual Desktop usa servidores STUN proporcionados por Azure Communication Services y Microsoft Teams. Por la naturaleza de la característica, se requiere conectividad saliente de los hosts de sesión al cliente. Desafortunadamente, no puede predecir dónde se encuentran los usuarios en la mayoría de los casos. Por lo tanto, se recomienda permitir la conectividad UDP saliente desde los hosts de sesión a Internet. Para reducir el número de puertos necesarios, puede limitar el rango de puertos que usan los clientes para el flujo UDP. Use las tablas siguientes como referencia al configurar firewalls para RDP Shortpath.
Si el entorno usa NAT simétrica, que es la asignación de un único valor IP:Puerto de origen privado a un único valor IP:Puerto de destino público, puede usar una conexión indirecta con TURN. Este será el caso si usa Azure Firewall y Azure NAT Gateway. Para más información sobre NAT con redes virtuales de Azure, consulte Traducción de direcciones de red de origen con redes virtuales.
Si los usuarios disponen de RDP Shortpath tanto para la red administrada como para las redes públicas, se usará el primer algoritmo encontrado. El usuario empleará la conexión que se establezca primero para esa sesión. Para más información, consulte Escenarios de ejemplo.
Disponibilidad de TURN (versión preliminar)
TURN está disponible en las siguientes regiones de Azure:
Sudeste de Australia
Centro de la India
Este de EE. UU.
Este de EE. UU. 2
Centro de Francia
Japón Occidental
Norte de Europa
Centro-sur de EE. UU.
Sudeste de Asia
Sur de Reino Unido
Oeste de Reino Unido
Oeste de Europa
Oeste de EE. UU.
Oeste de EE. UU. 2
Red virtual del host de sesión
Nombre
Source
Puerto de origen
Destination
Puerto de destino
Protocolo
Acción
Punto de conexión de servidor de RDP Shortpath
Subred de VM
Any
Any
1024-65535 (valor predeterminado: 49152-65535)
UDP
Allow
STUN/TURN UDP
Subred de VM
Any
20.202.0.0/16
3478
UDP
Allow
STUN/TURN TCP
Subred de VM
Any
20.202.0.0/16
443
TCP
Allow
Red de cliente
Nombre
Source
Puerto de origen
Destination
Puerto de destino
Protocolo
Acción
Punto de conexión de servidor de RDP Shortpath
Red de cliente
Any
Direcciones IP públicas asignadas a NAT Gateway o Azure Firewall (proporcionadas por el punto de conexión de STUN)
1024-65535 (valor predeterminado: 49152-65535)
UDP
Allow
STUN/TURN UDP
Red de cliente
Any
20.202.0.0/16
3478
UDP
Allow
STUN/TURN TCP
Red de cliente
Any
20.202.0.0/16
443
TCP
Allow
Compatibilidad con Teredo
Aunque no es necesario para RDP Shortpath, Teredo agrega candidatos de recorrido NAT adicionales y aumenta la posibilidad de que la conexión RDP Shortpath sea correcta en redes de solo IPv4. Para obtener información sobre cómo habilitar Teredo en hosts de sesión y clientes, consulte Compatibilidad con Teredo.
Compatibilidad con UPnP
Para mejorar las posibilidades de una conexión directa, en el lado del cliente de Escritorio remoto, RDP Shortpath puede usar UPnP para configurar una asignación de puertos en el enrutador NAT. UPnP es una tecnología estándar que usan varias aplicaciones, como Xbox, Optimización de distribución y Teredo. UPnP está disponible con carácter general en los enrutadores que normalmente se encuentran en una red doméstica. UPnP está habilitado de manera predeterminada en la mayoría de los enrutadores domésticos y puntos de acceso, pero a menudo está deshabilitado en las redes corporativas.
Recomendaciones generales
Estas son algunas recomendaciones generales al usar RDP Shortpath para redes públicas:
Evite usar configuraciones de tunelización forzada si los usuarios acceden a Azure Virtual Desktop a través de Internet.
Asegúrese de que no usa configuraciones NAT dobles o Carrier-Grade-NAT (CGN).
Se recomienda a los usuarios que no deshabiliten UPnP en sus enrutadores domésticos.
Evitar el uso de servicios de inspección de paquetes en la nube.
Evitar el uso de soluciones de VPN basadas en TCP.
Habilitación de la conectividad IPv6 o Teredo.
Seguridad de conexión
RDP Shortpath amplía las capacidades multitransporte de RDP. No reemplaza el transporte de conexión inversa, sino que lo complementa. El agente de sesión inicial se administra mediante el servicio Azure Virtual Desktop y el transporte de conexión inversa. Todos los intentos de conexión se ignorarán a menos que primero coincidan con la sesión de conexión inversa. RDP Shortpath se establece después de la autenticación y, si se ha establecido correctamente, se quita el transporte de conexión inversa y todo el tráfico fluye a través de RDP Shortpath.
RDP Shortpath usa una conexión segura con TLS sobre UDP confiable entre el cliente y el host de sesión mediante los certificados del host de sesión. De manera predeterminada, el certificado usado para el cifrado RDP lo genera automáticamente el sistema operativo durante la implementación. También puede implementar certificados administrados centralmente emitidos por una entidad de certificación de empresa. Para obtener más información sobre las configuraciones de certificados, consulte Configuraciones de certificados del agente de escucha de Escritorio remoto.
Nota:
La seguridad que ofrece RDP Shortpath es la misma que la que ofrece el transporte de conexión inversa de TCP.
Escenarios de ejemplo
Estos son algunos escenarios de ejemplo que muestran cómo se evalúan las conexiones para decidir si RDP Shortpath se usa en distintas topologías de red.
Escenario 1
Una conexión UDP solo se puede establecer entre el dispositivo cliente y el host de sesión a través de una red pública (Internet). No está disponible ninguna conexión directa, como una VPN. UDP se permite a través del firewall o el dispositivo NAT.
Escenario 2
Un firewall o dispositivo NAT bloquea una conexión UDP directa, pero se puede retransmitir una conexión UDP indirecta mediante TURN entre el dispositivo cliente y el host de sesión a través de una red pública (Internet). No está disponible ninguna conexión directa, como una VPN.
Escenario 3
Se puede establecer una conexión UDP entre el dispositivo cliente y el host de sesión a través de una red pública o de una conexión VPN directa, pero RDP Shortpath para redes administradas no está habilitado. Cuando el cliente inicia la conexión, el protocolo ICE/STUN puede ver varias rutas y evaluará cada ruta y elegirá la que tiene la menor latencia.
En este ejemplo, se realizará una conexión UDP mediante RDP Shortpath para redes públicas a través de la conexión VPN directa, ya que tiene la menor latencia, como muestra la línea verde.
Escenario 4
Está habilitado RDP Shortpath tanto para redes públicas como para redes administradas. Se puede establecer una conexión UDP entre el dispositivo cliente y el host de sesión a través de una red pública o de una conexión VPN directa. Cuando el cliente inicia la conexión, hay varios intentos simultáneos de conectarse mediante RDP Shortpath para redes administradas a través del puerto 3390 (de forma predeterminada) y RDP Shortpath para redes públicas a través del protocolo ICE/STUN. Se usará el primer algoritmo encontrado y el usuario empleará la conexión establecida primero para esa sesión.
Dado que atravesar una red pública tiene pasos adicionales, por ejemplo, un dispositivo NAT, un equilibrador de carga o un servidor STUN, es probable que el primer algoritmo encontrado seleccione la conexión mediante RDP Shortpath para redes administradas y se establezca primero.
Escenario 5
Se puede establecer una conexión UDP entre el dispositivo cliente y el host de sesión a través de una red pública o de una conexión VPN directa, pero RDP Shortpath para redes administradas no está habilitado. Para evitar que ICE/STUN use una ruta determinada, un administrador puede bloquear una de las rutas para el tráfico UDP. Este bloqueo garantizaría que siempre se use la ruta de acceso que queda.
En este ejemplo, UDP está bloqueado en la conexión VPN directa y el protocolo ICE/STUN establece una conexión a través de la red pública.
Escenario 6
Está configurado RDP Shortpath tanto para redes públicas como para redes administradas, pero no se pudo establecer una conexión UDP usando una conexión VPN directa. Un firewall o un dispositivo NAT también bloquea una conexión UDP directa mediante la red pública (Internet), pero se puede retransmitir una conexión UDP indirecta mediante TURN entre el dispositivo cliente y el host de sesión a través de una red pública (Internet).
Escenario 7
Está configurado RDP Shortpath tanto para redes públicas como para redes administradas, pero no se pudo establecer una conexión UDP. En esta instancia, RDP Shortpath producirá un error y la conexión volverá al transporte de conexión inversa basado en TCP.