25

I have created an azure virtual machine with the following specifications:

  • Ubuntu 18.04 LTS
  • F16s_v2 Standard (16 vCPU and 32 GiB RAM)
  • SSD unit

Since I need to connect via Remote Desktop, I followed this guide to install xfce and xrdp. Once finished, I connected to the server with Microsoft Remote Desktop but I noticed an excessive slowness in interactivity. I don't think the problem is my internet connection because:

  1. By connecting to other Azure Windows VM I don't have the same problem;
  2. I asked to a colleague to do a test from his home and he experienced the same problem;

What could be the problem?

6 Answers6

18

I installed Ubuntu server XRDP. Went through Windows and terribly slowed down. I solved this problem. In the /etc/xrdp/xrdp.ini file, change crypt_level=high to crypt_level=None

Kairat K
  • 191
  • 1
  • 2
8

I disabled the compositor, as suggested here: https://github.com/neutrinolabs/xrdp/issues/501#issuecomment-262905321

Hello, I have experiment same problem with xfce and ubuntu 16.04. I have disable compositor in xfce windows settings. Now it's work fine.

It made a huge difference, now everything works fine.

8

I'm using xrdp w/ KDE and these compositor settings appear to have helped quite a bit:

scale method: crisp
rendering backend: OpenGL 2.0
Tearing prevention: Only when cheap
Keep window thumbnail: never
Allow options to block composting: yes

KDE compositor settings for xrdp headless vm

Edit: To update for clarity, these values are in KDE's settings manager under Desktop Effects -> Compositor. They are not client-specific. The example is modifying the server's desktop environment settings to "dumb them down" a little bit.

Since XRDP is delivering the server's desktop via RDP protocol to your client, if XRDP has less data to send it follows that the remote desktop should be more responsive.

There was a question about clients - As far as clients I was using at the time, I'm sure it was KRDC and windows RDP client. I can't recall modifying any default settings on the clients, other than in KRDC making the window full-screen and client native resolution (so I could make it a separate virtual desktop).

Also, there is another response about reducing / eliminating default encryption from the RDP stream should be very helpful in making the entire process less CPU-intensive from end to end, if that's something your environment will allow.

Hope this helps.

3

I am RDP connecting Ubuntu 18 from a Mac. A great job of acceleration did the Display Option in MS RDP using 16-bit Color instead of 32 bit.

https://i.sstatic.net/sPeRj.png

Markus Meyer
  • 1,910
Peter
  • 31
2

If you are using the recent versions, you need to enable the RFX codec. Use the link below for more information. https://github.com/neutrinolabs/xrdp/discussions/2136

1

After doing a lot of research, I got good performance with these settings:

xfce4
xorgxrdp-glamor

In /etc/xrdp/sesman.ini and /etc/xrdp/xrdp.ini:

Policy=UBDI
max_bpp=16
xserverbpp=16
use_compression = yes
crypt_level=none
KillDisconnected=true
DisconnectedTimeLimit=0
tcp_send_buffer_bytes=4194304

Tweak for TCP (2x request buffer size):

sudo sysctl -w net.core.wmem_max=8388608

see https://github.com/neutrinolabs/xrdp/issues/1483

Disable compositor:

xfconf-query -c xfwm4 -p /general/use_compositing -t bool -s false
MarcosD
  • 11