RFB (“remote framebuffer”) is a simple
protocol for remote access to graphical user interfaces. Because it works at
the framebuffer level it is applicable to all windowing systems and applications,
including X11, Windows and Macintosh. RFB is the protocol used in VNC (Virtual
Network Computing).
The
remote endpoint where the user sits (i.e. the display plus keyboard and/or
pointer) is called the RFB client or viewer. The endpoint where changes to the
framebuffer originate (i.e. the windowing system and applications) is known as
the RFB server.
RFB
is truly a “thin client” protocol. The emphasis in the design of the RFB
protocol is to make very few requirements of the client. In this way, clients
can run on the widest range of hardware, and the task of implementing a client
is made as simple as possible. The protocol also makes the client stateless. If
a client disconnects from a given server
and
subsequently reconnects to that same server, the state of the user interface is
preserved. Furthermore, a different client endpoint can be used to connect to
the same RFB server. At the new endpoint, the user will see exactly the same
graphical user interface as at the original endpoint. In effect, the interface
to the user’s applications becomes completely mobile. Wherever suitable network
connectivity exists, the
user can access their
own personal applications, and the state of these applications is preserved
between accesses from different locations. This provides the user with a
familiar, uniform view of the computing infrastructure wherever they go.