Compartir a través de


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, las cámaras web, los dispositivos USB, las impresoras, etc., 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 sin problemas, comparable a la experiencia con el uso de 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 el redireccionamiento para ayudar a equilibrar los requisitos de seguridad y las necesidades de los usuarios.

En este artículo se proporciona información detallada sobre los métodos de redirección entre las clases periféricas de diferencia, las clasificaciones de redireccionamiento y los tipos de recursos y periféricos admitidos que puede redirigir.

Métodos y clasificaciones de redirección

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

  • Redireccionamiento de alto nivel: funciona como intermediario inteligente interceptando y optimizando toda la comunicación 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 la compatibilidad con 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 interpretarlo, comprenderlo, limitarlo o optimizarlo para escenarios remotos.

    El redireccionamiento opaco de bajo nivel se usa para periféricos que se conectan a través de USB donde no existe una solución adecuada de redireccionamiento periférico de alto nivel, y para periféricos que tienen requisitos de controlador o software específicos en la sesión remota para que funcionen correctamente. El redireccionamiento USB se produce en el nivel de puerto y protocolo mediante bloques de solicitud USB (URB). El redireccionamiento opaco de bajo nivel también se usa para periféricos que se conectan a través de puertos serie/COM.

Dentro del redireccionamiento de alto nivel, se usan cuatro técnicas generales, que se clasifican en función de la dirección del redireccionamiento y del tipo de recurso o periférico que se redirige. Las cuatro clasificaciones de redireccionamiento de alto nivel son:

  • 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 teclado, mouse, táctil, lápiz y trackpad.

  • 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 su estado y ubicación de la batería.

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

El método de redireccionamiento usado puede variar en función de la clase periférica, como Windows, macOS, iOS/iPadOS o Android, y sus recursos, periféricos y funcionalidades disponibles. El redireccionamiento disponible en una sesión remota también depende de la aplicación usada. Para ver una comparación de la compatibilidad con el redireccionamiento mediante Windows App en distintas plataformas, consulte Comparación de características Windows App entre plataformas y dispositivos.

Importante

Debe usar el redireccionamiento de alto nivel siempre que sea posible, ya que proporciona el mejor rendimiento y la experiencia del usuario. El redireccionamiento opaco de bajo nivel es efectivamente un escenario de reserva, por lo que el rendimiento, la confiabilidad y el conjunto de características admitido de estos periféricos no están garantizados de forma predeterminada.

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

Comparación de redireccionamiento USB

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

Redireccionamiento USB opaco de bajo nivel Redirección de alto nivel
Requiere que el controlador del periférico USB se instale en la sesión remota. No es necesario que el controlador se instale 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 requiere que el controlador se instale en la sesión remota.
Usa un único método de redireccionamiento para muchas clases periféricas. Usa un método de redireccionamiento específico para cada clase periférica.
Reenvía bloques de solicitud USB hacia y desde el periférico USB a través de la conexión RDP. Expone la funcionalidad de periféricos 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 del redireccionamiento USB opaco de bajo nivel

El redireccionamiento de periféricos USB mediante el redireccionamiento USB opaco de bajo nivel se controla mediante la propiedadusbdevicestoredirect:s:<value> RDP, donde <value> es la ruta de acceso de la instancia del 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 del redireccionamiento estableciendo el valor de la propiedad RDP como se indica a continuación:

  • Algunos periféricos USB pueden tener funciones que usan redireccionamiento USB opaco de bajo nivel o 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 redireccionamiento USB opaco de bajo nivel, la ubicación de salida de audio debe establecerse para reproducir sonidos en el equipo local.

  • Use GUID de clase para redirigir o no redirigir una clase completa 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 redireccionamiento 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 una combinación de estos valores se puede usar entre sí cuando se separan con un punto y coma, sujeto a un orden de procesamiento. En la tabla siguiente se enumeran los valores válidos y el orden de procesamiento:

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

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

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

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

  1. Nombre del controlador de 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. Id. 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 del dispositivo. Cuando se usa la ruta de acceso de la instancia del 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 acceso USB\VID_045E&PID_0779\5&21F6DCD1&0&5de la instancia del dispositivo, pero la conexión del mismo periférico al segundo puerto USB tiene la ruta de acceso USB\VID_045E&PID_0779\5&21F6DCD1&0&6de la instancia del dispositivo. En el caso de los periféricos USB, especificar la ruta de acceso de la instancia del dispositivo significa que el periférico solo se redirige cuando se conecta al mismo puerto.

