一种实现虚拟机真实设备调度的方法及装置的制造方法

文档序号:9691068阅读:215来源:国知局
一种实现虚拟机真实设备调度的方法及装置的制造方法
【技术领域】
[0001]本发明涉及互联网应用技术领域,特别是涉及一种实现虚拟机真实设备调度的方法及装置。
【背景技术】
[0002]随着互联网的用户不断增多,用户对音视频直播画质/音质的要求不断提升,直播内容的码流不断提升,同时在线人数也不断增加,带宽和并发在线人数的要求渐渐成为制约这项业务的瓶颈。
[0003]当前通常采用服务器分层加客户端对等(p2p)网络技术来分担并发访问的人数同时将服务器的一部访问转移到客户端,从而减轻服务器的访问压力并降低带宽的消耗,
[0004]另外,依托于布置在互联网最后一英里的特殊设备,具体的如某种可以利用上下行富余带宽的网络接入路由器,或者是装有虚拟化程序并且能上网的电子设备等,其特征是对计算能力和存储能力要求不高,但是在运营商的带宽利用上,处于用户侧个人电脑的上一层,能够长时间稳定接入互联网,故而能够更好的利用运营商的上/下行的带宽,而将这些设备通过虚拟化的方式集中起来,提供各种可以定制化的服务。为了描述方便,可将这些设备特殊设备都用真实设备(RD,real device)表示,多个RD设备可组成一个虚拟机(VM,virtual machine),RD设备可看成是一个提供网络服务的容器,即它可以安装任何满足要求的网络服务程序(即RD设备APP),另一方面它又是一个网络带宽的输出单元,即RD设备可以向互联网提供带宽资源。在RD设备上可以安装一个agent代理程序,其作用是监控RD设备的状态,例如上下行带宽状态,从而获取RD设备的运行负载,向RD设备发送指令。在agent代理程序的上层,是虚拟化的应用程序接口(API),是连接RD设备和虚拟化调度单元的桥梁,装有相同服务程序的RD设备会被组织成一个大的虚拟机,提供上述所述的网络服务。而对于通过网络协议(例如rtmp/http/rtsp/hls/p2p协议)访问虚拟机VM的客户端来说,其感受到的就是一个真实的服务器,同样的,对于使用上层用户界面(UI)的调用者来说,管理的也是一个个的真实服务器。
[0005]在具体应用中,如果想要利用虚拟机VM来提供音视频直播加速,可以将这些虚拟机服务器作为一个虚拟化应用层,并加入到传统的CDN-P2P网络中,替代了原有架构中CDN层和播放器的数据传送功能。虚拟机VM还可以和云端的辅助系统进行通信,获取来自源站的信息,如视频直播内容源,然后虚拟机VM就成为一个虚拟的CDN直播分发服务器,向播放器提供各种服务,例如提供p2p的传输服务等。在实现上,按照不同的运营商区域,配置若干虚拟机的服务器,作为边缘的CDN节点,其上层是原有的真实CDN服务器层,这里只需要一条链路就可以把视频内容下发到虚拟服务器上,再由虚拟服务器转发给客户端,而在实际使用中,为保证系统的健壮性,可以再增加若干条链路,保证系统可以稳定工作。
[0006]现有技术中一个虚拟机VM所能提供的对外带宽总量是由虚拟机VM中所有的RD设备所能提供的上行带宽总量所限定,所以通过限定分配给虚拟机VM的RD数量,也就限定了VM的带宽。但如果为一个虚拟机VM分配过多的带宽,而实际使用时客户端数量没有那么多,就会造成带宽浪费。而如果为一个虚拟机VM分配的带宽过少,导致实际使用时客户端的连接总是无法满足,就会导致服务质量下降,因此,如何对RD设备进行调度和分配是业界需要解决的问题。

【发明内容】

[0007]鉴于上述问题,本发明实施例提供一种实现虚拟机真实设备调度的方法及装置,以合理调度真实设备的闲散带宽,保证能最有效的满足用户的需求,从而保证服务的质量。
[0008]为了解决上述技术问题,本发明实施例提供的一种实现虚拟机真实设备调度的方法,其包括:
[0009]检测当前目标虚拟机的连接数变化量;
[0010]将所述连接数变化量转换为对应的真实设备变化量;
[0011 ]根据所述真实设备变化量确定当前的真实设备变化趋势级别;
[0012]根据当前的真实设备变化趋势级别相应对分配给该目标虚拟机的真实设备进行调度。
[0013]其中,检测目标虚拟机的连接数变化量包括:
[0014]按照指定统计周期时间对目标虚拟机的连接数进行采样;
[0015]将当前统计周期时间内采样得到的连接数与前一统计周期时间内采样得到的连接数进行比较确定当前目标虚拟机的连接数变化量。
[0016]其中,将所述连接数变化量转换为对应的真实设备变化量包括:
[0017]将所述连接数变化量转换为对应的带宽变化量;
[0018]将所述带宽变化量转换为对应的真实设备变化量。
[0019]其中,根据所述真实设备变化量确定当前的真实设备变化趋势级别包括:
[0020]根据真实设备变化量确定真实设备变化所对应的基数数目;
[0021 ]根据真实设备变化所对应的基数数目和当前分配窗口大小所对应的基数数目确定当前的真实设备变化趋势级别。
[0022]其中,根据真实设备变化所对应的基数数目和当前分配窗口大小所对应的基数数目确定当前的真实设备变化趋势级别包括:
[0023]若所述真实设备变化所对应的基数数目值大于零,且所述真实设备变化所对应的基数数目值大于当前分配窗口大小所对应的基数数目,则确定当前的真实设备变化趋势级别为快速增加趋势级别;
[0024]若所述真实设备变化所对应的基数数目大于零,且所述真实设备变化所对应的基数数目小于当前分配窗口大小所对应的基数数目与调整门限阈值系数的乘积,则确定当前的真实设备变化趋势为基本稳定趋势级别;
[0025]若所述真实设备变化所对应的基数数目大于零,且所述真实设备变化所对应的基数数目大于当前分配窗口大小所对应基数数目与调整门限阈值系数的乘积,并小于当前分配窗口大小所对应的基数数目,则确定当前的真实设备变化趋势为缓慢增加趋势级别;
[0026]若所述真实设备变化所对应的基数数目大于零,且富余至少一倍以上当前分配窗口大小所对应基数数目的带宽,则确定当前的真实设备变化趋势为富余趋势级别;
[0027]若所述真实设备变化所对应的基数数目小于零,且所述真实设备变化所对应的基数数目小于负的当前分配窗口大小所对应的基数数目,则确定当前的真实设备变化趋势级别为快速减少趋势级别;
[0028]若所述真实设备变化所对应的基数数目小于零,且所述真实设备变化所对应的基数数目大于负的当前分配窗口大小所对应的基数数目与调整门限阈值系数的乘积,则确定当前的真实设备变化趋势为基本稳定趋势级别;
[0029]若所述真实设备变化所对应的基数数目小于零,且所述真实设备变化所对应的基数数目小于负的当前分配窗口大小所对应的基数数目与调整门限阈值系数的乘积,并大于负的当前分配窗口大小所对应的基数数目,则确定当前的真实设备变化趋势为缓慢减少趋势级别。
[0030]其中,对分配给该目标虚拟机的真实设备进行调度包括:
[0031]对分配给该目标虚拟机的真实设备进行分配窗口大小和真实设备数量的调整。
[0032]其中,真实设备变化趋势级别为快速增加趋势级别;
[0033]对分配给该目标虚拟机的真实设备进行分配窗口大小和真实设备数量的调整包括:
[0034]调整分配窗口大小为当前值的两倍;
[0035]给目标虚拟机新分配调整后的分配窗口大小所对应基数数目所代表的数量的真实设备。
[0036]其中,真实设备变化趋势级别为缓慢增加趋势级别;
[0037]对分配给该目标虚拟机的真实设备进行分配窗口大小和真实设备数量的调整包括:
[0038]保持当前的分配窗口大小不变;
[0039]给目标虚拟机新分配当前分配窗口大小所对应基数数目所代表的数量的真实设备。
[0040]其中,真实设备变化趋势级别为基本稳定趋势级别;
[0041 ]对分配给该目标虚拟机的真实设备进行分配窗口大小和真实设备数量的调整包括:
[0042]保持当前的分配窗口大小不变;
[0043]判断当前需要的带宽总量是否大于所有真实设备可提供的带宽总量,若判断结果为是,则给目标虚拟机新分配当前分配窗口大小所对应基数数目所代表的数量的真实设备,否则,继续保持目标虚拟机当前的真实设备数量。
[0044]其中,真实设备变化趋势级别为缓慢减少趋势级别;
[0045]对分配给该目标虚拟机的真实设备进行分配窗口大小和真实设备数量的调整包括:
[0046]保持当前的分配窗口大小不变;
[0047]以基数为单位回收目标虚拟机中全部没有客户端连接的真实设备组。
[0048]其中,真实设备变化趋势级别为快速减少趋势级别;
[0049]对分配给该目标虚拟机的真实设备进行分配窗口大小和真实设备数量的调整包括:
[0050]调整分配窗口大小为当前值的一半,如果新的值不是一个整数,则向上取整数;
[0051]以基数为单位回收目标虚拟机中全部没有客户端连接的真实设备组。
[0052]其中,真实设备变化趋势级别为富余趋势级别;
[0053]对分配给该目标虚拟机的真实设备进行分配窗口大小和真实设备数量的调整包括:
[0054]调整分配窗口大小为当前值的一半,如果新值不是整数,则向上取整数;
[0055]以基数为单位回收目标虚拟机中全部没有客户端连接的真实设备组。
[0056]其中,对目标虚拟机的真实设备数量按照下述任一种方式进行初始分配:
[0057]全部分配方式;折半分配方式、最小分配方式以及中间量分配方式。
[0058]根据本发明的另一方面,本发明实施例提供的一种实现虚拟机真实设备调度的装置,其包括:
[0059]检测处理模块,用于检测当前目标虚拟机的连接数变化量;
[0060]转换处理模块,用于将所述连接数变化量转换为对应的真实设备变化量;
[0061]真实设备变化趋势级别确定处理模块,用于根据所述真实设备变化量确定当前的真实设备变化趋势级别;
[0062]调度处理模块,根据当前的真实设备变化趋势级别相应对分配给该目标虚拟机的真实设备进行调度。
[0063]其中,检测处理模块包括:
[0064]采样子模块,用于按照指定统计周期时间对目标虚拟机的连接数进行采样;
[0065]第一确定子模块,用于将当前统计周期时间内采样得到的连接数与前一统计周期时间内采样得到的连接数进行比较确定当前目标虚拟机的连接数变化量。
[0066]其中,转换处理模块包括:
[0
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1