VIRTUAL NETWORK
COMPUTING
(VNC)
By,
Abhilasha Gupta
CONTENTS
Introduction
Virtual Network Computing
Getting Started with VNC
Features
Limitations
Applications
Future Work
INTRODUCTION
History
VNC was created at the Olivetti & Oracle
Research Lab (ORL) in 2002.
Developers who worked on VNC are
Tristan Richardson (inventor)
Andy Harter (project leader)
WHAT IS VIRTUAL NETWORK
COMPUTING???
VIRTUAL NETWORK
COMPUTING
Virtual network computing (V.N.C) is a process of
controlling a computer by sitting kilometers away
through internet.
It is a graphical desktop sharing system that uses
the RFB protocol to remotely control another
computer. It transmits the keyboard and mouse
events from one computer to another, relaying the
graphical screen updates back in the other direction,
over a network.
As the OS is a graphical user interface
controlling is done by mouse events.
The screen resolution of the server and
the viewer must be the same.
A VNC system consists of a client, a server, and a
communication protocol.
•The VNC server is the program on the machine that
shares its screen. The server passively allows the client
to take control of it.
The VNC client (or viewer) is the program that watches,
controls, and interacts with the server. The client
controls the server.
The VNC protocol (RFB) is very simple, based on one
graphic primitive from server to client ("Put a rectangle
of pixel data at the specified X,Y position") and event
messages from client to server.
Types of VNC
RealVNC - Runs on Windows, Mac OS x, Java Platform and
many UNIX like OS
TightVNC -Cross platform open source remote desktop
software. Provides ‘tight encoding’ which improves
performance over low bandwidth connections. Runs on
Windows and Linux
UltraVNC -Open source and free application for Windows.
Similar to RealVNC free edition along with various features.
GETTING STARTED WITH
VNC
TWO COMPONENTS
SERVER-Generates a display
VIEWER-Actually draws the display
Requires TCP/IP Connection
VNC SERVERS
It provides the remote half of the remote
controlled system.
It communicates interaction from the remote
machine to the local machine.
It exports the view of a remote “desktop” screen
environment to a local machine.
Inputs keyboard and mouse inputs from local
machine to remote machine.
VNC VIEWERS(CLIENT)
It provides the local half of the remote controlled
system.
Communicates interactions between the local
machine to the remote machine.
Imports the view of the remote desktop screen
environment to the local machine.
Exports keyboards and mouse inputs from local
machine to remote machine.
VNC works at Frame Buffer level i.e it
uses the RFB (Remote Frame Buffer)
Protocol.
RFB (“remote framebuffer”)
It is a simple protocol for remote access to graphical
user interfaces.
It is a Thin-Client System
.
ADAPTIVE UPDATE
A set of rectangles of pixel data makes a
frame buffer update.
The update protocol is demand-driven by
the client.
The display will reach its final state as
quickly as the network bandwidth will
allow, thus maximizing the speed of
interaction.
INPUT
The client sends input events to the server
whenever the user presses a key or
pointer button, or moves the pointing
device.
Input events can also be synthesized from
other nonstandard I/O devices.
CONNECTION SETUP AND
SHUTDOWN
The server first requests authentication
from the client, using a challenge-
response VNC server VNC viewer (client)
VNC protocol scheme.
The client typically requires the user to
enter a password at this point.
Exchange of messages for details takes
place.
Because of the stateless nature of the
client, either side can close the connection
at any time without any adverse
consequences.
Need to specify name of the server
Then Enter the password
VNC after Installation
FEATURES
It is small and simple. No installation is
required.
It is truly platform-independent.
It is sharable.
It is free.
LIMITATIONS
Doesn’t have modem access features
Display can be a bit slow, jerky and/or
incomplete.
It requires good bandwidth for it to function
properly.
File systems are still separate between
different OS.
HOW CAN WE MAKE VNC
GO FASTER??
Hi-color desktops
Elderly Graphics Cards or Drivers
Some Java Virtual Machines are
particularly fast at reading from networks
Don’t change the default settings in
Properties box of WinVNC
Generally with winVNC use 16-bit color on
the server.
24-bit screens have to be specially
munged via 32-bit since YNC’s internal
color-handling routines do not work with
24-bit directly.
Compress data between two ends
How Secure Is VNC ??
APPLICATIONS
Access important information
Check-up emails and download
Use a modem to dial a telephone
answering machine and reprogram it
through a graphical interface.
Start/stop any processing or computation.
FUTURE WORK
Hardware such as this, if made in quantity,
could be very cheap and could allow for
mobility of much more than just a
conventional “desktop.”
If built into television sets, VNC viewers
could allow them to act as displays for a
very wide range of devices—including, of
course, the PC at the office.
Thank You