CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament d’Arquitectura de Computadors
VNC: Virtual Network Computing
(Seminaris de CASO)
Autors
Marcos Balsa Rodríguez
Raúl Calvo Corrado
Víctor Cebollada Cánovas
Introducción


VNC = Virtual Network Computing
Evolución:
– Net PC (Network Computing)  Virtual “Net” PC
– AT&T

Paquete software:
– Cliente + Servidor
– Control remoto
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
2
Características

Licencia GNU GPL  open source

Thin-client
– Complejidad en el servidor
– Cliente muy sencillo y simple

Multiplataforma
– RFB (Remote FrameBuffer)  “porting” fácil

Visor java  páginas web
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
3
¿Para qué sirve?
Control remoto de otro computador
 Servicio técnico a distancia
 Tele-trabajo
 Administración remota de sistemas
 Educación a distancia y/o colaborativa
 Control remoto de dispositivos electrónicos
 Etc.

Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
4
Implementaciones y alternativas

Hay diversos paquetes de software similares:
–
–
–
–
RealVNC (grupo desarrollo original – control protocolo)
TridiaVNC (versión gnu / versió Pro comercial - multiplataforma)
TightVNC (versión alternativa open-source, mejoras)
UltraVNC (versión windows-only, mejoras en windows)
–
–
–
–
–
Windows terminal (windows)
Remote SpyAnywhere (windows)
pcAnywhere (windows)
Symantec Anywhere (windows)
GoToMyPC (solución web)
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
5
Protocolo
Basado en RFB (Remote FrameBuffer)
 Thin-client

– Cliente  envía eventos y recibe actualizaciones
– Servidor  procesa eventos y envía actualizaciones
Input protocol: puntero + teclado
 Display protocol

Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
6
Display protocol
Concepto principal : rectángulos de pantalla
 Contempla diferentes:

– Formatos de pixel : 24/16/8 bit
– Codificaciones

Actualización = Secuencia de rectángulos
– Bajo demanda  adaptativo
– +ancho de banda  +actualizaciones
– Codificación según contenido del rectángulo
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
7
Codificaciones

Negociación cliente/servidor:
– Formato de pixel
– Codificaciones posibles

Codificación depende del contenido del rectángulo:
–
–
–
–
–
–
Raw – formato crudo
CopyRect – mover ventanas  posición (xy)
RRE – rise_and_run_lenght encoding – 2D RLE
CoRRE – Compact RRE, suponer máx. rect 255x255
Hextile – tiling (16x16) + RRE’ y Raw
ZRLE – Zlib + tiling + palettissation + RLE
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
8
Comunicación

Handsaking
–
–
–
–
Protocolo – cliente y servidor
Seguridad – auth / no auth
Client initialization
Server initialization
• Formato de pixel
• Codificaciones
• Dimensiones de ventana
• Nombre servidor

Updates + Events
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
9
Mensajes

Cliente  Servidor
–
–
–
–
–
–

SetPixelFormat
SetEncodings
FrameBufferUpdateRequest
PointerEvent
KeyEvent
ClientCutText
Servidor  Cliente
–
–
–
–
FramebufferUpdate
SetColorMapEntries
Bell
ServerCutText
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
10
Trabajo futuro
Codificación JPG
 Codificación MPEG
 Codificación especial caracteres
 Ventanas con skins  Canal alpha
 Resolución cliente/servidor diferente
 Servidor multiusuario en Windows

Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
11
Bibliografia (WEB)

http://www.realvnc.com/
– Página de miembros del grupo que originó el concepto vnc en
AT&T

http://www.tridiavnc.com/
– Un software con versión gnu y comercial

http://www.tightvnc.com/
– Un paquete gnu que añade ciertas mejoras al original de realvnc

http://ultravnc.sourceforge.net/links.html
– Una versión gnu de vnc con links a muchos otros paquetes
similares
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
12
Bibliografia
Tristan Richardson et al., “Virtual Network Computing”
IEEE Internet Computing Vol. 2, Num. 1, Jan/Feb 1998
 Tristan Richardson, “The RFB protocol”

RealVNC Ltd. Doc., Version 3.7, 12 August 2003
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
13
Descargar

Document