在网络环境中有效使用流表空间的系统和方法_2

文档序号:8417874阅读:来源:国知局
可以使用VMware vSphere实行超管理器44,并且服务器42可以包括与超管理器44相关联地运行的VEM 48,VEM 48被实现为Cisco Nexus 1000V系列交换机VEM。服务器42、超管理器44、和VEM48在某些相关方面可以分别与图1中示出的服务器12a-12c、超管理器 14a-14c、和 VEM 48a_48c 相同。
[0022]在图2所示的实施例中,VEM 48作为超管理器44的内核的一部分而运行,并且使用vDS API以确保VEM完全清楚服务器虚拟化事件。VEM48经由交换网络51从VSM接收配置和某些控制信息并执行第2层交换和如上面针对VEM 18a-18vc描述的那些高级联网功會K。
[0023]如之前所指出的,交换机配置使用VSM 50被执行并且被传达至VEM48。配置可以被定义为经由单个用户接口在VSM 50管理的交换机上直接使用;另外,VSM与管理服务器54进行通信,管理服务器54通过单个控制平台应用经由VDS API管理超管理器44和VM46a-46co在一个实施例中,管理服务器54可以被实现为VMware vCenter服务器并且经由交换网络51与超管理器44通信。
[0024]在系统40中,端口配置文件被用于处理从网络角度而言的服务器虚拟化的动态本质。端口配置文件使得能够从VSM 50为不同类型或类别的VM定义网络策略,以及随后通过管理服务器54上的⑶I将配置文件应用于各个VM vNICo该特征使能了网络资源的透明供应。端口配置文件是对网络配置大量虚拟机的可扩展机制,并且端口配置文件包括用来配置VEM 48上的虚拟端口(在图2中由虚拟端口 56a-56d表示)的性能和设置。
[0025]在VM端口配置文件中定义的网络和安全策略追随VM整个的生命周期,不论VM从一服务器被迀移到另一服务器、被暂停、被休眠、或被重新启动。除了迀移策略,VSM移动VM网络状态(比如,端口计数和流统计)。参与流量监控活动的VM可以不间断的继续这些活动。当特定端口配置文件被更新时,实时更新被自动通过(一个或多个)VEM和VSM提供给使用相同端口配置文件的虚拟端口。
[0026]在一个实施例中,在管理服务器54中,以常用的方式配置VM。另外,在VSM 50上定义的端口配置文件(在图2由端口配置文件A-D表示并由标号58a-58d指定)经由管理服务器54的作为端口组的⑶I 55被显示,端口组在图2中由端口组A-D表示并由标号60a-60d指定。结果,虚拟化管理员可以利用预配置的端口组(例如,在管理服务器54上的端口组A-D)的优势并集中于VM管理,并且网络管理员可以使用端口配置文件来一次针对大量端口应用策略。根据本文所述的用于实行基于端口配置文件的流空间预留方案的实施例的特征以及在下文中会有更为详细的描述,每个端口配置文件58a-58d包括预留信息,该预留信息包括针对在主机服务器上实例化并与各个端口配置文件相关联的VM预留多少流空间的指示。
[0027]出于在下文还需要更为详细描述的目的,根据本文所述的实施例的特征,VSM 50包括处理器62、存储器64、和流空间预留模块66,以便实行动态流空间预留方案。应该认识到的是包括流空间预留模块66的逻辑部分在需要时可以在系统40中的别处被实行,用来实现本文所述的基于端口配置文件的流空间预留方案。如之前所指出的,流表空间限制严重影响了在交换机中的分组处理。尤其,无效率得使用主机42的流表68的流表空间会减慢流查找或会导致更多重要的分组被移交至慢速路径。明显地,这些情况中没有一种情况是所期望的。在一个实施例中,用于提供基于端口配置文件的流表空间预留的系统和方法被描述。如之前所指出的,在本文所述的系统中,端口配置文件是针对一群虚拟接口或端口的网络策略和配置信息(包括流空间预留信息)的容器。附接于特定端口配置文件的VM接口使得相同的网络策略应用于在这些接口处见到的流量。网络管理员与服务器管理员合作以基于将要被附接到端口配置文件的VM和将要通过接口的流量的类型来配置端口配置文件。
[0028]当前,当分组在端口被检测到时,做出分组是否包括在主机的流表中存在流表条目的流的判定。如果不包括,并且在流表中存在空间,则相应的条目被添加;如果在流表中没有空间,存在的流表条目可以从流表中撤除以腾出空间给新的流。撤除可以基于若干不同算法中的一种,包括例如最近最少使用(“LRU”)、先进先出(“FIFO”)、或活动和非活动定时的结合。如果出于一些原因流表条目不能被撤除,则分组会被踢至慢速路径处理,并且交换决定将基于该处理。应该注意的是在该情况中交换决定将不会被缓存;因此,此流随后的分组还是会被踢至慢速路径。明显地,这是对当前或能够被合理预期在主机上存在的VM或流量的类型不进行考虑的非常活跃的方法。
[0029]相反的,根据一个实施例的特征,由于经由VEM/VSM清楚哪种类型的端口配置文件在各主机处被实例化以及哪种类型的流量被预期会穿过获得特定端口配置文件的每个主机端口,网络管理员可以判定穿过具有某种端口配置文件的端口的流量相对于穿过其他端口的流量具有优先级。通常,可以向在主机上实例化的每个端口配置文件分配相对于可以在主机上实例化的其他端口配置文件的加权优先级。由于网络管理员应该具有对附接于端口配置文件的接口上可见的流量的合理的优先认知,所以网络管理员能够就流表空间定义预留。有效地,这指具有每端口配置文件预留配置,该每端口配置文件预留配置可以通过规定针对与配置文件相关联的端口组的实例预留的若干或一定百分比的流表条目或者以考虑动态条件的更复杂的方式而被动态配置,动态条件中的一些在下文中被描述。
[0030]例如,相对重要的权重可以与不同的端口配置文件相关联,这意味着针对特定端口的预留行为应该如何适应在相同主机上存在/不存在某些其他端口配置文件的情况。此夕卜,权重可以基于在主机上特定端口配置文件的实例的数量而被分配。换言之,实行预留算法的流空间预留模块可以在得出流空间预留方案之前将已经在特定主机上实例化的端口配置文件以及在主机上每个端口配置文件的实例的数量作为输入。
[0031]在一个实施例中,流表空间的预留不应该导致未使用的空间。端口配置文件的未使用的空间应该被其他活动的配置文件使用,直到第一端口配置文件上的流开始增加。例如,对之前的示例进行扩展,网络管理员可以配置两个不同的端口配置文件,比如一个针对web服务器VM并且另一个针对应用服务器VM0在针对web服务器VM的端口配置文件中,网络管理员可以够规定40%的流空间预留,并且在针对应用服务器VM的端口配置文件中,网络管理员可以规定60%的流空间预留。结果,即使当web服务器的流量量很高时,也能在不会遭遇不必要延迟的情况下保证在应用服务器VM上预期的流将继续在快速路径中被服务。在进一步增强的示例中,代替上述的分配静态百分比预留,网络管理员可以就应对主机上的一个端口组的实例预留多少空间来为各端口组分配相对于在相同主机上的其他端口组的实例的相对权重。根据本文所述的特征,能够做出运行时间的决定以根据在主机上实例化的其他端口组的类型和数量来调整针对每个端口组预留的流空间量。该信息也可用作当新的流的条目需要被安装在流表时撤除现存条目的因素。
[0032]图3是示出了基于端口配置文件的预留方案的一个实施例的操作的流程图。应该认识到的是,在启动图3所示的过程之前,已经使用VSM定义了端口配置文件并使端口配置文件对于管理服务器是可用的,该管理服务器根据定义的配置文件规定W0根据本文所述的实施例,这些端口配置文件中的每一个端口配置文件包括预留信息。参考图3,在交换机(比如,VEM)处接收到与流相关联的数据文组后,在步骤80可以做出与分组相关联的流是否是新的流的判定。该步骤可以在快速路径中被实行,并且可以涉及对分组头部信息(比如,源IP地址、源MAC地址、目的地IP地址、目的地MAC地址、以及协议类型)进行检查,以判定分组头部信息是否匹配与VEM相关联的流表中的条目。如果该流的条目在流表中被找到,则分组并不是新的流的一部分,并且分组根据在步骤82中发现的流表条目被处理。具体地,在步骤82中,从流表条目确定针对分组的合适的动作,并且分组被相应地交换。如果判定分组与新的流相关联(例如,如果在流表中没有找到条目),则执行进行至步骤84。在步骤84中,分组被踢至慢速路径并且数据路径阶段被运行以得出针对分组要采取的动作的交换决定。
[0033]接下来在步骤86中,做出在流表中是否存在可用来添加新的流的条目的空间的判定。如果判定流空间是可用的,在步骤87中,与新的流相应的条目被添加到流表中并且相应地分组被交换,其中与新的流相应的条目包括在步骤84中所确定的动作。或者,如果在步骤86中做出流空间是不可用的判定,则在步骤88中,根据本文所述的实施例做出是否可能“撤除” 一个现存条目的判定。
[0034]具体地,根据一个示例实施例的特征,在步骤88中进行的判定与预留模块66 (图2)相关联地根据包括在与流相关联的端口配置文件中的预留信息来做出。
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1