Ssh – Fastest remote X from Windows

sshvirtual machinewindowsx11

I have the following set up:

|-----------------|                          |---------------|
|   Windows       |     LAN (or VPN)         |    Linux box  |
| (local machine) | <-------------------->   |               |
|-----------------|                          |---------------|

and I would like to access my Emacs and Eclipse windows on the Linux box from my Windows machine with minimal latency.

My options seem to be:

  • VNC
  • Virtualization of a Linux guest on my local Windows host using for example Virtualbox with Ubuntu, and then ssh -X to the Linux box from it (here is a thread that discusses configurations for fast ssh X tunneling)
  • cygwin with an X server and ssh -X to the remote box.

At the moment I use RealVNC, but I have noticed some notable latency. After doing some research I read on Wikipedia the following:

The VNC protocol is pixel-based. Although this leads to great
flexibility (i.e.- any type of desktop can be displayed), it is often
less efficient than solutions that have a better understanding of the
underlying graphic layout like X11 or Windows Remote Desktop Protocol

This makes me wonder, what options do I have to get the fastest access to remote X windows from a local Windows machine?

Best Answer

I think the state of the art for the maximum bandwidth is NX, an X11 protocol compression program. It should perform well with respect to latency too. Try using the Windows NX client and the free NX server on Linux.

If possible, use a direct TCP connection instead of SSH. Of course, this is only viable in a controlled environment with no security worries.

I think in most setups a virtual machine running locally will give you the best latency. Even better, run Emacs and Eclipse under Windows; make them edit remote files, or (for even better results) make them edit local files which you then synchronize with Unison or through a version control system.

Related Question