NX is a remote desktop software of the Italian company NoMachine, which communicates with the exception of the central client and server application under the GNU GPL. With NX you can screen the content of a remote computer to a local computer (even across different operating systems ) transferred and work with them as if you were sitting in front of it (see Thin Client).
The application enhances the speed of transmission of the X- window system under the Unix and Linux for the representation of graphic applications on computer networks. It is possible to encrypt the transmission (through the use of SSH).
Although the X Window System in its current protocol version X11 of the house is network capable, is when it is used across computer boundaries to the often low and the user " tough " occurring performance for connections over low bandwidth high latency (modem, ISDN) Watch. This problem tries NX as a kind of attachment for X11 to solve. NX is made the proxy system between the X11 partners ( both on the client computer and on the server machine running an X11 server program ). Furthermore, the NX server is able to pass on NX sessions to VNC Server or Windows Terminal Server ( RDP ) and to compress again. Thus, the NX client asks for a NX server, which then sets up the connection to another terminal server via VNC or RDP. He is thus interposed [ NX Client → Server → NX RDP-/VNC-Server ] and compresses the data flow.
NX achieved an increase in the efficiency of the X11 protocol over the network primarily through three methods:
- Creating a cache for already transmitted data
- Data compression of network traffic
- Reduce the round trip time between X client and X server
Many " round trips " are unnecessary and are partly caused by inefficient programming of X11 application programs. An efficient cache saves repeated transmission of the same data blocks (for example, program icons in menu bars ). The high compression reduces the traffic on.
To transfer the data NX uses SSH tunnel.
Dissemination and development under open source
The base libraries and all of the key components of NX were provided by NoMachine under the GPL free license so that they can be integrated into free desktops, such as KDE and GNOME. Only the central client and the server application are proprietary.
There is already a client application called kNX which was written together with the also free NX server FreeNX from Kalyxo project for KDE. kNX can also be used with GNOME and other desktops.
Striking about the FreeNX server is that it was completely written as a bash shell script. Because his programmers wanted to prove that an act building on the GPL - licensed components NX, free NX server is not a great technical difficulty, this scripting language was chosen.
Since about July 2009, there is a new, free version of the server named ' Neatx ', which was initially developed as an internal project that had not yet mastered all the functions of the original in April 2010. The project was completed in 2012 and the sources were released. It is no longer actively developed.
With NX, it is possible that the administrator of a network control of the computer of an employee accepts to install or troubleshoot software. Other applications include, for example, working from home or even the possibility of older computers that are used as a thin client to work on remote, more powerful machines.
NX lets you work fast even with a modem connection with only 40 kbit / s data transfer rate.
Another great advantage of NX compared to the X11 protocol is that NX supports so-called seamless connections. Thus, an existing connection to a separate NX server and resume it later from another workstation. The programs started running it on the target system will be unaffected.