基于VNC的远程桌面传输协议分析与研究

I C A( C i t r i x I n d e p e n d e n t C o mp u t i n g A r c h i t e c t u r e ) 技术实
A T &T剑桥 所提出的 V N C ( V i r t u a l Ne t w o r k C o m p u t i n g ) . 由于 具有 良好 的瘦客户端性 与跨平 台性 , 在 世界范 围
Z HU Y o n g - Q i a n g . T AN G X i o n g
: ( C h e n g d u W a n g ’ n a T e c h n o l o g y C o . L T D, C h e n g d u 6 1 0 0 9 2 , C h i n a )
a r c h i t e c t u r e o f VNC, e s p e c i a l l y he t u p d a t i n g r e t r i e v a l me c h ni a s m o f he t d e s k t o p O f VNC s e r v e r nd a i ma g e c o mp r e s s i o n
远 程桌面 同步是一种 以网络信息推送 为基础 的服 务提 供方式,用于 异地之 间展示远端用户 的桌面 图像 信 息.远程桌面 同步利用 网络打破 了地域 与硬件 的 限 制 ,使异地 办公 与协作成 为可 能, 被 广泛应 用在 远程
协助 与视频会议等领域. 应用程 序的逻辑执行和 显示分离是远程 桌面 同步 的实现基础,此概 念最早 由 C i t r i x 公 司引入 ,并通过
p r o c e s s i ng a l g o r i t h ms i n RFB p r o t o c o l ut i l i z e d b y VNC.M o r e o ve  ̄t he d i r e c t i o n f o r f ur t h e r o p t i mi z a t i o n o n VNC p r o t o c o l i s p r o p o s e d . Ke y wo r d s : VNC p r o t o c o l ; r e mo t e d e s k t o p s n c y hr o n i z a t i o n ; Ho o k; Mi r r o r d r i v e r ; RFB p r o t o c o l
( S c h o o l o f C o mp u t e r S c i e n c e &E n g i n e e r i n g , Un i v e r s i t y o f E l e c t r o n i c S c i e n c e nd a T e c h n o l o g y o f C h i n a , C h e n g d u 6 1 0 0 5 _ 4 , C h i n a )
关键 词: V NC协议 ; 远程桌面 同步 ; Ho o k ; Mi r r o r d r i v e r ; R F B协议
Re s e a r c h a nd Ana l y s i s o f Re mo t e De s kt o p Tr a ns f e r Pr o t o c o l Ba s e d o n VN C
wi de s p r e a d a t t e n t i o n s i n he t ie f l d o f he t Re mo t e De s k t o p s y n c h r o ni z a t i o n . I n he t p a p e r , we na a l y z e nd a s t u d y he t o v e r a l l
得 到 了广 泛 的发 展 .V NC 架 构主 要 由客 户 端 V NC
C l i e n t 、服务端 V N C S e ve r r 与连接 二者 的 R F B协议 组 成,本文研究并分析 了 VN C的各组成部分,并重 点对
Ab s t r a c t : Du e t o t h e e x c e l l e n t p e fo r r ma n c e o f 也i n c l i e n t s a n d c r o s s - p l a t f o r m. VNC h a s b e e n wi d e l y a p p l i e d a n d d r a wn
计 算 机 系 统 应 用
h t t p : / / ww w . c 一 ¥ - a . o r g . c a
2 0 1 6年 第 2 5卷 第 1 1期
基于 V N C的远程桌面传输协议分析与研芗
朱永强 l , ,汤 雄 l ,
。 ( 成都 网安科技发展有 限公 பைடு நூலகம்,成都 6 1 0 0 9 2 ) ( 电子科技大 学 计算机科学与工程学院,成都 6 1 0 0 5 4 )

要 :V N C 由于优秀 的瘦 客户性 与 良好 的跨 平 台性 , 在远 程 桌面 同步领 域得到 了广 泛 的应 用和关 注.针对
V NC的整体架构, 对其进行 了分析与研 究, 重点研 究了VN C服务端 的桌面更新获取机制 以及 V NC所使用 的R F B 协 议对图像的压缩 处理算法,并提 出了对 VN C协议 进行进一步优化的方 向.
合集下载

VNC协议分析

VNC协议分析

VNC协议分析协议名称:Virtual Network Computing(VNC)协议分析1. 引言Virtual Network Computing(VNC)协议是一种用于远程计算机控制的开放标准协议。

本协议旨在提供一种简单、高效的方法,使用户能够通过网络远程访问和控制远程计算机。

本文将对VNC协议进行详细分析,包括协议的背景、协议的工作原理、协议的安全性等方面。

2. 背景随着计算机网络的普及和发展,远程访问和控制远程计算机的需求逐渐增加。

VNC协议应运而生,它可以在不同操作系统之间实现远程计算机的控制,包括Windows、MacOS和Linux等。

VNC协议的开放性和可扩展性使得它成为了远程控制领域的重要标准。

3. 协议的工作原理VNC协议的工作原理可以分为三个主要步骤:建立连接、图象编码和传输、图象解码和显示。

3.1 建立连接VNC协议使用TCP/IP协议进行通信。

客户端和服务器之间通过TCP连接建立连接。

在连接建立之前,客户端需要指定要连接的服务器的IP地址和端口号。

服务器在接受连接请求后,会发送一个欢迎消息给客户端。

3.2 图象编码和传输一旦连接建立成功,客户端和服务器之间开始进行图象编码和传输。

服务器将屏幕上的图象分成多个矩形区域,并使用一种称为RFB(Remote FrameBuffer)协议的编码方式对每一个区域进行编码。

编码后的图象数据通过网络传输到客户端。

3.3 图象解码和显示客户端接收到编码后的图象数据后,将对其进行解码和显示。

客户端使用与服务器相同的RFB协议进行解码,并将解码后的图象数据显示在本地屏幕上。

客户端还可以将用户的输入事件(如鼠标挪移、键盘输入)转发给服务器。

4. 协议的安全性VNC协议在设计时考虑到了安全性问题,并提供了一些安全机制来保护远程访问的安全性。

4.1 密码认证VNC协议要求客户端在连接建立时提供密码进行认证。

服务器在接收到密码后进行验证,惟独验证通过的连接才会被建立。

VNC协议分析 (2)

VNC协议分析 (2)

VNC协议分析协议名称:VNC协议分析一、背景介绍VNC(Virtual Network Computing)是一种远程桌面协议,允许用户通过网络远程控制一台计算机。

该协议由英国的RealVNC公司于1998年开辟,并在全球范围内得到广泛应用。

VNC协议的设计目的是提供一种简单、高效的远程桌面控制解决方案,使用户能够远程访问和操作计算机上的图形界面。

二、协议原理1. VNC协议基本原理VNC协议的基本原理是将远程计算机的图形界面转换为图象数据流,并通过网络传输到本地计算机,然后在本地计算机上将图象数据流还原为图形界面。

具体流程如下:a) 服务端(远程计算机)将图形界面转换为图象数据流;b) 客户端(本地计算机)通过网络连接到服务端;c) 服务端将图象数据流传输给客户端;d) 客户端接收到图象数据流后,将其还原为图形界面。

2. VNC协议的组成VNC协议由客户端和服务端之间的通信协议和数据格式组成。

a) 通信协议:VNC协议使用TCP/IP协议进行通信,客户端与服务端通过网络连接进行数据传输。

b) 数据格式:VNC协议使用RFB(Remote Framebuffer)协议定义了图象数据流的格式和传输方式。

RFB协议将图象数据流划分为多个矩形区域,每一个矩形区域包含图象数据和相关的控制信息。

三、协议功能分析1. 远程控制功能VNC协议提供了远程控制功能,允许用户通过网络远程访问和操作远程计算机的图形界面。

用户可以在本地计算机上实时查看远程计算机的屏幕,并通过鼠标和键盘控制远程计算机的操作。

2. 多平台支持VNC协议支持多种操作系统和平台,包括Windows、Linux、Mac等。

这使得用户可以在不同的设备上使用VNC客户端进行远程控制,提高了协议的灵便性和适合性。

3. 安全性保障VNC协议通过密码验证和加密传输等机制来保障远程连接的安全性。

用户需要在连接时输入密码进行身份验证,确保惟独授权用户能够访问远程计算机。

