一种虚拟机必需网络带宽保障方法

文档序号:7600233阅读:504来源:国知局
专利名称:一种虚拟机必需网络带宽保障方法
技术领域
本发明属于虚拟机系统中网络资源调度和分配方法,具体涉及一种虚拟机必需网 络带宽保障方法,用于将有限的网络带宽资源分配给有使用需求的虚拟机,以保障各虚拟 机维持网络服务的必需网络带宽。
背景技术
虚拟机系统在硬件设施利用率、服务可靠性、服务器的整合等方面具有巨大的优 势,正面临着前所未有的发展和机遇。虚拟机系统包括虚拟化平台和多个虚拟机,各虚拟机 中配置一块或多块虚拟网卡,多个虚拟机可以在一个物理平台上同时运行,各虚拟网卡各 自使用一定的网络带宽,虚拟网卡之间相互独立,能够公平、安全的分享物理网络的资源。随着越来越多的网络应用需要向用户提供持续、稳定的服务,虚拟化平台在网络 繁忙时,如何确保虚拟机依然能够以稳定的质量向用户提供连续不间断的服务,成为虚拟 机网络质量保证的一个问题。通过虚拟化平台中网络带宽控制算法,控制虚拟机中虚拟网 卡的带宽分配,是实现虚拟机网络分配的一种方法。剑桥大学2003年所提出的Xen虚拟化平台,使用带有权值的先进先出策略,实现 对虚拟机中虚拟网卡带宽的上限控制。虚拟化平台读取各虚拟网卡的网络带宽预定值,并 据此为各虚拟网卡分配网络带宽额度。网络带宽额度为周期时间内,虚拟网卡可以使用网 络带宽的最大值,当虚拟网卡对带宽的需求大于预分配的网络带宽额度时,虚拟网卡申请 并等待下一周期时间虚拟化平台再次分配网络带宽额度。在此基础之上,各虚拟网卡共享 网络带宽资源。现有网络带宽的分配方法,当N块虚拟网卡同时繁忙时,各虚拟网卡可以使用物 理网络带宽的1/N,虚拟网卡可以实现公平共享网络资源;但为了保证虚拟机的网络服务 质量,虚拟化平台需要保障虚拟机维持服务所需要的最少网络带宽,本申请中称为必需网 络带宽,现有网络带宽的分配方法中,虚拟化平台通过权值限制其他虚拟网卡的最大带宽 额度,来保障某些虚拟网卡的必需网络带宽,这一策略的弊端在于,当网络带宽有空闲时, 其他虚拟网卡受限于带宽上限,无法充分利用空闲的网络带宽资源,造成网络资源的浪费; 虚拟机在启动时,通过读取虚拟机配置文件,确定虚拟机网络带宽等信息,实现对虚拟机网 络的初始化,在虚拟机运行过程中,网络配置修改无法生效,对带宽的再次分配只能通过中 断用户服务,重启虚拟机实现。

