首页> 中国专利> 一种虚拟化桌面的分享系统、分享方法以及分享装置

一种虚拟化桌面的分享系统、分享方法以及分享装置

摘要

本发明公开了一种虚拟化桌面的分享系统、分享方法以及分享装置。其中分享方法应用于包括桌面云终端、虚拟机服务器、流媒体服务器以及客户端的分享系统中,所述虚拟机服务器配置有与所述桌面云终端相交互的桌面虚拟机,所述分享方法包括:监控所述分享系统的负载状态;根据所述负载状态选择转码服务器;在转码服务器上对采集自桌面虚拟机的多媒体流进行转码;根据客户端的分享请求,将转码后的多媒体流发送至相应的客户端。本发明虚拟化桌面的分享系统以及方法和装置,可以更有效利用虚拟化桌面系统的计算及网络资源,以及实现虚拟机桌面的视频分享,不仅如此还可以根据分享系统的负载优化虚拟桌面多媒体数据的压缩、传输。

著录项

  • 公开/公告号CN105577819A

    专利类型发明专利

  • 公开/公告日2016-05-11

    原文格式PDF

  • 申请/专利权人 杭州碧创科技有限公司;

    申请/专利号CN201610053769.9

  • 发明设计人 李皓霖;窦露;沈东立;王利舟;

    申请日2016-01-26

  • 分类号H04L29/08(20060101);G06F9/455(20060101);H04L29/06(20060101);

  • 代理机构33224 杭州天勤知识产权代理有限公司;

  • 代理人解明铠

  • 地址 310018 浙江省杭州市经济技术开发区白杨街道6号大街452号高科技企业孵化器2幢D1413-D1417室

  • 入库时间 2023-12-18 15:20:54

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-12-11

    专利权质押合同登记的生效 IPC(主分类):H04L29/08 登记号:2018330000391 登记生效日:20181116 出质人:杭州碧创科技有限公司 质权人:杭州联合农村商业银行股份有限公司文教支行 发明名称:一种虚拟化桌面的分享系统、分享方法以及分享装置 授权公告日:20181026 申请日:20160126

    专利权质押合同登记的生效、变更及注销

  • 2018-10-26

    授权

    授权

  • 2016-06-08

    实质审查的生效 IPC(主分类):H04L29/08 申请日:20160126

    实质审查的生效

  • 2016-05-11

    公开

    公开

说明书

技术领域

本发明涉及虚拟化计算领域,尤其涉及已一种基于虚拟化桌面的多媒 体流分享系统、分享方法以及分享装置。

背景技术

随着技术的发展,虚拟化桌面的应用领域也日益增多,成为最为典型 的虚拟化应用之一。使用虚拟化桌面技术,用户的桌面系统以虚拟机的形 式运行于虚拟机服务器上,虚拟机服务器对于所有用户的虚拟机进行统一 管理,同时,用户通过桌面客户端设备软件连接虚拟机,并在客户端设备 上显示虚拟机的桌面。

例如公开号为CN102460407A的专利文献公开了一种用于提供虚拟 计算服务的系统,包括:一个或者多个服务器,每个服务器被配置成实 例化和管理在所述服务器上运行的多个虚拟计算机的操作,每个服务器 还被配置成关联在所述服务器上运行的一个或者多个应用与每个虚拟计 算机,每个虚拟计算机包括图形显示部件和音频输出部件,所述图形显示 部件被配置成生成用于一个或者多个关联应用的图形显示数据,所述音频 输出部件被配置成生成用于所述一个或者多个关联应用的音频输出数据, 每个服务器也包括一个或者多个编码器,每个编码器被配置成对来自所述 虚拟计算机中的对应一个的所述图形显示数据和所述音频输出数据编码 用于通过网络传输,使得同步编码的图形显示数据和编码的音频输出数 据;以及多个客户端,用于与关联显示器一起使用,每个客户端被配置成 经由所述网络接收用于所述虚拟计算机中的分配的一个虚拟计算机的所 述编码的图形显示数据和所述编码的音频输出数据,并且在所述关联显示 器上呈现分配的虚拟计算机的表示,每个客户端包括解码器,所述解码器 被配置成对所述编码的图形显示数据和所述编码的音频输出数据解码,使 得所述分配的虚拟计算机的所述表示的可见和可听组成基本上同步。

使用现有的虚拟化桌面技术,用户可以看见自己的桌面。但是在有些 场合,例如电子竞技视频分享,一个用户的虚拟机桌面需要让多个用户同 时可见,这种情况下,现有技术无法完全满足需求。

现有的远程桌面技术,如RDP,虽然能够让多个用户连接到一台虚拟 机观看,在一定程度上实现视频分享,但是有如下一些问题:

1.支持的连接客户数量很有限,不适用于互联网业务;

2.客户端需要安装特殊的软件,不便于普通移动智能设备使用;

3.占用带宽比较大,不适于互联网,尤其不适合移动互联网接入。

如何更有效利用虚拟化桌面系统的计算及网络资源,以及实现虚拟机 桌面的视频分享,是目前业界需要解决的一种技术难题。

不仅如此,由于运行于虚拟机服务器的虚拟机实例数目和网络负载都 是动态变化的,在很多情况下,现有技术并不能非常有效调度虚拟机桌面 图像的处理,来实现计算资源和网络资源的最大化利用。

发明内容

本发明提供一种虚拟化桌面的分享系统,解决了现有技术所无法处理 的,虚拟化桌面多媒体内容分享问题。

一种虚拟化桌面的分享系统,包括桌面云终端以及客户端,还设有:

虚拟机服务器,配置有与所述桌面云终端相交互的桌面虚拟机,采集 并发送来自所述桌面虚拟机的多媒体流;

流媒体服务器,响应于来自所述客户端的分享请求,接收来自所述虚 拟机服务器的多媒体流并转发至对应的客户端。

作为优选,还设有向流媒体服务器转发分享请求并从流媒体服务器接 收相应多媒体流的公网服务器,所述客户端为直接向流媒体服务器发送分 享请求的局域网客户端,或直接向公网服务器发送分享请求的公网客户 端。

作为优选,所述桌面虚拟机还用于显示评论信息供所有的桌面云终端 以及客户端收看,该评论信息来自任一桌面云终端以及客户端,并经由流 媒体服务器或公网服务器转发至桌面虚拟机。

所述多媒体流的转码是根据分享系统的负载状态在虚拟机服务器、流 媒体服务器或公网服务器中进行。

按照虚拟机服务器工作原理,将从桌面虚拟机采集来的图像通过第一 次编码获得原始多媒体流,由于原始多媒体流体积庞大、帧数高、格式特 殊,不利于普通播放器播放,也会增加网络负载,所以需要对原始多媒体 流进行转码,即对原始多媒体流进行解码和第二次编码,以获得易于播放、 易于传输的多媒体流。没有特殊说明的情况下,本发明所述的转码指对原 始多媒体流进行的解码和第二次编码。

本发明还提供了一种虚拟化桌面的分享方法,可以根据分享系统的负 载动态优化虚拟桌面多媒体数据的压缩、传输。

一种虚拟化桌面的分享方法,应用于包括桌面云终端、虚拟机服务器、 流媒体服务器以及客户端的分享系统中,所述虚拟机服务器配置有与所述 桌面云终端相交互的桌面虚拟机,所述分享方法包括:

监控所述分享系统的负载状态;

根据所述负载状态选择转码服务器;

在转码服务器上对采集自桌面虚拟机的多媒体流进行转码;

根据客户端的分享请求,将转码后的多媒体流发送至相应的客户端。

所述转码服务器为虚拟机服务器或流媒体服务器。

对所述原始多媒体流进行转码前,根据所述负载状态确定转码模式, 转码模式为高转码质量或低转码质量。

将原始多媒体流压缩至大于等于1000kbit/s为高转码质量,小于 1000kbit/s为低转码质量。

所述分享系统的负载状态包括:

虚拟机服务器的运行状态;

流媒体服务器的运行状态;

虚拟机服务器与流媒体服务器之间的网络状态。

虚拟机服务器的运行状态包括:CPU负载、内存消耗总量、硬盘活动 时间、网络占用率、以及正在运行的桌面虚拟机实例数。

任何两个或两个以上指标超出阈值则认为虚拟机服务器的运行状态 为重负载,否则为轻负载。

流媒体服务器的运行状态包括:CPU负载、内存占用率、硬盘活动时 间以及网络占用率。

任何两个或两个以上指标超出阈值则认为虚拟机服务器的运行状态 为重负载,否则为轻负载。

各指标阈值为

CPU负载(重、轻):

CPU使用率阈值为75%,风扇转速阈值为5000转/分钟,CPU温度阈 值为60摄氏度;任何两个或两个以上指标超出阈值,则认为CPU为重负 载,否则为轻负载;

内存占用率:75%;

硬盘活动时间:20%;

网络占用率:75%;

正在运行的桌面虚拟机实例数:实例总数的75%

虚拟机服务器与流媒体服务器之间的网络状态包括:当前网络占用 率、网络延时和网络连通性。

网络连通性为不连通(ping值>500ms)时为重负载;

网络连通性为连通(ping值≤500ms)时,若网络占用率大于75%并 且网络延时>200ms,则为重负载,否则为轻负载。

根据分享系统的负载状态选择转码服务器时,按照优先级先后进行判 断,依次判断优先判定虚拟机服务器的运行状态、流媒体服务器的运行状 态、虚拟机服务器与流媒体服务器之间的网络状态。

决策方法:

负载状态1、如果虚拟机服务器运行状态为轻负载,并且流媒体服务 器运行状态为轻负载,并且网络状态(虚拟机服务器与流媒体服务器之间 的网络状态,下同)为轻负载,则虚拟机服务器转码(即选择虚拟机服务 器作为转码服务器);

转码模式为使用高转码质量进行转码;

负载状态2、如果虚拟机服务器运行状态为轻负载,并且流媒体服务 器运行状态为轻负载,并且网络状态为重负载,则虚拟机服务器转码;

转码模式为使用低转码质量进行转码;

负载状态3、如果虚拟机服务器运行状态为轻负载,并且流媒体服务 器运行状态为重负载,并且网络状态为轻负载,则虚拟机服务器转码;

转码模式为使用高转码质量进行转码;

负载状态4、如果虚拟机服务器运行状态为轻负载,并且流媒体服务 器运行状态为重负载,并且网络状态为重负载,则虚拟机服务器转码;

转码模式为使用低转码质量进行转码;

负载状态5、如果虚拟机服务器运行状态为重负载,并且流媒体服务 器运行状态为轻负载,并且网络状态为轻负载,则流媒体服务器转码;

转码模式为使用高转码质量进行转码;

负载状态6、如果虚拟机服务器运行状态为重负载,并且流媒体服务 器运行状态为重负载,并且网络状态为重负载,则虚拟机服务器转码;

转码模式为使用低转码质量进行转码;

负载状态7、如果虚拟机服务器运行状态为重负载,并且流媒体服务 器运行状态为重负载,并且网络状态为轻负载,则虚拟机服务器转码;

转码模式为使用低转码质量进行转码;

负载状态8、如果虚拟机服务器运行状态为重负载,并且流媒体服务 器运行状态为轻负载,并且网络状态为重负载,则流媒体服务器转码;

转码模式为使用低转码质量进行转码。

如果虚拟机服务器转码,则转码后的多媒体流由虚拟机服务器发送给 流媒体服务器;

如果流媒体服务器转码,则虚拟机服务器将原始多媒体流发送给流媒 体服务器,流媒体服务器进行转码,再将转码后的多媒体流通过流媒体视 频接口进行发布,供客户端使用。

根据分享系统的负载状态选择转码服务器时,可通过软件模块进行决 策,软件模块既可以实施运行在虚拟机服务器内,也可以实施运行在流媒 体服务器内。

选择转码服务器后,虚拟机服务器中桌面虚拟机查询选择结果,若虚 拟机服务器转码,则调用本机的转码器进行转码,并将转码后的多媒体流 发送给流媒体服务器;如果在流媒体服务器转码,则虚拟机服务器将原始 媒体流发送给流媒体服务器再进行转码。

为了获取分享系统的负载状态,可以分别在虚拟机服务器以及流媒体 服务器中配置相应的软件功能模块,以动态读取相应的参数,由于各参数 的阈值可能会发生修改,那么也要求可以动态读取各参数的阈值。

作为优选,所述分享系统还设有与流媒体服务器相连的公网服务器, 所述转码服务器为虚拟机服务器、流媒体服务器或公网服务器;

所述客户端为直接向流媒体服务器发送分享请求的局域网客户端,或 直接向公网服务器发送分享请求的公网客户端。

作为优选,所述分享方法还包括通过桌面虚拟机显示评论信息供所有 的桌面云终端以及客户端收看,该评论信息来自任一桌面云终端以及客户 端,并经由流媒体服务器或公网服务器转发至桌面虚拟机。

在使用公网服务器时,若仅有公网客户端发送分享请求,也可以在虚 拟机服务器、流媒体服务器和公网服务器这三者中的任一者内进行转码, 即选择转码服务器。

此时,所述分享系统的负载状态包括:

虚拟机服务器的运行状态;

流媒体服务器的运行状态;

公网服务器的运行状态;

虚拟机服务器与流媒体服务器之间的网络状态;

公网服务器与流媒体服务器之间的网络状态。

公网服务器的运行状态的判定方式可以同流媒体服务器的判定方式;

公网服务器与流媒体服务器之间的网络状态的判定方式可以同虚拟 机服务器与流媒体服务器之间的网络状态的判定方式。

