
Realmente no tengo ninguna experiencia con X. Por lo que leí, parece que X siempre se ha creado desde cero para permitir que las ventanas en WM transmitan a través de Internet, sin transmitir un mapa de bits (o un mapa de bits comprimido) de toda la pantalla (lo que requeriría al menos tanto ancho de banda como un vídeo de YouTube).
- ¿Se puede ejecutar sin problemas la GUI de cualquier aplicación de Linux (ya sea que use GTK o lo que sea) a través de una conexión remota?
- ¿El "retraso" en el uso de la GUI de forma remota es significativamente mejor que el de un VNC?
Respuesta1
X funciona bien localmente, a través de una LAN y una WAN.
Pero sí utiliza la red, y X, como todos los protocolos GUI sobre red, es bastante intolerante a la alta latencia.
Algunas aplicaciones son menos amigables con la latencia alta que otras. Firefox es probablemente uno de los peores infractores, tanto en términos de cuánto hace como en términos del poco esfuerzo que los programadores ponen en el rendimiento de la red (o incluso de la CPU). Compárelo con un xterm, que está bastante cerca del otro extremo de la escala en cuanto a compatibilidad con la red.
Dicho esto, uso regularmente Firefox a través de una conexión WiFi de 54 Mbps a una LAN de 100 Mbps, y apenas hay diferencia entre eso y un Firefox local. Claramente, @Marco tiene otros problemas de red si Firefox tarda 2 minutos en iniciarse en su enlace de 1000 Mbps.
Respuesta2
Sí. Al menos en su mayor parte, no he tenido ningún problema con las aplicaciones GTK o Qt.
No. No diría que es excesivamente lento (si tienes una conexión bastante rápida, digamos más de 10 Mbps, apenas hay retraso), pero aún así es mejor que uses NX o incluso RDP.
Respuesta3
X11 sobre ssh será lento. Esto aumenta enormemente para algo como Firefox. Un impulso fácil es habilitar la compresión "-C". Más allá de eso, debe verificar si su red pierde muchos paquetes y el uso de memoria/CPU en el sistema remoto. Si ve una CPU alta, puede intentar jugar con la especificación de cifrado que está utilizando. De lo contrario, necesitará más/mejor CPU/memoria/red.
Dicho todo esto, la mejor solución es algo como nomachine, X2GO o vnc.