发明内容
本发明提出一种虚拟机中必需网络带宽保障方法,解决现有网络带宽控制方法 中,网络配置无法修改、无法保障虚拟网卡必需最小带宽的问题,实时修改虚拟网卡带宽额 度,以保证各虚拟网卡的必需网络带宽,并最大程度利用物理带宽,提高网络硬件设备的利用率。本发明的一种虚拟机必需网络带宽保障方法,用于包括虚拟化平台和M个虚拟机
一、网络带宽额度分配步骤,包括下述过程1. 1虚拟化平台从用户配置文件读取各虚拟网卡的必需网络带宽,用户配置文件 为有需求的虚拟网卡设置其必需网络带宽,将其它虚拟网卡的必需网络带宽设置为0,各虚 拟网卡必需网络带宽总和小于或等于物理带宽;1.2虚拟化平台依据所读取的用户配置文件,为各虚拟网卡分配周期时间内的网 络带宽初始值,周期时间为5 50毫秒;二、忙或闲状态判断步骤,虚拟化平台监测周期时间内各虚拟网卡实际带宽需求, 判断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,是则该虚拟网卡为空 闲状态,否则该虚拟网卡为繁忙状态,转步骤三;三、网络带宽额度调整步骤,包括下述过程3. 1将各繁忙状态虚拟网卡的网络带宽额度增加步进带宽,判断所有虚拟网卡网 络带宽额度总和是否小于或者等于物理带宽,是则转步骤二 ;否则进行过程3. 2 ;3. 2将各空闲状态虚拟网卡的网络带宽额度减少步进带宽,判断所有虚拟网卡网 络带宽额度总和是否小于或者等于物理带宽,是则转步骤二 ;否则进行过程3. 3 ;3. 3将各繁忙状态虚拟网卡的网络带宽额度与其必需网络带宽比较,将超出必需 网络带宽最多的虚拟网卡的网络带宽额度减少2倍步进带宽,判断所有虚拟网卡网络带宽 额度总和是否小于或者等于物理带宽;是则转步骤二 ;否则进行过程3. 4 ;3. 4将所有虚拟网卡网络带宽额度总和减去物理带宽,余额由所有繁忙状态虚拟 网卡的网络带宽额度平均扣除,转步骤二 ;所述物理带宽为虚拟化平台提供的物理网络带宽总和,所述步进带宽为0. 001 0. 05倍物理带宽。所述的一种虚拟机必需网络带宽保障方法,所述网络带宽额度调整步骤的过程 3. 3中,超出必需网络带宽最多的虚拟网卡数目大于1时,将各超出必需网络带宽最多的虚 拟网卡的网络带宽额度均减少2倍步进带宽。所述的一种虚拟机必需网络带宽保障方法,所述闲或忙状态判断步骤可以包括下 述过程A.虚拟化平台监测周期时间内各虚拟网卡实际带宽需求,当虚拟网卡使用完分配 的网络带宽额度后,向虚拟化平台申请再次分配网络带宽额度;B.虚拟化平台判断各虚拟网卡连续两次申请分配网络带宽额度的时间间隔是否 大于所述周期时间,是则该虚拟网卡为空闲状态,否则该虚拟网卡为繁忙状态。当虚拟网卡连续两次申请分配网络带宽额度的时间间隔大于所述周期时间时,该 虚拟网卡实际带宽需求小于分配的网络带宽额度,表示在所述周期时间内网络带宽需求较 分配的网络带宽额度少,分配的网络带宽有剩余,虚拟网卡空闲;当虚拟网卡连续两次申请分配网络带宽额度的时间间隔小于或等于所述周期时 间时,该虚拟网卡实际带宽需求不小于分配的网络带宽额度,表示在所述周期时间内网络 带宽需求较网络带宽额度多,原分配的网络带宽不足,虚拟网卡繁忙。本发明动态读出和写入虚拟机中虚拟网卡的信息,动态修改虚拟网卡网络带宽额 度,在不中断用户服务的前提下,对虚拟网卡进行配置;保留了带宽额度调度策略稳定、准确、公平的特点,通过实时监测虚拟化平台中虚拟网卡对网络带宽的使用情况,判断虚拟网 卡的忙或闲状态,将空闲的网络资源转移给有使用需求的虚拟机,保障虚拟机的必需网络 带宽;在多虚拟网卡同时繁忙时,保障各虚拟网卡的必需网络带宽,并在此前提下,剩余带 宽公平分配;对于部分虚拟机繁忙时,将带宽资源分配给有网络需求的虚拟网卡,充分利用 网络带宽;同时虚拟化平台可根据用户需求,定义网络带宽额度调整的幅度,在系统灵敏度 和调整开销中寻求平衡。