同理可以公网服务器中配置相应的软件功能模块,以动态读取相应的 参数,进行决策选择转码服务器的软件模块可以实施运行在虚拟机服务 器、流媒体服务器和公网服务器这三者中的任一者内。

考虑到局域网的流量,流媒体服务器不把未转码的原始多媒体流发给 公网服务器,因为这样做出口流量太大,因此所述转码服务器一般选自虚 拟机服务器或流媒体服务器。

根据分享系统的负载状态选择转码服务器时,按照优先级先后进行判 断,依次判断优先判定虚拟机服务器的运行状态、流媒体服务器的运行状 态、虚拟机服务器与流媒体服务器之间的网络状态。

本发明还提供了一种虚拟化桌面的分享装置,用于实施所述的分享方 法,即可以根据分享系统的负载动态优化虚拟桌面多媒体数据的压缩、传 输。

一种虚拟化桌面的分享装置,应用于包括桌面云终端、虚拟机服务器、 流媒体服务器以及客户端的分享系统中,所述虚拟机服务器配置有与所述 桌面云终端相交互的桌面虚拟机,所述分享装置包括:

监控模块,用于监控所述分享系统的负载状态;

决策模块,用于根据所述负载状态选择转码服务器;

转码模块,用于在转码服务器上对采集自桌面虚拟机的多媒体流进行 转码;

发送模块,用于根据客户端的分享请求,通过流媒体服务器将转码后 的多媒体流发送至相应的客户端。

本发明虚拟化桌面的分享系统以及方法和装置,可以更有效利用虚拟 化桌面系统的计算及网络资源,以及实现虚拟机桌面的视频分享,不仅如 此还可以根据分享系统的负载动态优化虚拟桌面多媒体数据的压缩、传 输,有效的调度虚拟机桌面图像的处理,来实现计算资源和网络资源的最 大化利用。

附图说明

图1为本发明分享系统的构架示意图。

图2为本发明分享方法的流程示意图。

具体实施方式

参见图1,本实施例一种虚拟化桌面的分享系统,包括局域网一侧, 和公网一侧,当然也可以根据需要不接入公网,在接入公网时,还设置有 可提供流媒体相关服务的公网服务器

桌面虚拟机架设在虚拟机服务器上,桌面虚拟机与对应的桌面云终端 之间通过网络通道进行双向通讯。

虚拟机服务器从桌面虚拟机采集视频数据,连同相应的音频通过第一 次编码获得原始多媒体流。

本发明重点之一是另外设置了流媒体服务器,可以根据整个分享系统 的负债状态选择在虚拟机服务器上或流媒体服务器上对原始多媒体流进 行转码,何者对原始多媒体流进行转码即称之为转码服务器。

流媒体服务器可以对接收到转码后的多媒体流提供存储服务,存储服 务实施定期更新,以便被访问。

流媒体服务器还提供流媒体服务,负责将转码后的多媒体流生成相应 的播放地址,同时推送到公网服务器上或直接发送给局域网内的客户端。

客户端根据所处的网络位置,可以分为直接与流媒体服务器相连的局 域网客户端,以及与公网服务器相连的公网客户端。

作为客户端来说,可以是PC机、移动终端或其他智能设备等等。

公网服务器一般并不作为转码服务器,但若局域网内负载很严重的时 候,也可以在公网服务器转码,此时根据公网服务器和网络的压力,使用 不同的转码方式。

公网服务器同样可以存储服务、流媒体服务,并通过因特网将转码后 的多媒体流推送到播放地址。

以公网客户端为例,其还可以发布评论信息,发送给公网服务器,再 由公网服务器发送回虚拟机服务器中的桌面虚拟机,最终在桌面云终端显 示,相应的其他各客户端也可以看到该评论信息。

参见图2,基于图1中的构架,本实施例一种虚拟化桌面的分享方法 具体包括:

云桌面终端与桌面虚拟机交互时,一方面桌面虚拟机将多媒体流传输 到云桌面终端实现桌面显示和声音播放,另一方面云桌面终端把控制流传 回桌面虚拟机实现控制。

虚拟机服务器会将从桌面虚拟机采集视频数据,连同相应的音频通过 第一次编码获得原始多媒体流。

虚拟机服务器以及流媒体服务器中分别设置软件监控虚拟机服务器 的运行状态、流媒体服务器的运行状态、以及虚拟机服务器与流媒体服务 器之间的网络状态。

本实施中在流媒体服务器中设置决策模块,接收和分析上述的各状态 参数,其中

虚拟机服务器的运行状态包括:CPU负载、内存消耗总量、硬盘活动 时间、网络占用率、以及正在运行的桌面虚拟机实例数。