VNC协议分析

VNC协议分析

VNC协议分析协议名称:VNC协议分析一、背景介绍VNC(Virtual Network Computing)是一种远程桌面协议,它允许用户通过网络远程控制另一台计算机。

VNC协议由RealVNC公司于1998年开发,是一种开放的标准协议,广泛应用于远程技术支持、远程教育和远程办公等领域。

本文将对VNC协议进行详细分析,包括其协议结构、工作原理和安全性等方面的内容。

二、协议结构VNC协议采用客户端-服务器模型,通信基于TCP/IP协议。

协议结构主要包括以下几个部分:1. 连接建立阶段:- 客户端向服务器发送连接请求。

- 服务器响应连接请求,建立连接。

2. 握手阶段:- 客户端和服务器进行协议版本的协商。

- 客户端发送加密方式列表,服务器选择合适的加密方式。

- 客户端和服务器进行身份验证。

3. 图形化传输阶段:- 客户端发送图像更新请求。

- 服务器将图像数据压缩后发送给客户端。

- 客户端接收并解压图像数据,更新本地显示。

4. 输入设备传输阶段:- 客户端将本地输入设备的事件(如鼠标移动、键盘输入等)发送给服务器。

- 服务器接收并处理这些事件。

5. 其他功能:- 文件传输:允许客户端和服务器之间传输文件。

- 声音传输:允许在客户端和服务器之间传输声音。

三、工作原理VNC协议的工作原理可以概括为以下几个步骤:1. 服务器启动并等待客户端连接。

2. 客户端发送连接请求给服务器。

3. 服务器响应连接请求,建立连接。

4. 客户端和服务器进行协议版本的协商,选择合适的加密方式。

5. 客户端和服务器进行身份验证。

6. 客户端发送图像更新请求给服务器。

7. 服务器将图像数据压缩后发送给客户端。

8. 客户端接收并解压图像数据,更新本地显示。

9. 客户端将本地输入设备的事件发送给服务器。

10. 服务器接收并处理这些事件。

11. 客户端和服务器之间可以进行文件传输和声音传输等其他功能。

四、安全性VNC协议在传输过程中存在一些安全性问题,主要包括以下几个方面:1. 身份验证:VNC协议支持多种身份验证方式,如密码验证、密钥验证等。

VNC协议分析

VNC协议分析

VNC协议分析协议名称:VNC协议分析一、引言VNC(Virtual Network Computing)是一种远程桌面协议,允许用户通过网络远程访问和控制远程计算机。

本协议旨在分析VNC协议的工作原理、通信方式和安全性,以及其在实际应用中的优缺点。

二、协议概述VNC协议通过客户端与服务器之间的通信,实现远程桌面的显示和控制。

其主要功能包括屏幕捕获、图像压缩、输入事件传递和远程剪贴板共享。

VNC协议采用客户端-服务器架构,客户端发送请求,服务器响应并提供远程桌面。

三、通信过程1. 连接建立客户端向服务器发送连接请求,包括协议版本和加密方式等信息。

服务器接受请求并回复确认信息。

2. 认证过程服务器要求客户端进行认证,以确保连接的安全性。

常见的认证方式包括密码认证和密钥认证。

3. 屏幕更新服务器将屏幕内容捕获为图像,并使用图像压缩算法将图像压缩为数据流。

客户端接收数据流并解压缩,然后在本地显示。

4. 输入事件传递客户端将本地输入设备的事件(如鼠标移动、键盘输入)发送给服务器。

服务器接收并模拟这些事件,以实现远程控制。

5. 远程剪贴板共享VNC协议支持远程剪贴板共享,客户端可以将本地剪贴板的内容发送给服务器,服务器将其共享给远程用户。

四、安全性分析1. 加密通信VNC协议支持通过TLS/SSL等加密协议实现通信的加密,确保数据的机密性和完整性。

2. 认证机制VNC协议提供多种认证方式,如密码认证和密钥认证,以确保连接的安全性。

3. 防止中间人攻击VNC协议可以通过使用加密通信和认证机制来防止中间人攻击,确保通信的可靠性。

五、优缺点分析1. 优点- VNC协议简单易用,适用于各种操作系统和网络环境。

