用于虚拟以太网接口绑定的系统和方法_3

文档序号:8208048阅读:来源:国知局
的是,这两种绑定计算的输入([P1,......,Pn]和Iik1,......,kn])
可以是不同的。
[0045]4.交换机(比如,交换机104)可以用候选绑定端口的列表对虚拟机控制器作出响应。在示例实施例中,虚拟机控制器和交换机可以在各种情况下进行握手;例如,交换机可以随时建议给定虚拟机的新的放置以达到更好的整体放置。
[0046]5.虚拟机控制器可以使用该信息来选择目的地主机和绑定。这可以被手动达成或由虚拟机控制器自动达成。
[0047]通过使用本文所描述的方法,一个或多个交换机可以在物理网络中实施与虚拟机接口相关联的策略。此外,示例实施例可以要求没有虚拟机控制器的干预,从而允许在弹出虚拟机中被提高的速度。
[0048]针对每个具有带宽组要求BWi的虚拟以太网接口 i,由交换机(比如,交换机104)实施的示例算法可以执行以下操作:
[0049]1.识别将被弹出的虚拟机被物理地连接到哪个交换机m。如果网络虚拟化包括到双归属扩展器的活动-备用上行链路,则交换机[ml,……,m2]上的绑定可以在优选的活动侧被选择之后被检查。在示例实施例中,使用最小总带宽的虚拟以太网接口 i可以被选择(活动侧具有最小BWup)。
[0050]2.然后关于虚拟接口应当被映射到哪个ASIC实例(比如,ASIC实例130)的决定被做出。对于交换机m上的每个可能的ASIC实例kGilikp......,kn]),如果多个ASIC实例具有同样的总消耗带宽,则选择具有最小的总消耗带宽minkBWud^ ASIC实例k。在示例实施例中,由于交换机ASIC上有限的缓冲器和优先级队列,可以假设较高优先级的流量将消耗更多的ASIC资源(比如,缓冲器、队列等),这导致低优先级流量的有限的硬件资源或潜在的系统瓶颈。因此,具有较高的优先级(比如,CoS值)的流量所需的总带宽可以被检查,具有最少的总较高优先级的流量的ASIC实例可以被选择(比如,具有π?η,Σ m,cos,^CosiBWkcosmj的ASIC实例k)。ASIC k上的所有的可用的端口和端口范围[Pl,……,pn]的交集可以被选择为候选绑定端口的集合。
[0051]因此,在一些示例实施例中,物理交换机可以向网络中的其它组件提供硬件信息(比如,新的信息可以被提供给服务器以对虚拟机进行配置)。例如,硬件信息可以被用于实现虚拟以太网接口绑定(上行链路分配)和网络资源约束评估。虚拟机控制器或参与到上行链路的接口绑定的其它组件可以处理由交换机提供的硬件信息。例如,该处理可以考虑虚拟机的生命周期内的可用的计算和网络资源,使得对这两种类型的资源的约束可以共同被有效地满足。此外,该处理可以根据虚拟机接口的流量策略配置对虚拟接口和物理接口绑定进行调整,并跨桥域散布具有高带宽/QoS要求的虚拟接口。这可以(例如)减少潜在的热点的可能性。
[0052]图4根据示例实施例示出将多个以太网端口映射到单个专用集成电路(ASIC)实例的网络设备。网络设备400可以(例如)执行图3的方法300,并将以太网端口 122.1、122.2和122.3映射到ASIC实例130.1,如图2中以示例的方式所示出的。
[0053]网络设备400被示出为包含一个或多个映射模块402、访问模块404、多个以太网端口 406(比如,以太网端口 122)、多个ASIC实例408 (比如,ASIC实例130)、一个或多个处理器410、存储器412和各种其它的设备专用硬件414。然而,应当注意的是,这些模块中的一个或多个可以位于系统中的另一设备。例如,映射模块402可以驻留在服务器102上。
[0054]访问模块404可以访问网络设备(比如,交换机104)以获得网络设备上的硬件(比如,ASIC)上的信息。选择模块(其可以是独立的模块或被包含在另一模块(比如,映射模块402)中)可以基于该信息(比如,ASIC上的信息)从多个物理上行链路中选择上行链路绑定。该(一个或多个)映射模块402可以被配置为将虚拟机(比如,虚拟机106)的虚拟网络接口(比如,由虚拟网络接口卡114提供)映射到所选择的上行链路绑定。网络设备400的各种模块可以被实施软件或固件指令的一个或多个处理器配置。然而,应当注意的是,网络设备400可以执行本文所描述的方法中的任何一种或多种。
[0055]图5根据一些示例实施例示出框图,该框图示出能够从机器可读介质(比如,机器可读存储介质)读取指令并执行本文所讨论的方法中的任何一种或多种的机器500的组件。例如,该机器500可以实现图1中示出的服务器102并容宿虚拟机106。
[0056]更具体地,图5以计算机系统的示例形式示出机器500的图示,在该机器500内,用于引起机器500执行本文所讨论的方法中的任何一种或多种的指令524(比如,软件)可以被实施。在替代实施例中,机器500作为独立设备操作或者可以被连接到(比如,联网)其它机器。在联网部署中,机器500可以在服务器-客户端网络环境中作为服务器或客户机操作,或者在对等(或分布式)网络环境中作为对等机操作。机器500可以是服务器计算机、客户端计算机、个人计算机(PC)、平板计算机、膝上型计算机、上网本、机顶盒(STB)、蜂窝电话、智能电话、wed设备、网络路由器、网络交换机、网桥或能够循序地或以其它方式实施指定要由该机器采取的行动的指令524的任何机器。此外,尽管仅单个机器被示出,但是术语“机器”还应当被理解为包含单独地或共同地实施指令524以执行本文所讨论的方法中的任何一种或多种的机器的集合。
[0057]机器500包括处理器502 (比如,中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器(DSP)、专用集成电路(ASIC)、射频集成电路(RFIC)或上述电路的任何合适的组合)、主存储器504、静态存储器506,其都被配置为经由总线508相互通信。机器500还可以包括视频显示屏510(比如,等离子显示面板(PDP)、发光二极管(LED)显示屏、液晶显示屏(LCD)、投影仪或者阴极射线管(CRT))。机器500还可以包括字母数字输入设备512(比如,键盘)、光标控制设备514 (比如,鼠标、触摸板、轨迹球、操纵杆、运动传感器或其它定位仪)、驱动单元516、信号生成设备518(比如,扬声器)以及网络接口设备520。
[0058]驱动单元516包括机器可读介质522,其上被存储体现本文所描述的方法或功能中的任何一种或多种的指令524 (比如,软件)。指令524还可以在机器500对其进行实施期间(完全地或至少部分地)驻留于主存储器504内、处理器502内(比如,在处理器的高速缓冲存储器内)或这两者内。因此,主存储器504和处理器502可以被认为是机器可读介质。指令524可以经由网络接口设备520通过网络526被传送或被接收。
[0059]如本文中所使用的,术语“存储器”指的是能够暂时或永久存储数据的机器可读介质,可以理解为包括,但不限于,随机存取存储器(RAM)、只读存储器(ROM)、缓冲存储器、快闪存储器和高速缓冲存储器。尽管机器可读介质522在示例实施例中被示出为是单个介质,但是术语“机器可读介质”应当被理解为包括能够存储指令524的单个介质或多个介质(比如,集中式或分布式数据库,或相关联的高速缓存和服务器)。术语“机器可读介质”还应当被理解为包括能够存储用于机器(比如,机器500)的实施的指令(比如,指令524)的任何介质,使得当这些指令被机器的一个或多个处理器(比如,处理器502)实施时,引起机器执行本文所讨论的方法中的任何一种或多种。术语“机器可读介质”因此应当被理解为包括,但不限于,固态存储器形式的数据储存库、光介质、磁介质或以上介质的任何合适的组合。
[0060]在整个说明书中,多个实例可以实现作为单个实例被描述的组件、操作或结构。虽然一种或多种方法的单独的操作被示出并被描述为分离的操作,但是一个或多个单独的操作可以被同时执行,并且不要求这些操作按所示出的顺序被执行。在示例实施例中被呈现为分离的组件的结构和功能可以被实现为组合的结构或组件。类似地,被
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1