WO2014180234A1 - Virtual desktop reproducing and pushing method and device, and virtual desktop system - Google Patents

Virtual desktop reproducing and pushing method and device, and virtual desktop system Download PDF

Info

Publication number
WO2014180234A1
WO2014180234A1 PCT/CN2014/075739 CN2014075739W WO2014180234A1 WO 2014180234 A1 WO2014180234 A1 WO 2014180234A1 CN 2014075739 W CN2014075739 W CN 2014075739W WO 2014180234 A1 WO2014180234 A1 WO 2014180234A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual desktop
information
virtual
multicast
desktop
Prior art date
Application number
PCT/CN2014/075739
Other languages
French (fr)
Chinese (zh)
Inventor
狄煦
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2014180234A1 publication Critical patent/WO2014180234A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/08Protocols specially adapted for terminal emulation, e.g. Telnet

Definitions

  • the present invention relates to the field of communications, and in particular, to a virtual desktop rendering method, a virtual desktop pushing method, a virtual desktop reproducing device, a virtual desktop pushing device, and a virtual desktop system.
  • the cloud terminal mode is used to deploy the computer network classroom.
  • the teacher machine selects a virtual machine in the cloud server to serve as the virtual machine.
  • the student machine selects the cloud terminal to replace the traditional PC, and connects the virtual desktop of the virtual machine through the client on the cloud terminal without changing its current state.
  • the virtual machine in the cloud server uses the Windows (Windows) operating system
  • the courseware in the computer network classroom teaching project is mostly based on the design of the Windows operating system, so it is only necessary to install the corresponding teaching software on the cloud server/teacher machine.
  • Many cloud terminals/students can enjoy courseware resources at the same time and independently.
  • the structure of the teaching network is clearer and clearer, and the later management and maintenance is simpler and easier.
  • a desktop master ie, a teacher
  • accesses the desktop through the virtual desktop terminal and other desktop users (ie, students) access the virtual desktop to view the virtual desktop master. The operation on the desktop.
  • any changes to the virtual desktop of the desktop master need to be pushed synchronously to each virtual desktop terminal participating in the desktop. Since the same virtual desktop needs to be shared to hundreds of users at the same time, if the current unicast mode is used, multiple users can access the same virtual desktop. Since each recipient needs the same data, if there are N recipients, the server needs to send the data into N recipients, so that when the number of recipients increases, the service The number of packets sent by the terminal also needs to increase. The server is subject to such traffic affirmation There is an extreme value. When the recipient reaches a certain level, it is not just a problem of increased network traffic. The server is only facing downtime. This inevitably puts a lot of bandwidth and performance pressure on the server side of the virtual desktop.
  • Embodiments of the present invention provide a method, an apparatus, and a virtual desktop system for reproducing and pushing a virtual desktop to solve at least the above problems.
  • a virtual desktop replay method including: receiving, by a at least one slave device, virtual desktop information from a master device by using a multicast service; and replaying according to the virtual desktop information
  • the second virtual desktop of the first virtual desktop of the master device is the same.
  • the virtual desktop information includes: change information of the first virtual desktop.
  • the virtual desktop information includes at least one of the following: interface change information of the first virtual desktop, audio change information of the first virtual desktop, or mouse change information of the first virtual desktop.
  • the re-creating the second virtual desktop that is the same as the first virtual desktop comprises: pushing the virtual desktop information to a channel corresponding to the virtual desktop information, where the corresponding channel includes at least the following One of: a display channel corresponding to the interface change information, an audio channel corresponding to the audio change information, or a mouse channel corresponding to the mouse change information; and the corresponding channel is reproduced and the first The second virtual desktop is the same as a virtual desktop.
  • the method further includes: maintaining, by the heartbeat keep-alive procedure, a connection between the at least one slave device and the master device, where the heartbeat keep-alive procedure comprises: the at least one slave device Sending a first heartbeat packet to the master control device, and maintaining the connection according to the first backpack of the first heartbeat packet according to the master control device; and/or the master control device to the at least one
  • the slave device sends a second heartbeat packet, and the connection is maintained according to the second packet of the second heartbeat packet according to the at least one slave device.
  • a virtual desktop pushing method including: the master device pushing virtual desktop information to at least one slave device through a multicast service, where the virtual desktop information is used by the Said at least one slave device reproduces a second virtual desktop that is identical to the first virtual desktop of the master device.
  • the method further includes: acquiring the virtual desktop information, where the virtual desktop information includes at least one of the following: The interface change information of the first virtual desktop, the audio change information of the first virtual desktop, or the mouse change information of the first virtual desktop.
  • a virtual desktop re-distribution apparatus which is located in at least one slave device, and includes: a receiving module, configured to receive virtual desktop information from the master device by using a multicast service; The reproducing module is configured to: reproduce the second virtual desktop that is the same as the first virtual desktop of the master device according to the virtual desktop information.
  • a virtual desktop pushing device is further provided, which is located in a main control device, and includes: a pushing module, configured to push virtual desktop information to at least one slave device through a multicast service, where The virtual desktop information is used by the at least one slave device to reproduce a second virtual desktop that is the same as the first virtual desktop of the master device.
  • a virtual desktop system including a master device and at least one slave device, where the master device includes the virtual desktop pushing device, the at least one slave
  • the control device includes the above-described virtual desktop reproducing device.
  • the at least one slave device receives the virtual desktop information from the master device through the multicast service, and reproduces the second virtual desktop that is the same as the first virtual desktop of the master device according to the virtual desktop information.
  • FIG. 1 is a schematic flowchart of a virtual desktop rendering method according to an embodiment of the present invention
  • FIG. 2 is a schematic flow chart of a virtual desktop pushing method according to an embodiment of the present invention
  • FIG. 4 is a block diagram showing a preferred structure of a virtual desktop pushing device according to an embodiment of the present invention
  • FIG. 5 is a structural block diagram of a virtual desktop system according to an embodiment of the present invention
  • FIG. 6 is a schematic structural diagram of a virtual desktop multicast push system according to a preferred embodiment of the present invention
  • FIG. 7 is a virtual desktop multicast according to a preferred embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of a virtual desktop multicast client according to a preferred embodiment of the present invention
  • FIG. 9 is a schematic diagram showing a flow of establishing a virtual desktop multicast push client and a server according to a preferred embodiment of the present invention
  • 10 is a schematic flowchart of control information of a virtual desktop multicast push system according to a preferred embodiment of the present invention
  • FIG. 11 is a schematic diagram of a heartbeat keep-alive process of a virtual desktop multicast push system according to a preferred embodiment of the present invention.
  • FIG. 1 is a schematic flowchart of a virtual desktop replay method according to an embodiment of the present invention. As shown in FIG.
  • the process includes the following steps: Step S102, at least one slave control
  • the device receives the virtual desktop information from the master device through the multicast service.
  • Step S104 Reproduce the second virtual desktop that is the same as the first virtual desktop of the master device according to the virtual desktop information.
  • the multicast service is used to multicast the virtual desktop information from the master device to the one or more slave devices.
  • the master device directly unicasts the virtual desktop information to each slave device in a unicast manner. The way, the pressure on the server is reduced, and the bandwidth requirement of the virtual desktop system is reduced.
  • the virtual desktop information includes: change information of the first virtual desktop.
  • the size of the virtual desktop information is further reduced by pushing the change information of the first virtual desktop from the master device to the slave device, thereby further saving bandwidth requirements and server pressure.
  • the virtual desktop information includes at least one of the following: interface change information of the first virtual desktop, audio change information of the first virtual desktop, or mouse change information of the first virtual desktop, where the mouse change information includes a change in location of the mouse Information and mouse status change information, for example, the mouse changes from pointer shape to hand shape.
  • the second virtual desktop can be supported to reproduce the display interface, audio signals, and mouse actions on the first virtual desktop.
  • the step S104 may include: pushing the virtual desktop information to the channel corresponding to the virtual desktop information, where the corresponding channel includes at least one of the following: a display channel corresponding to the interface change information, and an audio corresponding to the audio change information. a channel, or a mouse channel corresponding to the mouse change information; reproduces the same second virtual desktop as the first virtual desktop through the corresponding channel.
  • the method further includes: filtering and/or parsing the virtual desktop information, for example, filtering out information to be pushed to different channels from the virtual desktop information, and respectively pushing the information to the corresponding channel for processing; the virtual desktop information is not corresponding
  • filtering and/or parsing the virtual desktop information for example, filtering out information to be pushed to different channels from the virtual desktop information, and respectively pushing the information to the corresponding channel for processing; the virtual desktop information is not corresponding
  • the virtual desktop information pushed to different channels can also be parsed by a parsing device.
  • the virtual desktop re-creation method further includes: maintaining a connection between the at least one slave device and the master device by using a heartbeat keep-alive process, where the heartbeat keep-alive process includes: sending, by the at least one slave device to the master device a first heartbeat packet, and maintaining a connection according to the first back packet of the first heartbeat packet, and/or the master device transmitting the second heartbeat packet to the at least one slave device, and responding according to the at least one slave device
  • the second packet of the second heartbeat packet remains connected.
  • the time interval for sending the heartbeat packet can be set.
  • the embodiment further provides a virtual desktop pushing method, the method includes: Step S204: The master device pushes virtual desktop information to the at least one slave device through the multicast service, where the virtual desktop information is used for the at least one slave control The device reproduces the second virtual desktop that is the same as the first virtual desktop of the master device.
  • 2 is a schematic flowchart of a preferred method for pushing a virtual desktop according to an embodiment of the present invention. As shown in FIG. 2, the virtual desktop pushing method is further performed before the virtual desktop information is pushed to the at least one slave device through the multicast service.
  • Step S202 Obtain virtual desktop information, where the virtual desktop information includes at least one of: interface change information of the first virtual desktop, audio change information of the first virtual desktop, or mouse change information of the first virtual desktop.
  • the embodiment further provides a virtual desktop reproducing device, which is located in at least one slave device.
  • the virtual desktop re-appearing apparatus is used to implement the above-mentioned virtual desktop re-creation method.
  • the specific implementation process of the signaling sending apparatus described in the apparatus embodiment has been described in detail in the method embodiment, and details are not described herein again.
  • 3 is a structural block diagram of a virtual desktop reproducing apparatus according to an embodiment of the present invention. As shown in FIG.
  • the apparatus includes a receiving module 32 and a reproducing module 34, wherein the receiving module 32 is configured to receive from a multicast service.
  • the virtual desktop information of the master device; the recurring module 34 is coupled to the receiving module 32, and configured to reproduce the second virtual desktop that is the same as the first virtual desktop of the master device according to the virtual desktop information.
  • the modules and units involved in the embodiments of the present invention may be implemented by software, or may be implemented by hardware.
  • the described modules and units in this embodiment may also be disposed in a processor. For example, it may be described as follows:
  • a processor includes a receiving module 32 and a reproducing module 34. The names of these modules do not constitute a limitation on the module itself under certain circumstances.
  • the receiving module may also be described as "a module that is set to receive virtual desktop information from the master device through the multicast service.”
  • the virtual desktop information includes: change information of the first virtual desktop, for example: the virtual desktop information includes at least one of: interface change information of the first virtual desktop, audio change information of the first virtual desktop, or the first virtual desktop Mouse change information.
  • the re-creation module 34 is configured to push the virtual desktop information to the channel corresponding to the virtual desktop information, where the corresponding channel includes at least one of the following: a display channel corresponding to the interface change information, and corresponding to the audio change information. An audio channel, or a mouse channel corresponding to the mouse change information; reproduces the same second virtual desktop as the first virtual desktop through the corresponding channel.
  • the device further includes: a keep-alive module configured to maintain a connection between the at least one slave device and the master device through a heartbeat keep-alive process, wherein the heartbeat keep-alive process comprises: at least one slave device to the master The device sends the first heartbeat packet, and keeps the connection according to the first packet of the first heartbeat packet, and/or the master device sends the second heartbeat packet to the at least one slave device, and according to at least one slave The device responds to the second packet of the second heartbeat packet and remains connected.
  • the embodiment also provides a virtual desktop pushing device, which is located in the main control device, and the virtual desktop pushing device is configured to implement the virtual desktop pushing method.
  • the virtual desktop pushing device includes: a pushing module, configured to push virtual desktop information to the at least one slave device through the multicast service, where the virtual desktop information is used by the at least one slave device to reproduce the first virtual with the master device
  • the second virtual desktop with the same desktop may be implemented by software, or may be implemented by hardware.
  • the described modules and units in this embodiment may also be disposed in a processor. For example, it may be described as follows: A processor includes a push module. The name of these modules does not constitute a limitation on the module itself under certain circumstances.
  • FIG. 4 is a block diagram of a preferred structure of a virtual desktop push device according to an embodiment of the present invention.
  • the device further includes: an obtaining module 44 coupled to the push module 42 and configured to obtain virtual desktop information, where The virtual desktop information includes at least one of the following: interface change information of the first virtual desktop, audio change information of the first virtual desktop, or mouse change information of the first virtual desktop.
  • This embodiment also provides a virtual desktop system.
  • FIG. 5 is a structural block diagram of a virtual desktop system according to an embodiment of the present invention. As shown in FIG.
  • the virtual desktop system includes: a master control device 52 and at least one slave device. 54.
  • the master device 52 includes the virtual desktop pushing device described above, and the at least one slave device 54 includes the virtual desktop reproducing device described above. Description and description are made below in conjunction with the preferred embodiments.
  • the preferred embodiment provides a cloud terminal virtual desktop multicast push system and method applied to classroom teaching, and the system and method relate to cloud computing technology.
  • the server end by adopting the multicast technology in the cloud terminal virtual desktop system, the server end (corresponding to the above-mentioned master control device) needs to send a message to a special multicast group. When multiple recipients of the network (equivalent to the above-mentioned slave devices) are interested in this message, they can freely copy this message from this group.
  • a cloud computing-based virtual desktop architecture is added based on a C/S mode-based desktop multicast system. Therefore, a cloud terminal virtual desktop multicast push system and method for classroom teaching is proposed, which combines multimedia teaching equipment, advanced computer-aided teaching equipment and newly emerged cloud computing technology to realize the true meaning of networked teaching. And intelligent management of various teaching equipment can improve the quality and efficiency of teaching.
  • the preferred embodiment provides a cloud terminal virtual desktop multicast push system applied to classroom teaching, including a virtual desktop multicast server (equivalent to the above-mentioned master device) ) and virtual desktop multicast client (equivalent to the above slave device).
  • the system is embedded in a cloud-based virtual desktop system, and a virtual desktop multicast server module and a virtual desktop multicast client module are added to the virtual desktop architecture.
  • the virtual desktop multicast server is embedded in the cloud server of the virtual desktop, and includes a multicast module of the display channel, a multicast module of the audio channel, a multicast module of the mouse channel, and a multicast control channel module.
  • the multicast module of the display channel is set to multicast the current desktop display data of the virtual machine.
  • the multicast module of the above audio channel is set to multicast the current audio data of the virtual machine.
  • the multicast module of the above mouse channel is set to multicast the current mouse data of the virtual machine.
  • the multicast control channel module is configured to implement a control function for the multicast client.
  • the virtual desktop multicast client includes a network data receiving module, a desktop push client protocol processing module, and a desktop push client channel command processing module.
  • the network data receiving module is responsible for receiving all multicast data on the client side with a thread guarded to the multicast socket.
  • the desktop push client protocol processing module is responsible for judging the received multicast data and determining which channel the multicast is for, and dispatching it to the designated channel processing module.
  • the desktop push client channel command processing module is responsible for completing the command data of the display channel, the audio channel and the mouse channel pushed to the client, and reproducing the desktop display of the server through the display and the sound device of the terminal.
  • the preferred embodiment further provides a cloud terminal virtual desktop multicast push method applied to classroom teaching, which includes the following steps: First, create a desktop pool on the server and activate, create a virtual machine for the desktop pool, and set the virtual machine for the virtual machine. The multicast address and port of the video, audio, and mouse, install the operating system of the virtual machine and add storage.
  • FIG. 6 is a schematic structural diagram of a virtual desktop multicast push system according to a preferred embodiment of the present invention.
  • the virtual desktop multicast push system of the preferred embodiment is embedded.
  • the system includes: a virtual desktop multicast server 610 and a virtual desktop multicast client 620.
  • the virtual desktop multicast server 610 is mainly responsible for transmitting multicast data and implementing control on the multicast client.
  • the virtual desktop multicast client 620 is installed on the cloud terminal and is mainly responsible for receiving display data pushed from the multicast virtual desktop and presenting it on the client operating system screen.
  • FIG. 7 is a schematic structural diagram of a virtual desktop multicast server according to a preferred embodiment of the present invention. As shown in FIG. 7, the virtual desktop multicast server 610 is a module embedded in the cloud server, and the virtual desktop multicast server is provided.
  • the modules included in the 610 include a multicast module 611 for displaying channels, a multicast module 612 for audio channels, a multicast module 613 for mouse channels, and a multicast control channel module 614.
  • the multicast module 611 of the display channel is set to multicast the current desktop display data of the virtual machine.
  • the multicast module 712 of the audio channel is arranged to multicast the current audio data of the virtual machine.
  • the multicast channel 613 of the mouse channel is set to multicast the current mouse data of the virtual machine.
  • the multicast control channel module 614 is configured to implement control functions for the virtual desktop multicast client.
  • FIG. 8 is a schematic structural diagram of a virtual desktop multicast client according to a preferred embodiment of the present invention. As shown in FIG.
  • the module owned by the virtual desktop multicast client 620 includes a network data receiving module 621 and a desktop push client protocol processing module 622.
  • the network data receiving module 621 is responsible for receiving all multicast data on the client side with a thread guarded to the multicast socket.
  • the desktop push client protocol processing module 622 is responsible for judging the received multicast data and determining which channel the multicast is for, and dispatching it to the designated channel processing module.
  • the desktop push client channel command processing module 623 includes three small modules, which are a display channel command processing module 6231, a mouse channel command processing module 6232, and an audio channel command processing module 6233, which are responsible for completing the display channel and audio channel pushed to the client.
  • FIG. 9 is a schematic diagram of a process of establishing a link between a virtual desktop multicast push client and a server according to a preferred embodiment of the present invention.
  • the process of establishing a multicast client and a server may include: Step 1: Multicast client The terminal sends a link establishment request to the server. Step 2: The cloud server determines whether the link should be established according to the received request. Step 3: The cloud server allows the link to be established and returns initialization information, including video, mouse, and audio.
  • Step 4 The multicast client initializes the video, the mouse, and the audio channel according to the information returned by the server, and joins the corresponding multicast group to start accepting data and processes the data.
  • Step 5 The cloud server adds the client to the multicast pool.
  • the multicast client establishes a control channel with the cloud server to process information at the same time.
  • 10 is a schematic flowchart of control information of a virtual desktop multicast push system according to a preferred embodiment of the present invention. As shown in FIG. 10, when a cloud server has a message to notify a client, the multicast pool is searched first, and the multicast pool is searched.
  • FIG. 11 is a schematic diagram of a heartbeat keep-alive process of a virtual desktop multicast push system according to a preferred embodiment of the present invention.
  • the heartbeat keep-alive process of the virtual desktop multicast push system includes two parts: a heartbeat protection of the multicast client. Live and cloud server's heartbeat keeps alive. When the multicast client times out, the multicast client sends a heartbeat packet to the cloud server, and the cloud server returns the packet. After receiving the multicast client, the heartbeat failure count is cleared. If not received, the heartbeat failure count is counted.
  • the multicast client voluntarily quits.
  • the cloud server notifies the multicast control module to send a heartbeat packet to all registered multicast clients in the multicast pool.
  • the multicast client returns the packet, and the cloud server receives the corresponding multicast.
  • the heartbeat failure count of the client is cleared. If it is not received, the heartbeat failure count of the multicast client is incremented by one.
  • the multicast client is removed from the multicast pool.
  • a sender simultaneously transmits the same data to multiple recipients, and only needs to copy the same data packet, which improves the data transmission efficiency and reduces the possibility of congestion in the backbone network.
  • the master controller automatically receives the multicast when the master starts multicasting, and implements automatic switching of the multicast client.
  • the multimedia teaching equipment, advanced computer-aided teaching equipment and the newly emerged cloud computing technology are deeply combined to realize the true meaning of networked teaching, and intelligently manage various teaching equipments to improve teaching quality and efficiency.
  • Industrial Applicability According to the embodiment of the present invention, a multicast service is used to multicast virtual desktop information from a master device to one or more slave devices, and the master device is unicast to each slave device in the related art.
  • the way of unicasting virtual desktop information reduces the pressure on the server and reduces the bandwidth requirement of the virtual desktop system.
  • the problem caused by the server pressure caused by the increase of the client when sharing the virtual desktop in the related art is solved.
  • the above modules or steps of the present invention can be implemented by a general-purpose computing device, which can be concentrated on a single computing device or distributed over a network composed of multiple computing devices.
  • they may be implemented by program code executable by the computing device, such that they may be stored in the storage device by the computing device, or they may be separately fabricated into individual integrated circuit modules, or they may be Multiple modules or steps are made into a single integrated circuit module.
  • the invention is not limited to any specific combination of hardware and software.

