LTSP and VNC contrasted

and why you should probably be using both

(c) Alex Perry 2001, GPL

http://www.ltsp.org/index.php
This is a set of network services that you run (usually on a Linux box) to allow other computers (usually x86) on the local network to be booted without making use of any local disk drive resources. Often, the result of the boot is to have that computer run the X window environment and contact an XDM server somewhere on the network to request a graphical desktop login.

http://rom-o-matic.net/ and http://etherboot.sourceforge.net/
The former is a website that makes the latter available without the need to install anything on the local computer. The project creates ROM and floppy images that allow an x86 based computer to boot using the LTSP project above. What's important is that you can contact the website from any operating system using your browser, tell it what network card is installed in the computer you are using and download the floppy image that will let the computer you are sitting at rapidly boot. In fact, if you are running Windows to do this, it often takes longer for Windows to shut down than to do everything else.

These two technologies, in combination, allow you to take any computer and turn it into a full performance X terminal for however long you want, without needing to install anything on the hard disk and without needing to worry that you might damage whatever operating system is installed. You benefit from the speed of a native X server, but you lose the option of running the applications that are in the operating system on the hard disk.

http://www.uk.research.att.com/vnc/
This is a combination of a server program which runs on a host whose display is useful to you and a client program which runs on the computer where you happen to be sitting. The combination allows you to view that host display, generate keyboard and mouse actions and thus generally use it as though you were sitting in front of that system. Due to its cross-platform nature, it is popularly used to run programs on a computer with a different operating system from the one you are sitting at.

http://www.dei.isep.ipp.pt/~andre/extern/ixvnc.htm
This describes a special feature of the standard linux VNC server "xvnc". You list the program as a service of the inetd daemon, assigned to the port number that is normally used for VNC, and add the option "-inetd" to the command line. This causes a fresh new display to be started for every incoming VNC client ... instead of sharing the old one around.

So, if you put that inetd version of the VNC server on the same linux box as you've placed the LTSP nfs filesystem image, then it is easy to have them both use the same X server command line parameters and thereby guarantee that all displays wake up the same way and then contact XDM. Thus, people using VNC are guaranteed the same application services as people using LTSP and this dramatically reduces your support efforts.

The users benefit from being able to use all their local operating system applications while simultaneously connecting to the standard services. The standard applications may be slightly slower due to the added protocol. If the user accidentally damages the local operating system, such as by installing a dubious Windows download or by a mistake as root under Linux, the local applications may no longer be usable. However, the user is not dependent on immediate desktop computer support. A floppy disk containing the rom-o-matic etherboot is sufficient to get to the LTSP and thereby have full access to the standard application environment.

In conclusion,
combining the strengths of LTSP and VNC allows central application support, scalability and high availability all the way to every user's desktop. The benefits continue even when users have locally installed desktop operating systems with differentiated configurations.