How It Works - acabey/cloud9-vnc GitHub Wiki

This project is really a simple tool that bundles a couple of other technologies together in a neat package that integrates well with C9. In short, there are three pieces, the X server, the VNC server, and the VNC client.

X Server

The GNU/ Linux standard for desktop interface is the X windowing system, which manages the windows on your desktop environment. This project uses the lightweight fluxbox package as both a windowing manager and X server and a virtual frame buffer, xvfb to emulate a display output.

VNC Server

The VNC protocol is the GNU/ Linux standard for remote windowing. The x11vnc package serves the desktop to a remote client.

HTML5 VNC Client

The real 'magic' behind the scenes is the HTML5 VNC client, noVNC. c9vnc hosts a web server where one of the pages serves the noVNC client, allowing you to connect to the internal VNC server through websockets and see the desktop GUI.