ubuntuusers.de

X11VNC sehr langsam

Status: Ungelöst | Ubuntu-Version: Kubuntu 19.10 (Eoan Ermine)
Antworten |

TheMagican

Anmeldungsdatum:
29. März 2007

Beiträge: 203

Hallo allerseits,

ich hab schon seit Jahren einen Rechner, auf dem ich auch schon seit jeher x11vnc benutze. Seit 2-3 Ubuntu Releases hab ich aber das Problem, dass die VNC Verbindung extrem langsam ist. Bspw. braucht es bestimmt 5s bis ich bei einem Wechsel des Tabs im Browser den neuen Tab-Inhalt sehe; wenn ich parallel dazu auf den Monitor des Rechners schaue, ist das Tab normal schnell ("sofort") geöffnet.

Ich hab schon div. Seiten gelesen, woran es liegen könnte, jedoch ohne Erfolg:

  • Ich verwende 1GB LAN. iperf bestätigt mir 943 Mbits/sec

  • Lesen des X11 frame buffers scheint auch schnell zu gehen:

    x11vnc[30689]: 29/11/2019 17:24:42 fb read rate: 578 MB/sec
  • Ich hab auch schon div. VNC Clients probiert

Kann mir jemand sagen, woran das liegen könnte?

Ich starte x11vnc als systemd service:

[Unit]
Description=Start x11vnc at startup.
Requires=display-manager.service
After=display-manager.service

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth /home/andreas/.Xauthority -forever -loop -noxdamage -repeat -rfbauth /etc/x11vnc.pass -rfbport 5900 -shared

[Install]
WantedBy=multi-user.target

Hier die Log-Ausgabe von x11vnc, wenn ich mich mit krdc verbinde, ein Chrome in Tab wechsle und die Verbindung wieder schließe:

Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 Got connection from client 192.168.101.172
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21   other clients:
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 Normal socket connection
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 incr accepted_client=2 for 192.168.101.172:47916  sock=11
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 Client Protocol Version 3.8
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 Protocol version sent 3.8, using 3.8
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 rfbProcessClientSecurityType: executing handler for type 2
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 Pixel format for client 192.168.101.172:
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21   32 bpp, depth 24, little endian
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21   true colour: max r 255 g 255 b 255, shift r 16 g 8 b 0
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 no translation needed
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 Using compression level 0 for client 192.168.101.172
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 Enabling KeyboardLedState protocol extension for client 192.168.101.172
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 Enabling NewFBSize protocol extension for client 192.168.101.172
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 Enabling SupportedMessages protocol extension for client 192.168.101.172
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 Enabling SupportedEncodings protocol extension for client 192.168.101.172
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 Enabling ServerIdentity protocol extension for client 192.168.101.172
Nov 29 17:57:21 workstation x11vnc[30689]: 29/11/2019 17:57:21 Using zlib encoding for client 192.168.101.172
Nov 29 17:57:22 workstation x11vnc[30689]: 29/11/2019 17:57:22 Pixel format for client 192.168.101.172:
Nov 29 17:57:22 workstation x11vnc[30689]: 29/11/2019 17:57:22   32 bpp, depth 24, little endian
Nov 29 17:57:22 workstation x11vnc[30689]: 29/11/2019 17:57:22   true colour: max r 255 g 255 b 255, shift r 16 g 8 b 0
Nov 29 17:57:22 workstation x11vnc[30689]: 29/11/2019 17:57:22 no translation needed
Nov 29 17:57:22 workstation x11vnc[30689]: 29/11/2019 17:57:22 Using compression level 0 for client 192.168.101.172
Nov 29 17:57:22 workstation x11vnc[30689]: 29/11/2019 17:57:22 Enabling KeyboardLedState protocol extension for client 192.168.101.172
Nov 29 17:57:22 workstation x11vnc[30689]: 29/11/2019 17:57:22 Enabling NewFBSize protocol extension for client 192.168.101.172
Nov 29 17:57:22 workstation x11vnc[30689]: 29/11/2019 17:57:22 Enabling SupportedMessages protocol extension for client 192.168.101.172
Nov 29 17:57:22 workstation x11vnc[30689]: 29/11/2019 17:57:22 Enabling SupportedEncodings protocol extension for client 192.168.101.172
Nov 29 17:57:22 workstation x11vnc[30689]: 29/11/2019 17:57:22 Enabling ServerIdentity protocol extension for client 192.168.101.172
Nov 29 17:57:22 workstation x11vnc[30689]: 29/11/2019 17:57:22 Switching from zlib to zlib Encoding for client 192.168.101.172
Nov 29 17:57:24 workstation x11vnc[30689]: 29/11/2019 17:57:24 client useCopyRect: 192.168.101.172 -1
Nov 29 17:57:24 workstation x11vnc[30689]: 29/11/2019 17:57:24 client_set_net: 192.168.101.172  0.0024
Nov 29 17:57:24 workstation x11vnc[30689]: 29/11/2019 17:57:24 client 2 network rate 12653.8 KB/sec (12597.4 eff KB/sec)
Nov 29 17:57:24 workstation x11vnc[30689]: 29/11/2019 17:57:24 client 2 latency:  0.7 ms
Nov 29 17:57:24 workstation x11vnc[30689]: 29/11/2019 17:57:24 dt1: 0.0002, dt2: 0.0012 dt3: 0.0007 bytes: 17486
Nov 29 17:57:24 workstation x11vnc[30689]: 29/11/2019 17:57:24 link_rate: LR_LAN - 1 ms, 12653 KB/s
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42 client_count: 0
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42 Client 192.168.101.172 gone
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42 Statistics             events    Transmit/ RawEquiv ( saved)
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42  ServerCutText       :      2 |       162/      162 (  0.0%)
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42  FramebufferUpdate   :     47 |         0/        0 (  0.0%)
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42  raw                 :      2 |        32/       32 (  0.0%)
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42  zlib                :    451 |  20782284/ 20769876 ( -0.1%)
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42  ServerIdentify      :      1 |        42/       42 (  0.0%)
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42  SupportedEncoding   :      1 |        92/       92 (  0.0%)
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42  SupportedMessage    :      1 |        76/       76 (  0.0%)
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42  TOTALS              :    505 |  20782688/ 20770280 ( -0.1%)
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42 Statistics             events    Received/ RawEquiv ( saved)
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42  PointerEvent        :    139 |       834/      834 (  0.0%)
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42  FramebufferUpdate   :     48 |       480/      480 (  0.0%)
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42  SetEncodings        :      2 |        96/       96 (  0.0%)
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42  SetPixelFormat      :      2 |        40/       40 (  0.0%)
Nov 29 17:57:42 workstation x11vnc[30689]: 29/11/2019 17:57:42  TOTALS              :    191 |      1450/     1450 (  0.0%)

Vorab vielen Dank!

TheMagican

(Themenstarter)

Anmeldungsdatum:
29. März 2007

Beiträge: 203

Hab noch einen wichtigen Punkt vergessen: Ich hab einen anderen Thread mit einem ähnlichen Problem gefunden. Hier wurde aber "nur" geraten, von VNC weg zu gehen zu einem anderen Protokoll / einer anderen Software. Prinzipiell hätte ich da auch nix dagegen, solange folgende Kriterien erfüllt werden:

  • Gleichzeitiger Zugriff von remote und lokal auf den selben Desktop

  • Zugriff über HTTP / Browser (bei mir aktuell mit novnc gelöst)

Cranvil

Anmeldungsdatum:
9. März 2019

Beiträge: 990

Solang du x11vnc nicht über eine ungeschüzte Netzwerkverbindung laufen lässt, sollte es erstmal nicht so schlimm sein.

Zu den Performance-Problemen kann ich gerade gar nicht mal so viel sagen, außer vielleicht mal nachzuschauen, ob du dort auch andere Algorithmen fürs Abgreifen und Verarbeiten der Bilddaten abgreifen kannst. Immerhin werden die modernen Desktops immer "feinfühliger" mit ihren Effekten. Und bei sowas wie vnc kann ich mir gut vorstellen, dass es vielleicht dort hakt.

