2009-08-16 8 views
18

Utilizo la utilidad de Escritorio Remoto de Windows basado en RDP para conectarme a mi escritorio desde mi computadora portátil. Es mucho más rápido y se ve mejor que las aplicaciones de control remoto como TeamViewer, etc.¿Por qué RDP es tan rápido en comparación con otro software de control remoto?

Por curiosidad, ¿por qué es mejor el RDP?

Gracias.

+2

Solo quiero mencionar este excelente artículo de MSDN "Top 10 Conceptos erróneos del protocolo RDP" sobre RDP ([Parte 1] (http://blogs.msdn.com/b/rds/archive/2009/03/03/top) -10-rdp-protocol-misconceptions-part-1.aspx) & [Parte 2] (http://blogs.msdn.com/b/rds/archive/2009/03/12/top-10-rdp-protocol -misconceptions-part-2.aspx)) que da alguna idea – nixda

Respuesta

13

RDP es un protocolo específico que permite transmitir operaciones de dibujo de pantalla de bajo nivel. También es consciente de las entidades de pixmap en la pantalla. Por ejemplo, comprende cuándo se dibuja un ícono y lo almacena en caché (generalmente en un formato comprimido con pérdida) en el lado del cliente.

Otro software no tiene este acceso de bajo nivel: Espera a que la pantalla cambie y luego vuelve a transmitir una captura de la pantalla o las regiones modificadas. Cada vez que la pantalla cambia, se debe transmitir una representación de mapa de píxeles. Debido a que esto es comprimido con pérdida en general, también se ve peor.

+3

También vale la pena señalar que las operaciones de dibujo de pantalla de bajo nivel son mucho más pequeñas en términos de tamaño de datos que los mapas de bits que transmiten otros formatos. Menos datos transmitiendo a través del cable significa un control remoto más rápido. – Bob

13

Hay dos factores importantes en el trabajo que determinan el rendimiento de un producto de control remoto:

¿Cómo se detecta cuando se produzcan cambios en la pantalla?

Algunos productos de RC dividen la pantalla en mosaicos y escanea periódicamente el búfer de cuadros de pantalla para determinar si se han producido cambios.

Otros se engancharán directamente en el sistema operativo. En el pasado, esto se hacía interceptando el controlador de video. Ahora puede crear un controlador espejo en el que el sistema operativo "refleje" todas las operaciones de dibujo. Esto es, obviamente, mucho más rápido.

¿Cómo envía esos cambios a través del cable?

Algunos productos (como VNC) siempre enviarán bitmaps de cualquier área que haya cambiado.

Otros enviarán la operación real que causó el cambio. p.ej. renderizar cadena de texto s usando la fuente f en las coordenadas (x, y) o dibujar la curva de bezier usando un conjunto dado de parámetros y, por supuesto, renderizar mapa de bits. Esto es, de nuevo, mucho más rápido.

RDP utiliza la técnica más rápida (y más difícil de implementar) en ambos casos. Creo que el protocolo real que usa es T.128.

Los mapas de bits suelen estar comprimidos. Algunos productos (como Carbon Copy) también mantienen cachés de mapa de bits sincronizados en ambos lados de la conexión con el fin de exprimir aún más el rendimiento.

+0

Gracias chicos por la explicación. – Gulbahar

Cuestiones relacionadas