VNC 实现的控制原理
1. 屏幕控制原理
VNC 是把被控制端的屏幕做成图像,经过压缩后传送到控制端
控制端的控制信息(如鼠标信息)传送到被控制端后进入消息队列
客户端 X 服务器 应用程序
vnc viewer<-------------------------->Xvnc(vnc server)<--------------------------->applications
(vnc protocal) (X protocal)
客户端 X 服务器 应用程序
vnc viewer<-------------------------->Xvnc(vnc server)<--------------------------->applications
(vnc protocal) (X protocal)
其控制是基于 tcp/ip 的 , 其中 vnc server 扮演了双重角色 .vnc protocal 是基于 RFB protocal 的
2. 截屏方式
VNC 使用的截屏方式比较独特 , 它有两种方式 , 第一种是使用钩子自动报告需要截屏的区域 , 第二种是轮询某一个区域 ( 如前景窗口 ). 截屏后使用某种压缩算法压缩后发送 .( 有好几种可选 )
3. 传输方式
1.RFB 协议传输:
在控之端不能直接改变显示大小 , 只能进行缩放 , 如缩放为原大小的几倍 . 原理是在远程机器上运行一个额外的 X 服务器, X 服务器和客户机器都在远程跑。然后通过 RFB 协议用自己的客户端显示到本地
2.X 协议:
X 视窗系统提供了一个公开协议,由其客户程序可以查询和更新 X 服务器上的信息。 X 视窗系统( X 协议)允许网络中不同计算机上的进程在其它网络显示器上显示内容。