Abstract

Disclosed are a virtual desktop reproducing and pushing method and device, and a virtual desktop system, the virtual desktop reproducing method comprising: at least one slave control device receives virtual desktop information from a master control device via multicast service; and according to the virtual desktop information, reproducing a second virtual desktop the same as the first virtual desktop of the master control device. The present invention solves problems in related technology caused by the high load on servers resulting from increase in clients sharing virtual desktops, reduces the load on the server and lowers the bandwidth requirement of the virtual desktop system.

Description

虚拟桌面重现、 »it的方法、 装置及虚拟桌面系统  Virtual desktop rendition, »it methods, devices, and virtual desktop systems
技术领域 本发明涉及通信领域, 具体而言, 涉及一种虚拟桌面重现方法、 虚拟桌面推送方 法、 虚拟桌面重现装置、 虚拟桌面推送装置及虚拟桌面系统。 背景技术 近年来, 教育行业信息化发展迅速, 学校信息网络日益完善, 电脑网络教室也逐 渐得到了普及。 但是, 现阶段一些电脑网络教室的建设, 大都采用教师和学生单独享 用各自个人电脑 (Personal Computer, 简称为 PC) 的模式, 而使用 PC模式面临如下 诸多问题: 采购部署成本高、 大量 PC资源闲置浪费、 后期管理维护困难、 噪音辐射 功耗大……如何能够构建一个低成本、 易于管理、 节能省电、 绿色健康的电脑网络教 室, 一直是教育行业信息化建设的焦点。 使用云终端替代传统 PC作为电脑网络教室的学生终端, 在完成教育行业信息化 建设目标的同时, 以更低成本、 更少部署时间轻松地完成系统的接入。 使用云终端模 式部署电脑网络教室, 教师机选用云服务器中的一台虚拟机来充当, 学生机选用云终 端替代传统 PC, 通过云终端上的客户端连接虚拟机的虚拟桌面,无需改变其现有的综 合布线系统及网络结构, 部署成本更加低廉、 实施更加方便快捷。 此外, 云服务器中 的虚拟机使用的是视窗 (Windows ) 操作系统, 电脑网络教室教学项目中的课件也多 是基于 Windows操作系统的设计, 所以仅需在云服务器 /教师机上安装相应的教学软 件,众多的云终端 /学生即可同时并独立地享用课件资源,教学网络结构更加清楚明朗, 后期管理维护也更加简单容易。 在课堂教学的虚拟桌面应用场景中经常需要将一个虚拟桌面共享给多个用户同时 共享使用。 在这种场景下通常有一个桌面的主控人员 (即老师) 通过虚拟桌面终端接 入桌面进行操作, 而其他的桌面用户 (即学生) 则是接入该虚拟桌面中观看虚拟桌面 主控人员在桌面上的操作。 桌面主控人员的虚拟桌面的任何变化都需要同步地推送到 每一个参与桌面的虚拟桌面终端中。 由于同一个虚拟桌面需要同时共享给成百个用户使用, 如果采用目前的单播模式 让多个用户接入同一个虚拟桌面。 由于每个接受者需要的是同样的数据, 如果有 N个 接受者, 那么服务端就需要把这份数据做成 N个报文分别发送给接受者, 这样当接受 者增多的情况下, 服务端发送的报文也同样需要增多。 服务端承受这样的通信量肯定 有一个极值, 当接受者到一定程度的时候, 不单单是网络流量增大的问题了, 服务器 面临的只有宕机了。 这必然对虚拟桌面的服务端造成很大的带宽和性能需求压力。 针对相关技术中共享虚拟桌面时随着客户端的增加导致的服务端压力大所导致的 问题, 目前尚未提出有效的解决方案。 发明内容 本发明实施例提供了一种虚拟桌面重现、 推送的方法、 装置及虚拟桌面系统, 以 至少解决上述问题。 根据本发明实施例的一个方面, 提供了一种虚拟桌面重现方法, 包括: 至少一个 从控设备通过组播服务接收来自主控设备的虚拟桌面信息; 根据所述虚拟桌面信息, 重现与所述主控设备的第一虚拟桌面相同的第二虚拟桌面。 优选地, 所述虚拟桌面信息包括: 所述第一虚拟桌面的变化信息。 优选地, 所述虚拟桌面信息包括以下至少之一: 所述第一虚拟桌面的界面变化信 息、 所述第一虚拟桌面的音频变化信息, 或者所述第一虚拟桌面的鼠标变化信息。 优选地, 重现与所述第一虚拟桌面相同的所述第二虚拟桌面包括: 将所述虚拟桌 面信息推送到与所述虚拟桌面信息对应的通道, 其中, 所述对应的通道包括以下至少 之一: 与所述界面变化信息对应的显示通道、 与所述音频变化信息对应的音频通道, 或者与所述鼠标变化信息对应的鼠标通道; 通过所述对应的通道, 重现与所述第一虚 拟桌面相同的所述第二虚拟桌面。 优选地, 所述方法还包括: 通过心跳保活流程保持所述至少一个从控设备与所述 主控设备之间的连接, 其中, 所述心跳保活流程包括: 所述至少一个从控设备向所述 主控设备发送第一心跳包, 并根据所述主控设备响应所述第一心跳包的第一回包, 保 持所述连接; 和 /或所述主控设备向所述至少一个从控设备发送第二心跳包, 并根据所 述至少一个从控设备响应所述第二心跳包的第二回包, 保持所述连接。 根据本发明实施例的另一个方面, 还提供了一种虚拟桌面推送方法, 包括: 主控 设备通过组播服务向至少一个从控设备推送虚拟桌面信息, 其中, 所述虚拟桌面信息 用于所述至少一个从控设备重现与所述主控设备的第一虚拟桌面相同的第二虚拟桌 面。 优选地, 在通过组播服务向所述至少一个从控设备推送所述虚拟桌面信息之前, 所述方法还包括: 获取所述虚拟桌面信息, 其中, 所述虚拟桌面信息包括以下至少之 一: 所述第一虚拟桌面的界面变化信息、 所述第一虚拟桌面的音频变化信息, 或者所 述第一虚拟桌面的鼠标变化信息。 根据本发明实施例的另一个方面, 还提供了一种虚拟桌面重现装置, 位于至少一 个从控设备中, 包括: 接收模块, 设置为通过组播服务接收来自主控设备的虚拟桌面 信息; 重现模块, 设置为根据所述虚拟桌面信息, 重现与所述主控设备的第一虚拟桌 面相同的第二虚拟桌面。 根据本发明实施例的另一个方面, 还提供了一种虚拟桌面推送装置, 位于主控设 备中, 包括: 推送模块, 设置为通过组播服务向至少一个从控设备推送虚拟桌面信息, 其中, 所述虚拟桌面信息用于所述至少一个从控设备重现与所述主控设备的第一虚拟 桌面相同的第二虚拟桌面。 根据本发明实施例的另一个方面, 还提供了一种虚拟桌面系统, 包括主控设备和 至少一个从控设备, 其中, 所述主控设备包括上述的虚拟桌面推送装置, 所述至少一 个从控设备包括上述的虚拟桌面重现装置。 通过本发明实施例, 采用至少一个从控设备通过组播服务接收来自主控设备的虚 拟桌面信息; 根据该虚拟桌面信息, 重现与该主控设备的第一虚拟桌面相同的第二虚 拟桌面的方式, 解决了相关技术中共享虚拟桌面时随着客户端的增加导致的服务端压 力大所导致的问题, 降低了服务端的压力, 减少了虚拟桌面系统对带宽的需求。 附图说明 此处所说明的附图用来提供对本发明的进一步理解, 构成本申请的一部分, 本发 明的示意性实施例及其说明用于解释本发明, 并不构成对本发明的不当限定。 在附图 中- 图 1是根据本发明实施例的虚拟桌面重现方法的流程示意图; 图 2是根据本发明实施例的虚拟桌面推送方法的优选流程示意图; 图 3是根据本发明实施例的虚拟桌面重现装置的结构框图; 图 4是根据本发明实施例的虚拟桌面推送装置的优选结构框图; 图 5是根据本发明实施例的虚拟桌面系统的结构框图; 图 6是根据本发明优选实施例的虚拟桌面组播推送系统的结构示意图; 图 7是根据本发明优选实施例的虚拟桌面组播服务端的结构示意图; 图 8是根据本发明优选实施例的虚拟桌面组播客户端的结构示意图; 图 9是根据本发明优选实施例的虚拟桌面组播推送客户端与服务端的建链流程示 意图; 图 10是根据本发明优选实施例的虚拟桌面组播推送系统的控制信息流程示意图; 图 11是根据本发明优选实施例的虚拟桌面组播推送系统的心跳保活流程示意图。 具体实施方式 需要说明的是, 在不冲突的情况下, 本申请中的实施例及实施例中的特征可以相 互组合。 下面将参考附图并结合实施例来详细说明本发明。 在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执 行, 并且, 虽然在流程图中示出了逻辑顺序, 但是在某些情况下, 可以以不同于此处 的顺序执行所示出或描述的步骤。 本实施例提供了一种虚拟桌面重现方法, 图 1是根据本发明实施例的虚拟桌面重 现方法的流程示意图, 如图 1所示, 该流程包括如下步骤: 步骤 S102, 至少一个从控设备通过组播服务接收来自主控设备的虚拟桌面信息; 步骤 S104, 根据该虚拟桌面信息, 重现与主控设备的第一虚拟桌面相同的第二虚 拟桌面。 通过上述步骤, 采用组播服务从主控设备向一个或多个从控设备组播虚拟桌面信 息, 相对于相关技术中主控设备采用单播方式分别向每一个从控设备单播虚拟桌面信 息的方式, 降低了服务端的压力, 减少了虚拟桌面系统对带宽的需求。 通过上述步骤 解决了相关技术中共享虚拟桌面时随着客户端的增加导致的服务端压力大所导致的问 题。 优选地, 虚拟桌面信息包括: 第一虚拟桌面的变化信息。 通过从主控设备向从控 设备推送第一虚拟桌面的变化信息的方式, 进一步减小了虚拟桌面信息的大小, 从而 进一步节约了带宽需求和服务端的压力。 优选地, 虚拟桌面信息包括以下至少之一: 第一虚拟桌面的界面变化信息、 第一 虚拟桌面的音频变化信息, 或者第一虚拟桌面的鼠标变化信息, 其中, 鼠标变化信息 包括鼠标的位置变化信息和鼠标状态变化信息,例如, 鼠标从指针形状变化为手型等。 通过该方式, 从而可以支持第二虚拟桌面重现第一虚拟桌面上的显示界面、 音频信号 和鼠标动作。 优选地,上述步骤 S104可以包括:将虚拟桌面信息推送到与虚拟桌面信息对应的 通道, 其中, 对应的通道包括以下至少之一: 与界面变化信息对应的显示通道、 与音 频变化信息对应的音频通道, 或者与鼠标变化信息对应的鼠标通道;通过对应的通道, 重现与第一虚拟桌面相同的第二虚拟桌面。 其中, 还可以包括对虚拟桌面信息的筛选 和 /或解析, 例如, 从虚拟桌面信息中筛选出将要推送到不同通道的信息, 并分别推送 到对应的通道中进行处理; 在虚拟桌面信息不是对应的通道可以直接处理的命令格式 的情况下, 还可以通过一个解析装置分别对推送到不同通道中的虚拟桌面信息进行解 析。 优选地, 上述虚拟桌面重现方法还包括: 通过心跳保活流程保持至少一个从控设 备与主控设备之间的连接, 其中, 心跳保活流程包括: 至少一个从控设备向主控设备 发送第一心跳包, 并根据主控设备响应第一心跳包的第一回包, 保持连接; 和 /或主控 设备向至少一个从控设备发送第二心跳包, 并根据至少一个从控设备响应第二心跳包 的第二回包, 保持连接。 其中, 发送心跳包的时间间隔可以进行设置。 通过上述方式, 能够将长期不活动的从控设备移除出组播服务的组播池中, 从而避免了失活的从控设 备造成的资源浪费和不必要的功率消耗。 本实施例还提供了一种虚拟桌面推送方法, 该方法包括: 步骤 S204,主控设备通过组播服务向至少一个从控设备推送虚拟桌面信息,其中, 虚拟桌面信息用于该至少一个从控设备重现与主控设备的第一虚拟桌面相同的第二虚 拟桌面。 图 2是根据本发明实施例的虚拟桌面推送方法的优选流程示意图, 如图 2所示, 优选地, 在通过组播服务向至少一个从控设备推送虚拟桌面信息之前, 该虚拟桌面推 送方法还包括: 步骤 S202, 获取虚拟桌面信息, 其中, 虚拟桌面信息包括以下至少之一: 第一虚 拟桌面的界面变化信息、 第一虚拟桌面的音频变化信息, 或者第一虚拟桌面的鼠标变 化信息。 本实施例还提供了一种虚拟桌面重现装置, 位于至少一个从控设备中。 该虚拟桌 面重现装置用于实现上述虚拟桌面重现方法, 装置实施例中描述的信令发送装置具体 的实现过程在方法实施例中已经进行过详细说明, 在此不再赘述。 图 3是根据本发明实施例的虚拟桌面重现装置的结构框图, 如图 3所示, 该装置 包括接收模块 32和重现模块 34, 其中, 接收模块 32, 设置为通过组播服务接收来自 主控设备的虚拟桌面信息; 重现模块 34耦合至接收模块 32, 设置为根据该虚拟桌面 信息, 重现与主控设备的第一虚拟桌面相同的第二虚拟桌面。 本发明的实施例中所涉及到的模块、 单元可以通过软件的方式实现, 也可以通过 硬件的方式来实现。 本实施例中的所描述的模块、单元也可以设置在处理器中, 例如, 可以描述为: 一种处理器包括接收模块 32和重现模块 34。 其中, 这些模块的名称在 某种情况下并不构成对该模块本身的限定, 例如, 接收模块还可以被描述为 "设置为 通过组播服务接收来自主控设备的虚拟桌面信息的模块"。 优选地, 虚拟桌面信息包括: 第一虚拟桌面的变化信息, 例如: 虚拟桌面信息包 括以下至少之一: 第一虚拟桌面的界面变化信息、 第一虚拟桌面的音频变化信息, 或 者第一虚拟桌面的鼠标变化信息。 优选地,重现模块 34,设置为将虚拟桌面信息推送到与虚拟桌面信息对应的通道, 其中, 对应的通道包括以下至少之一: 与界面变化信息对应的显示通道、 与音频变化 信息对应的音频通道, 或者与鼠标变化信息对应的鼠标通道; 通过对应的通道, 重现 与第一虚拟桌面相同的第二虚拟桌面。 优选地, 该装置还包括: 保活模块, 设置为通过心跳保活流程保持至少一个从控 设备与主控设备之间的连接, 其中, 心跳保活流程包括: 至少一个从控设备向主控设 备发送第一心跳包, 并根据主控设备响应第一心跳包的第一回包, 保持连接; 和 /或主 控设备向至少一个从控设备发送第二心跳包, 并根据至少一个从控设备响应第二心跳 包的第二回包, 保持连接。 本实施例还提供了一种虚拟桌面推送装置, 位于主控设备中, 该虚拟桌面推送装 置设置为实现上述虚拟桌面推送方法, 装置实施例中描述的信令发送装置具体的实现 过程在方法实施例中已经进行过详细说明, 在此不再赘述。 该虚拟桌面推送装置包括: 推送模块, 设置为通过组播服务向至少一个从控设备 推送虚拟桌面信息, 其中, 虚拟桌面信息用于该至少一个从控设备重现与主控设备的 第一虚拟桌面相同的第二虚拟桌面。 本发明的实施例中所涉及到的模块、 单元可以通过软件的方式实现, 也可以通过 硬件的方式来实现。 本实施例中的所描述的模块、单元也可以设置在处理器中, 例如, 可以描述为: 一种处理器包括推送模块。 其中, 这些模块的名称在某种情况下并不构 成对该模块本身的限定, 例如, 推送模块还可以被描述为 "设置为通过组播服务向至 少一个从控设备推送虚拟桌面信息的模块"。 图 4是根据本发明实施例的虚拟桌面推送装置的优选结构框图, 如图 4所示, 优 选地, 该装置还包括: 获取模块 44耦合至推送模块 42, 设置为获取虚拟桌面信息, 其中, 虚拟桌面信息包括以下至少之一: 第一虚拟桌面的界面变化信息、 第一虚拟桌 面的音频变化信息, 或者第一虚拟桌面的鼠标变化信息。 本实施例还提供了一种虚拟桌面系统, 图 5是根据本发明实施例的虚拟桌面系统 的结构框图, 如图 5所示, 该虚拟桌面系统包括: 主控设备 52和至少一个从控设备 54, 其中, 主控设备 52包括上述的虚拟桌面推送装置, 至少一个从控设备 54包括上 述的虚拟桌面重现装置。 下面结合优选实施例进行描述和说明。 本优选实施例提供了一种应用于课堂教学的云终端虚拟桌面组播推送系统及方 法, 该系统和方法涉及云计算技术。 在本优选实施例中, 通过在云终端虚拟桌面系统中采用组播技术, 服务器端 (相 当于上述的主控设备) 需要做的就是向特殊的组播组 (group) 发送一个报文, 当网络 的多个接受者 (相当于上述的从控设备) 对这个报文感兴趣的时候, 他们可以从这个 group自由复制得到这个报文。这样的情况下, 无论接受者增加多少人,服务器需要做 的只是发送一个报文, 而网络上传送的也只是一份报文, 从而可以降低对网络带宽的 需求, 并且减少服务器端的压力。 在本优选实施例中, 基于云计算的虚拟桌面架构的基础上增加一套基于 C/S模式 的桌面组播系统。 从而提出一种应用于课堂教学的云终端虚拟桌面组播推送系统和方 法, 将多媒体教学设备、 先进的计算机辅助教学设备和新近出现的云计算技术进行深 度结合, 实现真正意义的网络化教学, 并智能化管理各种教学设备, 可以提高教学质 量和效率。 为了达到上述目的, 本优选实施例采用以下技术方案: 本优选实施例提供了一种应用于课堂教学的云终端虚拟桌面组播推送系统, 包括 虚拟桌面组播服务端 (相当于上述主控设备) 和虚拟桌面组播客户端 (相当于上述从 控设备)。该系统内嵌于基于云计算的虚拟桌面系统中,在虚拟桌面架构的基础上增加 了虚拟桌面组播服务端模块和虚拟桌面组播客户端模块。 上述虚拟桌面组播服务端内嵌于虚拟桌面的云服务端中, 包括显示通道的组播模 块、 音频通道的组播模块、 鼠标通道的组播模块和组播控制通道模块。 上述显示通道 的组播模块设置为将虚拟机当前的桌面显示数据组播出去。 上述音频通道的组播模块 设置为将虚拟机当前的音频数据组播出去。 上述鼠标通道的组播模块设置为将虚拟机 当前的鼠标数据组播出去。 上述组播控制通道模块设置为实现对组播客户端的控制功 會^ 上述虚拟桌面组播客户端, 包括网络数据接收模块、 桌面推送客户端协议处理模 块、 桌面推送客户端通道命令处理模块。 上述网络数据接收模块负责在客户端用一个 线程守护到组播套接口上接收所有的组播数据。 上述桌面推送客户端协议处理模块负 责对接收到的组播数据进行后判断组播是针对哪一个通道的, 并将其派发给指定的通 道处理模块。 上述桌面推送客户端通道命令处理模块负责完成推送到客户端的显示通 道、 音频通道和鼠标通道的命令数据, 并通过终端的显示器和声音设备重现服务端的 桌面显示。 本优选实施例还提供了一种应用于课堂教学的云终端虚拟桌面组播推送方法, 包 括以下步骤: 首先在服务端创建桌面池并激活, 为桌面池创建虚拟机, 并为虚拟机设 置好视频、 音频及鼠标的组播地址和端口, 安装好虚拟机的操作系统并添加存储。 接 下来创建用户组并根据需要配置用户组属于某个桌面池, 并根据用户需要设定用户组 的策略; 为用户组新增用户并激活, 在增加用户之前, 一定要在对应的 AD ( Active Directory, 作为域管理是 Windows的组件, 安装在服务器端) 中增加用户的信息。 在 我们的组播应用场景下, 我们创建一个组播组, 并通过服务端的用户管理将用户添加 到该组播组中; 设置好用户的配置信息, 将用户 A (即老师) 设置为虚拟桌面的主控 人员 (对应于主控设备), 其余用户 (即学生)设置为虚拟桌面的从控人员 (对应于从 控设备)。虚拟桌面主控人员利用安装在云终端上的虚拟桌面客户端与虚拟桌面服务端 连接, 由该终端与组播的虚拟桌面进行交互完成对于桌面组播的操作控制。 虚拟桌面 从控人员再通过云终端上虚拟桌面组播客户端连接虚拟机。 此时可在从控人员的组播 桌面客户端上看到虚拟机中的图像及鼠标变化, 并可收听音频。 桌面主控人员的虚拟 桌面的任何变化都会同步地推送到每一个参与桌面的从控人员的虚拟桌面终端中。 下面结合附图对上述技术方案的实施作进一步的详细描述: 图 6是根据本发明优选实施例的虚拟桌面组播推送系统的结构示意图, 本优选实 施例的虚拟桌面组播推送系统是内嵌于虚拟桌面整套架构之中的, 如图 6所示, 该系 统包括: 虚拟桌面组播服务端 610、 虚拟桌面组播客户端 620。 虚拟桌面组播服务端 610 主要负责组播数据的发送并实现对组播客户端的控制。 虚拟桌面组播客户端 620 安装在云终端上, 主要负责接收从组播的虚拟桌面推送过来的显示数据并在客户端操 作系统屏幕上进行呈现。 图 7是根据本发明优选实施例的虚拟桌面组播服务端的结构示意图,如图 7所示, 虚拟桌面组播服务端 610是内嵌于云服务端里的一个模块, 虚拟桌面组播服务端 610 包括的模块有显示通道的组播模块 611、音频通道的组播模块 612、 鼠标通道的组播模 块 613和组播控制通道模块 614。 显示通道的组播模块 611设置为将虚拟机当前的桌 面显示数据组播出去。 音频通道的组播模块 712设置为将虚拟机当前的音频数据组播 出去。 鼠标通道的组播模块 613设置为将虚拟机当前的鼠标数据组播出去。 组播控制 通道模块 614设置为实现对虚拟桌面组播客户端的控制功能。 图 8是根据本发明优选实施例的虚拟桌面组播客户端的结构示意图,如图 8所示, 虚拟桌面组播客户端 620拥有的模块包括网络数据接收模块 621、 桌面推送客户端协 议处理模块 622、桌面推送客户端通道命令处理模块 623。 网络数据接收模块 621负责 在客户端用一个线程守护到组播套接口上接收所有的组播数据。 桌面推送客户端协议 处理模块 622负责对接收到的组播数据进行后判断组播是针对哪一个通道的, 并将其 派发给指定的通道处理模块。 桌面推送客户端通道命令处理模块 623包括三个小的模 块, 分别是显示通道命令处理模块 6231、 鼠标通道命令处理模块 6232、音频通道命令 处理模块 6233,负责完成推送到客户端的显示通道、音频通道和鼠标通道的命令数据, 并通过终端的显示器和声音设备重现服务端的桌面显示。 图 9是根据本发明优选实施例的虚拟桌面组播推送客户端与服务端的建链流程示 意图, 如图 9所示, 组播客户端与服务端的建链流程可以包括: 步骤 1, 组播客户端向服务端发送建链请求; 步骤 2, 云服务端根据收到的请求, 判断是否应该建链; 步骤 3, 云服务端允许建链, 返回初始化信息, 信息中包括视频、 鼠标、 音频的 初始化信息及组播客户端需要加入的组播组地址; 步骤 4, 组播客户端根据服务端返回的信息, 初始化视频、 鼠标及音频通道, 同 时加入对应的组播组开始接受数据并处理; 步骤 5, 云服务端将该客户端加入组播池中; 组播客户端与云服务端建立控制通 道, 定时保活同时处理信息。 图 10是根据本发明优选实施例的虚拟桌面组播推送系统的控制信息流程示意图, 如图 10所示, 当云服务端有消息需要通知客户端的时候, 先搜索组播池, 从组播池中 找出对应的客户端; 云服务端将控制消息发送给对应的组播客户端, 组播客户端根据 收到的控制消息进行处理并响应。 图 11是根据本发明优选实施例的虚拟桌面组播推送系统的心跳保活流程示意图, 如图 11所示, 虚拟桌面组播推送系统的心跳保活流程包括两部分: 组播客户端的心跳 保活和云服务端的心跳保活。 组播客户端定时时间到, 组播客户端向云服务端发送心 跳包, 云服务端回包, 组播客户端收到后, 将心跳失败计数清零, 如果未收到, 将心 跳失败计数加一, 当失败计数超出设定值后, 组播客户端主动退出。 云服务端定时时 间到, 云服务端通知组播控制模块, 向组播池中所有注册的组播客户端发送心跳包, 组播客户端回包, 云服务端收到后, 将对应组播客户端的心跳失败计数清零, 如果未 收到, 将对于组播客户端的心跳失败计数加一, 当失败计数超出设定值后, 将组播客 户端从组播池中移出。 与现有技术相比, 本优选实施例的优点在于: 提供基于云终端的虚拟桌面组播推 送系统和方法, 在发送者和每一接收者之间实现点对多点网络连接。 一台发送者同时 给多个的接收者传输相同的数据,只需复制一份的相同数据包, 提高了数据传送效率, 减少了骨干网络出现拥塞的可能性。同时主控人员开始组播时从控人员自动接收组播, 实现组播客户端的自动切换。 从而将多媒体教学设备、 先进的计算机辅助教学设备和 新近出现的云计算技术进行深度结合, 实现了真正意义的网络化教学, 并智能化管理 各种教学设备, 提高教学质量和效率。 工业实用性 通过本发明实施例, 采用组播服务从主控设备向一个或多个从控设备组播虚拟桌 面信息, 相对于相关技术中主控设备采用单播方式分别向每一个从控设备单播虚拟桌 面信息的方式, 降低了服务端的压力, 减少了虚拟桌面系统对带宽的需求。 通过上述 步骤解决了相关技术中共享虚拟桌面时随着客户端的增加导致的服务端压力大所导致 的问题。 显然, 本领域的技术人员应该明白, 上述的本发明的各模块或各步骤可以用通用 的计算装置来实现, 它们可以集中在单个的计算装置上, 或者分布在多个计算装置所 组成的网络上, 可选地, 它们可以用计算装置可执行的程序代码来实现, 从而, 可以 将它们存储在存储装置中由计算装置来执行, 或者将它们分别制作成各个集成电路模 块, 或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。 这样, 本发明 不限制于任何特定的硬件和软件结合。 以上上述仅为本发明的优选实施例而已, 并不用于限制本发明, 对于本领域的技 术人员来说, 本发明可以有各种更改和变化。 凡在本发明的精神和原则之内, 所作的 任何修改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。 The present invention relates to the field of communications, and in particular, to a virtual desktop rendering method, a virtual desktop pushing method, a virtual desktop reproducing device, a virtual desktop pushing device, and a virtual desktop system. BACKGROUND OF THE INVENTION In recent years, information technology in the education industry has developed rapidly, school information networks have become increasingly sophisticated, and computer network classrooms have gradually gained popularity. However, at present, the construction of some computer network classrooms mostly adopts the mode of teachers and students to enjoy their own personal computers (PCs). The use of PC mode faces the following problems: high procurement and deployment costs, and a large amount of PC resources are idle. Waste, late management and maintenance difficulties, noise radiation power consumption... How to build a low-cost, easy-to-manage, energy-saving, green and healthy computer network classroom has always been the focus of information technology construction in the education industry. The use of cloud terminals to replace traditional PCs as student terminals in computer network classrooms, while completing the educational industry information construction goals, it is easy to complete system access with lower cost and less deployment time. The cloud terminal mode is used to deploy the computer network classroom. The teacher machine selects a virtual machine in the cloud server to serve as the virtual machine. The student machine selects the cloud terminal to replace the traditional PC, and connects the virtual desktop of the virtual machine through the client on the cloud terminal without changing its current state. Some integrated wiring systems and network structures are more cost-effective to deploy and more convenient and faster to implement. In addition, the virtual machine in the cloud server uses the Windows (Windows) operating system, and the courseware in the computer network classroom teaching project is mostly based on the design of the Windows operating system, so it is only necessary to install the corresponding teaching software on the cloud server/teacher machine. Many cloud terminals/students can enjoy courseware resources at the same time and independently. The structure of the teaching network is clearer and clearer, and the later management and maintenance is simpler and easier. In the virtual desktop application scenario of classroom teaching, it is often necessary to share a virtual desktop to multiple users while sharing. In this scenario, a desktop master (ie, a teacher) accesses the desktop through the virtual desktop terminal, and other desktop users (ie, students) access the virtual desktop to view the virtual desktop master. The operation on the desktop. Any changes to the virtual desktop of the desktop master need to be pushed synchronously to each virtual desktop terminal participating in the desktop. Since the same virtual desktop needs to be shared to hundreds of users at the same time, if the current unicast mode is used, multiple users can access the same virtual desktop. Since each recipient needs the same data, if there are N recipients, the server needs to send the data into N recipients, so that when the number of recipients increases, the service The number of packets sent by the terminal also needs to increase. The server is subject to such traffic affirmation There is an extreme value. When the recipient reaches a certain level, it is not just a problem of increased network traffic. The server is only facing downtime. This inevitably puts a lot of bandwidth and performance pressure on the server side of the virtual desktop. In view of the problems caused by the pressure of the server caused by the increase of the client when sharing the virtual desktop in the related art, an effective solution has not been proposed yet. SUMMARY OF THE INVENTION Embodiments of the present invention provide a method, an apparatus, and a virtual desktop system for reproducing and pushing a virtual desktop to solve at least the above problems. According to an aspect of the embodiments of the present invention, a virtual desktop replay method is provided, including: receiving, by a at least one slave device, virtual desktop information from a master device by using a multicast service; and replaying according to the virtual desktop information The second virtual desktop of the first virtual desktop of the master device is the same. Preferably, the virtual desktop information includes: change information of the first virtual desktop. Preferably, the virtual desktop information includes at least one of the following: interface change information of the first virtual desktop, audio change information of the first virtual desktop, or mouse change information of the first virtual desktop. Preferably, the re-creating the second virtual desktop that is the same as the first virtual desktop comprises: pushing the virtual desktop information to a channel corresponding to the virtual desktop information, where the corresponding channel includes at least the following One of: a display channel corresponding to the interface change information, an audio channel corresponding to the audio change information, or a mouse channel corresponding to the mouse change information; and the corresponding channel is reproduced and the first The second virtual desktop is the same as a virtual desktop. Preferably, the method further includes: maintaining, by the heartbeat keep-alive procedure, a connection between the at least one slave device and the master device, where the heartbeat keep-alive procedure comprises: the at least one slave device Sending a first heartbeat packet to the master control device, and maintaining the connection according to the first backpack of the first heartbeat packet according to the master control device; and/or the master control device to the at least one The slave device sends a second heartbeat packet, and the connection is maintained according to the second packet of the second heartbeat packet according to the at least one slave device. According to another aspect of the present invention, a virtual desktop pushing method is further provided, including: the master device pushing virtual desktop information to at least one slave device through a multicast service, where the virtual desktop information is used by the Said at least one slave device reproduces a second virtual desktop that is identical to the first virtual desktop of the master device. Preferably, before the virtual desktop information is pushed to the at least one slave device by the multicast service, the method further includes: acquiring the virtual desktop information, where the virtual desktop information includes at least one of the following: The interface change information of the first virtual desktop, the audio change information of the first virtual desktop, or the mouse change information of the first virtual desktop. According to another aspect of the present invention, a virtual desktop re-distribution apparatus is provided, which is located in at least one slave device, and includes: a receiving module, configured to receive virtual desktop information from the master device by using a multicast service; The reproducing module is configured to: reproduce the second virtual desktop that is the same as the first virtual desktop of the master device according to the virtual desktop information. According to another aspect of the present invention, a virtual desktop pushing device is further provided, which is located in a main control device, and includes: a pushing module, configured to push virtual desktop information to at least one slave device through a multicast service, where The virtual desktop information is used by the at least one slave device to reproduce a second virtual desktop that is the same as the first virtual desktop of the master device. According to another aspect of the present invention, a virtual desktop system is provided, including a master device and at least one slave device, where the master device includes the virtual desktop pushing device, the at least one slave The control device includes the above-described virtual desktop reproducing device. According to the embodiment of the present invention, the at least one slave device receives the virtual desktop information from the master device through the multicast service, and reproduces the second virtual desktop that is the same as the first virtual desktop of the master device according to the virtual desktop information. The solution solves the problem caused by the server pressure caused by the increase of the client when sharing the virtual desktop in the related technology, reduces the pressure on the server, and reduces the bandwidth requirement of the virtual desktop system. BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are set to illustrate,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 1 is a schematic flowchart of a virtual desktop rendering method according to an embodiment of the present invention; FIG. 2 is a schematic flow chart of a virtual desktop pushing method according to an embodiment of the present invention; FIG. 4 is a block diagram showing a preferred structure of a virtual desktop pushing device according to an embodiment of the present invention; FIG. 5 is a structural block diagram of a virtual desktop system according to an embodiment of the present invention; FIG. 6 is a schematic structural diagram of a virtual desktop multicast push system according to a preferred embodiment of the present invention; FIG. 7 is a virtual desktop multicast according to a preferred embodiment of the present invention. FIG. 8 is a schematic structural diagram of a virtual desktop multicast client according to a preferred embodiment of the present invention; FIG. 9 is a schematic diagram showing a flow of establishing a virtual desktop multicast push client and a server according to a preferred embodiment of the present invention; 10 is a schematic flowchart of control information of a virtual desktop multicast push system according to a preferred embodiment of the present invention; FIG. 11 is a schematic diagram of a heartbeat keep-alive process of a virtual desktop multicast push system according to a preferred embodiment of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS It should be noted that the embodiments in the present application and the features in the embodiments may be combined with each other without conflict. The invention will be described in detail below with reference to the drawings in conjunction with the embodiments. The steps illustrated in the flowchart of the figures may be executed in a computer system such as a set of computer executable instructions, and although the logical order is shown in the flowchart, in some cases, may differ from this The steps shown are performed in the order shown or described. This embodiment provides a virtual desktop replay method. FIG. 1 is a schematic flowchart of a virtual desktop replay method according to an embodiment of the present invention. As shown in FIG. 1, the process includes the following steps: Step S102, at least one slave control The device receives the virtual desktop information from the master device through the multicast service. Step S104: Reproduce the second virtual desktop that is the same as the first virtual desktop of the master device according to the virtual desktop information. Through the above steps, the multicast service is used to multicast the virtual desktop information from the master device to the one or more slave devices. The master device directly unicasts the virtual desktop information to each slave device in a unicast manner. The way, the pressure on the server is reduced, and the bandwidth requirement of the virtual desktop system is reduced. Through the above steps, the problem caused by the server pressure caused by the increase of the client when sharing the virtual desktop in the related art is solved. Preferably, the virtual desktop information includes: change information of the first virtual desktop. The size of the virtual desktop information is further reduced by pushing the change information of the first virtual desktop from the master device to the slave device, thereby further saving bandwidth requirements and server pressure. Preferably, the virtual desktop information includes at least one of the following: interface change information of the first virtual desktop, audio change information of the first virtual desktop, or mouse change information of the first virtual desktop, where the mouse change information includes a change in location of the mouse Information and mouse status change information, for example, the mouse changes from pointer shape to hand shape. In this way, the second virtual desktop can be supported to reproduce the display interface, audio signals, and mouse actions on the first virtual desktop. Preferably, the step S104 may include: pushing the virtual desktop information to the channel corresponding to the virtual desktop information, where the corresponding channel includes at least one of the following: a display channel corresponding to the interface change information, and an audio corresponding to the audio change information. a channel, or a mouse channel corresponding to the mouse change information; reproduces the same second virtual desktop as the first virtual desktop through the corresponding channel. The method further includes: filtering and/or parsing the virtual desktop information, for example, filtering out information to be pushed to different channels from the virtual desktop information, and respectively pushing the information to the corresponding channel for processing; the virtual desktop information is not corresponding In the case of a command format that can be directly processed by the channel, the virtual desktop information pushed to different channels can also be parsed by a parsing device. Preferably, the virtual desktop re-creation method further includes: maintaining a connection between the at least one slave device and the master device by using a heartbeat keep-alive process, where the heartbeat keep-alive process includes: sending, by the at least one slave device to the master device a first heartbeat packet, and maintaining a connection according to the first back packet of the first heartbeat packet, and/or the master device transmitting the second heartbeat packet to the at least one slave device, and responding according to the at least one slave device The second packet of the second heartbeat packet remains connected. The time interval for sending the heartbeat packet can be set. In the above manner, the long-term inactive slave device can be removed from the multicast pool of the multicast service, thereby avoiding resource waste and unnecessary power consumption caused by the deactivated slave device. The embodiment further provides a virtual desktop pushing method, the method includes: Step S204: The master device pushes virtual desktop information to the at least one slave device through the multicast service, where the virtual desktop information is used for the at least one slave control The device reproduces the second virtual desktop that is the same as the first virtual desktop of the master device. 2 is a schematic flowchart of a preferred method for pushing a virtual desktop according to an embodiment of the present invention. As shown in FIG. 2, the virtual desktop pushing method is further performed before the virtual desktop information is pushed to the at least one slave device through the multicast service. include: Step S202: Obtain virtual desktop information, where the virtual desktop information includes at least one of: interface change information of the first virtual desktop, audio change information of the first virtual desktop, or mouse change information of the first virtual desktop. The embodiment further provides a virtual desktop reproducing device, which is located in at least one slave device. The virtual desktop re-appearing apparatus is used to implement the above-mentioned virtual desktop re-creation method. The specific implementation process of the signaling sending apparatus described in the apparatus embodiment has been described in detail in the method embodiment, and details are not described herein again. 3 is a structural block diagram of a virtual desktop reproducing apparatus according to an embodiment of the present invention. As shown in FIG. 3, the apparatus includes a receiving module 32 and a reproducing module 34, wherein the receiving module 32 is configured to receive from a multicast service. The virtual desktop information of the master device; the recurring module 34 is coupled to the receiving module 32, and configured to reproduce the second virtual desktop that is the same as the first virtual desktop of the master device according to the virtual desktop information. The modules and units involved in the embodiments of the present invention may be implemented by software, or may be implemented by hardware. The described modules and units in this embodiment may also be disposed in a processor. For example, it may be described as follows: A processor includes a receiving module 32 and a reproducing module 34. The names of these modules do not constitute a limitation on the module itself under certain circumstances. For example, the receiving module may also be described as "a module that is set to receive virtual desktop information from the master device through the multicast service." Preferably, the virtual desktop information includes: change information of the first virtual desktop, for example: the virtual desktop information includes at least one of: interface change information of the first virtual desktop, audio change information of the first virtual desktop, or the first virtual desktop Mouse change information. Preferably, the re-creation module 34 is configured to push the virtual desktop information to the channel corresponding to the virtual desktop information, where the corresponding channel includes at least one of the following: a display channel corresponding to the interface change information, and corresponding to the audio change information. An audio channel, or a mouse channel corresponding to the mouse change information; reproduces the same second virtual desktop as the first virtual desktop through the corresponding channel. Preferably, the device further includes: a keep-alive module configured to maintain a connection between the at least one slave device and the master device through a heartbeat keep-alive process, wherein the heartbeat keep-alive process comprises: at least one slave device to the master The device sends the first heartbeat packet, and keeps the connection according to the first packet of the first heartbeat packet, and/or the master device sends the second heartbeat packet to the at least one slave device, and according to at least one slave The device responds to the second packet of the second heartbeat packet and remains connected. The embodiment also provides a virtual desktop pushing device, which is located in the main control device, and the virtual desktop pushing device is configured to implement the virtual desktop pushing method. The specific implementation process of the signaling sending device described in the device embodiment is implemented in the method. It has been described in detail in the example and will not be described here. The virtual desktop pushing device includes: a pushing module, configured to push virtual desktop information to the at least one slave device through the multicast service, where the virtual desktop information is used by the at least one slave device to reproduce the first virtual with the master device The second virtual desktop with the same desktop. The modules and units involved in the embodiments of the present invention may be implemented by software, or may be implemented by hardware. The described modules and units in this embodiment may also be disposed in a processor. For example, it may be described as follows: A processor includes a push module. The name of these modules does not constitute a limitation on the module itself under certain circumstances. For example, the push module may also be described as "a module that is set to push virtual desktop information to at least one slave device through a multicast service". . FIG. 4 is a block diagram of a preferred structure of a virtual desktop push device according to an embodiment of the present invention. As shown in FIG. 4, the device further includes: an obtaining module 44 coupled to the push module 42 and configured to obtain virtual desktop information, where The virtual desktop information includes at least one of the following: interface change information of the first virtual desktop, audio change information of the first virtual desktop, or mouse change information of the first virtual desktop. This embodiment also provides a virtual desktop system. FIG. 5 is a structural block diagram of a virtual desktop system according to an embodiment of the present invention. As shown in FIG. 5, the virtual desktop system includes: a master control device 52 and at least one slave device. 54. The master device 52 includes the virtual desktop pushing device described above, and the at least one slave device 54 includes the virtual desktop reproducing device described above. Description and description are made below in conjunction with the preferred embodiments. The preferred embodiment provides a cloud terminal virtual desktop multicast push system and method applied to classroom teaching, and the system and method relate to cloud computing technology. In the preferred embodiment, by adopting the multicast technology in the cloud terminal virtual desktop system, the server end (corresponding to the above-mentioned master control device) needs to send a message to a special multicast group. When multiple recipients of the network (equivalent to the above-mentioned slave devices) are interested in this message, they can freely copy this message from this group. In this case, no matter how many people increase the number of recipients, the server needs to send only one message, and only one message is transmitted on the network, which can reduce the demand for network bandwidth and reduce the pressure on the server side. In the preferred embodiment, a cloud computing-based virtual desktop architecture is added based on a C/S mode-based desktop multicast system. Therefore, a cloud terminal virtual desktop multicast push system and method for classroom teaching is proposed, which combines multimedia teaching equipment, advanced computer-aided teaching equipment and newly emerged cloud computing technology to realize the true meaning of networked teaching. And intelligent management of various teaching equipment can improve the quality and efficiency of teaching. In order to achieve the above objective, the preferred embodiment adopts the following technical solutions: The preferred embodiment provides a cloud terminal virtual desktop multicast push system applied to classroom teaching, including a virtual desktop multicast server (equivalent to the above-mentioned master device) ) and virtual desktop multicast client (equivalent to the above slave device). The system is embedded in a cloud-based virtual desktop system, and a virtual desktop multicast server module and a virtual desktop multicast client module are added to the virtual desktop architecture. The virtual desktop multicast server is embedded in the cloud server of the virtual desktop, and includes a multicast module of the display channel, a multicast module of the audio channel, a multicast module of the mouse channel, and a multicast control channel module. The multicast module of the display channel is set to multicast the current desktop display data of the virtual machine. The multicast module of the above audio channel is set to multicast the current audio data of the virtual machine. The multicast module of the above mouse channel is set to multicast the current mouse data of the virtual machine. The multicast control channel module is configured to implement a control function for the multicast client. The virtual desktop multicast client includes a network data receiving module, a desktop push client protocol processing module, and a desktop push client channel command processing module. The network data receiving module is responsible for receiving all multicast data on the client side with a thread guarded to the multicast socket. The desktop push client protocol processing module is responsible for judging the received multicast data and determining which channel the multicast is for, and dispatching it to the designated channel processing module. The desktop push client channel command processing module is responsible for completing the command data of the display channel, the audio channel and the mouse channel pushed to the client, and reproducing the desktop display of the server through the display and the sound device of the terminal. The preferred embodiment further provides a cloud terminal virtual desktop multicast push method applied to classroom teaching, which includes the following steps: First, create a desktop pool on the server and activate, create a virtual machine for the desktop pool, and set the virtual machine for the virtual machine. The multicast address and port of the video, audio, and mouse, install the operating system of the virtual machine and add storage. Next, create a user group and configure the user group to belong to a certain desktop pool as needed, and set the policy of the user group according to the user's needs; add a user to the user group and activate it, before adding the user, be sure to be in the corresponding AD (Active) Directory, as a domain management is a component of Windows, installed on the server side) to add user information. In our multicast application scenario, we create a multicast group and add users to the multicast group through user management on the server. Set the user's configuration information and set user A (that is, the teacher) as a virtual desktop. The master (corresponding to the master device), the remaining users (ie students) are set as slaves of the virtual desktop (corresponding to the slave device). The virtual desktop host uses the virtual desktop client installed on the cloud terminal to connect to the virtual desktop server, and the terminal interacts with the multicast virtual desktop to complete the operation control of the desktop multicast. The virtual desktop controller connects to the virtual machine through the virtual desktop multicast client on the cloud terminal. At this point, you can see the image and mouse changes in the virtual machine on the slave's multicast desktop client, and listen to the audio. Any changes to the desktop master's virtual desktop are simultaneously pushed to the virtual desktop terminal of each participating remote controller. The implementation of the foregoing technical solution is further described in detail below with reference to the accompanying drawings. FIG. 6 is a schematic structural diagram of a virtual desktop multicast push system according to a preferred embodiment of the present invention. The virtual desktop multicast push system of the preferred embodiment is embedded. As shown in FIG. 6 , the system includes: a virtual desktop multicast server 610 and a virtual desktop multicast client 620. The virtual desktop multicast server 610 is mainly responsible for transmitting multicast data and implementing control on the multicast client. The virtual desktop multicast client 620 is installed on the cloud terminal and is mainly responsible for receiving display data pushed from the multicast virtual desktop and presenting it on the client operating system screen. FIG. 7 is a schematic structural diagram of a virtual desktop multicast server according to a preferred embodiment of the present invention. As shown in FIG. 7, the virtual desktop multicast server 610 is a module embedded in the cloud server, and the virtual desktop multicast server is provided. The modules included in the 610 include a multicast module 611 for displaying channels, a multicast module 612 for audio channels, a multicast module 613 for mouse channels, and a multicast control channel module 614. The multicast module 611 of the display channel is set to multicast the current desktop display data of the virtual machine. The multicast module 712 of the audio channel is arranged to multicast the current audio data of the virtual machine. The multicast channel 613 of the mouse channel is set to multicast the current mouse data of the virtual machine. The multicast control channel module 614 is configured to implement control functions for the virtual desktop multicast client. FIG. 8 is a schematic structural diagram of a virtual desktop multicast client according to a preferred embodiment of the present invention. As shown in FIG. 8, the module owned by the virtual desktop multicast client 620 includes a network data receiving module 621 and a desktop push client protocol processing module 622. The desktop push client channel command processing module 623. The network data receiving module 621 is responsible for receiving all multicast data on the client side with a thread guarded to the multicast socket. The desktop push client protocol processing module 622 is responsible for judging the received multicast data and determining which channel the multicast is for, and dispatching it to the designated channel processing module. The desktop push client channel command processing module 623 includes three small modules, which are a display channel command processing module 6231, a mouse channel command processing module 6232, and an audio channel command processing module 6233, which are responsible for completing the display channel and audio channel pushed to the client. And the command data of the mouse channel, and the desktop display of the server is reproduced through the display and sound device of the terminal. FIG. 9 is a schematic diagram of a process of establishing a link between a virtual desktop multicast push client and a server according to a preferred embodiment of the present invention. As shown in FIG. 9, the process of establishing a multicast client and a server may include: Step 1: Multicast client The terminal sends a link establishment request to the server. Step 2: The cloud server determines whether the link should be established according to the received request. Step 3: The cloud server allows the link to be established and returns initialization information, including video, mouse, and audio. Initialization information and the multicast group address that the multicast client needs to join; Step 4: The multicast client initializes the video, the mouse, and the audio channel according to the information returned by the server, and joins the corresponding multicast group to start accepting data and processes the data. Step 5: The cloud server adds the client to the multicast pool. The multicast client establishes a control channel with the cloud server to process information at the same time. 10 is a schematic flowchart of control information of a virtual desktop multicast push system according to a preferred embodiment of the present invention. As shown in FIG. 10, when a cloud server has a message to notify a client, the multicast pool is searched first, and the multicast pool is searched. The corresponding client is found; the cloud server sends a control message to the corresponding multicast client, and the multicast client processes and responds according to the received control message. FIG. 11 is a schematic diagram of a heartbeat keep-alive process of a virtual desktop multicast push system according to a preferred embodiment of the present invention. As shown in FIG. 11, the heartbeat keep-alive process of the virtual desktop multicast push system includes two parts: a heartbeat protection of the multicast client. Live and cloud server's heartbeat keeps alive. When the multicast client times out, the multicast client sends a heartbeat packet to the cloud server, and the cloud server returns the packet. After receiving the multicast client, the heartbeat failure count is cleared. If not received, the heartbeat failure count is counted. Add one, when the failure count exceeds the set value, the multicast client voluntarily quits. When the cloud server is scheduled to arrive, the cloud server notifies the multicast control module to send a heartbeat packet to all registered multicast clients in the multicast pool. The multicast client returns the packet, and the cloud server receives the corresponding multicast. The heartbeat failure count of the client is cleared. If it is not received, the heartbeat failure count of the multicast client is incremented by one. When the failure count exceeds the set value, the multicast client is removed from the multicast pool. Compared with the prior art, the preferred embodiment has the advantages of providing a cloud terminal-based virtual desktop multicast push system and method, and implementing a point-to-multipoint network connection between the sender and each receiver. A sender simultaneously transmits the same data to multiple recipients, and only needs to copy the same data packet, which improves the data transmission efficiency and reduces the possibility of congestion in the backbone network. At the same time, the master controller automatically receives the multicast when the master starts multicasting, and implements automatic switching of the multicast client. Thereby, the multimedia teaching equipment, advanced computer-aided teaching equipment and the newly emerged cloud computing technology are deeply combined to realize the true meaning of networked teaching, and intelligently manage various teaching equipments to improve teaching quality and efficiency. Industrial Applicability According to the embodiment of the present invention, a multicast service is used to multicast virtual desktop information from a master device to one or more slave devices, and the master device is unicast to each slave device in the related art. The way of unicasting virtual desktop information reduces the pressure on the server and reduces the bandwidth requirement of the virtual desktop system. Through the above steps, the problem caused by the server pressure caused by the increase of the client when sharing the virtual desktop in the related art is solved. Obviously, those skilled in the art should understand that the above modules or steps of the present invention can be implemented by a general-purpose computing device, which can be concentrated on a single computing device or distributed over a network composed of multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device, such that they may be stored in the storage device by the computing device, or they may be separately fabricated into individual integrated circuit modules, or they may be Multiple modules or steps are made into a single integrated circuit module. Thus, the invention is not limited to any specific combination of hardware and software. The above is only the preferred embodiment of the present invention, and is not intended to limit the present invention, and various modifications and changes can be made to the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and scope of the present invention are intended to be included within the scope of the present invention.