任何两个或两个以上指标超出阈值则认为虚拟机服务器的运行状态 为重负载,否则为轻负载。

流媒体服务器的运行状态包括:CPU负载、内存占用率、硬盘活动时 间以及网络占用率。

任何两个或两个以上指标超出阈值则认为虚拟机服务器的运行状态 为重负载,否则为轻负载。

各指标阈值为

CPU负载(重、轻):

CPU使用率阈值为75%,风扇转速阈值为5000转/分钟,CPU温度阈 值为60摄氏度;任何两个或两个以上指标超出阈值,则认为CPU为重负 载,否则为轻负载;

内存占用率:75%;

硬盘活动时间:20%;

网络占用率:75%;

正在运行的桌面虚拟机实例数:实例总数的75%

虚拟机服务器与流媒体服务器之间的网络状态包括:当前网络占用 率、网络延时和网络连通性。

网络连通性为不连通(ping值>500ms)时为重负载;

网络连通性为连通(ping值≤500ms)时,若网络占用率大于75%并 且网络延时>200ms,则为重负载,否则为轻负载。

根据分享系统的负载状态选择转码服务器时,按照优先级先后进行判 断,依次判断优先判定虚拟机服务器的运行状态、流媒体服务器的运行状 态、虚拟机服务器与流媒体服务器之间的网络状态。

例如,如果虚拟机服务器运行状态为轻负载,并且流媒体服务器运行 状态为轻负载,并且网络状态为轻负载,则决策模块选择虚拟机服务器作 为转码服务器,对原始多媒体流进行转码,同时决策模块确定转码模式为 使用高转码质量进行转码;即将原始多媒体流压缩至大于等于1000kbit/s。

又例如,如果虚拟机服务器运行状态为重负载,并且流媒体服务器运 行状态为轻负载,并且网络状态为轻负载,则流媒体服务器转码;转码模 式为使用高转码质量进行转码。

下面以流媒体服务器转码为例,

虚拟机服务器会将原始多媒体流通过UDP/TCP协议发送至流媒体服 务器,流媒体服务器中设有nginx服务器,流媒体服务器将协议解包,分 离出多媒体流(视频流音频流),交给nginx服务器

nginx服务器去掉了网页部分,同时设置了ffmpeg命令,用于转码、 推送和接收,流媒体服务器中还设置了监听http请求的服务,用于处理开 关流媒体连接的分享请求。

nginx服务器收到多媒体流后,会调用ffmpeg命令逐帧解码,对每一 帧处理后逐帧转码。比如要转成30帧,可以在ffmpeg命令中加入-r30参 数实现。

转码具体参数设置,主要根据决策模块确定的转码模式,对于高转码 质量和低转码质量而言,仍可以根据情况选择具体的帧数或分辨率等,这 些配置可以预先设置,以供决策模块调用。

举例说明几种配置:

ffmpeg-q30-r60-b3000(单位kbit/s)-s1920*1080,质量30,帧数 60,比特率3000kbit/s,分辨率1920x1080,适用于负载较低的情况,提供 较好的视频质量;

ffmpeg-q20-r30-b1500(单位kbit/s)-s1280*720,质量20,帧数30, 比特率1500kbit/s,分辨率1280x720,适用于负载适中的情况,提供一般 的视频质量;

ffmpeg-q1-r24-b800(单位kbit/s)-s800*480,质量1,帧数24,比 特率800kbit/s,分辨率800*480,适用于负载较高的情况,提供较差的视 频质量。

流媒体服务负责将流媒体服务器中转码后的多媒体流生成相应的播 放地址,同时推送到公网服务器上。

公网服务器也设有nginx服务器。公网服务器中的nginx服务器除了 设置ffmpeg命令外,还设有PHP网站,网站内置flash播放器,供具备访 问能力的公网客户端访问收看,也用于处理来自公网客户端的信息

公网服务器上,通过nginx服务器的push,将来自流媒体服务器的转 码后的多媒体流推送到播放地址上。具有播放功能的公网客户端通过调用 ffplay播放rtmp地址,接受上述步骤的推送实现在线直播。

公网客户端可以在本地设备上对所播放的视频进发布行评论信息,通 过JSON数据格式发送到公网服务器,公网服务器通过http长链接将评论 信息发送到虚拟机服务器,从而实现视频的共享与互动。

本技术领域中的普通技术人员应当认识到,以上的实施方式仅是用来 说明本发明,而并非用作为对本发明的限定,只要在本发明的实质精神范 围内,对以上实施方式的变化、变型都将落在本发明的权利要求书范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号