Ich verwende hin und wieder NoMachine, welches aus Archiv/NX hervorgegangen ist. Abhängig von deiner Position zu Closed Source-Software kannst du damit recht viel machen und es ist für den privaten und (unternehmens)internen Einsatz lizenzkostenfrei. Inwiefern das den Zugriff über Webbrowser zulässt, ist mir derzeit nicht bekannt.

ChickenLipsRfun2eat Team-Icon

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12067

Hallo!

Da du Kubuntu nutzt, kannst du KRDC mal ausprobieren, das nutzt als Standard auch VNC.
Ich setze hier QEMU mit KVM über SSH ein, allerdings bisher nur lokal und es handelt sich um eine reine Virtualisierung. Das lässt sich über den mitgelieferten virt-viewer anzeigen.

Zum Zugriff per Browser kann ich auch nichts beitragen.

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

Hast du mal geguckt ob der "Server" zu dem Zeitpunkt irgendwelche Last hat? Außerdem wäre mal interessant wie der Datendurchsatz des Netzwerks konkret aussieht, wenn eine VNC-Verbindung besteht...

TheMagican

(Themenstarter)

Anmeldungsdatum:
29. März 2007

Beiträge: 203

misterunknown schrieb:

Hast du mal geguckt ob der "Server" zu dem Zeitpunkt irgendwelche Last hat? Außerdem wäre mal interessant wie der Datendurchsatz des Netzwerks konkret aussieht, wenn eine VNC-Verbindung besteht...

Tatsächlich scheint die VNC Verbindung einen der vier Kerne komplett auszulasten (Intel Core Prozessor, 1. Generation von vor 10 Jahren ...). Aber die restlichen Kerne langweilen sich, insofern denke ich nicht, dass die CPU der limitierende Faktor ist ...

Was genau meinst du denn mit "wie der Datendurchsatz des Netzwerks konkret aussieht, wenn eine VNC-Verbindung besteht"? Ich hab mir im Networkmanager Plasmoid mal einen Graph über den Netzwerk-Traffic angesehen, während ich eine VNC-Verbindung laufen hab, und ich komme nie über 5MB/s - und die Leitung kann wie gesagt deutlich mehr...

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

TheMagican schrieb:

Tatsächlich scheint die VNC Verbindung einen der vier Kerne komplett auszulasten (Intel Core Prozessor, 1. Generation von vor 10 Jahren ...). Aber die restlichen Kerne langweilen sich, insofern denke ich nicht, dass die CPU der limitierende Faktor ist ...

Doch, das wäre genau das Bild: Per Default ist der x11vnc meines Wissens ein Single-Thread-Prozess. Starte den mal mit -threads. Eventuell bringt das schon Entspannung.

Was genau meinst du denn mit "wie der Datendurchsatz des Netzwerks konkret aussieht, wenn eine VNC-Verbindung besteht"? Ich hab mir im Networkmanager Plasmoid mal einen Graph über den Netzwerk-Traffic angesehen, während ich eine VNC-Verbindung laufen hab, und ich komme nie über 5MB/s - und die Leitung kann wie gesagt deutlich mehr...

Ok, das scheint normal zu sein. Die VNC-Verbindung braucht auch nicht so extrem viel Bandbreite (ist ja kein Streaming), aber wenn man gar nichts sieht (also nur wenige b/s) kann das auf ein Problem hindeuten.

TheMagican

(Themenstarter)

Anmeldungsdatum:
29. März 2007

Beiträge: 203

misterunknown schrieb:

Doch, das wäre genau das Bild: Per Default ist der x11vnc meines Wissens ein Single-Thread-Prozess. Starte den mal mit -threads. Eventuell bringt das schon Entspannung.

Hab's mal mit -threads probiert. Gefühlt ist es ein Bisschen besser, aber nicht viel ☹ . Die CPU Auslastung könnte sich erhöht haben, da es sich auf mehrere Kerne verteilt ist es nicht ganz so gut ersichtlich.

Antworten |