CN103888524A - 图形桌面同步方法和*** - Google Patents
图形桌面同步方法和*** Download PDFInfo
- Publication number
- CN103888524A CN103888524A CN201410088879.XA CN201410088879A CN103888524A CN 103888524 A CN103888524 A CN 103888524A CN 201410088879 A CN201410088879 A CN 201410088879A CN 103888524 A CN103888524 A CN 103888524A
- Authority
- CN
- China
- Prior art keywords
- desktop
- data
- client
- request
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
一种图形桌面同步方法和***,其方法包括:通过桌面服务器生成图形桌面,并接收客户端发送的图形桌面数据请求;判断是否收到所有客户端的图形桌面数据请求,若是,则根据各图形桌面数据请求将所述图形桌面进行处理并压缩,将压缩数据发送至对应的客户端;在客户端将压缩数据进行解压,并向桌面服务器发送解压完成指令;由桌面服务器判断是否收到所有客户端反馈的解压完成指令,若是,则向各客户端发送绘图指令;根据绘图指令将客户端中的解压数据进行桌面图形绘制。通过本发明方案提高同步效率。
Description
技术领域
本发明涉及同步技术领域,特别是涉及一种图形桌面同步方法和***。
背景技术
计算机图形桌面技术出现和应用以来,桌面分辨率经历了从低到高的发展过程。为了获得更高的桌面分辨率,在单台计算机中安装多张图形显示卡通过驱动程序产生单一桌面成为了主流技术手段。但受限于总线技术以及单台计算机性能,此技术不可能无限制的提高桌面分辨率,且因为分辨率越高,需要刷新的数据越多,而总线带宽是有限的,因此必然导致数据刷新率降低。
为了满足某些行业对于超高分辨率桌面应用的需求,传统技术中,采用一台服务器与多台多屏处理器组合方式,即多客户端拼接并行显示同一帧桌面图像。。高分辨率图形桌面由一台桌面服务器(以下简称服务器)生成,但输出显示任务则由另外的若干台多屏处理器(以下简称客户端)承担。由服务器生成的图形桌面,分辨率正好是所有客户端分辨率之和。采用这种技术虽然解决了单计算机输出桌面分辨率不足,数据刷新率低的问题,但由于各个客户端是独立的执行体,单独的与桌面服务器进行交互完成自身所请求的图形桌面数据的处理。由于一些网络传输的不确定性,以及图形数据处理快慢程度等因素的出现将引发一些问题,主要表现在多客户端拼接并行显示同一帧桌面图像时的不一致性以及动态桌面图像撕裂等问题。
传统技术中为了解决桌面图像撕裂问题,往往基于时间戳实现同步。但是使用时间戳比较复杂,且实现难度大,从而导致同步效率低。
发明内容
基于此,有必要针对实现难度大、同步效率低的问题,提供一种图形桌面同步方法和***。
一种图形桌面同步方法,包括步骤:
通过桌面服务器生成图形桌面,并接收客户端发送的图形桌面数据请求;
判断是否收到所有客户端的图形桌面数据请求,若是,则根据各图形桌面数据请求将所述图形桌面进行处理并压缩,将压缩数据发送至对应的客户端;
在客户端将压缩数据进行解压,并向桌面服务器发送解压完成指令;
由桌面服务器判断是否收到所有客户端反馈的解压完成指令,若是,则向各客户端发送绘图指令;
根据绘图指令将客户端中的解压数据进行桌面图形绘制。
一种图形桌面同步***,包括:
图形桌面生成模块,用于通过桌面服务器生成图形桌面;
图形桌面数据请求判断模块,用于通过桌面服务器接收客户端发送的图形桌面数据请求,并判断是否收到所有客户端的图形桌面数据请求;
压缩数据发送模块,用于当桌面服务器收到所有客户端的图形桌面数据请求时,则根据各图形桌面数据请求将所述图形桌面进行处理并压缩,将压缩数据发送至对应的客户端;
解压完成指令发送模块,用于在客户端将压缩数据进行解压,并向桌面服务器发送解压完成指令;
解压完成指令判断模块,用于由桌面服务器判断是否收到所有客户端反馈的解压完成指令;
绘图指令发送模块,用于当桌面服务器收到所有客户端反馈的解压完成指令时,则向各客户端发送绘图指令;
桌面图形绘制指令,用于根据绘图指令将客户端中的解压数据进行桌面图形绘制。
上述图形桌面同步方法和***,通过桌面服务器判断是否收到所有客户端的图形桌面数据请求,在同时收到的情况下才进行处理和压缩,实现处理和压缩数据的同步。通过客户端向桌面服务器发送解压完成指令,桌面服务器判断收到所有客户端反馈的解压完成指令后才发送绘图指令,从而实现绘图指令发送同步,最终实现客户端绘制同步,达到图形桌面同步。解决了多客户端拼接并行显示同一帧桌面图像时的不一致性以及动态桌面图像撕裂等问题,同时克服了传统技术中时间戳导致的复杂性和困难性,实现比较容易,从而提高了同步效率。
附图说明
图1为本发明图形桌面同步方法实施例一的流程示意图;
图2为本发明图形桌面同步方法实施例二的流程示意图;
图3为本发明图形桌面同步***实施例的结构示意图。
具体实施方式
以下针对本发明图形桌面同步方法和***的各实施例进行详细的描述。
如图1所示,为本发明图形桌面同步方法实施例的流程示意图,包括:
步骤S101:通过桌面服务器生成图形桌面,并接收客户端发送的图形桌面数据请求;
桌面服务器产生的图形桌面可以是普通图形桌面,也可以是高分辨率图形桌面。桌面服务器产生图形桌面后,等待客户端请求图形桌面数据。所有客户端会根据自身的分辨率坐标发出请求,向桌面服务器发送分辨率坐标对应部分的图形桌面数据请求。
步骤S102:判断是否收到所有客户端的图形桌面数据请求,若是,则进入步骤S103;
每个客户端都会发送图形桌面数据请求,不管该客户端的内容是否需要更新,当不需要更新时,仍需发请求告知桌面服务器该客户端不需要更新,因此可以通过桌面服务器来判断是否接收到所有客户端的图形桌面数据请求,从而使桌面服务器根据各客户端请求对图形桌面进行处理是同步的。
步骤S103:根据各图形桌面数据请求将图形桌面进行处理并压缩,将压缩数据发送至对应的客户端;
步骤S104:在客户端将压缩数据进行解压,并向桌面服务器发送解压完成指令;
步骤S105:由桌面服务器判断是否收到所有客户端反馈的解压完成指令,若是,则进入步骤S106;
步骤S106:向各客户端发送绘图指令;
步骤S107:根据绘图指令将客户端中的解压数据进行桌面图形绘制。
本发明图形桌面同步方法,通过桌面服务器判断是否收到所有客户端的图形桌面数据请求,在同时收到的情况下才进行处理和压缩,实现处理和压缩数据的同步。通过客户端向桌面服务器发送解压完成指令,桌面服务器判断收到所有客户端反馈的解压完成指令后才发送绘图指令,从而实现绘图指令发送同步,最终实现客户端绘制同步,达到图形桌面同步。解决了多客户端拼接并行显示同一帧桌面图像时的不一致性以及动态桌面图像撕裂等问题,同时克服了传统技术中时间戳导致的复杂性和困难性,提高了同步效率。
在其中一个实施例中,当图形桌面数据请求为完整图形桌面数据请求时,根据各图形桌面数据请求将图形桌面进行处理并压缩,将压缩数据发送至对应的客户端步骤,包括:
根据各图形桌面数据请求将图形桌面进行分块,获得对应客户端个数的子图形桌面数据;即每个客户端对应有一份子图形桌面数据。
将各子图形桌面数据分别进行帧内压缩,并将压缩数据发送至对应的客户端。
由于图形桌面数据请求是完整图形桌面数据请求,即客户端发送的是自身分辨率坐标对应桌面数据需要全部更新的请求,所以,将图形桌面数据请求进行分块后,直接进行帧内压缩,并发送至对应客户端。由于服务器生成的图形桌面,分辨率正好是所有客户端分辨率之和,则各个客户端绘制的桌面图形组成一整幅图形桌面。
在另一个实施例中,有些客户端的更新不需要全部更新,只需要对变化的部分进行更新,即:
当图形桌面数据请求为变化图形桌面数据请求时,根据各图形桌面数据请求将图形桌面进行处理并压缩,将压缩数据发送至对应的客户端步骤,包括:
根据各图形桌面数据请求将图形桌面进行分块,获得对应客户端个数的子图形桌面数据;
将各子图形桌面数据中变化图形桌面数据进行帧间压缩,并将压缩数据发送至对应的客户端。即将各子图形桌面数据中有变化的数据进行帧间压缩并发送。
当有些客户端的图形桌面数据没有变化时,仍需向桌面服务器发送请求,告知不需要更新。本实施例通过只对变化数据进行更新,大大简化了数据传输量,提高了同步效率。
在其中一个实施例中,根据桌面服务器和客户端分别建立非阻塞模式的套接字,并将桌面服务器和客户端通过TCP协议连接。服务器与客户端之间也可以通过IP网络传输协议进行交互。
上述各实施例可以自由组合,比如,如图2所示,包括:
步骤S201:通过桌面服务器生成图形桌面,并接收客户端发送的完整图形桌面数据请求;
步骤S202:判断是否收到所有客户端的完整图形桌面数据请求,若是,则进入步骤S203,若否,则返回步骤S201;
步骤S203:根据各图形完整图形桌面数据请求将图形桌面进行分块,获得对应客户端个数的子图形桌面数据,将各子图形桌面数据分别进行帧内压缩,并将压缩数据发送至对应的客户端;
步骤S204:在客户端将压缩数据进行解压,并向桌面服务器发送解压完成指令;
步骤S205:由桌面服务器判断是否收到所有客户端反馈的解压完成指令,若是,则进入步骤S206,否则,返回步骤S201;
步骤S206:向各客户端发送绘图指令;
步骤S207:根据绘图指令将客户端中的解压数据进行桌面图形绘制;
步骤S208:通过桌面服务器接收客户端发送的变化图形桌面数据请求,并判断是否收到所有客户端的变化图形桌面数据请求,若是,则进入步骤S209,若否,则结束;
步骤S209:根据各图形桌面数据请求将图形桌面进行分块,获得对应客户端个数的子图形桌面数据,将各子图形桌面数据中变化图形桌面数据进行帧间压缩,并将压缩数据发送至对应的客户端;
步骤S210:在客户端将压缩数据进行解压,并向桌面服务器发送解压完成指令,并进入步骤S205。
本实施例可以基于高分辨率图形桌面技术的C/S网络架构,采用TCP传输协议,网络套接字采用非阻塞模式,服务器端采用网络事件模型管理所有客户端的连接请求。在步骤S208中,当没有接收到数据请求时,则该流程结束。该实施例首先通过桌面服务器接收完整图形桌面数据请求,一系列处理后,客户端绘制各自完整的桌面图形,从而在拼接墙上并行显示一幅完整的图形桌面。在后续更新过程中,以该图形桌面为基准,只需要更新变化的图形内容,则大大减轻了传输量,提高了同步效率。
根据上述图形桌面同步方法,本发明还提供一种图形桌面同步***,如图3所示,包括:
图形桌面生成模块310,用于通过桌面服务器生成图形桌面;
图形桌面数据请求判断模块320,用于通过桌面服务器接收客户端发送的图形桌面数据请求,并判断是否收到所有客户端的图形桌面数据请求;
压缩数据发送模块330,用于当桌面服务器收到所有客户端的图形桌面数据请求时,则根据各图形桌面数据请求将图形桌面进行处理并压缩,将压缩数据发送至对应的客户端;
解压完成指令发送模块340,用于在客户端将压缩数据进行解压,并向桌面服务器发送解压完成指令;
解压完成指令判断模块350,用于由桌面服务器判断是否收到所有客户端反馈的解压完成指令;
绘图指令发送模块360,用于当桌面服务器收到所有客户端反馈的解压完成指令时,则向各客户端发送绘图指令;
桌面图形绘制指令370,用于根据绘图指令将客户端中的解压数据进行桌面图形绘制。
在其中一个实施例中,压缩数据发送模块包括:
图形桌面分块模块,用于根据各图形桌面数据请求将图形桌面进行分块,获得对应客户端个数的子图形桌面数据;
数据压缩模块,用于将各子图形桌面数据分别进行压缩,并将压缩数据发送至对应的客户端。
在其中一个实施例中,数据压缩模块包括:
数据帧内压缩模块,用于当图形桌面数据请求为完整图形桌面数据请求时,将各子图形桌面数据分别进行帧内压缩,并将压缩数据发送至对应的客户端;
数据帧间压缩模块,用于当图形桌面数据请求为变化图形桌面数据请求时,将各子图形桌面数据中变化图形桌面数据进行帧间压缩,并将压缩数据发送至对应的客户端。
在其中一个实施例中,还包括套接字创建模块,用于:
将桌面服务器和客户端分别建立非阻塞模式套接字,并将桌面服务器和客户端通过TCP协议连接。
在其中一个实施例中,图形桌面为高分辨率图形桌面。
上述各实施例可以自由组合,在此不再赘述。
本发明的图形桌面同步***与本发明的图形桌面同步方法是一一对应的,上述图形桌面同步方法实施例中的相关技术特征及其技术效果均适用于图形桌面同步***实施例中,在此不再赘述。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种图形桌面同步方法,其特征在于,包括步骤:
通过桌面服务器生成图形桌面,并接收客户端发送的图形桌面数据请求;
判断是否收到所有客户端的图形桌面数据请求,若是,则根据各图形桌面数据请求将所述图形桌面进行处理并压缩,将压缩数据发送至对应的客户端;
在客户端将压缩数据进行解压,并向桌面服务器发送解压完成指令;
由桌面服务器判断是否收到所有客户端反馈的解压完成指令,若是,则向各客户端发送绘图指令;
根据绘图指令将客户端中的解压数据进行桌面图形绘制。
2.根据权利要求1所述的图形桌面同步方法,其特征在于,所述图形桌面数据请求为完整图形桌面数据请求;
所述根据各图形桌面数据请求将所述图形桌面进行处理并压缩,将压缩数据发送至对应的客户端步骤,包括:
根据各图形桌面数据请求将所述图形桌面进行分块,获得对应客户端个数的子图形桌面数据;
将各子图形桌面数据分别进行帧内压缩,并将压缩数据发送至对应的客户端。
3.根据权利要求1所述的图形桌面同步方法,其特征在于,所述图形桌面数据请求为变化图形桌面数据请求;
所述根据各图形桌面数据请求将所述图形桌面进行处理并压缩,将压缩数据发送至对应的客户端步骤,包括:
根据各图形桌面数据请求将所述图形桌面进行分块,获得对应客户端个数的子图形桌面数据;
将各子图形桌面数据中变化图形桌面数据进行帧间压缩,并将压缩数据发送至对应的客户端。
4.根据权利要求1至3所述的图形桌面同步方法,其特征在于,所述通过桌面服务器生成图形桌面,并接收客户端发送的图形桌面数据请求步骤之前,还包括:
根据所述桌面服务器和所述客户端分别建立非阻塞模式的套接字,并将所述桌面服务器和所述客户端通过TCP协议连接。
5.根据权利要求1至3所述的图形桌面同步方法,其特征在于,所述图形桌面为高分辨率图形桌面。
6.一种图形桌面同步***,其特征在于,包括:
图形桌面生成模块,用于通过桌面服务器生成图形桌面;
图形桌面数据请求判断模块,用于通过桌面服务器接收客户端发送的图形桌面数据请求,并判断是否收到所有客户端的图形桌面数据请求;
压缩数据发送模块,用于当桌面服务器收到所有客户端的图形桌面数据请求时,则根据各图形桌面数据请求将所述图形桌面进行处理并压缩,将压缩数据发送至对应的客户端;
解压完成指令发送模块,用于在客户端将压缩数据进行解压,并向桌面服务器发送解压完成指令;
解压完成指令判断模块,用于由桌面服务器判断是否收到所有客户端反馈的解压完成指令;
绘图指令发送模块,用于当桌面服务器收到所有客户端反馈的解压完成指令时,则向各客户端发送绘图指令;
桌面图形绘制指令,用于根据绘图指令将客户端中的解压数据进行桌面图形绘制。
7.根据权利要求6所述的图形桌面同步***,其特征在于,所述压缩数据发送模块包括:
图形桌面分块模块,用于根据各图形桌面数据请求将所述图形桌面进行分块,获得对应客户端个数的子图形桌面数据;
数据压缩模块,用于将各子图形桌面数据分别进行压缩,并将压缩数据发送至对应的客户端。
8.根据权利要求7所述的图形桌面同步***,其特征在于,所述数据压缩模块包括:
数据帧内压缩模块,用于当所述图形桌面数据请求为完整图形桌面数据请求时,将各子图形桌面数据分别进行帧内压缩,并将压缩数据发送至对应的客户端;
数据帧间压缩模块,用于当所述图形桌面数据请求为变化图形桌面数据请求时,将各子图形桌面数据中变化图形桌面数据进行帧间压缩,并将压缩数据发送至对应的客户端。
9.根据权利要求6至8所述的图形桌面同步***,其特征在于,还包括套接字创建模块,用于:
将所述桌面服务器和所述客户端分别建立非阻塞模式套接字,并将所述桌面服务器和所述客户端通过TCP协议连接。
10.根据权利要求6至8所述的图形桌面同步***,其特征在于,所述图形桌面为高分辨率图形桌面。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410088879.XA CN103888524B (zh) | 2014-03-11 | 2014-03-11 | 图形桌面同步方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410088879.XA CN103888524B (zh) | 2014-03-11 | 2014-03-11 | 图形桌面同步方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103888524A true CN103888524A (zh) | 2014-06-25 |
CN103888524B CN103888524B (zh) | 2018-01-23 |
Family
ID=50957240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410088879.XA Expired - Fee Related CN103888524B (zh) | 2014-03-11 | 2014-03-11 | 图形桌面同步方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103888524B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105590440A (zh) * | 2016-01-29 | 2016-05-18 | 河南捷步电子科技有限公司 | 一种便民终端机的远程控制***和方法 |
CN106970798A (zh) * | 2017-03-31 | 2017-07-21 | 山东超越数控电子有限公司 | 一种远程桌面图形加速方法 |
CN108769715A (zh) * | 2018-05-22 | 2018-11-06 | 深圳市腾讯网络信息技术有限公司 | 图形指令数据的处理方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101404151A (zh) * | 2008-08-04 | 2009-04-08 | 广东威创视讯科技股份有限公司 | 一种多屏拼接装置和方法 |
CN101986258A (zh) * | 2010-11-18 | 2011-03-16 | 广东威创视讯科技股份有限公司 | 基于pcie总线的桌面信号同步显示方法及装置 |
CN102821278A (zh) * | 2012-07-27 | 2012-12-12 | 深信服网络科技(深圳)有限公司 | 远程桌面图像传输方法及*** |
US20130120222A1 (en) * | 2011-11-14 | 2013-05-16 | Qnx Software Systems Limited | Concurrent Graphic Content On Multiple Displays |
-
2014
- 2014-03-11 CN CN201410088879.XA patent/CN103888524B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101404151A (zh) * | 2008-08-04 | 2009-04-08 | 广东威创视讯科技股份有限公司 | 一种多屏拼接装置和方法 |
CN101986258A (zh) * | 2010-11-18 | 2011-03-16 | 广东威创视讯科技股份有限公司 | 基于pcie总线的桌面信号同步显示方法及装置 |
US20130120222A1 (en) * | 2011-11-14 | 2013-05-16 | Qnx Software Systems Limited | Concurrent Graphic Content On Multiple Displays |
CN102821278A (zh) * | 2012-07-27 | 2012-12-12 | 深信服网络科技(深圳)有限公司 | 远程桌面图像传输方法及*** |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105590440A (zh) * | 2016-01-29 | 2016-05-18 | 河南捷步电子科技有限公司 | 一种便民终端机的远程控制***和方法 |
CN106970798A (zh) * | 2017-03-31 | 2017-07-21 | 山东超越数控电子有限公司 | 一种远程桌面图形加速方法 |
CN108769715A (zh) * | 2018-05-22 | 2018-11-06 | 深圳市腾讯网络信息技术有限公司 | 图形指令数据的处理方法及装置 |
CN108769715B (zh) * | 2018-05-22 | 2022-05-13 | 深圳市腾讯网络信息技术有限公司 | 图形指令数据的处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103888524B (zh) | 2018-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101937325B (zh) | 一种拼接墙控制方法和一种拼接墙控制*** | |
CN102413150B (zh) | 服务器、虚拟桌面控制方法以及虚拟桌面控制*** | |
KR101527991B1 (ko) | 그래픽 원격 아키텍처 | |
CN107958437A (zh) | 一种多gpu大分辨率多屏图形分块并行渲染方法 | |
CN110415325A (zh) | 云渲染三维可视化实现方法及*** | |
US20140108940A1 (en) | Method and system of remote communication over a network | |
EP2914040B1 (en) | Terminal and synchronization control method thereof | |
CN110765381A (zh) | 基于WebAssembly技术的配网主站的Web发布方法及*** | |
CN112669428B (zh) | 一种基于服务器和客户端协作的bim模型渲染方法 | |
CN104572084B (zh) | 卡片业务中用户界面生成及数据下发方法、装置 | |
US9930082B2 (en) | Method and system for network driven automatic adaptive rendering impedance | |
CN103402089A (zh) | 一种基于宏块技术的虚拟桌面图像压缩方法 | |
CN103888524A (zh) | 图形桌面同步方法和*** | |
CN102647470A (zh) | 在线应用平台内云下载的方法及在线应用平台*** | |
JP2008289030A (ja) | 画面描画転送システム | |
CN102546803A (zh) | 基于能力集的远端桌面通信方法 | |
CN104378419A (zh) | 一种数据高速推送的方法及*** | |
CN103200237A (zh) | 一种保持远程桌面同步的方法和装置 | |
CN104363110A (zh) | 一种基于画面计算服务的ems人机画面监控***及实现方法 | |
CN115373618B (zh) | 一种多屏显示方法、装置、车机及存储介质 | |
WO2016095377A1 (zh) | 一种瘦客户端的图像显示方法、装置及电子设备 | |
CN112565818B (zh) | 二三维一体化的操作站平台构建方法和电子设备 | |
CN114422572A (zh) | 一种云手机控制方法、装置、电子设备和存储介质 | |
CN103268619B (zh) | swf文件中图片数据批量压缩的方法及装置 | |
CN113835816A (zh) | 一种虚拟机桌面显示方法、装置、设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180123 |
|
CF01 | Termination of patent right due to non-payment of annual fee |