- Tecnología NX
-
NX es un programa informático que realiza conexiones remotas X11 muy rápidas, lo que permite a los usuarios acceder a escritorios remotos de Linux o Unix incluso bajo conexiones lentas como las realizadas con módem.
NX realiza una compresión directa del protocolo X11, lo que permite una mayor eficiencia que VNC. La información se envía mediante SSH, por lo que toda la información que se intercambian servidor y cliente está cifrada.
Al cliente que se conecta al servidor NX se le considera cliente liviano.
NX está desarrollado por la empresa italiana NoMachine, que ha liberado el código. Existe una implementación libre de esta aplicación, llamada FreeNX.
Contenido
Conceptos básicos
Cuando un cliente necesita dibujar algo en pantalla realiza una cantidad de peticiones al servidor, muchas de las cuales necesitan una respuesta. Cada par petición-respuesta se conoce como roundtrip. Estos roundtrips son los que hacen al sistema más lento debido principalmente al tiempo que se necesita para completar el ida y vuelta. Cuando el cliente y el servidor X son ejecutados en el mismo host la comunicación se realiza de forma muy rápida. Sin embargo cuando cliente y servidor ejecutan en diferentes hosts la comunicación debe realizarse a través de TCP/IP por lo que en este caso la comunicación es mucho más lenta. Otro factor que puede afectar el desempeño es la velocidad de la conexión y latencia de la red.
Eficiencia de NX
La tecnología NX ofrece mayor eficiencia que otras debido principalmente a las características que se listan a continuación:
- Realiza una eficiente compresión del tráfico X.
- La compresión del tráfico en forma eficiente es necesaria para lograr ejecutar aplicaciones sobre medios de poco ancho de banda y también para permitir ejecutar múltiples sesiones de usuario en redes LAN.
- Utiliza mecanismos de cache para almacenar y reutilizar la información transferida entre cliente y servidor.
- NX utiliza un método de cache innovador que divide el mensaje X en dos partes, uno de identificación y otro de datos. La tecnología mantiene en cache únicamente los datos de los últimos mensajes enviados, clasificados por protocolo. A este cache se le conoce como MessageStore y hace que el número de peticiones para mostrar los elementos de pantalla disminuya notoriamente.
- El tiempo consumido en realizar roundtrips es prácticamente nulo.
- La reducción de roundtrips es fundamental, al igual que el estricto control del flujo de datos que viaja por la red.
- Utiliza un algoritmo de codificación perezoso para realizar actualizaciones de pantalla.
- NX posee mecanismos de adaptación para ajustarse a las propiedades de la red (latencia y velocidad de conexión), lo que permite pasar de métodos estrictos de codificación a métodos perezosos que retrasan la actualización de pantalla cuando la red está congestionada.
Objetivos de NX
El principal objetivo de esta tecnología es el de ejecutar a través de Internet aplicaciones que logren tener el mismo aspecto gráfico que cuando se ejecutan en cualquier PC. Generalmente cuando esto ocurre es necesario deshabilitar todo aquello que pueda consumir demasiados recursos, como por ejemplo, menús desplegables, fondos de pantalla, iconos o animaciones gráficas. NX fue diseñado especialmente para soportar estas condiciones y no hacer que usuarios y desarrolladores deban cambiar sus hábitos o su código.
Véase también
- Comparación de software de escritorio remoto (en inglés)
- Thinstation implementación de un cliente ligero en Linux con un cliente NX incorporado opcional.
- LTSP
- Computación en Red Virtual (VNC)
- x2go, otro programa similar también libre.
Enlaces externos
- NoMachine sitio oficial que ofrece un cliente y un servidor comercial.
- NoMachine technical documentation
- Free NX página del proyecto en BerliOS.
- Serie de artículos sobre FreeNX (LinuxJournal): Parte 1, 2, 3, 4, 5, [La parte 6 no se ha publicado].
- Faster remote desktop connections with FreeNX - Artículo de Linux.com sobre la tecnología NX y FreeNX en particular.
- OpenNX página del proyecto en SourceForce.
- DXPC Compresor diferencial del protocolo X, por Kevin Vigor.
- Neatx Servidor NX (de código abierto) desarrollado por Google, similar al servidor NX comercial de NoMachine.
- Release announcement Anuncio de la publicación del cliente QtNX.
- x2go servidor de terminal.
- QVD Plataforma Opensource de VDI en Linux que utiliza NX.
Categorías:- Software para Linux
- X Window System
- Tiempo compartido
- Cliente liviano
Wikimedia foundation. 2010.