Redirección de periféricos y recursos a través del Protocolo de Escritorio remoto

El redireccionamiento permite a los usuarios compartir recursos y periféricos, como el Portapapeles, cámaras web, dispositivos USB, impresoras y mucho más, entre su dispositivo local (lado cliente) y una sesión remota (lado servidor) a través del Protocolo de escritorio remoto (RDP). El redireccionamiento tiene como objetivo proporcionar una experiencia remota fluida, comparable a la experiencia al usar su dispositivo local. Esta experiencia ayuda a los usuarios a ser más productivos y eficientes al trabajar de forma remota. Como administrador, puede configurar la redirección para ayudar a equilibrar los requisitos de seguridad y las necesidades de los usuarios.

Este artículo proporciona información detallada sobre los métodos de redirección en las diferentes clases de periféricos, clasificaciones de redireccionamiento y los tipos de recursos y periféricos admitidos que puede redirigir.

Métodos y clasificaciones de redireccionamiento

RDP aprovecha dos métodos de redireccionamiento para redirigir recursos y periféricos entre el dispositivo local y una sesión remota:

  • Redirección de alto nivel: funciona como un intermediario inteligente al interceptar y optimizar todas las comunicaciones para una clase específica de periféricos o experiencia. El redireccionamiento de alto nivel garantiza el mejor rendimiento posible para escenarios remotos, pero también se basa en el soporte de controladores periféricos y aplicaciones.

  • Redireccionamiento opaco de bajo nivel: transporta la comunicación sin procesar de un periférico sin ningún intento de interpretarla, comprenderla, acelerarla u optimizarla para escenarios remotos.

    La redirección opaca de bajo nivel se usa para periféricos que se conectan a través de USB donde no existe una solución adecuada de redirección de reflexión periférica de alto nivel, y para periféricos que tienen requisitos particulares de controladores o software en la sesión remota para funcionar correctamente. El redireccionamiento USB se produce en el nivel de puerto y protocolo mediante bloques de solicitud USB (URB). La redirección opaca de bajo nivel también se usa para periféricos que se conectan a través de puertos seriales/COM.

Dentro de la redirección de alto nivel, se utilizan cuatro técnicas generales, que se clasifican en función de la dirección de la redirección y el tipo de recurso o periférico que se redirige. Las cuatro clasificaciones de redirección de alto nivel son las siguientes:

  • Reflexión periférica: refleja una clase específica de periférico conectado al dispositivo local en una sesión remota. Esta clasificación incluye dispositivos de entrada, como el teclado, el mouse, la función táctil, el lápiz y el panel táctil.

  • Uso compartido de datos: comparte y transfiere datos entre el dispositivo local y una sesión remota para el portapapeles.

  • Reflexión de estado: refleja el estado del dispositivo local en una sesión remota, como el estado de la batería y la ubicación.

  • División de aplicaciones: divide la funcionalidad de una aplicación entre el dispositivo local y una sesión remota, como Microsoft Teams.

El método de redirección usado puede variar en función de la clase de periférico, como Windows, macOS, iOS/iPadOS o Android, y sus recursos, periféricos y capacidades disponibles. La redirección disponible en una sesión remota también depende de la aplicación utilizada. Para obtener una comparación de la compatibilidad con el redireccionamiento mediante Aplicación de Windows en distintas plataformas, consulta Comparar características de Aplicación de Windows entre plataformas y dispositivos.

Importante

Siempre que sea posible, debe usar el redireccionamiento de alto nivel, ya que ofrece la mejor experiencia de usuario y rendimiento. El redireccionamiento opaco de bajo nivel es un escenario de reserva, por lo que el rendimiento, la confiabilidad y el conjunto de características compatibles de dichos periféricos no están garantizados de forma predeterminada.

Algunos periféricos no se pueden redirigir, como el almacenamiento USB cifrado.

Comparación de redirección USB

En la tabla siguiente se compara el redireccionamiento de un periférico USB mediante el redireccionamiento USB opaco de bajo nivel con el redireccionamiento del periférico mediante el redireccionamiento de alto nivel con una clase de periférico compatible a través de RDP:

Redirección USB de bajo nivel opaca Redireccionamiento de alto nivel
Requiere que el controlador del periférico USB se instale en la sesión remota. No requiere que el controlador esté instalado en el dispositivo local. Requiere que el controlador del periférico se instale en el dispositivo local. En la mayoría de los casos, no es necesario instalar el controlador en la sesión remota.
Usa un único método de redirección para muchas clases periféricas. Usa un método de redirección específico para cada clase periférica.
Reenvía los bloques de solicitud USB hacia y desde el periférico USB a través de la conexión RDP. Expone la funcionalidad periférica de alto nivel en una sesión remota mediante un protocolo optimizado para la clase periférica.
El periférico USB no se puede usar en el dispositivo local mientras se usa en una sesión remota. Solo se puede usar en una sesión remota a la vez. El periférico se puede usar simultáneamente en el dispositivo local y en una sesión remota.
Optimizado para conexiones de baja latencia. Variable basada en la implementación del controlador periférico. Optimizado para conexiones LAN y WAN y es consciente de los cambios en las condiciones, como el ancho de banda y la latencia.

Control de la redirección USB opaca de bajo nivel

El redireccionamiento de periféricos USB mediante el redireccionamiento USB opaco de bajo nivel se controla mediante la propiedad usbdevicestoredirect:s:<value>RDP, donde <el valor> es la ruta de acceso de la instancia de dispositivo en el formato .USB\<Vendor ID and Product ID>\<USB instance ID>

Para algunos productos y servicios, como Azure Virtual Desktop, puede controlar el comportamiento de redirección estableciendo el valor de propiedad RDP de la siguiente manera:

  • Algunos periféricos USB pueden tener funciones que usen el redireccionamiento USB opaco de bajo nivel o el redireccionamiento de alto nivel. De forma predeterminada, estos periféricos se redirigen mediante el redireccionamiento de alto nivel. Puede usar la propiedad RDP para forzar a estos periféricos a usar el redireccionamiento USB opaco de bajo nivel. Para usar periféricos de audio USB con redirección USB opaca de bajo nivel, la ubicación de salida de audio debe configurarse para reproducir sonidos en el equipo local.

  • Usar GUID de clase para redirigir o no redirigir toda una clase de periféricos USB.

  • Use el carácter * comodín, ya que el valor redirigirá la mayoría de los periféricos que no tienen instalados mecanismos de redirección de alto nivel o controladores. Los GUID de clase se pueden usar para redirigir periféricos adicionales que no coinciden automáticamente.

Los valores se pueden usar por sí mismos o se puede usar una combinación de estos valores conjuntamente cuando se separan con punto y coma, sujeto a un orden de procesamiento. En la siguiente tabla se muestran los valores válidos y el orden de procesamiento:

Orden de procesamiento Valor Description
N/D No se especificó ningún valor No redirija ningún periférico USB compatible mediante el redireccionamiento opaco de bajo nivel.
1 * Redirigir todos los periféricos que no estén usando el redireccionamiento de alto nivel.
2 {<DeviceClassGUID>} Redirija todos los periféricos que sean miembros de la clase de instalación de dispositivos especificados.
3 <USBInstanceID> Redirija un periférico USB especificado por la ruta de acceso de instancia de dispositivo especificada.
4 <-USBInstanceID> No redirija un periférico especificado por la ruta de acceso de instancia de dispositivo especificada.

Cuando se construye como una cadena en el orden de procesamiento correcto, la sintaxis es:

usbdevicestoredirect:s:*;{<DeviceClassGUID>};<USBInstanceID>;<-USBInstanceID>

La ruta de la instancia de dispositivo para dispositivos USB se construye en tres secciones en el formato USB\<Device ID>\<USB instance ID>. Puede encontrar este valor en el Administrador de dispositivos o mediante el cmdlet Get-PnpDevice de PowerShell. Las tres secciones en orden son:

  1. Nombre del controlador del bus, en este caso USB.
  2. Id. de dispositivo, que contiene el id. de proveedor (VID) y el id. de producto (PID) del periférico USB.
  3. Identificador de instancia, que distingue de forma única un dispositivo de otros dispositivos del mismo tipo en un equipo.

Al especificar periféricos USB para redirigir a través de RDP, puede usar la ruta de acceso de la instancia de dispositivo. Al usar la ruta de acceso de instancia de dispositivo, el valor es específico del puerto del dispositivo local al que está conectado. Por ejemplo, un periférico conectado al primer puerto USB tiene la ruta de la USB\VID_045E&PID_0779\5&21F6DCD1&0&5instancia del dispositivo, pero la conexión del mismo periférico al segundo puerto USB tiene la ruta de la USB\VID_045E&PID_0779\5&21F6DCD1&0&6instancia del dispositivo. Para los periféricos USB, especificar la ruta de acceso de la instancia del dispositivo significa que el periférico solo se redirige cuando está conectado al mismo puerto.

Como alternativa, puede redirigir una clase completa de instalación de dispositivos de periféricos USB mediante la clase GUID. Cuando se usa el GUID de clase, se redirigen todos los periféricos del dispositivo local que tienen el GUID de clase correspondiente, independientemente del puerto al que estén conectados. Por ejemplo, el uso del GUID {4d36e96c-e325-11ce-bfc1-08002be10318} de clase redirige todos los dispositivos multimedia. Puede consultar todos los GUID de clase en las clases de configuración de dispositivos definidas por el sistema disponibles para los proveedores.

