一种带宽控制方法及电子设备的制造方法

文档序号:9417226阅读:321来源:国知局
一种带宽控制方法及电子设备的制造方法
【技术领域】
[0001]本发明涉及电子技术领域,特别涉及一种带宽控制方法及电子设备。
【背景技术】
[0002]随着科学技术的不断发展,电子技术也得到了飞速的发展,很多电子设备,如智能手机、笔记本电脑等,逐渐成为了人们日常生活的必需品。为了最大化利用电子设备的物理硬件,通常使用KVM虚拟化技术,将一个物理主机虚拟化成多个虚拟机。
[0003]在现有技术中,在对基于KVM的虚拟化技术虚拟机进行带宽控制时,通常使用Linux上的TC命令,而TC命令的实现是基于流量出口限制不同物理主机之间的带宽,即限制同一物理主机上多个虚拟机的对外通信的整体带宽;或者使用TC命令预先设定好每个虚拟机对应的带宽值,使虚拟机通过预设的带宽值进行数据传输。
[0004]可见,当同一物理主机上的多个虚拟机同时与Internet网络或者局域网进行信息交换时,TC命令只能控制所述多个虚拟机的总带宽不超过所述物理主机的总带宽值或者使各个虚拟机按照预设的带宽值进行数据传输,而无法根据各个虚拟机的实际使用需求对各个虚拟机的带宽进行实时控制。
[0005]所以,现有技术中存在无法对同一物理主机上的多个虚拟机中的每个虚拟机的带宽进行灵活分配的技术问题。

【发明内容】

[0006]本申请实施例提供一种宽带控制方法及电子设备,用于解决现有技术中存在无法对同一物理主机上的多个虚拟机中的每个虚拟机的带宽进行灵活分配的技术问题,实现根据每个虚拟机的使用需求来分配带宽的技术效果。
[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]—、由于本申请实施例中的技术方案,采用获得第一虚拟机发送的第一信息,其中所述第一信息具体为第一数据请求信息或第一待传输的数据信息;基于所述第一信息获取第一带宽值;设置所述第一虚拟机的第一虚拟通道的当前带宽为所述第一带宽值的技术手段,这样,无论虚拟机进行数据交换的对象是同一物理主机上的另一虚拟机还是不同物理主机上的虚拟机,只要虚拟机管理器检测到虚拟机需要进行数据交换,虚拟机管理器便会根据实际需要交换的数据的类别或者大小,为该虚拟机分配与交换数据相匹配的带宽值,所以,有效解决了现有技术中存在无法对同一物理主机上的多个虚拟机中的每个虚拟机的带宽进行灵活分配的技术问题,实现了根据每个虚拟机的使用需求来分配带宽的技术效果O
[0051]二、由于本申请实施例中的技术方案,采用从所述第一信息中获取第一目的地址;基于所述第一目的地址,确定所述第一信息的信息类别为第一信息类别,其中,所述第一信息类别具体为局域网信息类别或广域网信息类别;基于预设的信息类别与带宽值的第一对应关系,确定与所述第一信息类别对应的第一带宽值的技术手段,这样,虚拟机管理器能够根据交换数据的目的地址区分出当前数据是需要内网带宽还是外网带宽,由于内网带宽资源较丰富,若确定出当前交换数据需要内网带宽时,则可以为该虚拟机分配较大的带宽,最大化的满足交换数据的需求;若确定出当前交换数据需要外网带宽时,则可以为该虚拟机分配较小的带宽,例如,能满足交换数据需求的最低带宽,所以,实现了区分内外网数据,并根据内外网带宽的不同为数据分配带宽的技术效果。
[0052]三、由于本申请实施例中的技术方案,采用从所述第一信息中获取端口号;基于所述端口号,确定用于发送所述第一信息的应用程序为第一程序类型;基于预设的程序类型与带宽值的第二对应关系,确定与所述第一程序类型对应的第一带宽值的技术手段,这样,虚拟机管理器能够根据发送交换数据的端口,区分出发送该数据的应用程序,例如,当该数据是由视频应用程序发送的数据请求时,此时需要分配较大的带宽;若该数据是由小说应用程序发送的数据请求时,此时便可以分配较小的带宽,所以,实现了区分不同应用程序的数据,并根据不同的应用程序合理分配带宽的技术效果。
[0053]四、由于本申请实施例中的技术方案,采用为所述第一信息类别分配第一队列;设置所述第一队列的第一队列带宽为所述第一带宽值的技术手段,这样,虚拟机管理器的入口在接收到由虚拟机发送的交换数据时,会将每个数据分配到与之相对应的队列中,并为各个队列分配相应的带宽,使数据按照预设的控制策略出队列,实现了通过虚拟机管理器的入口队列控制带宽的技术效果。
【附图说明】
[0054]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例。
[0055]图1为本申请实施例一中提供的一种带宽控制方法的流程图
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1