Are there any specific recommendations on speeding up X applications over ssh on a slow network connection? In this specific case, I am accessing a server located in west coast from a laptop in east coast and that too on a not too fast DSL connection.

Any settings for ssh? Any tips in general?


You will probably see the most major benefits by using compression using the -C option. You can also enable it in your sshd_config by using the following line:

Compression yes
  • 1
    If connection round-trip time is high then compression does not help much. Standard X protocol, with its multitude of ping-pong messages, is not suitable for routes with noticeable RTT. – Linulin Sep 20 '11 at 20:48
  • That's just the nature of the protocol we're dealing with. The questioner has stated he cannot change the SSH server running, so this is the superior clientside option assuming nothing can be done to the server. – Chris Down Sep 20 '11 at 20:52
  • 6
    One some sites it is also reported to use a simple and fast chiper e.g. blowfish: ssh -X -C -c blowfish-cbc,arcfour $hostname – math Feb 20 '13 at 20:24
  • There is a similar question, recommending additional options: superuser.com/questions/400136/speeding-up-remote-x-sessions – math Feb 20 '13 at 20:32
  • (old question but it is being marked as "reference" in other question, which got closed as duplicate of this one) The reason why running X applications over over an ssh connection (or at any remote location actually) is the X-protocol itself. I downvoted this answer because fine-tunning the ssh settings will not help at all in practice. You need to use some "protocol-compressing-tool" to make the application usable, best option X2GO or some other NX-based tool. See unix.stackexchange.com/a/187420/104833 for instance. – Ariel Mar 1 '15 at 12:00

If you have the option, try and test NX (although it is a pain to get going) as it will feel far faster than tunnelling X over ssh...

  • 3
    NX by default works over an ssh tunnel as well. So you don't have to worry about opening any other ports. – wm_eddie Sep 20 '11 at 10:22
  • NX is actually super fast. Better than VNC, better than compression over X. Works sweet. – vivekian2 Sep 21 '11 at 16:25
  • I would actually mark this the right answer for someone who can launch NX on the server side. Not all UI features are available (atleast on gnome), but the speed is worth it. – vivekian2 Sep 21 '11 at 20:31
  • Never tried NX but VNC is a good alternative to SSH -X – baptx Jul 25 '14 at 18:20
  • This one should be the accepted answer, no sense to try to speed up by fine-tunning ssh(d) settings. Best alternative to NX itself (which is quite painful to configure) is X2GO, also NX-libraries based but way easier to get running. – Ariel Mar 1 '15 at 12:03

It's been a while since I tried it, but DXPC (Differential X Protocol Compression) used to make X11 over dial-up PPP work noticeably faster. Perhaps the SSH compression option will work better for you, but this compression is specific to X11 and just might work faster.


It may be worth investigating high performance openssh. For security reasons, openssh uses static buffers in many places. The HPH-SSH project re-implements bits of it to use dynamic buffers. It also seems that they've implemented multi-threaded ciphers in recent revisions.


  • Does this require changes on ssh server running on the server side? Its possible that is something I can't control. – vivekian2 Sep 19 '11 at 19:27
  • 1
    No, it doesn't. From the page: > We have created a patch that will remove the bottlenecks in OpenSSH and is fully interoperable with other servers and clients. In addition HPN clients will be able to download faster from non HPN servers – jmtd Sep 21 '11 at 13:19

X2Go will solve your problem. I'm accessing a raspberry pi in Argentina from Silicon Valley. There's a slight delay but it's as comfortable to work on as my desk computer.

VNC is your second choice.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.