Como alternativa, puede redirigir una clase de configuración de dispositivo completa de periféricos USB mediante el GUID de clase. 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. Hay una lista de todos los GUID de clase disponibles en Clases de configuración de dispositivos definidas por el sistema disponibles para los proveedores.

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

Recursos y periféricos admitidos

En la tabla siguiente se enumeran cada clase de recurso o periférico admitida y el método de redireccionamiento recomendado para cada uno de ellos:

Clase de recurso o periférico 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) De alto nivel: reflexión periférica Local a remoto
Salida de audio: altavoz (USB o integrado) De alto nivel: reflexión periférica De forma remota a local
Batería (automática, no configurable) De alto nivel: reflexión de estado Local a remoto
Lector biométrico (solo dentro de una sesión, no durante el inicio de sesión) Redireccionamiento opaco de bajo nivel Bidireccional
Cámara/cámara web (USB o integrada) De alto nivel: reflexión periférica Local a remoto
Unidad de CD/DVD (solo lectura) De alto nivel: reflexión periférica Local a remoto
Portapapeles Alto nivel: uso compartido de datos Bidireccional
Teclado (USB o integrado) De alto nivel: reflexión periférica Local a remoto
Disco duro local o almacenamiento extraíble USB De alto nivel: reflexión periférica Bidireccional
Ubicación De alto nivel: reflexión de estado Local a remoto
Mouse (USB o integrado) De alto nivel: reflexión periférica Local a remoto
MTP Media Player De alto nivel: reflexión periférica Local a remoto
Redireccionamiento multimedia De alto nivel: división de aplicaciones Bidireccional
Lápiz (USB o integrado) De alto nivel: reflexión periférica Local a remoto
Impresora (conectada localmente o red) De alto nivel: reflexión periférica De forma remota a local
Cámara PTP De alto nivel: reflexión periférica Local a remoto
Escáner Redireccionamiento opaco de bajo nivel Bidireccional
Puerto serie/COM Redireccionamiento opaco de bajo nivel Bidireccional
Lector de tarjetas inteligentes De alto nivel: reflexión periférica Bidireccional
Táctil (USB o integrado) De alto nivel: reflexión periférica Local a remoto
Trackpad (USB o integrado, excluyendo gestos de panel táctil de precisión (PTP) De alto nivel: reflexión periférica Local a remoto
Adaptador de USB a serie Redireccionamiento opaco de bajo nivel Bidireccional
Teléfono/auriculares VoIP Redireccionamiento opaco de bajo nivel Bidireccional
WebAuthN De alto nivel: reflexión periférica Bidireccional

Nota:

  • Las siguientes clases periféricas están bloqueadas para el redireccionamiento:

    • Adaptadores de red USB.
    • Pantallas USB.
  • El redireccionamiento del escáner no incluye compatibilidad con TWAIN.

  • El redireccionamiento de batería solo está disponible para Azure Virtual Desktop y Windows 365. Está disponible automáticamente y no se puede configurar.

  • No se admite la redirección 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 periférica admitida.

En el diagrama siguiente se muestran los métodos de redireccionamiento usados para cada clase periférica:

Diagrama en el que se muestra cómo se asignan las distintas clases periféricas a los métodos de redireccionamiento de alto nivel y opaco de bajo nivel.

Orden de prioridad de configuración

El administrador de una sesión remota configura qué clases de dispositivo están habilitadas para el redireccionamiento y cómo se comportan los redireccionamientos. El comportamiento se puede configurar mediante Microsoft Intune o directiva de grupo (Active Directory o local) del lado servidor, o se puede especificar en un .rdp archivo que se usa para conectarse a una sesión remota. Azure Virtual Desktop y Servicios de Escritorio remoto también tienen un servicio de agente donde se pueden especificar propiedades RDP en su lugar.

Sin embargo, ciertas opciones de configuración 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 está disponible en la sesión remota. Esto proporciona flexibilidad en escenarios en los que un subconjunto de usuarios o dispositivos requiere una configuración más restrictiva que la configuración predeterminada.