Claims

权 利 要 求 书 Claim
1. 一种虚拟桌面重现方法, 包括: 1. A virtual desktop reproduction method, comprising:
至少一个从控设备通过组播服务接收来自主控设备的虚拟桌面信息; 根据所述虚拟桌面信息, 重现与所述主控设备的第一虚拟桌面相同的第二 虚拟桌面。  The at least one slave device receives the virtual desktop information from the master device through the multicast service; and reproduces the second virtual desktop that is the same as the first virtual desktop of the master device according to the virtual desktop information.
2. 根据权利要求 1所述的方法, 其中, 所述虚拟桌面信息包括: 所述第一虚拟桌 面的变化信息。 The method according to claim 1, wherein the virtual desktop information comprises: change information of the first virtual desktop.
3. 根据权利要求 2所述的方法, 其中, 所述虚拟桌面信息包括以下至少之一: 所 述第一虚拟桌面的界面变化信息、 所述第一虚拟桌面的音频变化信息, 或者所 述第一虚拟桌面的鼠标变化信息。 The method according to claim 2, wherein the virtual desktop information comprises at least one of: interface change information of the first virtual desktop, audio change information of the first virtual desktop, or the A mouse change information for a virtual desktop.
4. 根据权利要求 3所述的方法, 其中, 重现与所述第一虚拟桌面相同的所述第二 虚拟桌面包括: 4. The method according to claim 3, wherein the reproducing the second virtual desktop that is the same as the first virtual desktop comprises:
将所述虚拟桌面信息推送到与所述虚拟桌面信息对应的通道, 其中, 所述 对应的通道包括以下至少之一: 与所述界面变化信息对应的显示通道、 与所述 音频变化信息对应的音频通道, 或者与所述鼠标变化信息对应的鼠标通道; 通过所述对应的通道,重现与所述第一虚拟桌面相同的所述第二虚拟桌面。  Pushing the virtual desktop information to a channel corresponding to the virtual desktop information, where the corresponding channel includes at least one of: a display channel corresponding to the interface change information, and a corresponding to the audio change information. An audio channel, or a mouse channel corresponding to the mouse change information; and the second virtual desktop that is identical to the first virtual desktop is reproduced through the corresponding channel.
5. 根据权利要求 1至 4中任一项所述的方法, 其中, 所述方法还包括: 通过心跳 保活流程保持所述至少一个从控设备与所述主控设备之间的连接, 其中, 所述 心跳保活流程包括: The method according to any one of claims 1 to 4, wherein the method further comprises: maintaining a connection between the at least one slave device and the master device by a heartbeat keep-alive procedure, wherein The heartbeat keep-alive process includes:
所述至少一个从控设备向所述主控设备发送第一心跳包, 并根据所述主控 设备响应所述第一心跳包的第一回包, 保持所述连接; 和 /或  Transmitting, by the at least one slave device, a first heartbeat packet to the master control device, and maintaining the connection according to the first back packet of the first heartbeat packet according to the master control device; and/or
所述主控设备向所述至少一个从控设备发送第二心跳包, 并根据所述至少 一个从控设备响应所述第二心跳包的第二回包, 保持所述连接。  The master device sends a second heartbeat packet to the at least one slave device, and maintains the connection according to the second packet of the second heartbeat packet according to the at least one slave device.
6. 一种虚拟桌面推送方法, 包括: 6. A virtual desktop push method, comprising:
主控设备通过组播服务向至少一个从控设备推送虚拟桌面信息, 其中, 所 述虚拟桌面信息用于所述至少一个从控设备重现与所述主控设备的第一虚拟桌 面相同的第二虚拟桌面。 根据权利要求 6所述的方法, 其中, 在通过组播服务向所述至少一个从控设备 推送所述虚拟桌面信息之前, 所述方法还包括: 获取所述虚拟桌面信息, 其中, 所述虚拟桌面信息包括以下至少之一: 所述第一虚拟桌面的界面变化信息、 所 述第一虚拟桌面的音频变化信息, 或者所述第一虚拟桌面的鼠标变化信息。 一种虚拟桌面重现装置, 位于至少一个从控设备中, 包括: The master device pushes the virtual desktop information to the at least one slave device through the multicast service, where the virtual desktop information is used by the at least one slave device to reproduce the same number as the first virtual desktop of the master device. Two virtual desktops. The method according to claim 6, wherein, before the virtual desktop information is pushed to the at least one slave device by the multicast service, the method further includes: acquiring the virtual desktop information, where the virtual The desktop information includes at least one of the following: interface change information of the first virtual desktop, audio change information of the first virtual desktop, or mouse change information of the first virtual desktop. A virtual desktop reproducing device is located in at least one slave device, and includes:
接收模块, 设置为通过组播服务接收来自主控设备的虚拟桌面信息; 重现模块, 设置为根据所述虚拟桌面信息, 重现与所述主控设备的第一虚 拟桌面相同的第二虚拟桌面。 一种虚拟桌面推送装置, 位于主控设备中, 包括:  a receiving module, configured to receive virtual desktop information from the master device by using a multicast service; and a recurring module configured to: reproduce the second virtual virtuality that is the same as the first virtual desktop of the master device according to the virtual desktop information desktop. A virtual desktop pushing device is located in the main control device, and includes:
推送模块, 设置为通过组播服务向至少一个从控设备推送虚拟桌面信息, 其中, 所述虚拟桌面信息用于所述至少一个从控设备重现与所述主控设备的第 一虚拟桌面相同的第二虚拟桌面。 一种虚拟桌面系统, 包括主控设备和至少一个从控设备, 其中, 所述主控设备 包括如权利要求 9所述的虚拟桌面推送装置, 所述至少一个从控设备包括如权 利要求 8所述的虚拟桌面重现装置。  The push module is configured to push the virtual desktop information to the at least one slave device through the multicast service, where the virtual desktop information is used by the at least one slave device to reproduce the same as the first virtual desktop of the master device The second virtual desktop. A virtual desktop system, comprising: a master device and at least one slave device, wherein the master device comprises the virtual desktop push device according to claim 9, the at least one slave device comprises the device as claimed in claim 8. The virtual desktop reproduction device described.
PCT/CN2014/075739 2013-10-21 2014-04-18 Virtual desktop reproducing and pushing method and device, and virtual desktop system WO2014180234A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310496341.8A CN104580308A (en) 2013-10-21 2013-10-21 Virtual desktop reappearing and pushing method and device and virtual desktop system
CN201310496341.8 2013-10-21

