Das NX-Protokoll ist ein Remote-Desktop-Protokoll, das die Firma NoMachine (damals Medialogic) ab 2003 entwickelte. Es wurde für das Linux-X11-Umfeld entworfen und verbessert die Leistung des X-Protokolls über Netzwerke drastisch: NX komprimiert, cached und proxied die X11-Nachrichten, sodass auch über langsame Verbindungen ein reaktionsschneller Desktop möglich ist.

Technik

NX setzt zwischen dem X-Server und dem X-Client als intelligenter Proxy an. Typische Optimierungen sind:

  • Komprimierung: Redundante Bildschirmdaten werden stark reduziert übertragen.
  • Caching: Wiederverwendbare Daten (Fenster, Schriften, Pixmaps) bleiben lokal im Cache.
  • Delta-Übertragung: Nur veränderte Bildbereiche werden gesendet.

Die Übertragung läuft meist über einen SSH-Kanal auf Port 22 – das bringt Verschlüsselung und Authentifizierung mit. Ab NX Version 4 (2011) erweitert NoMachine das Protokoll zu einem generischen Transportlayer, der neben X11 auch Audio-, Video- und Dateiübertragung sowie virtuelle Desktops unterstützt.

Geschichte und Open-Source-Ableger

Zeitweise waren Teile der NX-Technologie als Open Source verfügbar. Daraus entstanden freie Implementierungen wie FreeNX und NeatX (von Google) sowie später X2Go, das bis heute aktiv gepflegt wird. Die NoMachine-Software selbst ist seit Version 4 proprietär lizenziert.

Einordnung

NX ist eine von mehreren Möglichkeiten, einen Remote Desktop zu betreiben: VNC setzt auf das offene RFB-Protokoll, RDP ist das Microsoft-Protokoll, NX ist der effiziente Ansatz für Linux/X11 mit starker Kompression. Praktische Anwender sind NoMachine (proprietär) und X2Go (frei).

Verwandte Grundlagen: NoMachine, X2Go, xrdp.