图1为本发明的流程示意图;图2为三个虚拟机的带宽调整曲线示意图。
具体实施例方式下面结合实施例对本发明做进一步的详细说明。本实施例的硬件平台采用^itel E5600处理器,2G内存,物理网卡带宽为 IOOMbps ;本实施例包括虚拟化平台和3个虚拟机Doml、Dom2和Dom3,各虚拟机采用单核虚 拟CPU,256M内存;每个虚拟机使用单块虚拟网卡,故虚拟机网络带宽即为虚拟网卡网络带 宽;测试用的客户端和各虚拟机连接在同一个交换机,组成星型网络。测试使用惠普公司开 发的Netperf测试软件,以充分占用虚拟机网络带宽。Doml设定必需网络带宽为20Mbps, Dom2设定必需网络带宽为40Mbps,Dom3不做必须网络带宽要求,虚拟化平台周期时间为 IOms,步进带宽为0. 005倍物理带宽。虚拟机Doml和Dom2在0 3秒中,网络请求空闲; 3 5秒中,虚拟机Doml和Dom2网络请求开始繁忙,实际带宽需求均大于IOOMbps ;5秒后, 虚拟机Doml请求减少,实际带宽请求降低为0Mbps,虚拟机Dom2请求维持繁忙不变;Dom3 网络请求虚拟机运行后一直处于繁忙状态,实际带宽请求大于100Mbps。本实施例顺序包括下述步骤一、网络带宽额度分配步骤,包括下述过程1. 1虚拟化平台从用户配置文件读取各虚拟网卡的必需网络带宽,Doml的虚拟网 卡A的必需网络带宽为20Mbps,Dom2的虚拟网卡B的必需网络带宽为40Mbps,Dom3的虚 拟网卡C的必需网络带宽为0Mbps,各虚拟网卡必需网络带宽总和为60Mbps,小于物理带宽 IOOMbps ;1. 2虚拟网卡A的网络带宽初始值设置为20Mbps,虚拟网卡B的网络带宽初始值 设置为40Mbps,虚拟网卡C的网络带宽初始值设置为OMbps ;二、忙或闲状态判断步骤,虚拟化平台监测IOms内各虚拟网卡实际带宽需求,判 断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,虚拟网卡A和B的实际 带宽需求均为0Mbps,小于分配的网络带宽额度20Mbps和40Mbps,均判断为空闲状态;虚
拟网卡C实际带宽需求大于lOOMpbs,大于分配的网络带宽额度0Mbps,判断为繁忙,转步骤 ---,三、网络带宽额度调整步骤,包括下述过程3. 1将繁忙状态的虚拟网卡C网络带宽额度增加步进带宽0. 5Mbps,此时虚拟网 卡A、B和C的网络带宽额度分别为20MpbS、40MbpS和0. 5Mbps,所有网络带宽额度总和为60. 5Mbps,小于物理带宽100Mbps,转步骤二 ;重复上述步骤二、步骤三的过程3. 1,至800ms后,虚拟网卡C网络带宽额度增加至 40Mbps,虚拟网卡A和B的网络带宽额度分别为20Mbps和40Mbps,转步骤二 ;二、忙或闲状态判断步骤,虚拟化平台监测IOms内各虚拟网卡实际带宽需求,判 断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,虚拟网卡A和B的实际 带宽需求为0Mbps,均小于分配的网络带宽额度,判断为空闲状态;虚拟网卡C的实际带宽 需求大于100Mbps,大于分配的网络带宽额度40Mbps,判断为繁忙状态,转步骤三;三、网络带宽额度调整步骤,包括下述过程3. 1将繁忙状态的虚拟网卡C的网络带宽额度增加步进带宽0.5Mbps,此时虚拟网 卡A、B和C的网络带宽额度分别为20MpbS、40MbpS和40. 5Mbps,所有网络带宽额度总和为 100. 5Mbps,大于物理带宽100Mbps,进行过程3. 2 ;3.2将空闲状态的虚拟网卡A和B的虚拟网卡的网络带宽额度减少步进带宽 0. 5Mbps,此时虚拟网卡A、B和C的网络带宽额度分别为19. 5Mbps,39. 5Mbps和40. 5Mbps, 所有网络带宽额度总和为99. 5Mbps,小于物理带宽,转步骤二 ;二、忙或闲状态判断步骤,虚拟化平台监测IOms内各虚拟网卡实际带宽需求,判 断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,虚拟网卡A和B的实际 带宽需求均为0Mbps,小于分配的网络带宽额度19. 5Mbps和39. 5Mbps,均判断为空闲状态; 虚拟网卡C的实际带宽需求大于100Mbps,大于分配的网络带宽额度40. 5Mbps,判断为繁忙 状态,转步骤三;3. 1将繁忙状态的虚拟网卡C的网络带宽额度增加步进带宽0.5Mbps,此时虚拟网 卡A、B和C的网络带宽额度分别为19. 5Mbps,39. 5Mbps和41Mbps,所有网络带宽额度总和 为99. 5Mbps,小于物理带宽100Mbps,转步骤二 ;重复上述步骤二和步骤三,至1600ms后,虚拟网卡A的虚拟网卡网络带宽额度减 少为OMbps,虚拟网卡B的虚拟网卡网络带宽额度减少为20Mbps,虚拟网卡C的网络带宽额 度增加至80Mbps,转步骤二 ;二、忙或闲状态判断步骤,虚拟化平台监测IOms内各虚拟网卡实际带宽需求,判 断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,虚拟网卡A实际带宽需 求均为0Mbps,等于分配的网络带宽额度0Mbps,判断为空闲状态;虚拟网卡B的实际带宽需 求均为0Mbps,小于分配的网络带宽额度20Mbps,判断为空闲状态;虚拟网卡C的实际带宽 需求大于100Mbps,大于分配的网络带宽额度80Mbps,判断为繁忙状态,转步骤三;3. 1将繁忙状态的虚拟网卡C的网络带宽额度增加步进带宽0.5Mbps,此时虚拟网 卡A、B和C的网络带宽额度分别为0MbpS、20MbpS和80. 5Mbps,所有网络带宽额度总和为 100. 5Mbps,大于物理带宽100Mbps,进行过程3. 2 ;3. 2将空闲状态的虚拟网卡A和B的网络带宽额度减少步进带宽0. 5Mbps,此时虚 拟网卡A、B和C的网络带宽额度分别为0Mbps、19. 5Mbps和80. 5Mbps,所有网络带宽额度 总和为100Mbps,等于物理带宽,转步骤二 ;重复上述步骤二、步骤三的过程3. 1、3. 2,在虚拟网卡A和B空闲,虚拟网卡C维持 繁忙状态时,虚拟网卡A和B的网络带宽额度降低为0Mbps,虚拟网卡C的网络带宽额度增 加至100Mbps,充分占用了物理网络带宽,达到了对物理网络设备的高效利用,这一动态调整过程需要2000ms ;重复上述步骤二,在3秒时,Doml和Dom2虚拟机网络请求增加,虚拟化平台监测 IOms内各虚拟网卡实际带宽需求,判断各虚拟网卡实际带宽需求是否小于或等于分配的网 络带宽额度;虚拟网卡A、B和C实际带宽需求均大于lOOMpbs,大于分配的网络带宽额度 OMbps,OMbps和100Mbps,均判断为繁忙状态,转步骤三;三、网络带宽额度调整步骤,包括下述过程3. 1将繁忙状态的虚拟网卡A、B和C网络带宽额度分别增加0. 5Mbps,此时虚拟网 卡A、B和C的网络带宽额度分别为0. 5Mbps,0. 5Mbps和100. 5Mbps,所有网络带宽额度总 和为101. 5Mbps,大于物理带宽100Mbps,进行过程3. 2 ;3. 2无空闲状态网卡,进行过程3.3 ;3. 3将繁忙状态虚拟网卡A、B和C分配的网络带宽额度和必需网络带宽比较,超 出必需网络带宽分别为-19. 5Mbps、-39. 5Mbps和100. 5Mbps,故减少超出必需网络带宽 最多的虚拟网卡C于2倍步进带宽1Mbps。此时虚拟网卡A、B和C的网络带宽额度分别 为0. 5Mbps,0. 5Mbps和99. 5Mbps。所有网络带宽额度总和为100. 5Mbps,大于物理带宽 100Mbps,进行过程3. 4 ;3. 4将所有网络带宽额度总和100. 5Mbps减去物理带宽100Mbps,余额0. 5Mbps由 所有繁忙的虚拟网卡网络带宽额度平均扣除,此时,虚拟网卡A、B和C带宽为0. 33Mbps, 0. 33Mbps 和 99. 33Mbps,转步骤二 ;重复上述步骤二、步骤三的过程3. 1,3. 2,3. 3,3. 4,至1200ms后,Doml和Dom2的 虚拟网卡网络带宽额度均增加至40MbpS,Dom3虚拟网卡的网络带宽额度减少至20Mbps,转
步骤二;二、忙或闲状态判断步骤,虚拟化平台监测IOms内各虚拟网卡实际带宽需求,判 断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,虚拟网卡A、B和C实际 带宽需求均大于lOOMpbs,大于分配的网络带宽额度40Mbps,40Mbps和20Mbps,均判断为繁 忙状态,转步骤三;三、网络带宽额度调整步骤,包括下述过程3. 1将繁忙状态的虚拟网卡A、B和C网络带宽额度分别增加步进带宽0. 5Mbps,此 时虚拟网卡A、B和C的网络带宽额度分别为40. 5Mbps,40. 5Mbps和20. 5Mbps,所有网络带 宽额度总和为101. 5Mbps,大于物理带宽100Mbps,进行过程3. 2 ;3. 2无空闲状态网卡,进行过程3. 3 ;3. 3将繁忙状态虚拟网卡A、B和C分配的网络带宽额度和必需网络带宽比较, 超出必需网络带宽分别为20. 5Mbps, 0. 5Mbps和20. 5Mbps,故减少超出必需网络带宽最多 的虚拟网卡A和C于2倍步进带宽1Mbps。此时虚拟网卡A、B和C的网络带宽额度分别 为39. 5Mbps,40. 5Mbps和19. 5Mbps,所有网络带宽额度总和为99. 5Mbps,小于物理带宽 100Mbps,转步骤二 ;二、忙或闲状态判断步骤,虚拟化平台监测IOms内各虚拟网卡实际带宽需求,判 断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,虚拟网卡A、B和C实际 带宽需求均大于lOOMpbs,大于分配的网络带宽额度39. 5Mbps,40. 5Mbps和19. 5Mbps,均判 断为繁忙状态,转步骤三;
三、网络带宽额度调整步骤,包括下述过程3. 1将繁忙状态的虚拟网卡A、B和C网络带宽额度分别增加步进带宽0. 5Mbps,此 时虚拟网卡A、B和C的网络带宽额度分别为40Mbps、41Mbps和20Mbps,所有网络带宽额度 总和为101Mbps,大于物理带宽100Mbps,进行过程3. 2 ;3. 2无空闲状态网卡,进行过程3. 3 ;3. 3将繁忙状态虚拟网卡A、B和C分配的网络带宽额度和必需网络带宽比较,超 出必需网络带宽分别为20Mbps,IMbps和20Mbps,故减少超出必需网络带宽最多的虚拟网 卡A和C于2倍步进带宽1Mbps。此时虚拟网卡A、B和C的网络带宽额度分别为39Mbps、 41Mbps和19Mbps,所有网络带宽额度总和为99Mbps,小于物理带宽100Mbps,转步骤二 ;二、忙或闲状态判断步骤,虚拟化平台监测IOms内各虚拟网卡实际带宽需求,判 断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,虚拟网卡A、B和C实际 带宽需求均大于lOOMpbs,大于分配的网络带宽额度39Mbps、4IMbps和19Mbps,均判断为繁 忙状态,转步骤三;三、网络带宽额度调整步骤,包括下述过程3. 1将繁忙状态的虚拟网卡A、B和C网络带宽额度分别增加步进带宽0. 5Mbps,此 时虚拟网卡A、B和C的网络带宽额度分别为39. 5Mbps,41. 5Mbps和19. 5Mbps,所有网络带 宽额度总和为100. 5Mbps,大于物理带宽100Mbps,进行过程3. 2 ;3. 2无空闲状态网卡,进行过程3. 3 ;3. 3将繁忙状态虚拟网卡A、B和C分配的网络带宽额度和必需网络带宽比较, 超出必需网络带宽分别为19. 5Mbps,1.5Mbps和19. 5Mbps,故减少超出必需网络带宽最多 的虚拟网卡A和C于2倍步进带宽1Mbps。此时虚拟网卡A、B和C的网络带宽额度分别 为38. 5Mbps,41. 5Mbps和18. 5Mbps,所有网络带宽额度总和为98. 5Mbps,小于物理带宽 100Mbps,转步骤二 ;二、忙或闲状态判断步骤,虚拟化平台监测IOms内各虚拟网卡实际带宽需求,判 断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,虚拟网卡A、B和C实际 带宽需求均大于lOOMpbs,大于分配的网络带宽额度38. 5Mbps,41. 5Mbps和18. 5Mbps,均判 断为繁忙状态,转步骤三;三、网络带宽额度调整步骤,包括下述过程3. 1将繁忙状态的虚拟网卡A、B和C网络带宽额度分别增加步进带宽0. 5Mbps,此 时虚拟网卡A、B和C的网络带宽额度分别为39Mbps、42Mbps和19Mbps,所有网络带宽额度 总和为100Mbps,等于物理带宽100Mbps,转步骤二 ;重复上述步骤二、步骤三,至4460ms时,虚拟网卡A和C的网络带宽额度减少至 33Mbps和13Mbps,Dom2的虚拟网卡的网络带宽额度增加至53Mbps,转步骤二 ;二、忙或闲状态判断步骤,虚拟化平台监测IOms内各虚拟网卡实际带宽需求,判 断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,虚拟网卡A、B和C实际 带宽需求均大于lOOMpbs,大于分配的网络带宽额度33Mbps,53Mbps和13Mbps,均判断为繁 忙状态,转步骤三;三、网络带宽额度调整步骤,包括下述过程3. 1将繁忙状态的虚拟网卡A、B和C的网络带宽额度分别增加步进带宽0.5Mbps,此时虚拟网卡A、B和C的网络带宽额度分别为33. 5Mbps,53. 5Mbps和13. 5Mbps,所有网络 带宽额度总和为100. 5Mbps,大于物理带宽100Mbps,进行过程3. 2 ;3. 2无空闲状态网卡,进行过程3. 3 ;3. 3将繁忙状态虚拟网卡A、B和C分配的网络带宽额度和必需网络带宽比较,超 出必需网络带宽分别为13. 5Mbps、13. 5Mbps和13. 5Mbps,故减少超出必需网络带宽最多 的虚拟网卡A、B和C于2倍步进带宽1Mbps。此时虚拟网卡A、B和C的网络带宽额度分 别为32. 5Mbps,52. 5Mbps和12. 5Mbps,所有网络带宽额度总和为97. 5Mbps,小于物理带宽 100Mbps,转步骤二 ;二、忙或闲状态判断步骤,虚拟化平台监测IOms内各虚拟网卡实际带宽需求,判 断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,虚拟网卡A、B和C实际 带宽需求均大于lOOMpbs,大于分配的网络带宽额度32. 5Mbps,52. 5Mbps和12. 5Mbps,判断 为繁忙状态,转步骤三;三、网络带宽额度调整步骤,包括下述过程3. 1将繁忙状态的虚拟网卡A、B和C网络带宽额度分别增加步进带宽0.5Mbps,此 时虚拟网卡A、B和C的网络带宽额度分别为33Mbps、53Mbps和13Mbps,所有网络带宽额度 总和为99Mbps,大于物理带宽100Mbps,转步骤二 ;重复上述步骤二、步骤三,虚拟网卡A、B和C分别位于33Mbps、53Mbps和13Mbps 和32. 5Mbps,52. 5Mbps和12. 5Mbps之间动态调节,并一直持续。Doml和Dom2虚拟机满足 了所设置的20Mbps和40Mbps的必需网络带宽,并和Dom3共享了剩余的40Mbps带宽,调整 网络带宽所需时间为1460ms。重复上述步骤二,5秒时,Doml虚拟机网络请求减少,虚拟网卡A实际带宽请求减 少为0Mbps,小于分配的网络带宽额度33Mbps,判断为空闲状态;Dom2和Dom3虚拟机保持 繁忙状态,虚拟网卡B和C的实际带宽请求大于100Mbps,大于分配的网络带宽额度53Mbps 和13Mbps均判断为繁忙状态,转步骤三;三、网络带宽额度调整步骤,包括下述过程3. 1将繁忙状态的虚拟网卡B和C的网络带宽额度分别增加步进带宽0. 5Mbps,此 时虚拟网卡A、B和C的网络带宽额度分别为33Mbps、53. 5Mbps和13. 5Mbps,所有网络带宽 额度总和为100Mbps,等于物理带宽,转步骤二 ;二、忙或闲状态判断步骤,虚拟化平台监测IOms内各虚拟网卡实际带宽需求,判 断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,虚拟网卡A实际带宽需 求为OMpbs,小于分配的网络带宽额度33Mbps,判断为空闲;虚拟网卡B和C的实际带宽需 求大于lOOMpbs,大于分配的网络带宽额度53. 5Mbps和13. 5Mbps,判断为繁忙,转步骤三;三、网络带宽额度调整步骤,包括下述过程3. 1将繁忙状态的虚拟网卡B和C的网络带宽额度分别增加步进带宽0. 5Mbps,此 时虚拟网卡A、B和C的网络带宽额度分别为33Mbps、54Mbps和14Mbps,所有网络带宽额度 总和为101Mbps,大于物理带宽100Mbps,进行过程3. 2 ;3. 2将空闲状态的虚拟网卡A的网络带宽额度减少步进带宽0. 5Mbps,此时虚拟网 卡A、B和C的网络带宽额度分别为32. 5Mbps,54Mbps和14Mbps,所有网络带宽额度总和为 100. 5Mbps,大于物理带宽,进行过程3. 3 ;
3. 3将繁忙状态的虚拟网卡B和C分配的网络带宽额度和必需网络带宽比较,超 出必需网络带宽分别为14Mbps和14Mbps,故减少超出必需网络带宽最多的虚拟网卡C于 2倍步进带宽1Mbps。此时虚拟网卡A、B和C的网络带宽额度分别为32. 5Mbps,53Mbps和 13Mbps,所有网络带宽额度总和为98. 5Mbps,小于物理带宽100Mbps,转步骤二 ;二、忙或闲状态判断步骤,虚拟化平台监测IOms内各虚拟网卡实际带宽需求,判 断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,虚拟网卡A实际带宽需 求为OMpbs,小于分配的网络带宽额度32. 5Mbps,判断为空闲;虚拟网卡B和C的实际带宽 需求大于lOOMpbs,大于分配的网络带宽额度53Mbps和13Mbps,判断为繁忙,转步骤三;三、网络带宽额度调整步骤,包括下述过程3. 1将繁忙状态的虚拟网卡B和C的网络带宽额度分别增加步进带宽0. 5Mbps,此 时虚拟网卡A、B和C的网络带宽额度分别为32. 5Mbps,53. 5Mbps和13. 5Mbps,所有网络带 宽额度总和为99. 5Mbps,小于物理带宽100Mbps,转步骤二 ;重复上述步骤二、步骤三,至6秒时虚拟网卡A的网络带宽额度减少为0Mbps,虚拟
网卡B的网络带宽额度增加为70Mbps,虚拟网卡C的网络带宽额度减少为30Mbps,转步骤 --;二、忙或闲状态判断步骤,虚拟化平台监测IOms内各虚拟网卡实际带宽需求,判 断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,虚拟网卡A实际带宽需 求为OMpbs,等于分配的网络带宽额度0Mbps,判断为空闲;虚拟网卡B和C的实际带宽需求 大于lOOMpbs,大于分配的网络带宽额度70Mbps和30Mbps,判断为繁忙,转步骤三;三、网络带宽额度调整步骤,包括下述过程3. 1将繁忙状态的虚拟网卡B和C的网络带宽额度分别增加步进带宽0. 5Mbps,此 时虚拟网卡A、B和C的网络带宽额度分别为0Mbps、70. 5Mbps和30. 5Mbps,所有网络带宽 额度总和为101Mbps,大于物理带宽100Mbps,进行过程3. 2 ;3. 2将空闲状态的虚拟网卡A的网络带宽额度减少步进带宽0. 5Mbps,此时虚拟网 卡A、B和C的网络带宽额度分别为0Mbps、70. 5Mbps和30. 5Mbps,所有网络带宽额度总和 为101Mbps,大于物理带宽100Mbps,进行过程3. 3 ;3. 3将繁忙状态虚拟网卡B和C的分配的网络带宽额度和必需网络带宽比较,超 出必需网络带宽分别为30. 5Mbps和30. 5Mbps,故减少超出必需网络带宽最多的虚拟网卡 C于2倍步进带宽1Mbps。此时虚拟网卡A、B和C的网络带宽额度分别为0Mbps、69. 5Mbps 和29. 5Mbps,所有网络带宽额度总和为99Mbps,小于物理带宽100Mbps,转步骤二 ;二、忙或闲状态判断步骤,虚拟化平台监测IOms内各虚拟网卡实际带宽需求,判 断各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,虚拟网卡A实际带宽需 求为OMpbs,等于分配的网络带宽额度0Mbps,判断为空闲;虚拟网卡B和C的实际带宽需求 大于lOOMpbs,大于分配的网络带宽额度69. 5Mbps和29. 5Mbps,判断为繁忙,转步骤三;三、网络带宽额度调整步骤,包括下述过程3. 1将繁忙状态的虚拟网卡B和C的网络带宽额度分别增加步进带宽0.5Mbps,此 时虚拟网卡A、B和C的网络带宽额度分别为0MbpS、70MbpS和30Mbps,所有网络带宽额度 总和为100Mbps,等于物理带宽100Mbps,转步骤二 ;重复上述步骤二、步骤三,虚拟网卡A、B和C分别位于0Mbps、69. 5Mbps,29. 5Mbps和OMbps、70Mbps和30Mbps之间动态调节,并一直持续。Dom2虚拟机满足了所设置的 40Mbps的必需网络带宽,并和Dom3共享了剩余的60Mbps带宽,调整网络带宽所需时间为 1000ms。 三个虚拟机的带宽调整曲线如图2所示,图中矩形、圆形、三角形分别表示虚拟网 卡A、B和C不同周期时间的网络带宽额度。
权利要求
1.一种虚拟机必需网络带宽保障方法,用于包括虚拟化平台和M个虚拟机的虚拟机系 统,M = 1 32,各虚拟机中配置1 2块虚拟网卡,顺序包括下述步骤一、网络带宽额度分配步骤,包括下述过程1.1虚拟化平台从用户配置文件读取各虚拟网卡的必需网络带宽,用户配置文件为有 需求的虚拟网卡设置其必需网络带宽,将其它虚拟网卡的必需网络带宽设置为0,各虚拟网 卡必需网络带宽总和小于或等于物理带宽;1.2虚拟化平台依据所读取的用户配置文件,为各虚拟网卡分配周期时间内的网络带 宽初始值,周期时间为5 50毫秒;二、忙或闲状态判断步骤,虚拟化平台监测周期时间内各虚拟网卡实际带宽需求,判断 各虚拟网卡实际带宽需求是否小于或等于分配的网络带宽额度,是则该虚拟网卡为空闲状 态,否则该虚拟网卡为繁忙状态,转步骤三;三、网络带宽额度调整步骤,包括下述过程3. 1将各繁忙状态虚拟网卡的网络带宽额度增加步进带宽,判断所有虚拟网卡网络带 宽额度总和是否小于或者等于物理带宽,是则转步骤二 ;否则进行过程3. 2 ;3. 2将各空闲状态虚拟网卡的网络带宽额度减少步进带宽,判断所有虚拟网卡网络带 宽额度总和是否小于或者等于物理带宽,是则转步骤二 ;否则进行过程3. 3 ;3. 3将各繁忙状态虚拟网卡的网络带宽额度与其必需网络带宽比较,将超出必需网络 带宽最多的虚拟网卡的网络带宽额度减少2倍步进带宽,判断所有虚拟网卡网络带宽额度 总和是否小于或者等于物理带宽;是则转步骤二 ;否则进行过程3. 4 ;3. 4将所有虚拟网卡网络带宽额度总和减去物理带宽,余额由所有繁忙状态虚拟网卡 的网络带宽额度平均扣除,转步骤二 ;所述物理带宽为虚拟化平台提供的物理网络带宽总和,所述步进带宽为0. 001 0. 05 倍物理带宽。
2.如权利要求1所述的一种虚拟机必需网络带宽保障方法,其特征在于所述网络带宽额度调整步骤的过程3. 3中,超出必需网络带宽最多的虚拟网卡数目大 于1时,将各超出必需网络带宽最多的虚拟网卡的网络带宽额度均减少2倍步进带宽。
3.如权利要求1或2所述的一种虚拟机必需网络带宽保障方法,其特征在于,所述闲或 忙状态判断步骤包括下述过程A.虚拟化平台监测周期时间内各虚拟网卡实际带宽需求,当虚拟网卡使用完分配的网 络带宽额度后,向虚拟化平台申请再次分配网络带宽额度;B.虚拟化平台判断各虚拟网卡连续两次申请分配网络带宽额度的时间间隔是否大于 所述周期时间,是则该虚拟网卡为空闲状态,否则该虚拟网卡为繁忙状态。
全文摘要
一种虚拟机必需网络带宽保障方法,属于虚拟机系统中网络资源调度和分配方法,解决现有网络带宽控制方法中,网络配置无法修改、无法保障虚拟网卡必需最小带宽的问题,实时修改虚拟网卡带宽额度,以保证各虚拟网卡的必需网络带宽,并最大程度利用物理带宽,提高网络硬件设备的利用率。本发明用于包括虚拟化平台和M个虚拟机的虚拟机系统,各虚拟机中配置1~2块虚拟网卡,顺序包括网络带宽额度分配步骤、忙或闲状态判断步骤和网络带宽额度调整步骤。本发明通过实时监测虚拟化平台中虚拟网卡对网络带宽的使用情况,判断虚拟网卡的忙或闲状态,将空闲的网络资源转移给有使用需求的虚拟机,保障虚拟机的必需网络带宽,充分利用了网络带宽。
文档编号H04L12/56GK102123093SQ20111005287
公开日2011年7月13日 申请日期2011年3月4日 优先权日2011年3月4日
发明者冯丹, 刘景宁, 王晓静, 童薇, 赵威 申请人:华中科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1