Publications (1)

Publication Number Publication Date
WO2014180234A1 true WO2014180234A1 (en) 2014-11-13

Family

ID=51866701

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/075739 WO2014180234A1 (en) 2013-10-21 2014-04-18 Virtual desktop reproducing and pushing method and device, and virtual desktop system

Country Status (2)

Country Link
CN (1) CN104580308A (en)
WO (1) WO2014180234A1 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106817607B (en) * 2015-12-02 2020-09-08 南京中兴新软件有限责任公司 Audio and video multicast playing method, device and system based on virtual desktop
CN106921634B (en) * 2015-12-28 2020-11-20 中兴通讯股份有限公司 Multimedia stream multicast method and device
CN107025084A (en) * 2016-01-29 2017-08-08 深圳市深信服电子科技有限公司 virtual desktop sharing method and device
CN105872020A (en) * 2016-03-23 2016-08-17 北京小米移动软件有限公司 Access method of virtual desktop and mobile terminal
CN107580011B (en) * 2016-07-05 2021-08-13 华为技术有限公司 Data sharing method and desktop cloud server
CN106302399A (en) * 2016-07-29 2017-01-04 中兴通讯股份有限公司 Control the method and system of multicast access, cloud desktop, cloud terminal
CN107682384A (en) * 2016-08-01 2018-02-09 中兴通讯股份有限公司 Virtual desktop multicast control method, terminal, proxy terminal and cloud desktop server
CN106506590B (en) * 2016-09-28 2019-05-17 深圳市讯方技术股份有限公司 Cloud terminal number control method and system based on cloud desktop
CN111984350B (en) * 2020-07-23 2024-04-16 深圳市秦班科技有限公司 Information acquisition and analysis method based on virtual reality technology
CN116069433B (en) * 2023-03-08 2023-07-04 山东乾云启创信息科技股份有限公司 Image drifting method and system based on virtual desktop infrastructure and action recognition

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102413150A (en) * 2010-09-20 2012-04-11 联想(北京)有限公司 Server and virtual desktop control method and virtual desktop control system
CN102656578A (en) * 2009-12-09 2012-09-05 思杰系统有限公司 Methods and systems for displaying, on a first machine, data associated with a drive of a second machine, without mapping the drive
CN103001992A (en) * 2011-09-19 2013-03-27 中兴通讯股份有限公司 Virtual desktop realizing system and using method thereof

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1472713A (en) * 2003-05-16 2004-02-04 上海交通大学 Satellite multimedium bidirectional long-range real-time teaching systems
CN1455372A (en) * 2003-05-29 2003-11-12 上海交通大学 Screen sharing and synchronous recording method based on IP network
CN101242229B (en) * 2008-03-17 2010-08-11 北京创毅视讯科技有限公司 A data transmission method and terminal in mobile multimedia broadcasting system
US8713627B2 (en) * 2008-08-14 2014-04-29 Juniper Networks, Inc. Scalable security services for multicast in a router having integrated zone-based firewall
CN101835043B (en) * 2010-03-23 2013-10-09 熔点网讯(北京)科技有限公司 Adaptive bandwidth desktop sharing method based on block encoding
CN102447723B (en) * 2010-10-12 2015-09-09 运软网络科技(上海)有限公司 Client-side virtualization framework
CN102143149A (en) * 2010-12-10 2011-08-03 华为技术有限公司 Method and system for mini-station to access cloud, and access management equipment
CN102546194B (en) * 2010-12-24 2015-03-04 联想(北京)有限公司 Display data processing method, system and server
CN102377775A (en) * 2011-10-14 2012-03-14 深圳市京华科讯科技有限公司 Adaptive transmission protocol stack and processing method and system thereof
CN103281359A (en) * 2013-05-06 2013-09-04 北京启创卓越科技有限公司 Cloud desktop system and operating method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102656578A (en) * 2009-12-09 2012-09-05 思杰系统有限公司 Methods and systems for displaying, on a first machine, data associated with a drive of a second machine, without mapping the drive
CN102413150A (en) * 2010-09-20 2012-04-11 联想(北京)有限公司 Server and virtual desktop control method and virtual desktop control system
CN103001992A (en) * 2011-09-19 2013-03-27 中兴通讯股份有限公司 Virtual desktop realizing system and using method thereof

