在云计算网络中分配带宽的方法和系统.pdf

上传人:Y94****206 文档编号:20672 上传时间:2018-01-12 格式:PDF 页数:25 大小:1.60MB
返回 下载 相关 举报
摘要
申请专利号:

CN201380056862.X

申请日:

2013.10.24

公开号:

CN104769550A

公开日:

2015.07.08

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效 IPC(主分类):G06F 9/50申请日:20131024|||公开

IPC分类号:

G06F9/50; H04L12/931

主分类号:

G06F9/50

申请人:

爱立信股份有限公司

发明人:

张颖; 李丹; 朱晶

地址:

瑞典斯德哥尔摩

优先权:

13/663416 2012.10.29 US

专利代理机构:

中国专利代理(香港)有限公司72001

代理人:

杨美灵; 姜甜

PDF下载: PDF下载
内容摘要

网络服务提供商为提供虚拟网络到在云计算环境中要求带宽的租户而实现的方法,其中,虚拟网络包括有一个或更多个虚拟交换机的第一集,这些虚拟交换机管理有一个或更多个物理服务器的第二集,而物理服务器托管第一多个可用虚拟机(VM),方法包括由至少一个虚拟交换机接收对第二多个VM的带宽请求,通过计算与虚拟交换机关联的分配范围(AR),确定是否接受第二多个VM的请求,其中,AR表示在虚拟交换机内至少一个非连续的VM分配空间,以及响应接受第二多个VM的请求的确定,将VM分配到租户。

权利要求书

1.   一种由网络服务提供商为提供虚拟网络给在云计算环境中要求带宽的租户而实现的方法,其中所述虚拟网络包括有一个或更多个虚拟交换机的第一集,所述虚拟交换机管理有一个或更多个物理服务器的第二集,所述物理服务器托管第一多个可用虚拟机(VM),所述方法包括:
由至少一个虚拟交换机接收(504)对第二多个VM的带宽请求;
通过计算与所述虚拟交换机关联的分配范围(AR),确定(506)是否接受所述第二多个VM的所述请求,其中所述AR表示所述虚拟交换机内至少一个非连续的VM分配空间;以及
响应接受所述第二多个VM的所述请求的所述确定,分配(508) VM到所述租户。

2.
   如权利要求1所述的方法,其中对第二多个VM的所述请求转换自租户的带宽请求。

3.
   如权利要求1所述的方法,其中所述AR是包含一定数量的比特的数据结构,比特的数量等于1加上所述第二多个VM的数量,每个比特表示分配用于所述带宽请求的所述虚拟交换机内特定数量的VM的可行性。

4.
   如权利要求1所述的方法,其中部分基于所述虚拟交换机的出境链路的残余带宽和与所述虚拟交换机管理的有一个或更多个物理服务器的第三集相关联的AR,计算所述虚拟交换机的所述AR。

5.
   如权利要求4所述的方法,其中部分基于所述物理服务器的出境链路的残余带宽和所述物理服务器的第三多个可用VM,计算与有一个或更多个物理服务器的所述第三集相关联的AR。

6.
   如权利要求4所述的方法,其中与有一个或更多个物理服务器的所述第三集的物理服务器相关联的AR是包含一定数量的比特的数据结构,比特的数量等于1加上所述第二多个VM的数量,每个比特表示分配用于所述带宽请求的物理服务器内特定数量的VM的可行性。

7.
   如权利要求6所述的方法,其中所述AR包含连续的基本部分和至少一个扩展部分。

8.
   如权利要求7所述的方法,其中连续基本部分的长度小于所述AR的总长度的一半。

9.
   如权利要求1所述的方法,其中虚拟交换机所述第一集在分层结构上配置有至少两个级别,更高级别虚拟交换机管理至少一个更低级别虚拟交换机。

10.
   如权利要求1所述的方法,其中以从带有AR的最高可允许扩展部分上限的服务器到带有AR的更低可允许扩展部分的剩余服务器的顺序,分配VM到服务器。

11.
   如权利要求10所述的方法,其中在分配AR的扩展部分完成后,还以从带有具AR的最低上限基本部分的VR的服务器到带有AR的更高上限基本部分的剩余服务器的顺序,分配VM到服务器。

12.
   如权利要求1所述的方法,还包括将租户带宽消耗限制(510)在对所述租户的所述分配的VM内。

13.
   如权利要求1所述的方法,还包括响应接受所述第二多个VM的所述请求的所述确定,发送(520)所述租户拒绝消息。

14.
   一种充当虚拟交换机以便网络服务提供商提供虚拟网络给在云计算环境中要求带宽的租户的网络元件,其中所述虚拟网络包括有一个或更多个虚拟交换机的第一集,所述虚拟交换机管理有一个或更多个物理服务器的第二集,所述物理服务器托管第一多个可用虚拟机(VM),所述网络元件包括:
用户接口模块(1202),配置成接收对第二多个VM的带宽请求;
分配范围(AR)计算模块(1214),配置成计算关联于所述虚拟交换机的AR以确定是否授受所述第二多个VM的所述请求,其中所述AR表示所述虚拟交换机内至少一个非连续VM分配空间;以及
VM分配模块(1216),配置成响应接受所述第二多个VM的所述请求的所述确定,分配VM到所述租户。

15.
   如权利要求14所述的网络元件,还包括:
所述用户接口模块还配置成接收对租户的带宽请求;以及
用户请求转换模块(1212),配置成将来自所述租户的所述带宽请求转换成第二多个VM的请求。

16.
   如权利要求14所述的网络元件,其中所述AR是包含一定数量的比特的数据结构,比特的数量等于1加上所述第二多个VM的数量,每个比特表示分配用于所述带宽请求的所述网络元件内特定数量的VM的可行性。

17.
   如权利要求14所述的网络元件,还包括配置成与有由所述网络元件管理的一个或更多个物理服务器的第三集进行通信的服务器通信模块(1206),其中部分基于所述网络元件的出境链路的残余带宽和与有一个或更多个物理服务器的所述第三集相关联的AR,计算所述网络元件的所述AR。

18.
   如权利要求17所述的网络元件,其中部分基于所述物理服务器的出境链路的残余带宽和所述物理服务器的第三多个可用VM,计算与有一个或更多个物理服务器的所述第三集相关联的AR。

19.
   如权利要求17所述的网络元件,其中与有一个或更多个物理服务器的所述第三集的物理服务器相关联的AR是包含一定数量的比特的数据结构,比特的数量等于1加上所述第二多个VM的数量,每个比特表示分配用于所述带宽请求的物理服务器内特定数量的VM的可行性。

20.
   如权利要求19所述的网络元件,其中所述AR包含连续的基本部分和至少一个扩展部分。

21.
   如权利要求20所述的网络元件,其中所述AR计算模块还配置成拆分AR,以便对于所有AR,连续的基本部分的长度小于所述AR的总长度的一半。

22.
   如权利要求14所述的网络元件,其中虚拟交换机所述第一集在分层结构上配置有至少两个级别,更高级别虚拟交换机管理至少一个更低级别虚拟交换机。

23.
   如权利要求14所述的网络元件,其中所述VM分配模块配置成以从带有AR的最高可允许扩展部分上限的服务器到带有AR的更低可允许扩展部分的剩余服务器的顺序,分配VM到服务器。

24.
   如权利要求23所述的网络元件,其中所述VM分配模块配置成以从带有具AR的最低上限基本部分的VR的服务器到带有AR的更高上限基本部分的剩余服务器的顺序分配VM到服务器,并且随后以从带有具AR的最低上限基本部分的VR的服务器到带有AR的更高上限基本部分的剩余服务器的顺序,分配VM到服务器。

25.
   如权利要求14所述的网络元件,还包括配置成将所述租户限制到所述VM分配的所述带宽的服务器带宽限制模块(1208)。

26.
   如权利要求14所述的网络元件,其中所述用户接口模块还配置成在确定不能满足所述带宽请求时,发送所述租户拒绝消息。

27.
   一种由网络服务提供商为提供虚拟网络给在云计算环境中要求带宽的租户而实现的方法,其中所述虚拟网络包括虚拟交换机的第一集,所述虚拟交换机管理托管第一多个可用虚拟机(VM)的物理服务器的第二集,所述方法包括:
接收(502)来自租户的带宽请求;
将所述带宽请求转换(504)成第二多个VM的请求;
通过计算与所述虚拟交换机相关联的分配范围(AR),确定(506)是否接受所述第二多个VM的所述请求,其中所述AR表示所述虚拟交换机内至少一个非连续的VM分配空间,以及其中部分基于所述虚拟交换机的出境链路的残余带宽和与所述虚拟交换机管理的有一个或更多个物理服务器的第三集相关联的AR,计算所述AR;
响应接受所述第二多个VM的所述请求的所述确定,以从带有AR的最高可允许扩展部分上限的服务器到带有AR的更低可允许扩展部分上限的剩余服务器的顺序,分配(508) VM到所述租户,之后以从带有具AR的最低上限基本部分的VR的服务器到带有AR的更高上限基本部分的剩余服务器的顺序进行分配;以及
将所述租户的带宽消耗限制(510)在所述分配的VM内。

28.
   一种充当虚拟交换机以便网络服务提供商提供虚拟网络给在云计算环境中要求带宽的租户的网络元件,其中所述虚拟网络包括虚拟交换机的第一集,所述虚拟交换机管理物理服务器的第二集,所述物理服务器托管第一多个可用虚拟机(VM),所述网络元件包括:
用户接口模块(1202),配置成接收来自租户的带宽请求;
用户请求转换模块(1212),配置成将所述带宽请求转换成第二多个VM的请求;
分配范围(AR)计算模块(1214),配置成计算与所述虚拟交换机相关联的AR,以确定是否接受所述第二多个VM的所述请求,其中所述AR表示所述虚拟交换机内至少一个非连续的VM分配空间,以及其中部分基于所述虚拟交换机的出境链路的残余带宽和与所述虚拟交换机管理的有一个或更多个物理服务器的第三集相关联的AR,计算所述AR;
VM分配模块(1216),配置成响应接受所述第二多个VM的所述请求的所述确定,以从带有AR的最高可允许扩展部分上限的服务器到带有AR的更低可允许扩展部分上限的剩余服务器的顺序,分配VM到所述租户,之后以从带有具AR的最低上限基本部分的VR的服务器到带有AR的更高上限基本部分的剩余服务器的顺序进行分配;以及
服务器带宽限制模块(1208),配置成将所述租户限制到所述VM分配的所述带宽。

说明书

在云计算网络中分配带宽的方法和系统
发明领域
本发明的实施例涉及云计算网络领域。更具体地说,本发明的实施例涉及用于分配带宽到在云计算网络中要求带宽的租户的方法和系统。
背景技术
近年来,云计算改变了创建和运行应用的方式。它采用基础设施即服务(IaaS)模型,其中,消费者将其计算和软件能力外包到第三方基础设施,并且按需为服务使用付费。与使用专有、内部基础设施的传统计算模型相比,云计算提供了许多优点,包括规模经济、动态配给和低资本支出。通过“即付即用”(pay-as-you-go)计费模型,它允许客户在几分钟而不是几天或几月内建立并且迅速扩展,遍布全球。
尽管其增长势头迅猛,但由于可靠性、性能、安全性和隐私顾虑原因,许多公司仍不愿将其服务或企业应用转移到云中。为最大化经济利益和资源利用,同时启动多个虚拟机(VM)以在相同物理服务器上执行。包括云提供商在内的许多网络服务提供商使用基于主机的虚拟化技术实现在终端主机级别上VM之间的分隔和性能隔离。在主机互连的网络中,部署物理路由器和链路的相同集以无差别携带用于所有客户的业务。在此种基础设施中,网络服务提供商不向租户提供保证的网络资源。因此,视网络负载和其它租户的使用而定,在相同租户的VM之间的带宽能够随时间有相当大变化。云计算环境中这种带宽变化妨碍了租户高效操作和开展任务关键型活动的能力。网络服务提供商需要更有效的网络资源分配方法。
发明内容
一种网络服务提供商为提供虚拟网络给在云计算环境中要求带宽的租户而实现的方法,其中,虚拟网络包括有一个或更多个虚拟交换机的第一集,这些虚拟交换机管理有一个或更多个物理服务器的第二集,而物理服务器托管第一多个可用虚拟机(VM),方法包括由至少一个虚拟交换机接收对第二多个VM的带宽请求,通过计算与虚拟交换机关联的分配范围(AR),确定是否接受第二多个VM的请求,其中,AR表示在虚拟交换机内至少一个非连续的VM分配空间,以及响应接受第二多个VM的请求的确定,将VM分配到租户。
一种网络元件,充当虚拟交换机以便网络服务提供商提供虚拟网络给在云计算环境中要求带宽的租户,其中,虚拟网络包括有一个或更多个虚拟交换机的第一集,虚拟交换机管理有一个或更多个物理服务器的第二集,物理服务器托管第一多个可用虚拟机(VM)。网络元件包括:接收来自租户的带宽请求的用户接口模块;将带宽请求转换成第二多个VM的请求的用户请求转换模块;计算与虚拟交换机关联的AR以确定是否接受第二多个VM的请求的分配范围(AR)计算模块,其中,AR表示在虚拟交换机内至少一个非连续的VM分配空间;以及响应接受第二多个VM的请求的确定,分配VM到租户的VM分配模块。
附图说明
本发明通过示例方式而不是限制的方式在附图的图形中示出,图中相似的标号表示类似的元素。应注意,在此公开中对“一”或“一个”实施例的不同引用不一定是指相同的实施例,并且此类引用是指至少一个。此外,结合实施例描述某个特定特征、结构或特性时,认为结合无论是否明确描述的其它实施例影响此类特征、结构或特性是在本领域技术人员的认知之内。
图1是示出网络配置的一个实施例及其相关联操作的框图。
图2是示出网络配置的另一实施例的框图。
图3是示出用于虚拟交换机和物理服务器的分配范围(AR)值的一个实施例的框图。
图4是示出AR的一个实施例的框图。
图5是示出带宽分配方法的一个实施例的流程图。
图6是示出计算虚拟交换机的AR的一个实施例的流程图。
图7是示出计算用于物理服务器的AR的一个实施例的流程图。
图8是示出计算用于虚拟交换机的AR,而不考虑存在的带宽约束的一个实施例的流程图。
图9是示出在已接受带宽请求后分配VM的一个实施例的流程图。
图10是示出在虚拟交换机的控制下在扩展部分分配VM的一个实施例的流程图。
图11是示出在虚拟交换机的控制下在基本部分分配VM的一个实施例的流程图。
图12是示出配置成分配带宽的虚拟交换机的一个实施例的框图。
具体实施方式
在下面的描述中,陈述了许多特定细节。然而,要理解的是,实践本发明的实施例可无需这些特定细节。在其它情况下,公知的电路、结构和技术未详细显示以免混淆对此描述的理解。然而,本领域的技术人员将理解,可无需此类特定细节而实践本发明。通过包括的描述,本领域技术人员将能够在不进行不当实验的情况下实现适当的功能性。
说明书中对“一个实施例”、“一实施例”、“示例实施例”等的引用指所述实施例可包括特定特征、结构或特性,但每个实施例可不一定包括特定特征、结构或特性。另外,此类词语不一定指同一实施例。此外,在结合实某个实施例描述某个特定特征、结构或特性时,认为结合无论是否明确描述的其它实施例来实现此类特征、结构或特性是在本领域技术人员的认知之内。
在下面的说明和权利要求中,可使用术语“耦合”和“连接”及其衍生词。应理解,这些术语无意做为彼此的同义词。“耦合”用于指示可相互直接物理或电接触或不直接物理或电接触的两个或更多个元件相互协作或交互。“连接”用于指示在相互耦合的两个或更多个元件之间通信的建立。
在本文中使用时,网络元件(例如,路由器、交换机、桥接器)是一件连网设备,包括硬件和软件,其在通信上与网络上的其它设备(例如,其它网络元件、计算机终端站)互连。一些网络元件是“多服务网络元件”,其为多个连网功能(例如,路由选择、桥接、交换、第2层聚合、会话边界控制、服务质量和/或订户管理)提供支持和/或为多个应用服务(例如,数据、话音和视频)提供支持。订户终端站(例如,服务器、工作站、膝上型计算机、上网本、掌上型计算机、移动电话、智能电话、多媒体电话、因特网协议话音(VOIP)电话、用户设备、终端、便携式媒体播放器、GPS单元、游戏系统、机顶盒(STB))访问通过因特网提供的内容/服务和/或在因特网上重叠(例如,隧穿)的虚拟专用网(VPN)上提供的内容/服务。内容和/或服务一般由属于参与对等服务的服务或内容提供商或终端站的一个或更多个终端站(例如,服务器终端站)提供,并且可例如包括公共网页(例如,免费内容、店面、搜索服务)、私人网页(例如,提供电子邮件服务的用户名/密码访问网页)和/或通过VPN的企业网络等。一般情况下,订户终端站(例如,通过(以有线或无线方式)耦合到接入网络的客户场所设备)耦合到边缘网络元件,所述边缘网络元件(例如通过一个或更多个核心网络元件)耦合到其它边缘网络元件,所述其它边缘网络元件耦合到其它终端站(例如,服务器终端站)。
本发明的不同实施例可使用软件、固件和/或硬件的不同组合实现。因此,所述图中所示技术可使用一个或更多个电子装置(例如,终端站、网络元件)上存储和执行的代码和/或数据来实现。此类电子装置使用计算机可读介质(在内部和/或通过网络与其它电子装置)存储和传递代码和数据,计算机可读介质如非暂时性计算机可读存储介质(例如,磁盘、光盘、随机存取存储器、只读存储器、闪存装置、相变存储器)和暂时性计算机可读传送介质(例如,电气、光学、声学或其它形式传播信号 - 如载波、红外信号、数字信号)。另外,此类电子装置一般情况下包括耦合到诸如一个或更多个存储装置(非暂时性机器可读存储介质)、用户输入/输出装置(例如,键盘、触摸屏和/或显示器)和网络连接等的一个或更多个其它组件的一个或更多个处理器的集合。处理器的集合与其它组件的耦合一般情况下是通过一个或更多个总线和桥接器(也称为总线控制器)。因此,给定电子装置的存储装置一般情况下存储代码和/或数据以便在该电子装置的一个或更多个处理器的集合上执行。
在云服务环境中,理想的网络资源分配方法可具有几个可取的特征。首先,它可允许租户直观指定其应用的需求,并且支持灵活更新。更具体地说,一方面,它需要保持在租户与提供商之间用于配置不同服务的接口的简单性。另一方面,租户应能够指定各种类型的需求要求。分配方法应允许在使用的整个持续时间期内能够满足租户的请求。其次,提供商可能能够利用复用的优点以在其物理网络上支持许多虚拟网络。共享的量越大,云提供商获得的利润就越多。第三,分配方法可随租户的规模进行缩放。如果租户的带宽请求超过云的网络容量,则应尽快向租户提供拒绝判定,以便租户能够调整其请求或者选择其它云提供商。如果能够接受租户请求,则也应快速完成VM分配以允许租户更早地启动其应用任务。本发明提议了包含这些特征的资源分配的方法和系统。
图1是示出网络配置的一个实施例及其相关联操作的框图。在云计算环境中,租户能够是订户终端站,例如,服务器、工作站、膝上型计算机、上网本、掌上型计算机、移动电话、智能电话、多媒体电话、因特网协议话音(VOIP)电话、用户设备、终端、便携式媒体播放器、GPS单元、游戏系统或机顶盒(STB)。这些租户运行要求带宽的软件应用。网络服务提供商(或云提供商)通过向租户指派互连虚拟机(VM),向租户提供虚拟网络服务。要注意的是,术语网络服务提供商和云提供商在说明书内可交换使用。租户无需知道底层物理基础设施,而只关注是否能够满足高级服务级别协议(SLA)。为此,每个租户能够根据拓扑连接性、安全性策略、要求的带宽等等指定网络服务的其要求。本发明集中于带宽要求,这是最重要的网络性能度量之一。
参照图1,在标号150,租户要求到虚拟交换机110的带宽。虚拟交换机是在云计算环境中管理和连接VM的装置。在标号152,虚拟交换机110将每秒比特数为单位的带宽要求转换成VM的数量。在标号154,虚拟交换机110随后确定是否接受租户的带宽请求。确定是基于与虚拟交换机相关联的新的数据结构,分配范围(AR)。如本文中下面更详细所述,基于多个因素计算虚拟交换机的AR。假设虚拟交换机110确定它具有足够的资源,可为租户分配带宽,则在标号156,它继续操作以便在物理服务器102上分配VM,并且让租户知道。要注意的是,虽然虚拟交换机110示为单独的装置,但它能够集成在物理服务器内。例如,也称为虚拟机管理器(VMM),管理物理服务器的并发虚拟机会话的管理程序(hypervisor)可包含虚拟交换机的功能性。在本说明书中,物理服务器和服务器可交换使用。
图2是示出网络配置的另一实施例的框图。在图1中,租户的带宽请求发送到虚拟交换机,并且虚拟交换机控制包含多个VM的物理服务器。图2示出更复杂的网络配置。在图2中,根虚拟交换机202与外部租户请求交互。根虚拟交换机202管理虚拟交换机的群组,虚拟交换机群组204。虚拟交换机群组204的每个交换机管理其内包含多个VM的物理服务器的集群。如图所示,每个交换机可包含不同数量的服务器,并且每个服务器可管理不同数量的VM。在如图2所示的分层虚拟交换机网络中,仅根虚拟交换机202将租户的带宽请求转换成VM的数量,并且根虚拟交换机202确定对下面的每个虚拟交换机请求的VM的数量。参照图2,在标号250,租户要求到根虚拟交换机202的带宽。随后在252,将带宽的请求转换成VM的数量的请求。随后,VM的请求传递到虚拟交换机的集群(虚拟交换机群组204)。随后在256,虚拟交换机群组204内的虚拟交换机确定是否在它们管理的服务器内能够接纳请求数量的VM。要注意的是,虽然图2中只示出虚拟交换机的两个级别,但在实践中,实现了更多级别的虚拟交换机,并且能够实现带宽分配的类似方法。另外,能够以许多不同方式实现提议的带宽分配方法。例如,可使用云计算环境的编配(orchestration)层,而不是根虚拟交换机,其中,云编配器检测来自多个租户的进入带宽请求,并且确定接纳某些请求和使用本文中讨论的方法分配VM的可行性。另外,也称为管理程序的虚拟交换机管理器可管理租户请求,并且确定接纳某些请求和分配VM的可行性。
图3是示出用于虚拟交换机和物理服务器的分配范围(AR)值的一个实施例的框图。在图3中,虚拟交换机310管理服务器302和服务器304。在服务器302/304与虚拟交换机310之间分别有400 Mbps和100 Mbps残余带宽。残余带宽是当前可供在通信路径中分配的带宽。假设服务器302、304分别包含8和11个可用VM,每个VM上有100 Mbps带宽。还假设租户请求带宽,并且带宽请求转换成每VM要求100 Mbps的VM的数量。在该情况下,服务器302能够接纳0到4个VM。服务器302可始终不接受任何VM,因此,0 VM分配是可行的。由于在服务器302与虚拟交换机310之间的残余带宽是400 Mbps,因此,服务器302可取用最多4个VM(4 * 100 Mbps=400 Mbps残余带宽)。由于残余带宽限制,服务器302不能分配超过4个VM。然而,如果租户分配所有其带宽请求到服务器302,并且因此无需与任何其它服务器进行通信,则租户能够获得全部8个可用VM。因此,我们可将可行分配空间表示为                                               ,即,服务器302可分配有0到4或8个VM。类似地,由虚拟交换机310管理的另一服务器,服务器304由于100 Mbps残余带宽限制原因可分配0到1个VM,或者在服务器304能够接纳总带宽请求时,分配11个VM。也就是说,用于服务器304的可行分配空间是。在虚拟交换机310级别,分配空间[0, 5]是可行的,并且它通过在服务器302的分配空间[0, 4]和在服务器304的[0, 1]来达成。分配空间[8, 9]也是可行的,并且它通过分配空间[8, 8]和[0, 1]来达成。要注意的是,此分配空间是可行的,这是因为在虚拟交换机310与服务器304之间的链路上剩有100 Mbps残余带宽,这是在分配到单个VM,在不同VM之间通信所要求的最小值(100M是用于租户的基本带宽)。另外,分配空间[11, 12]对于虚拟交换机310也是可行的,并且它通过在服务器302的分配空间[0, 1]和在服务器304的分配空间[11, 11]来达成。要注意的是,服务器302不能分配超过1个VM,这是因为在虚拟交换机310与服务器304之间的残余带宽只是100 Mbps,并且为使属于相同租户的VM进行通信,在服务器302上的VM不能取用比在两个服务器之间最小管道更多的带宽。总之,用于虚拟交换机310的可行分配空间是。换而言之,虚拟交换机不能为给定带宽请求分配连续数量的VM。
基于VM的分配可以是非连续的观察,称为分配范围的新数据结构可用于表示非连续的分配空间。图4是示出用于节点的分配范围的一个实施例的框图。节点能够是虚拟交换机或服务器。在图4中,AR是比特流。比特流的长度等于要求的VM的数量加1。在一个实施例中,如果n个VM能够分配到以节点i为根的子树中,则AR的第n个最左比特设为1,并且它是用于节点i的可行解,并且它表示为AR(i)。例如,如果AR(i)是11100110,则它表示0、1、2、5或6个VM能够分配到以节点i为根的子树中。参照图3,对于请求12个VM的租户,AR将具有13比特。用于服务器302的AR是1111100010000,并且用于服务器304的AR是1100000000010。用于虚拟交换机310的AR是两者的组合,并且它将具有AR 1111110011011。AR表示用于请求租户的可行VM分配。如本文中上面在图3的示例中所述,AR的值可取决于可用VM的数量和在连接服务器和虚拟交换机的链路中的残余带宽。
像图3中用于虚拟交换机310的AR一样,AR能够具有几个连续的可行解空间。为方便起见,第一连续可行解空间可称为基本部分,并且另一可行解空间称为扩展部分。如果我们使用下限和上限的阵列表示这些部分,则它为的形式,其中,b是基本部分的上限,分别是第q个扩展部分的下限和上限。由于不分配VM到子树始终是可行解,因此,基本部分的下限是0。图4示出包含带有基本部分402和扩展部分404的28比特(用于27个VM)的AR的结构。已知AR表示用于分配VM到请求租户的已知可行空间,因此,AR的计算是资源分配的关键组成。要注意的是,比特流只是AR的一个实施例。AR可以不同方式实现,但仍体现本文中讨论的发明思想。例如,AR可实现为阵列,阵列的每个元素表示特定VM到请求租户的分配。AR也可实现为从二进制比特流转换的数值。
图5是示出带宽分配方法的一个实施例的流程图。过程可选择性地在框502从租户接收带宽请求开始。接收请求的一方可以是根虚拟交换机、管理虚拟交换机的网络管理器或网络服务提供商的编配层内的编配器。带宽请求被转换成虚拟机的数量的请求,以便虚拟机可接受。在框504,由至少一个虚拟交换机接收虚拟机的数量的请求。虚拟交换机将计算AR,并且确定它是否具有足够的资源以支持请求租户。如果能够接纳请求,则在框508将分配VM。如果不能接纳请求,则可选择性地将拒绝消息发送回请求租户,并且过程结束。租户可向不同虚拟交换机提出请求,或者它可降低带宽请求并且重试。如果虚拟交换机分配VM到请求租户,则在510,它可将租户的带宽消耗限制在分配的VM内。
图6是示出计算虚拟交换机的AR的一个实施例的流程图。虚拟交换机的AR的计算在框602从计算在交换机下所有服务器的AR开始。在一个实施例中,计算取决于服务器的可用VM、服务器到其出境链路到虚拟交换机的残余带宽、VM的请求数量及每个VM的带宽。如果虚拟服务器的计算的AR包含超过请求的VM的一半,则在框604,AR可拆分成两半。随后,在框606,通过迭代检查它管理的服务器的AR,推导用于交换机的AR1。AR1是未考虑虚拟交换机到网络内另一虚拟交换机的出境链路的残余带宽的AR。随后在框608,通过添加残余带宽的考虑,可推导虚拟交换机的AR。
图7是示出计算用于物理服务器的AR的一个实施例的流程图。对于物理服务器,VM的请求的数量N已知。此外,服务器上可用VM的数量a、服务器的出境链路的残余带宽c及每个VM的要求的带宽B也已知。基于该知识,过程在702开始,并且随后在704,它先确定可用VM的数量a是否小于N。如果它不是更小,则在框706,随后确定c/B是否小于。如果不是,则在框720,将值[0, N]赋予服务器i的AR,AR(i),并且计算完成,以及N个VM的请求能够被接纳。如果在框720,c/B小于,则将值赋予AR(i)。回到框704,如果a小于N,则在框706,确定a是否小于c/B。如果是,则在框708,将值[0, a]赋予AR(i)。如果a不小于c/B,则在框710,确定a是否小于N-c/B。如果是,则在框712,将值[0, c/B]赋予AR(i)。否则,它被赋予值。计算也可以用于AR(i)的以下公式表述:

要注意的是,物理服务器的AR(i)的计算可由网络内的不同装置执行。它可由服务器本身、VM的管理程序、虚拟交换机或不同网络管理器计算。
图8是示出计算用于虚拟交换机的AR,而不考虑残余带宽约束的一个实施例的流程图。用于虚拟交换机而不考虑残余带宽约束的AR能够表示为用于交换机i的AR1(i)。对于交换机i,每个VM的要求的带宽B、交换机管理的服务器的总数r是已知的。如上本文中所述,用于虚拟交换机的AR的计算是在虚拟交换机管理的服务器的AR已经确定之后。因此,用于每个服务器j的AR的基本部分b(j)、服务器j内扩展部分的总数k及AR的k个扩展部分内一个扩展部分的VM槽的序列号q也已知。通过已知值,在框802开始AR1(i)的计算。在框804,将AR1(i)设成。随后,过程开始在框806通过每个服务器重新迭代,其中,t是交换机管理的服务器的序列号。在框808,确定t是否大于r-1。如果是,则在框810将AR1(i)指派到。过程随后在框812结束。如果不是,则在框814将q设成0。过程随后在框816确定q是否大于k(t)。如果是,则将t增大1,并且过程回到框808。如果不是,则将AR1(i)指派成,并且过程转到框822,其中,将q增大1。一旦服务器i管理的所有r个服务器的AR完成计算,则整个过程完成。过程也可以用于AR1(i)的以下公式表述:

现在只考虑交换机i的出境链路的残余带宽的约束,它对于虚拟交换机i表示为AR2(i),,或者如果,则等于[0,N]。用于虚拟交换机i的AR是,它能够用于确定是否能够接纳请求租户的带宽请求。
再参照图5,上述用于虚拟交换机的AR的计算用于在框506确定是否接受租户的带宽请求。如果计算的AR指示用于进入请求的可行分配空间,则过程转到框508,并且将VM分配到请求租户。图9是示出在已接受带宽请求后分配VM的一个实施例的流程图。参照图9,过程在框902开始,其中,指定在交换机上请求的VM的数量。随后,在框904,过程先查找带有具最高可允许扩展部分上限的AR的服务器,并且分配在最高可允许扩展部分中的VM。随后,过程查找带有具下一个最高可允许扩展部分上限的AR的服务器,并且分配在扩展部分中的VM。在框906,过程将剩余请求的VM先分配到带有具基本部分最低上限的AR的服务器。随后,过程查找带有具基本部分下一个最低上限的AR的服务器。过程将VM分配到基本部分,并且继续过程,直至所有剩余VM已分配。这是用于VM分配的混合策略:它将链路带宽利用最小化为第一层优化。通过将VM分配到带最高可允许扩展部分的扩展部分,最小化带宽利用。在第二层优化,分配最大化片段(fragment)大小。在一种分配不使用所有可用VM时,未使用的VM构成分配空间的片段。由于子树中的更高级别链路更可能变成树状网络中的瓶颈,因此,优选是使片段大小变得尽可能大,以便在将来能够分配更多VM到子树中而不消耗更高级别链路带宽。先将VM分配到带有更低上限的基本部分的过程最大化了片段大小。
图10是示出在虚拟交换机的控制下在扩展部分分配VM的一个实施例的流程图。过程将n个VM和VM的子集VM,n(j)分配到在管理的每个服务器j,以便所有n(j)的组合等于总数n。由于过程可应用到带有虚拟交换机和服务器的多个级别的虚拟网络,因此,使用了通用术语。为在控制物理服务器的虚拟交换机使用图10的过程,节点是虚拟交换机并且子项是物理服务器。过程从框1002开始。在框1004,过程确定节点i是否具有任何子节点。如果没有子节点,则过程结束,并且可不分配VM,因此过程返回(- 1, n, {n(j}),指示无VM能够被分配。如果过程确定有至少一个子项(例如,带有可用VM的服务器),则发现子项,并且在框1008先处理带有具最高扩展部分上限的AR的子项(设成为t)。在框1010,如果服务器t没有扩展部分,则在框1012过程排除服务器t,并且过程返回到框1004。如果服务器t具有至少一个扩展部分,则过程随后在框1014查找最高扩展部分q。过程随后在框1016确定请求的n是否大于。如果是,则过程在框1018确定是否能够设置。如果能够设置,则在框1020将分配到请求租户,并且在框1030,过程完成,并且返回完成。回到框1016,如果n不大于,则过程转到框1022。框1022确定n是否小于。如果不是,则在框1026,过程将n个VM分配到服务器t。否则,从服务器t排除将扩展部分q包括为可用VM分配空间,并且过程回到框1010。一旦带有扩展部分的所有服务器完成该过程,过程便以在框1006无分配结束或以在框1030指定分配结束,并且扩展部分的分配得以完成。
图11是示出在虚拟交换机的控制下在基本部分分配VM的一个实施例的流程图。如图9所述,分配可用服务器的扩展部分只是VM分配过程的一部分。过程需要继续并且分配基本部分。参照图11,分配基本部分的过程在框1102开始,其中,服务器t、请求的VM的总数n及VM的子集n(j)已知并且给出。在框1104从交换机i排除服务器t。随后,过程在框1106确定交换机i是否具有任何子项。如果无子项,则过程结束,并且在框1108无可行分配返回。如果有至少一个子项,则在框1110,过程查找带有最小基本部分上限的子项j。过程随后在框1112确定n是否大于b(j)。如果不是,则在框1114,分配VM到节点i的子项,并且在框1120,过程完成,返回分配。回到框1112,如果n大于b(j),则在框1116将n设成n-b(j),并且在框1118,从交换机节点i的子项排除服务器j,并且过程返回到框1106。交换机i的所有子节点(例如,物理服务器)完成该过程,并且该过程以在框1120的基本部分分配或在框1108的无分配适用结束。分配扩展部分和基本部分的过程也能够表述为如下所示的伪代码:
算法1:对于同构带宽要求将该数量的VM分配给节点i上的每个子节点j

图12是示出配置成分配带宽的虚拟交换机的一个实施例的框图。虚拟交换机1200包含网络处理器1210。为实现带宽分配目的,AR管理模块1220配置用于管理AR计算和有关操作。要注意的是,AR管理模块1220可与虚拟交换机内的其它过程共享网络处理器,并且它也可具有只用于管理AR和分配VM目的的专用网络过程。虚拟交换机1200包含用户接口模块1202。如果虚拟交换机1200是根虚拟交换机或者负责与请求带宽的租户直接连接的虚拟交换机,则用户接口模块1202接收带宽请求(例如,Mbps的数量)。在该情况下,带宽请求发送到AR管理模块1220内的用户请求转换模块1212。在用户请求转换模块1212,将带宽请求转换成VM的数量。如果虚拟交换机1200是虚拟交换机群组的交换机,则在租户的带宽请求已经转换成VM的数量时,用户接口模块1202接收VM的数量的请求。虚拟交换机1200也包含出境链路模块1212。出境链路模块1212与上级虚拟交换机或其对等的交换机交互。出境链路模块1212确定出境链路的残余带宽,并且将信息提供到AR管理模块1220。具体而言,在AR计算模块1214计算AR需要出境链路的残余带宽。在AR管理模块1220中,另一模块是VM分配模块1216,在其中确定如何将物理服务器上的特定VM分配到请求。此外,在虚拟交换机1200中,服务器通信模块1206与在其管理下的服务器进行通信。服务器通信模块1206确定到其管理下的服务器的其链路的残余带宽。如上本文中所述,计算服务器的AR需要在虚拟交换机与服务器之间链路上的残余带宽。在一些实施例中,虚拟交换机1200也包含服务器带宽限制模块1208。服务器带宽限制模块1208将租户的带宽消耗限制在分配的VM内,由此租户获得不超过其已分配的带宽。要注意的是,实现发明想法不要求使用所有模块。一些模块是可选的,并且其它模块可实现为配置成在一个模块内完成几个功能的集成模块。
虽然本文中上面图中的流程图示出本发明的某些实施例执行的操作的特定顺序,但应理解,此类顺序是示范(例如,备选实施例可以不同的顺序执行操作,组合某些操作,重叠某些操作等)。虽然本发明已根据几个实施例描述,但本领域的技术人员将认识到本发明不限于所述实施例,通过在随附权利要求的精神和范围内的修改和变化,能够实践本发明。描述因此要视为是说明性的而不是限制。

在云计算网络中分配带宽的方法和系统.pdf_第1页
第1页 / 共25页
在云计算网络中分配带宽的方法和系统.pdf_第2页
第2页 / 共25页
在云计算网络中分配带宽的方法和系统.pdf_第3页
第3页 / 共25页
点击查看更多>>
资源描述

《在云计算网络中分配带宽的方法和系统.pdf》由会员分享,可在线阅读,更多相关《在云计算网络中分配带宽的方法和系统.pdf(25页珍藏版)》请在专利查询网上搜索。

网络服务提供商为提供虚拟网络到在云计算环境中要求带宽的租户而实现的方法,其中,虚拟网络包括有一个或更多个虚拟交换机的第一集,这些虚拟交换机管理有一个或更多个物理服务器的第二集,而物理服务器托管第一多个可用虚拟机(VM),方法包括由至少一个虚拟交换机接收对第二多个VM的带宽请求,通过计算与虚拟交换机关联的分配范围(AR),确定是否接受第二多个VM的请求,其中,AR表示在虚拟交换机内至少一个非连续的V。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1