- VNC协议支持远程桌面的显示和控制,方便远程维护和故障排除。

- VNC协议提供了多种加密和认证机制,确保通信的安全性。

2. 缺点- VNC协议的性能较差,特别是在网络延迟较高的情况下,会导致远程操作的延迟。

vnc 协议

vnc 协议

vnc 协议VNC(Virtual Network Computing)是一种远程桌面协议,允许用户通过网络连接到远程计算机并控制其桌面。

VNC协议的出现极大地方便了用户,使得他们可以远程控制计算机,进行文件操作、软件安装等操作,而不必亲自到现场。

本文将对VNC协议进行详细介绍,包括其原理、特点和应用场景。

VNC协议的原理是将远程计算机的桌面图像传输到本地计算机上,用户可以通过本地计算机的键盘和鼠标来控制远程计算机。

这种远程控制的方式极大地方便了用户,尤其是对于需要频繁远程操作的用户来说,VNC协议无疑是一个非常实用的工具。

VNC协议的特点之一是跨平台性。

无论是Windows、Linux还是Mac OS,VNC协议都可以在这些平台上运行,这意味着用户可以在不同的操作系统上进行远程控制,极大地提高了其灵活性和通用性。

此外,VNC协议还具有安全性高的特点。

通过VNC协议进行远程控制时,所有的数据传输都是加密的,这可以有效地防止黑客对数据进行窃取和篡改,保障了用户的数据安全。

VNC协议的应用场景非常广泛。

首先,它可以用于远程技术支持。

无论是企业内部的IT技术人员还是软件开发人员,都可以通过VNC协议远程连接到用户的计算机,进行故障排查和问题解决。

其次,VNC协议还可以用于远程办公。

在疫情期间,很多公司采取了远程办公的方式,VNC协议成为了员工远程连接公司内部网络的重要工具。

另外,VNC协议还可以用于远程教学。

老师可以通过VNC协议远程控制学生的电脑,进行实时的教学和指导。

总的来说,VNC协议作为一种远程桌面协议,具有跨平台性、安全性高的特点,广泛应用于远程技术支持、远程办公和远程教学等领域。

随着信息技术的不断发展,VNC协议将会在更多的领域得到应用,为用户带来更多的便利和效率。

VNC协议分析精品PPT课件

VNC协议分析精品PPT课件
VNC是一套优秀的远程控制工具软件,其远程控制能力强 大,高效实用。它支持多种操作系统,如Unix系列(Unix, Linux,Solaris等),windows及MacOS。
VNC主要由两部分组成:VNC server 及VNC viewer。用户 需要先将VNC server 安装在被控端的计算机上后,才能在 主控端执行VNC viewer控制被控端。
12
请求共享桌面的标志位
13
服务器给客户端送来服务器帧存取参数
14
服务器给客户端设置像素
15
客户端给服务器送去客户端可以设置的各种编码类型清单
16
客户端向服务器发送帧缓存存取的参数更新请求
17
ACK
服务器 172.18.62(1) 1-9 10
11
12 13 14 15
16 17
下图为VNC sever的属性设置
VNC是基于RFB(Romote Frame Buffer)协议进行通信的, 是一个基于平台无关的简单显示协议的瘦客户系统。
RFB协议设计的重点在于减少对客户端的硬件需求。这样 客户端就可以运行在许多不同的硬件上,客户机的任务实 现上就会尽量的简单。
简介
RFB(远程帧缓存)是一个远程图形用户的简单协议,因为它 工作的帧缓存级别上,所以它可以应用于所有的窗口系统中。
12 内容:0a 意义:报尾
1.2服务器所支持的安全认证类型
如上图所示,服务器发送给客户端的他所支持的安 全认证方法,让客户端选择
Байду номын сангаас数据的内容
字节 内容以及表示的意义
1
内容:01
意义:表示服务器支持的安全认证方法是一种
2
内容:02

VNC协议分析

VNC协议分析协议名称:VNC协议分析一、引言VNC(Virtual Network Computing)协议是一种用于远程控制和显示桌面环境的开放标准协议。

本协议分析旨在深入了解VNC协议的工作原理、数据结构和安全性等方面,以便更好地理解和应用该协议。

二、协议概述VNC协议基于客户端-服务器架构,允许用户通过网络远程访问和操作远程计算机的桌面环境。

其主要包括以下几个关键组件:1. VNC服务器:运行在被控制的计算机上,负责接收来自VNC客户端的连接请求,并将计算机的桌面环境传输给客户端。

2. VNC客户端:运行在控制计算机上,负责与VNC服务器建立连接,并接收和显示远程计算机的桌面环境。

3. RFB(Remote Framebuffer Protocol):VNC协议的核心部分,定义了客户端和服务器之间传输图像和输入事件的格式和行为规范。

三、协议分析1. 连接建立a) 客户端通过TCP/IP协议连接到VNC服务器的默认端口(5900),并发送协议版本信息。

b) 服务器返回协议版本信息,并选择适当的协议版本进行通信。

c) 双方进行身份验证,并交换加密密钥以确保通信安全。

2. 图像传输a) 服务器将远程计算机的桌面环境分割成多个矩形区域(称为矩形帧)。

b) 服务器按照一定规则将矩形帧进行编码,并将编码后的数据传输给客户端。

c) 客户端接收到编码数据后,解码并将其显示在本地的图像缓冲区中。

d) 客户端通过不断请求和接收矩形帧的更新,实现远程桌面的实时显示。

3. 输入事件传输a) 客户端捕捉本地用户的输入事件(如鼠标移动、键盘按键等)。

b) 客户端将捕捉到的输入事件封装成RFB协议定义的格式,并发送给服务器。

c) 服务器接收到输入事件后,将其应用于远程计算机,并将计算机的响应结果传输给客户端。

四、协议安全性VNC协议的安全性主要包括以下几个方面的考虑:1. 加密传输:VNC协议支持使用TLS/SSL等加密协议进行通信,以确保传输过程中的数据安全。

VNC协议详解虚拟网络计算的远程控制协议

VNC协议详解虚拟网络计算的远程控制协议虚拟网络计算(Virtual Network Computing,VNC)是一种基于远程桌面协议的技术,用于实现远程访问和远程控制计算机。

本文将对VNC协议进行详细解析,介绍其工作原理、主要特点以及在实际应用中的优势。

一、VNC协议概述VNC协议是一种客户机/服务器模型的协议,允许用户通过Internet或局域网远程访问和控制其他计算机。

这意味着用户可以在一台计算机上操作和控制另一台计算机,并实时查看被控制计算机的图形界面。

二、VNC协议工作原理1. VNC服务器端:被控制的计算机上运行着VNC服务器端软件,负责监听连接请求,并将被控制计算机的图形界面传输给客户机。

2. VNC客户端:控制计算机的用户使用VNC客户端软件连接到VNC服务器端,客户端软件接收到服务器端传输的图形数据,并将其显示在用户界面上。

3. VNC协议:VNC协议定义了服务器端和客户端之间的数据交互规则,负责传输图形数据、键盘输入和鼠标操作等信息。

三、VNC协议特点1. 平台无关性:VNC协议是一种通用协议,与操作系统和硬件平台无关,使得用户可以从不同的设备和操作系统上远程访问和控制计算机。

2. 可扩展性:VNC协议支持添加和使用扩展插件,帮助用户实现更多的功能,如文件传输、音频传输等。

3. 安全性:VNC协议支持使用加密通信,通过SSL和SSH等安全协议进行数据传输,保证远程访问的安全性。

4. 高效性:VNC协议采用RFB(Remote Framebuffer)协议,通过只传输图形界面的变化部分,减少了数据传输量,提高了传输效率。

四、VNC协议应用场景1. 远程技术支持:VNC协议可以用于 IT 技术人员为远程用户提供技术支持和故障排除,加快问题解决速度。

2. 远程办公:VNC协议可以使用户通过互联网远程访问自己的办公电脑,方便在家或其他地方处理工作事务。

3. 远程教育和培训:VNC协议可以帮助教师和培训人员远程访问学生或员工的计算机,进行远程教学和培训。

VNC协议分析

VNC协议分析协议名称:VNC协议分析一. 引言VNC(Virtual Network Computing)协议是一种用于远程桌面控制的协议,允许用户通过网络连接到远程计算机并控制其桌面。

本协议旨在对VNC协议进行详细分析,包括其基本原理、通信流程、数据传输方式以及安全性等方面的内容。

二. 协议概述VNC协议基于客户端-服务器架构,客户端通过网络连接到远程服务器,服务器端将远程桌面的图像传输给客户端,并接收客户端的输入指令。

VNC协议使用RFB(Remote Framebuffer)协议作为其底层通信协议。

三. 协议通信流程1. 连接建立阶段a. 客户端向服务器发送连接请求。

b. 服务器响应连接请求,建立连接。

c. 客户端和服务器进行协议版本协商,确定使用的协议版本。

2. 认证阶段a. 客户端发送认证请求。

b. 服务器返回认证挑战。

c. 客户端使用事先约定好的认证方法对挑战进行处理,并将结果发送给服务器进行验证。

d. 服务器验证客户端的认证结果,若验证通过则进入下一阶段。

3. 桌面图像传输阶段a. 客户端发送请求获取远程桌面图像。

b. 服务器将远程桌面图像压缩并发送给客户端。

c. 客户端接收并解压缩远程桌面图像,显示在本地。

4. 输入指令传输阶段a. 客户端将本地输入指令(如鼠标移动、键盘输入等)发送给服务器。

b. 服务器接收并解析客户端的输入指令,并对远程桌面进行相应操作。

5. 其他功能支持a. VNC协议还支持其他功能,如文件传输、剪贴板共享等,具体功能的实现方式可根据需求进行扩展。

四. 数据传输方式VNC协议使用TCP/IP协议进行数据传输,客户端和服务器之间通过网络进行通信。

数据传输过程中,VNC协议将远程桌面图像数据进行压缩,以减少传输数据量,提高传输效率。

五. 安全性VNC协议在数据传输过程中存在一定的安全风险,主要包括以下方面:1. 传输数据未加密:VNC协议默认情况下未对传输数据进行加密处理,可能导致数据被窃取或篡改。

VNC协议分析

VNC协议分析协议名称:VNC协议分析协议协议目的:本协议旨在对VNC(Virtual Network Computing)协议进行详细分析,包括协议的定义、功能、通信流程和安全性等方面的内容。

一、协议定义:VNC协议是一种用于远程桌面控制的协议,允许用户通过网络远程访问和控制另一台计算机的桌面环境。

它通过将远程计算机的屏幕图像传输到本地计算机,并将本地计算机的输入事件发送到远程计算机,实现了远程控制的功能。

二、协议功能:1. 屏幕图像传输:VNC协议通过将远程计算机的屏幕图像以像素块的形式传输到本地计算机,实现了远程桌面的显示功能。

2. 输入事件传输:VNC协议将本地计算机的输入事件(如鼠标移动、键盘输入等)发送到远程计算机,实现了远程控制的功能。

3. 压缩和加密:VNC协议支持对传输的图像数据进行压缩和加密,以提高传输效率和保护数据安全。

三、协议通信流程:1. 连接建立:a. 本地计算机向远程计算机发送连接请求。

b. 远程计算机接受连接请求,并返回连接确认信息。

c. 本地计算机接收连接确认信息,并建立连接。

2. 屏幕图像传输:a. 远程计算机将屏幕图像划分为多个像素块,并将每个像素块的数据发送给本地计算机。

b. 本地计算机接收到像素块数据,并将其还原为屏幕图像。

3. 输入事件传输:a. 本地计算机监听用户的输入事件(如鼠标移动、键盘输入等)。

b. 本地计算机将输入事件发送给远程计算机。

c. 远程计算机接收到输入事件,并进行相应的操作。

4. 连接关闭:a. 本地计算机或远程计算机发送连接关闭请求。

b. 对方接受连接关闭请求,并发送连接关闭确认信息。

c. 双方接收到连接关闭确认信息后,关闭连接。

四、协议安全性:1. 加密传输:VNC协议支持使用SSL/TLS协议对传输的数据进行加密,以保护数据的机密性。

2. 认证机制:VNC协议支持使用用户名和密码进行身份认证,以确保只有授权用户能够访问远程计算机。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档