I have a Windows 8.1 remote PC, to which I am connecting using RDP from Windows 7 and Linux clients. I noticed that the performance e.g. when scrolling is much better on Windows than on any Linux distribution. I am using rdesktop, Remmina, GNOME-RDP, everywhere the screen refresh is slow and choppy, like VNC. But RDP does not work like VNC, or does it? Why is it so and what is the fastest RDP client for Linux? Maybe Remote Desktop Connection Client under Wine?

  • 2
    RDP is a proprietary protocol so I guess the others have reversed engineered their programs, therefore not knowing the underlying mechanisms they'll have to make a best guess what to do
    – gwillie
    Commented Jul 29, 2015 at 23:15
  • my android rdp client (by microsoft) works better on my phone than any linux rdp on my i7 laptop Commented Mar 6, 2018 at 1:18

3 Answers 3

  1. There are multiple versions of RDP protocol:

    • original 4.0, which is a clone of ITU-T T.128 protocol
    • 5.0 - which is still used by rdesktop (and not even fully)
    • 5.1, 5.2, 6.0, 6.1, 7.0, 8.1 and 8.1

As you can imagine, each new version of RDP is better, not only by introducing new features, but also by further improving performance and overall user experience.

  1. As I wrote above, rdesktop still implements only a subset of RDP 5.0 protocol (version used on Windows 2000). This version is less optimized than at least 6.0 (released with Windows Vista), which was a huge performance improvement.

  2. Additionally, the whole X11 window system used on Linux is a group of userland applications, while Microsoft Windows processes graphic events (like screen scrolling) directly in its kernel.

Screen (and application windows) scrolling is an operation requiring copying much memory contents from one place to another. This operation is much faster in the system kernel, than in userland applications.

And this also affects the performance of each RDP implementations.

  • Thanks, but how about FreeRDP? Which RDP version does it implement?
    – niutech
    Commented Jul 30, 2015 at 17:32
  • 1
    I found several different informations about FreeRDP, but probably it support subset of 7.0 or 7.1. If you have time, here you have more information on that: github.com/FreeRDP/FreeRDP/wiki/Reference-Documentation Commented Jul 30, 2015 at 18:00
  • Has there been any progress on that lately?
    – Royi
    Commented Dec 15, 2017 at 9:43
  • Why should screen scrolling be slow or require lots of memory copying instead of simple gpu blt ops to move the contents and then drawing the newly visible content? Commented Mar 25, 2018 at 19:13

As you can see from gwilli's answer RDP is not RDP because there are many different versions of the protocol with many extensions and client and server are negotiating for a protocol version they both understand.

It is in the nature of things that two Windows versions likely agree on a newer and better performing version of the protocol.

I can't say anything qualified regarding the performance of Linux RDP client, because I don't know of any benchmarks regarding open source RDP implementations. In case you want to compare clients, you should look at which underlying libraries the clients use and not just the client. This would make your search more efficient.


If you use Gnome you may disable Animation through Ubuntu Tweaks tool.

  • 1
    Could you edit and expand your answer, stating why this might help? Commented Feb 18, 2022 at 13:20

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .