[发明专利]一种优化X协议的远程桌面系统和方法有效
申请号: | 201010271675.1 | 申请日: | 2010-09-03 |
公开(公告)号: | CN102387123A | 公开(公告)日: | 2012-03-21 |
发明(设计)人: | 兰雨晴;尹殷;申骞;张永军;李俊丽;刘铭;李立;杨炳文;夏颖 | 申请(专利权)人: | 上海中标软件有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06 |
代理公司: | 北京汇智英财专利代理事务所 11301 | 代理人: | 郑玉洁 |
地址: | 200030 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 优化 协议 远程桌面 系统 方法 | ||
技术领域
本发明涉及一种远程桌面系统和方法,尤其是一种对X协议进行优化的远程桌面系统和方法。
背景技术
随着虚拟化和云计算的发展,用户对高效远程桌面的需求日益增加。但是,传统的VNC、XDMCP等远程桌面方法有很多不足之处,它们没有采用数据压缩,速度慢,图像传输有明显的滞后感,并且一般没有加密,安全性差。而且,目前国内互联网的带宽较低,传统的VNC等方法根本无法满足用户的基本需求,如何在低带宽环境中提供流畅的桌面连接,已经成为云计算,特别是公有云,发展的一个瓶颈。
在网络带宽不足背景下,高效远程桌面技术再次得到人们的重视。高效远程桌面技术必须具备以下特点:对网络带宽要求低,对传输数据进行高效压缩,能利用缓存机制减少数据交互,对传输数据进行有效的加密,从而为终端用户提供快速、安全、稳定的桌面连接服务。这样用户使用性能较差的终端,在网络环境较差的环境下,也能随时随地连接到云平台中,充分发挥云计算的优势。
本发明在Linux下的X窗口系统的基础上设计了一种针对X协议的系统并根据该系统提出了相应的优化方法,该发明满足了高效远程桌面的基本要求。
X窗口系统(X Window System)是Linux下一个面向网络、硬件独立的图形窗口系统。附图1给出了现有的X窗口系统的基本结构,用户通过显示器获得应用程序的输出,用户的输入是通过键盘和鼠标。通常把显示器和输入设备称之为一个显示(display)。一个显示由一个X服务(X server)进行管理。X服务端从应用程序(X客户端)获得请求,并执行相应的操作。比如,一个典型的X客户端请求:在显示器上画一个屏幕。X服务端接收到该请求,把请求参数转换为像素,并输出到显示器上。对请求的回复,错误报告和事件(比如鼠标移动,键盘)都会从X服务端发送到X客户端。
在X11(X桌面的版本)中,客户和服务器之间的交互是通过协议而不是函数调用,这套协议被称之为X协议(X protocol)为了让开发人员从X协议中隔离出来,开发了Xlib。Xlib是用C实现,提供对X的接口。使用Xlib,程序开发人员无需了解X协议,如同开发一个没有基于网络的桌面窗口系统。X协议定义了X窗口系统,任何代码只要实现了X协议那么就是一个X窗口系统。
现有的X协议信息交互示意图如附图3所示,X协议定义了四种类型的消息:
请求(request):通过请求,X客户端要求X服务端完成一些工作(比如画一条线)或者返回一些信息(比如某个属性的名字);
回复(replies):回复从X服务端发回给X客户端,作为对特定请求的回答;
事件(events):当X服务端需要向X客户端报告一个状态的改变(比如鼠标的移动或之前请求的其他效果),它就会向X客户端发送一个事件;
错误(errors):如果X服务端按照X客户端的请求发生一个错误,就向X客户端发送一个错误消息。
虽然X协议是基于网络的,但是它在设计上考虑的并不充分,对带宽的需求较大,在机器内部和局域网内带宽大、网络延迟小,X协议的弊端不明显。但是,在广域网中,X协议就难以胜任。X协议本身并不是一个轻量级的远程桌面协议,不适合直接作为云计算环境下的桌面连接技术。
发明内容
基于上述原因,本发明旨在对X协议进行压缩和优化的方式解决该问题,而同时不需要修改X窗口系统的源代码。
本发明通过对X协议中传输的数据进行压缩、缓存、重编码等方法减少对带宽的需求,从而对现有的远程桌面协议进行改进和优化。
为实现上述目的,本发明提出了一种基于X窗口系统的压缩优化系统,包括:
X客户端,包括X运行库和应用程序或桌面会话;
X客户端代理,和X客户端相连,用于模拟X服务端,同时对X协议进行优化,并把优化后的数据发送给X服务端代理模块;
X服务端代理,和X服务端相连,用于模拟X客户端,同时对X协议进行优化,并把优化后的数据发送给X客户端代理模块;
X服务端。
其中所述的X客户端代理模块和服务代理模块均包括:连接模块:使X客户端和/或服务端和X服务端和/或客户端代理模块进行连接;对X协议进行分析的预处理模块;缓存X协议消息中固定的大数据块的缓存管理模块;对消息中的数据进行压缩或解压的压缩管理模块;及编解码模块:负责对优化后的X协议消息编码,封装成用于网络传输的消息,同时能够对网络传输中接收到的被封装消息解码,还原成原有的X协议消息。
所述压缩管理模块使用基于哈希预测的压缩方法或基本压缩方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海中标软件有限公司,未经上海中标软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010271675.1/2.html,转载请声明来源钻瓜专利网。