Also Published As

Publication number Publication date
CN104580308A (en) 2015-04-29

Similar Documents

Publication Publication Date Title
WO2014180234A1 (en) Virtual desktop reproducing and pushing method and device, and virtual desktop system
CN101872555B (en) Real-time interactive teaching system based on application-layer multicast services
JP5255654B2 (en) Multi-directional peer-to-peer media streaming
US10044978B2 (en) Data transmission method and system, and related devices
CN109495713B (en) Video conference control method and device based on video networking
WO2015196361A1 (en) Multicast method, apparatus, and system for software defined network
KR20090058574A (en) Method and apparatus for establishing multicast groups
CN105610777B (en) Remote living broadcast method and system
US20150067110A1 (en) Media Playing Method, Apparatus, and System
CN101873219B (en) System for live broadcast of video conference on basis of application-layer multicast services
US20090019112A1 (en) Audio and video conferencing using multicasting
CN103533389A (en) Video pushing method and video pushing system
WO2015139390A1 (en) Multicast data processing method, apparatus, and system, sending device, and receiving client
CN109743524B (en) Data processing method of video network and video network system
WO2014161326A1 (en) Video communication method and device
CN110650171B (en) Video networking service scheduling system and method
CN103843323A (en) Method for implementing multimedia conference, related device and system
WO2018121584A1 (en) Data stream transmission method, apparatus, related devices and storage medium
CN109698818B (en) Method and device for acquiring online user and cross-streaming media communication
CN106817607B (en) Audio and video multicast playing method, device and system based on virtual desktop
WO2016197955A1 (en) Multimedia stream multicasting method and device
JP2007166572A (en) Method, computing system, and computer readable medium for group reproduction applied on network
CN103796078A (en) Multicast video playing method and video playing terminal
CN110996039B (en) Electronic whiteboard sharing method, system and computer-readable storage medium
WO2019210667A1 (en) Screen image transmission method, device, server and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14795391

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14795391

Country of ref document: EP

Kind code of ref document: A1