CN105281921B - 一种虚拟桌面实现组播的方法及装置 - Google Patents
一种虚拟桌面实现组播的方法及装置 Download PDFInfo
- Publication number
- CN105281921B CN105281921B CN201410255641.1A CN201410255641A CN105281921B CN 105281921 B CN105281921 B CN 105281921B CN 201410255641 A CN201410255641 A CN 201410255641A CN 105281921 B CN105281921 B CN 105281921B
- Authority
- CN
- China
- Prior art keywords
- spice
- multicast group
- multicast
- client
- current
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000005540 biological transmission Effects 0.000 abstract description 5
- 238000012423 maintenance Methods 0.000 abstract description 5
- 230000009466 transformation Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 4
- 230000006798 recombination Effects 0.000 description 4
- 238000005215 recombination Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 235000013599 spices Nutrition 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种虚拟桌面实现组播的方法及装置,涉及云计算服务器单机虚拟化技术领域,其方法包括以下步骤:简单协议独立计算环境SPICE服务端将虚拟机当前的桌面视频数据进行组播;SPICE服务端将虚拟机当前的音频数据进行组播;SPICE服务端将虚拟机当前的鼠标数据进行组播;SPICE服务端将已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据作为组播数据推送给已加入组播组的SPICE客户端,使所述SPICE客户端所接入的虚拟桌面实现组播功能。本发明涉及SPICE传输协议、组播运维系统的开发和改造,改造后可以迅速提升用户体验,部署便捷,经济效益好。
Description
技术领域
本发明从属于云计算服务器单机虚拟化技术领域,特别涉及一种虚拟桌面实现组播的方法及装置。
背景技术
云计算被中国“十二五”规划列为重点扶持的战略新兴产业,虚拟桌面作为云计算产业中落地最早的项目之一,应用规模巨大,市场需求处于井喷状态。近年来,桌面虚拟化业务在国内开始蓬勃发展,包括运营商、众多高校、政府、企业均陆续采用桌面虚拟化技术来替代传统PC的使用。
目前桌面虚拟化主要采用VDI(Virtual Desktop Infrastructure,虚拟桌面架构),VDI是一种基于服务器的计算模型,将所有桌面虚拟机在数据中心进行托管并统一管理,将操作系统及应用程序统一存放在数据中心的服务器及存储设备中,后台建立虚拟机池,提供给不同用户和不同终端,使用户能够获得完整PC的使用体验。毫无疑问,VDI是企业IT架构的一次革命,带来移动计算体验的同时,满足了很多特定行业的需要。
SPICE(Simple Protocol for Independent Computing Environment,简单协议独立计算环境)是一种开源虚拟化推送协议,能够提供与物理桌面完全相同的最终用户体验。SPICE能拉远部署在服务器和远程计算机上的虚拟桌面,它类似于其他用于远程桌面管理的渲染拉远协议,如微软的RDP(Remote Desktop Protocol,远程桌面协议)协议或Citrix的ICA(Independent Computing Architecture,独立计算结构)协议。它支持Windows XP、Windows7和Red Hat Enterprise Linux等虚拟机实例,SPICE协议包含有3个组件:
SPICE Driver:SPICE驱动器,存在于每个虚拟桌面内的组件;
SPICE Device:SPICE服务端,存在于虚拟化Hypervisor内的组件;
SPICE Client:SPICE客户端,存在于终端设备上的组件,可以是瘦客户机或专用的PC,用于接入每个虚拟桌面。
SPICE的这三个组件协作运行,以能够最大程度改善用户体验并降低系统负荷。由于SPICE协议具有分“通道”传输数据、提供QoS控制、独立于GuestOS、支持丰富的外设等特点,正在快速的发展,应用前景广阔。
教育领域是虚拟桌面的一个重要使用领域,具有应用相对单一,外设少,使用集中,便于推广等特点,非常适合推广虚拟桌面产品,但是教育领域,特别是高校以及中小学校,要求具备教学演示等功能,如教师在讲台演示,学生通过机位的虚拟桌面就可以直接看到老师的操作。即一个虚拟桌面需要同时共享给成百个用户使用,如果采用传统的单播模式让多个用户接入同一个虚拟桌面,必然对虚拟桌面的服务端造成很大的带宽及性能需求压力,这种场景对现有的VDI虚拟桌面构架是个挑战,此问题直接影响了虚拟桌面在教育领域的推广。
发明内容
本发明的目的在于提供一种虚拟桌面实现组播的方法及装置,解决了现有技术中对虚拟桌面的服务端造成很大带宽及性能需求压力的问题。
根据本发明的一个方面,提供了一种虚拟桌面实现组播的方法,包括以下步骤:
简单协议独立计算环境SPICE服务端将虚拟机当前的桌面视频数据进行组播;
SPICE服务端将虚拟机当前的音频数据进行组播;
SPICE服务端将虚拟机当前的鼠标数据进行组播;
SPICE服务端将已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据作为组播数据推送给已加入组播组的SPICE客户端,使所述SPICE客户端所接入的虚拟桌面实现组播功能。
优选地,所述的已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据均小于一个用户数据报协议UDP包的最大值。
优选地,所述的SPICE服务端将已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据作为组播数据推送给已加入组播组的SPICE客户端包括:
所述SPICE服务端接收来自所述SPICE客户端发送的建立连接请求;
所述SPICE服务端根据所接收到的建立连接请求,向所述SPICE客户端发送初始化信息以及所述SPICE客户端待加入的多个组播组地址;
所述SPICE服务端根据所述多个组播组地址将所述SPICE客户端加入到对应的组播组中,以便将所述组播数据推送给所述SPICE客户端。
优选地,所述初始化信息包括:
当前的桌面视频数据的初始化信息、当前音频数据的初始化信息以及当前鼠标数据的初始化信息。
优选地,所述的向所述SPICE客户端发送初始化信息以及所述SPICE客户端待加入的多个组播组地址包括:
所述SPICE客户端接收所述初始化信息和待加入的多个组播组地址;
所述SPICE客户端根据所述初始化信息分别完成所述当前的桌面视频数据、当前音频数据以及当前鼠标数据的初始化操作;
当所述SPICE客户端完成所述初始化操作后,根据所接收到的多个组播组地址,分别加入到对应的组播组中,以便接收所述SPICE客户端推送的组播数据。
根据本发明的另一方面,提供了一种虚拟桌面实现组播的方法,包括客户端执行的以下步骤:
SPICE客户端通过向SPICE服务端发送建立连接的请求,接收并保存SPICE服务端发送的多个组播组地址;
所述SPICE客户端根据所接收到的多个组播组地址,加入到对应的组播组地址中,并接收来自SPICE服务端推送的已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据的组播数据。
根据本发明的另一方面,提供了一种虚拟桌面实现组播的装置,包括服务端的以下模块:
组播模块,用于简单协议独立计算环境SPICE服务端分别将虚拟机当前的桌面视频数据、虚拟机当前的音频数据以及虚拟机当前的鼠标数据进行组播;
推送模块,用于所述SPICE服务端将已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据作为组播数据推送给已加入组播组的SPICE客户端,使所述SPICE客户端所接入的虚拟桌面实现组播功能。
优选地,所述的已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据均小于一个用户数据报协议UDP包的最大值。
优选地,所述的推送模块包括:
建立连接请求单元,用于所述SPICE服务端接收来自所述SPICE客户端发送的建立连接请求;
发送单元,用于所述SPICE服务端根据所接收到的建立连接请求,向所述SPICE客户端发送初始化信息以及所述SPICE客户端待加入的多个组播组地址;
加入组播组单元,用于所述SPICE服务端根据所述多个组播组地址将所述SPICE客户端加入到对应的组播组中,以便将所述组播数据推送给所述SPICE客户端。
根据本发明的另一方面,提供了一种虚拟桌面实现组播的装置,包括客户端的以下模块:
获取组播组地址模块,用于SPICE客户端通过向SPICE服务端发送建立连接的请求,接收并保存SPICE服务端发送的多个组播组地址;
接收模块,用于所述SPICE客户端根据所接收到的多个组播组地址,加入到对应的组播组地址中,并接收来自SPICE服务端推送的已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据的组播数据。
与现有技术相比较,本发明的有益效果在于:
本发明可以扩大虚拟桌面在教育领域及有类似场景的应用,节省了用户投入,提升用户使用体验,对于基于VDI构架及SPICE传输协议的虚拟桌面的推广具有良好的示范意义。
附图说明
图1是本发明提供的一种虚拟桌面实现组播的方法流程图;
图2是本发明提供的一种虚拟桌面实现组播的装置示意图;
图3是本发明实施例提供的基于VDI构架及SPICE传输协议的虚拟桌面组网图;
图4是本发明实施例提供的SPICE Device(SPICE服务端)整体设计图;
图5是本发明实施例提供的SPICE Client(SPICE客户端)整体设计图;
图6是本发明实施例提供的组播客户端与服务端的建链流程。
具体实施方式
以下结合附图对本发明的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明基于VDI构架及SPICE传输协议,通过对SPICE Device及SPICE Client的改造,并配以运维管理模块的控制,高效地完成虚拟桌面的组播功能,使得对多路虚拟桌面的消耗变为使用一路虚拟桌面就可以完成教学工作,并可以提升教学演示场景的用户体验,同时可以节省计算和存储资源,提升服务器并发组播数量,且减少对网络带宽的影响。同时本系统提供了一套完整的运维系统,完成对组播虚拟桌面的管理。
图1显示了本发明提供的一种虚拟桌面实现组播的方法流程图,如图1所示,包括以下步骤:
步骤S101:简单协议独立计算环境SPICE服务端将虚拟机当前的桌面视频数据进行组播;
步骤S102:SPICE服务端将虚拟机当前的音频数据进行组播;
步骤S103:SPICE服务端将虚拟机当前的鼠标数据进行组播;
步骤S104:SPICE服务端将已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据作为组播数据推送给已加入组播组的SPICE客户端,使所述SPICE客户端所接入的虚拟桌面实现组播功能。
本发明所述的已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据均小于一个用户数据报协议UDP包的最大值。具体地说,所述的SPICE服务端将已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据作为组播数据推送给已加入组播组的SPICE客户端包括:所述SPICE服务端接收来自所述SPICE客户端发送的建立连接请求;所述SPICE服务端根据所接收到的建立连接请求,向所述SPICE客户端发送初始化信息以及所述SPICE客户端待加入的多个组播组地址;所述SPICE服务端根据所述多个组播组地址将所述SPICE客户端加入到对应的组播组中,以便将所述组播数据推送给所述SPICE客户端。其中,所述初始化信息包括:当前的桌面视频数据的初始化信息、当前音频数据的初始化信息以及当前鼠标数据的初始化信息。
本发明所述的向所述SPICE客户端发送初始化信息以及所述SPICE客户端待加入的多个组播组地址包括:所述SPICE客户端接收所述初始化信息和待加入的多个组播组地址;所述SPICE客户端根据所述初始化信息分别完成所述当前的桌面视频数据、当前音频数据以及当前鼠标数据的初始化操作;当所述SPICE客户端完成所述初始化操作后,根据所接收到的多个组播组地址,分别加入到对应的组播组中,以便接收所述SPICE客户端推送的组播数据。
本发明还包括客户端执行的以下步骤:SPICE客户端通过向SPICE服务端发送建立连接的请求,接收并保存SPICE服务端发送的多个组播组地址;所述SPICE客户端根据所接收到的多个组播组地址,加入到对应的组播组地址中,并接收来自SPICE服务端推送的已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据的组播数据。
图2是本发明提供的一种虚拟桌面实现组播的装置示意图,如图2所示,包括服务端201和客户端202,其中,所述服务端包括组播模块2011,用于简单协议独立计算环境SPICE服务端分别将虚拟机当前的桌面视频数据、虚拟机当前的音频数据以及虚拟机当前的鼠标数据进行组播;推送模块2012,用于SPICE服务端将已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据作为组播数据推送给已加入组播组的SPICE客户端,使所述SPICE客户端所接入的虚拟桌面实现组播功能;所述客户端202包括获取组播组地址模块2021,用于SPICE客户端通过向SPICE服务端发送建立连接的请求,接收并保存SPICE服务端发送的多个组播组地址;接收模块2022,用于SPICE客户端根据所接收到的多个组播组地址,加入到对应的组播组地址中,并接收来自SPICE服务端推送的已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据的组播数据。具体地说,所述的推送模块202包括:建立连接请求单元,用于所述SPICE服务端接收来自所述SPICE客户端发送的建立连接请求;发送单元,用于所述SPICE服务端根据所接收到的建立连接请求,向所述SPICE客户端发送初始化信息以及所述SPICE客户端待加入的多个组播组地址;加入组播组单元,用于所述SPICE服务端根据所述多个组播组地址将所述SPICE客户端加入到对应的组播组中,以便将所述组播数据推送给所述SPICE客户端。本发明所述的已进行组播的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据均小于一个用户数据报协议UDP包的最大值。所述初始化信息包括:当前的桌面视频数据的初始化信息、当前音频数据的初始化信息以及当前鼠标数据的初始化信息。
图3显示了本发明实施例提供的基于VDI构架及SPICE传输协议的虚拟桌面组网图,如图3所示,包括:SPICE的客户端(SPICE Client)301,运行在终端设备上,用于接入每个虚拟桌面,实现组播功能需要进行客户端的改造;SPICE服务端(SPICE Device)302,运行于虚拟化hypervisor内的组件,实现组播功能需要进行服务端的改造;SPICE驱动器(SPICEDriver)303,运行于虚拟桌面内部的组件,主要包含一些常见驱动、代理等功能。
图4显示了本发明实施例提供的SPICE Device(SPICE服务端)整体设计图,如图4所示,在SPICE服务端(即SPICE Device设备)增加4个组播模块,分别用于:将虚拟机当前的桌面显示数据、音频数据、鼠标数据进行组播,以及实现对组播客户端的控制功能。具体地说,图中虚线框为所增加的4个组播模块,分别是显示通道的组播模块401、音频通道的组播模块402、鼠标通道的组播模块403以及组播控制通道模块404。其中,显示通道的组播模块401,用于将虚拟机当前的桌面显示数据组播。系统采用每一个UDP(User DatagramProtocol,用户数据报协议)都包含一个完整的绘制命令,节省客户端的重组操作。具体的实现是以每秒12帧的速率在服务端导出显示当前的最新图像数据,同时将该表面图像切割为多个小块,每个小块大小均低于一个UDP包所能容纳的最大值,然后将这些小块组成对应的绘制信息发送到客户端。客户端接收到对应的绘制信息后,无需重组,即可在窗口进行绘制。音频通道的组播模块402,用于将虚拟机当前的音频数据组播。音频数据消息小于单个UDP包的最大值,不存在UDP分包重组问题。在实现中,在SPICE原有的发送流程中将消息再次组播出去即可。鼠标通道的组播模块403,用于将虚拟机当前的鼠标数据组播。鼠标数据消息小于单个UDP包的最大值,不存在UDP分包重组问题。在实现中,在SPICE原有的发送流程中将消息再次组播出去即可。组播控制通道模块404,用于实现对组播客户端的控制功能。组播控制通道模块404新增一个线程池,含有10根守护线程,每根线程最多可以维护30个组播客户端的连接,线程池中的每根线程都由一个信号量守护,每当事件发生时,由主线程在每根线程的消息队列中放入对应消息后,依次激活每根线程的信号量,线程被激活后,从各自的消息队列中取出事件并处理。在Spice服务端接受了组播客户端的连接请求后,将该客户端加入线程池中维护客户端数目最小的一根线程中,保证各个线程间负荷平衡。
图5显示了本发明实施例提供的SPICE Client(SPICE客户端)整体设计图,如图5所示,在SPICE客户端(SPICE Client设备)增加3个模块,完成与服务端的配合工作。图中虚线框为所增加的3个模块,分别是Control Channel模块501、Multicast Peer模块502以及Multicast Channel模块503。具体地说,Control Channel模块501,完成与服务端的链接保存,定时心跳及获取服务端的控制信息。也就是说,用于与spice服务端初始化通信,获取需要的初始化信息,随后与服务端保存连接,定时心跳及获取服务端端的控制信息。Multicast Peer模块502,负责建立一对socket pair,在组播守护线程及对应的通道线程间通信,完成消息的交互。Multicast Channel模块503,用于获取组播地址并新建守护线程,加入对应的组播组,收取服务端端的组播信息。也就是说,根据获取的各个组播地址,分别启动一根守护线程,加入对应的组播组收取服务端端的组播信息。
图6显示了本发明实施例提供的组播客户端与服务端的建链流程,如图6所示,包括以下步骤:
步骤S601:SPICE客户端向SPICE服务端发送建立连接请求;
步骤S602:SPICE服务端根据收到的请求,判断是否应该建立连接;
步骤S603:SPICE服务端允许建立连接,返回初始化信息,信息中包括视频,鼠标,音频的初始化信息及客户端需要加入的组播组地址;
步骤S604:SPICE服务端向路由器广播数据包;
步骤S605:SPICE客户端根据服务端返回的信息,初始化视频,鼠标及音频通道,同时加入对应的组播组开始接受数据并处理;
步骤S606:SPICE客户端通过路由器接收相应的广播数据包;
步骤S607:SPICE服务端将该客户端加入组播组中,并更新后台数据,便于对组播组成员进行管理;
步骤S608:SPICE客户端与SPICE服务端建立控制通道,定时保活同时监听处理控制信息。
此外,本发明通过改造后的SPICE传输协议,当用户需要使用组播功能时,SPICE服务端需要做的就是向特殊的组播用户组发送一个报文,组播组中的用户可以自由复制得到这个报文。这种情况下,无论接受者增加多少人,服务端需要做的只是发送一个报文,而网络上传送的也只是一份报文。通过增加一套运维管理及配置系统,完成组播的相关管理,如组播虚拟桌面管理、组播虚拟桌面切换、组播客户端管理等。
综上所述,基于VDI构架及SPICE传输协议的虚拟桌面实现组播的方法及装置,主要功能特点是:
(1)、可以满足虚拟桌面在日常教学场景的使用要求,常规环境下不存在IO及网络的性能瓶颈。
(2)、由于使用组播技术,可以大幅度节省用户的虚拟桌面数量(一般可以达到50:1的比例),进而大幅度节省虚拟桌面用户的投入成本。
(3)、运维管理系统可以方便的完成组播虚拟桌面的管理。上课前,教师可以方便地完成组播对象的管理,组播桌面的切换等,提升教学资源的利用率。
综上所述,本发明具有以下技术效果:
本发明可以高效地满足教育领域对虚拟桌面在教学方面的使用要求,节省用户资源,满足用户快速切换虚拟桌面等要求,是一项极具特色的亮点功能,对虚拟桌面在教育领域的推广,起到很好的示范作用。
尽管上文对本发明进行了详细说明,但是本发明不限于此,本技术领域技术人员可以根据本发明的原理进行各种修改。因此,凡按照本发明原理所作的修改,都应当理解为落入本发明的保护范围。
Claims (10)
1.一种虚拟桌面实现组播的方法,其特征在于,包括服务端执行的以下步骤:
简单协议独立计算环境SPICE服务端根据SPICE客户端发送的建立链路请求,向所述SPICE客户端发送多个组播组地址,使所述SPICE客户端选取一个组播组地址并加入到其对应的组播组中;
在所述SPICE客户端加入到组播组中后,所述SPICE服务端建立与所述SPICE客户端之间的链路;
SPICE服务端利用所述链路将虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据作为组播数据推送给所述组播组中的各个SPICE客户端,使所述各个SPICE客户端所接入的虚拟桌面实现组播功能。
2.根据权利要求1所述的方法,其特征在于,所述的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据均小于一个用户数据报协议UDP包的最大值。
3.根据权利要求1或2所述的方法,其特征在于,所述的SPICE服务端根据SPICE客户端发送的建立链路请求,向所述SPICE客户端发送多个组播组地址,使所述SPICE客户端选取一个组播组地址并加入到其对应的组播组中包括:
所述SPICE服务端接收所述SPICE客户端发送的建立链路请求;
所述SPICE服务端根据所接收到的建立链路请求,向所述SPICE客户端发送初始化信息以及多个组播组地址,以便所述SPICE客户端根据所述初始化信息完成初始化操作后,从所述多个组播组地址中选取一个组播组地址并加入到其对应的组播组中。
4.根据权利要求3所述的方法,其特征在于,所述初始化信息包括:
当前的桌面视频数据的初始化信息、当前音频数据的初始化信息以及当前鼠标数据的初始化信息。
5.一种虚拟桌面实现组播的方法,其特征在于,包括客户端执行的以下步骤:
简单协议独立计算环境SPICE客户端通过向SPICE服务端发送建立链路的请求,接收并保存SPICE服务端发送的初始化信息和多个组播组地址;
所述SPICE客户端根据所接收到的初始化信息完成初始化操作后,从多个组播组地址中选取一个组播组地址并加入到其对应的组播组中,以便接收SPICE服务端推送的包含虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据的组播数据。
6.根据权利要求5所述的方法,其特征在于,所述的所述SPICE客户端根据所接收到的初始化信息完成初始化操作包括:
所述SPICE客户端根据所述初始化信息,分别完成所述当前的桌面视频数据、当前音频数据以及当前鼠标数据的初始化操作。
7.一种虚拟桌面实现组播的装置,其特征在于,包括服务端的以下模块:
建立链路模块,用于根据简单协议独立计算环境SPICE客户端发送的建立链路请求,向所述SPICE客户端发送多个组播组地址,使所述SPICE客户端选取一个组播组地址并加入到其对应的组播组中,并在所述SPICE客户端加入到组播组中后,建立与所述SPICE客户端之间的链路;
推送模块,用于利用所述链路将虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据作为组播数据推送给所述组播组中的各个SPICE客户端,使所述各个SPICE客户端所接入的虚拟桌面实现组播功能。
8.根据权利要求7所述的装置,其特征在于,所述的虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据均小于一个用户数据报协议UDP包的最大值。
9.根据权利要求7或8所述的装置,其特征在于,所述的建立链路模块包括:
接收单元,用于接收来自所述SPICE客户端发送的建立链路请求;
发送单元,用于根据所接收到的建立链路请求,向所述SPICE客户端发送初始化信息以及多个组播组地址,以便所述SPICE客户端根据所述初始化信息完成初始化操作后,从所述多个组播组地址中选取一个组播组地址并加入到其对应的组播组中;
建立链路单元,用于在所述SPICE客户端加入到组播组中后,建立与所述SPICE客户端之间的链路。
10.一种虚拟桌面实现组播的装置,其特征在于,包括客户端的以下模块:
获取组播组地址模块,用于通过向简单协议独立计算环境SPICE服务端发送建立链路的请求,接收并保存SPICE服务端发送的初始化信息和多个组播组地址;
接收模块,用于根据所接收到的初始化信息完成初始化操作后,从多个组播组地址中选取一个组播组地址并加入到其对应的组播组中,以便接收SPICE服务端推送的包含虚拟机当前的桌面视频数据、虚拟机当前的音频数据和虚拟机当前的鼠标数据的组播数据。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410255641.1A CN105281921B (zh) | 2014-06-10 | 2014-06-10 | 一种虚拟桌面实现组播的方法及装置 |
PCT/CN2014/093603 WO2015188601A1 (zh) | 2014-06-10 | 2014-12-11 | 一种虚拟桌面实现组播的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410255641.1A CN105281921B (zh) | 2014-06-10 | 2014-06-10 | 一种虚拟桌面实现组播的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105281921A CN105281921A (zh) | 2016-01-27 |
CN105281921B true CN105281921B (zh) | 2020-01-07 |
Family
ID=54832850
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410255641.1A Active CN105281921B (zh) | 2014-06-10 | 2014-06-10 | 一种虚拟桌面实现组播的方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105281921B (zh) |
WO (1) | WO2015188601A1 (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107025084A (zh) * | 2016-01-29 | 2017-08-08 | 深圳市深信服电子科技有限公司 | 虚拟桌面共享方法及装置 |
CN105847332A (zh) * | 2016-03-17 | 2016-08-10 | 汉柏科技有限公司 | 桌面虚拟化方法、客户端设备和服务端设备 |
CN106101794A (zh) * | 2016-06-22 | 2016-11-09 | 杭州华三通信技术有限公司 | 一种虚拟桌面视频数据的处理方法、装置及系统 |
CN106227490A (zh) * | 2016-07-29 | 2016-12-14 | 中兴通讯股份有限公司 | 云桌面系统、云终端、及申请加入组播组的方法 |
CN106302399A (zh) * | 2016-07-29 | 2017-01-04 | 中兴通讯股份有限公司 | 控制组播接入的方法及系统、云桌面、云终端 |
CN106227486A (zh) * | 2016-07-29 | 2016-12-14 | 中兴通讯股份有限公司 | 云桌面系统、云桌面、云终端及组播方法 |
CN107682384A (zh) * | 2016-08-01 | 2018-02-09 | 中兴通讯股份有限公司 | 虚拟桌面组播控制方法、终端、代理终端及云桌面服务器 |
CN106390449A (zh) * | 2016-09-19 | 2017-02-15 | 南京工业大学 | 一种基于图形虚拟化技术的云游戏框架 |
CN108306930B (zh) | 2017-12-22 | 2021-02-09 | 华为技术有限公司 | 远程桌面系统及图像数据共享方法 |
CN109743293B (zh) * | 2018-12-13 | 2021-05-25 | 烽台科技(北京)有限公司 | 网络靶场的访问方法及网络靶场系统、计算机存储介质 |
CN109918171A (zh) * | 2019-02-22 | 2019-06-21 | 上海映云信息技术有限公司 | 一种基于qemu-kvm硬件设备的标准通信方法 |
CN110018873A (zh) * | 2019-03-31 | 2019-07-16 | 山东超越数控电子股份有限公司 | 一种基于fpga优化虚拟桌面传输的方法 |
CN110324724A (zh) * | 2019-07-11 | 2019-10-11 | 四川九州电子科技股份有限公司 | 一种利用数字机顶盒的云桌面分享方法及系统 |
CN111367610B (zh) * | 2020-03-08 | 2022-07-19 | 苏州浪潮智能科技有限公司 | 一种客户端系统和云虚拟机之间的文件拖拽方法和装置 |
WO2024093870A1 (zh) * | 2022-10-30 | 2024-05-10 | 周兴昌 | 一种虚拟终端的工作方法 |
CN118118530A (zh) * | 2024-02-29 | 2024-05-31 | 北京凝思软件股份有限公司 | 音频数据共享方法、装置、设备和介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1756234A (zh) * | 2004-09-29 | 2006-04-05 | 日立通讯技术株式会社 | 服务器、vpn客户机、vpn系统及软件 |
CN102347906A (zh) * | 2011-11-16 | 2012-02-08 | 瑞斯康达科技发展股份有限公司 | 一种组播方法及组播网络系统 |
CN102377775A (zh) * | 2011-10-14 | 2012-03-14 | 深圳市京华科讯科技有限公司 | 一种自适应传输协议栈及其处理方法和系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103324278A (zh) * | 2012-10-30 | 2013-09-25 | 中兴通讯股份有限公司 | 终端设备、系统及接入虚拟桌面的方法 |
WO2014067080A1 (zh) * | 2012-10-31 | 2014-05-08 | 华为技术有限公司 | 发送云服务器地址的方法、设备 |
-
2014
- 2014-06-10 CN CN201410255641.1A patent/CN105281921B/zh active Active
- 2014-12-11 WO PCT/CN2014/093603 patent/WO2015188601A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1756234A (zh) * | 2004-09-29 | 2006-04-05 | 日立通讯技术株式会社 | 服务器、vpn客户机、vpn系统及软件 |
CN102377775A (zh) * | 2011-10-14 | 2012-03-14 | 深圳市京华科讯科技有限公司 | 一种自适应传输协议栈及其处理方法和系统 |
CN102347906A (zh) * | 2011-11-16 | 2012-02-08 | 瑞斯康达科技发展股份有限公司 | 一种组播方法及组播网络系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105281921A (zh) | 2016-01-27 |
WO2015188601A1 (zh) | 2015-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105281921B (zh) | 一种虚拟桌面实现组播的方法及装置 | |
US11888725B2 (en) | Multi-cast support for a virtual network | |
CN104023050B (zh) | 一种设备云环境下设备协同多屏互动系统及其方法 | |
CN112073758B (zh) | 一种云桌面投屏方法、装置、计算机设备、计算机可读存储介质及云桌面投屏交互系统 | |
US9288259B2 (en) | Remote desktop sharing for wireless environment | |
WO2017107499A1 (zh) | 信息远程同步方法、终端及系统 | |
CN102307153A (zh) | 一种虚拟桌面传输设备和方法 | |
EP3122008A1 (en) | Cloud desktop pushing method and system, pushing end and receiving end | |
DE202018006951U1 (de) | System zum Verbinden eines Verarbeitungsgeräts mit einem funktionalen Gerät | |
US10698705B2 (en) | Method and device for managing virtual desktops virtualized by a host server and allocated to terminal users, and virtual desktop server | |
CN103516762A (zh) | 一种虚拟桌面的生成方法、设备及系统 | |
WO2014180234A1 (zh) | 虚拟桌面重现、推送的方法、装置及虚拟桌面系统 | |
WO2015139390A1 (zh) | 组播数据处理方法、装置、系统、发送设备及接收客户端 | |
CN116319790A (zh) | 全真场景的渲染方法、装置、设备和存储介质 | |
CN113703973A (zh) | 一种云任务处理方法、系统、装置、设备及存储介质 | |
CN107025084A (zh) | 虚拟桌面共享方法及装置 | |
US11803606B2 (en) | Device augmentation of real time communications | |
CN109698818B (zh) | 一种获取在线用户以及跨流媒体通信的方法和装置 | |
CN106790182A (zh) | 分布式业务服务系统及集中服务控制方法与其相应的装置 | |
CN103347006B (zh) | 一种网络化协同虚拟实验控制系统及控制方法 | |
CN103209209B (zh) | 基于Windows系统和网络传输的应用虚拟化实现方法及系统 | |
CN103793279A (zh) | 一种融合应用虚拟化和桌面虚拟化的虚拟化方法 | |
CN105227523B (zh) | 虚拟化应用提供、访问方法与装置及实现方法与系统 | |
US20140379778A1 (en) | Asynchronous transport setup and selection for interactive applications | |
CN115296952B (zh) | 一种设备调度方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |