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 .

‡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 . 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