Para obtener algunos ejemplos de cómo usar la propiedad RDP, consulte la propiedad RDP usbdevicestoredirect.

Periféricos y recursos admitidos

En la tabla siguiente se enumera cada clase de recursos o periféricos admitidos y el método de redirección recomendado que se debe usar para cada una:

Clase de recursos o periféricos Método de redirección Dirección del flujo de datos predominante
Impresora/escáner todo en uno Redireccionamiento opaco de bajo nivel Bidireccional
Entrada de audio: micrófono (USB o integrado) Alto nivel: reflexión periférica Local a remoto
Salida de audio: altavoz (USB o integrado) Alto nivel: reflexión periférica Remoto a local
Batería (automática, no configurable) Alto nivel: reflexión de estado Local a remoto
Lector de datos biométricos (solo dentro de una sesión, no durante el inicio de sesión) Redireccionamiento opaco de bajo nivel Bidireccional
Cámara/webcam (USB o integrada) Alto nivel: reflexión periférica Local a remoto
Unidad de CD o DVD (solo lectura) Alto nivel: reflexión periférica Local a remoto
Portapapeles Alto nivel: uso compartido de datos Bidireccional
Teclado (USB o integrado) Alto nivel: reflexión periférica Local a remoto
Disco duro local o almacenamiento extraíble USB Alto nivel: reflexión periférica Bidireccional
Ubicación Alto nivel: reflexión de estado Local a remoto
Mouse (USB o integrado) Alto nivel: reflexión periférica Local a remoto
Reproductor multimedia MTP Alto nivel: reflexión periférica Local a remoto
Redireccionamiento multimedia Alto nivel: división de aplicaciones Bidireccional
Lápiz (USB o integrado) Alto nivel: reflexión periférica Local a remoto
Impresora (conectada localmente o red) Alto nivel: reflexión periférica Remoto a local
Cámara PTP Alto nivel: reflexión periférica Local a remoto
Escáner Alto nivel: reflexión periférica Bidireccional
Puerto serie/COM Redireccionamiento opaco de bajo nivel Bidireccional
Lector de tarjetas inteligentes Alto nivel: reflexión periférica Bidireccional
Función táctil (USB o integrado) Alto nivel: reflexión periférica Local a remoto
Trackpad (USB o integrado, excepto los gestos de panel táctil de precisión (PTP)) Alto nivel: reflexión periférica Local a remoto
Adaptador USB a serie Redireccionamiento opaco de bajo nivel Bidireccional
Teléfono/auriculares VoIP Redireccionamiento opaco de bajo nivel Bidireccional
WebAuthN Alto nivel: reflexión periférica Bidireccional

Nota:

  • El redireccionamiento de las siguientes clases periféricas está bloqueada:

    • Adaptadores de red USB.
    • Pantallas USB.
  • La redirección de la batería solo está disponible para Azure Virtual Desktop y Windows 365. Está disponible automáticamente y no se puede configurar.

  • No se admite el redireccionamiento de la pila de controladores Bluetooth . Si un periférico está conectado al dispositivo local, como un teclado Bluetooth, se redirige a la sesión remota en función de la clase de periférico admitida.

En el diagrama siguiente se muestran los métodos de redirección utilizados para cada clase periférica:

Diagrama que muestra cómo se asignan distintas clases periféricas a los métodos de redirección de bajo nivel alto y opacos.

Orden de prioridad de configuración

Qué clases de dispositivo están habilitadas para la redirección y cómo se comportan las redirecciones son configuradas por un administrador de una sesión remota. El comportamiento se puede configurar mediante Microsoft Intune o la directiva de grupo (Active Directory o local) en el servidor, o especificarlo en un .rdp archivo que se usa para conectarse a una sesión remota. Servicios de Escritorio virtual y Escritorio remoto de Azure también tienen un servicio de agente en el que se pueden especificar propiedades RDP en su lugar.

Sin embargo, algunas configuraciones se pueden invalidar en el dispositivo local donde se requiere una configuración más restrictiva. Una configuración más restrictiva tiene prioridad dondequiera que esté configurada; Por ejemplo, si un administrador configura el Portapapeles para que se redirija de forma predeterminada para todas las sesiones remotas, pero el dispositivo local está configurado para deshabilitar el redireccionamiento del Portapapeles, el Portapapeles no estará disponible en la sesión remota. Esto proporciona flexibilidad en escenarios en los que un subconjunto de usuarios o dispositivos requieren una configuración más restrictiva que la predeterminada.