对进入流量执行流量负载平衡的方法和装置的制造方法

文档序号:8365377阅读:300来源:国知局
对进入流量执行流量负载平衡的方法和装置的制造方法
【技术领域】
[0001] 本申请一般而言涉及改进的数据处理装置和方法,并且更具体而言涉及用于在链 路聚合组中进行自主流量负载平衡的机制。
【背景技术】
[0002] 为了可用性和可扩展性,物理网络通常在端点被抽象。可用性和可扩展性都是通 过提供链路聚合组(LinkAggregationGroup,LAG)来解决的。链路聚合是用来描述并行 地组合或聚合多个网络连接以便增加超出单个连接可以维持的吞吐量并且在一条链路故 障的情况下提供冗余性的各种方法的计算机联网术语。这种链路聚合可以在开放系统互连 (0SI)模型的最下面三层中任意一层实现。在层1 (物理层)的聚合的例子是组合多个频带 的电源线和无线网络设备。0SI层2(数据链路层)聚合通常跨交换机端口发生,其中交换 机端口可以是由操作系统管理的物理端口或者是虚拟端口。利用轮转调度、基于散列值的 调度、其组合,等等,0SI层3(网络层)聚合是有可能的。
[0003] 链路的组合或者可以发生成使得多个接口共享一个逻辑地址(例如,IP地址)或 一个物理地址(例如,MAC地址),或者它可以使得每个接口具有其自己的地址。前者需要 链路的两端都使用相同的聚合方法,但是具有优于后者的性能优点。用于执行链路聚合的 一种标准在链路聚合控制协议(LACP)中规定。
[0004] 链路聚合组(LAG)是聚合到一起从而形成链路组的一组链路。LAG通常耦合到网 络中的交换机架构的一个或多个交换机。关于可用性,LAG允许网络适配器/链路错误局限 于网络适配器/接口域,其中"接口"是链路组作为单个链路的抽象。关于可扩展性,把多个 物理链路分组到一个抽象接口,例如代表多条物理链路的单个以太通道(Etherchannel), 允许聚合延迟和吞吐量性能的改进。在这两种情况下,用户空间应用都不参与确定接口或 交换机架构行为。

【发明内容】

[0005] 在一种说明性实施例中,在包括处理器的设备中提供了用于对指向链路聚合组 (LAG)的进入流量执行流量负载平衡的方法。该方法包括由设备监视跨链路聚合组(LAG) 的多条链路的进入流量负载。该方法还包括由设备确定跨多条链路的进入流量负载是否 不平衡。而且,该方法还包括,响应于确定跨多条链路的进入流量负载不平衡,由设备向与 LAG关联的交换机发送请求该交换机修改进入流量到LAG的路由以执行进入流量负载平衡 的消息。
[0006] 在其它说明性实施例中,提供了包括具有计算机可读程序的计算机可用或可读介 质的计算机程序产品。在计算设备上执行时,计算机可读程序使计算设备执行以上关于方 法说明性实施例概述的各种操作或者其组合。
[0007] 在还有另一种说明性实施例中,提供了一种系统/装置。该系统/装置可以包括链 路聚合逻辑、监视逻辑以及流量负载平衡逻辑,每个逻辑都配置为执行上述方法的相应操 作或者其组合。在有些说明性实施例中,该系统/装置可以包括一个或多个处理器以及耦 合到一个或多个处理器的存储器。存储器可以包括指令,当被一个或多个处理器执行时,该 指令使这一个或多个处理器执行以上关于方法说明性实施例概述的各种操作或者其组合。
[0008] 本发明的这些及其它特征和优点将在以下本发明的示例实施例的具体描述中进 行描述,或者将依据这种具体描述而对本领域普通技术人员变得显然。
【附图说明】
[0009] 当结合附图阅读时,通过参考以下说明性实施例的具体描述,本发明及其优选使 用模式和进一步的目标和优点将得到最好的理解,其中:
[0010] 图1是其中可以实现说明性实施例的各方面的分布式数据处理系统的示例图;
[0011] 图2是其中可以实现说明性实施例的各方面的计算设备的示例框图;
[0012] 图3是当跨链路进行流量平衡时的正常操作期间链路聚合组的示例图;
[0013] 图4说明了其中从交换机流到链路聚合组(LAG)的流量变得不平衡的情况;
[0014] 图5是根据一种说明性实施例的链路聚合控制协议(LACP)消息的LACP首部的示 例图;及
[0015] 图6是概述根据一种说明性实施例的用于执行进入流量平衡的示例操作的流程 图。
【具体实施方式】
[0016] 如以上所提到的,用于增加网络连接的可靠性和吞吐量的一种机制是使用链路聚 合并且把多条链路聚合到链路聚合组(LAG)中。但是,在当前的聚合模型下出现了一个问 题,因为流量流(数据、数据包、帧等从一个元件到另一个元件的流)和使用中的适配器当 中的负载分配是通过元组,例如源地址、源端口、目的地地址和目的地端口的元组,确定的。 在活动的元组空间中缺乏足够的熵是关于入口流,即,从交换机到LAG,流量的不平衡分布 的关键因素。在这种语境下,熵指随机性的测量,其中高端口熵允许连接跨LAG中所有可用 端口均匀地分配,没有任何偏斜。因为链路是按照元组来规定的,所以,即使在使用链路聚 合时,特定链路的流量也倾向于经过单个端口而不是多个端口,使得可以避免乱序包,从而 导致缺乏足够的熵。流量被指向的特定端口是在流量到达主机系统的网络适配器之前确定 的,因此不能由主机系统控制。例如,散列算法可以被网络的交换机用来取得包的字段并且 生成指向特定散列桶的散列索引,该散列桶识别该连接与其关联的对应端口。
[0017] 外出分配,S卩,从LAG到交换机,是由软件控制的,其中在主机系统上执行的软件 可以通过执行负载平衡操作来确保LAG的链路当中适当的流量分配。因而,即使外出流量 控制在主机的LAG机制的控制之内,但进入流量平衡在这种LAG机制控制之外。LAG耦合到 的交换机绑定到元组约束,以确保在LAG-侧不发生乱序处理。具有一种允许LAG向交换 机指示如何以及何时执行入口流的再平衡以使得在不考虑特定的流量流的情况下获得最 优性能的机制将是有益的。
[0018] 说明性实施例提供了用于在链路聚合组(LAG)中进行自主流量负载平衡的机制。 利用说明性实施例的机制,LAG与关联的交换机协调,以协商进入流量流在LAG的成员当中 的合理过渡。在有些说明性实施例中,链路聚合控制协议(LACP)被扩展成包括扩展字段, 以允许向交换机传递指示用于进入流量再平衡的选项的信息。利用说明性实施例的机制, 通过在交换机和LAG之间不断流动的心跳消息中提供扩展字段,进入流量的平衡在LAG的 控制之下。这些扩展字段包含关于LAG中哪些链路被过度使用的信息。扩展字段还可以包 含关于LAG中哪些链路是在以别的方式映射到过度使用链路的流量应当重定向到的链路 的信息。当把流量从LAG中过度使用的链路重新路由到LAG中期望的链路时,交换机使用 这种信息。以这种方式,进入流量在主机系统的LAG控制之下被再平衡。
[0019] 在网络性能瓶颈在端点,即,源或目的地计算设备处被看到的情形下,说明性实施 例提供了缓解(relief)。说明性实施例允许系统管理员通过向LAG,例如以太通道,添加更 多适配器来减小网络压力。说明性实施例的负载平衡在不需要对通信设备上的各种度量进 行测量以确保端口熵的情况下就可以实现。此外,说明性实施例不受乱序包问题影响,而这 种乱序包问题困扰着轮转负载平衡方法。
[0020] 本发明说明性实施例的以上各方面和优点将在下文中参考附图更具体地描述。应 当认识到,附图仅仅是要说明本发明的示例性实施例。本发明可以涵盖未在附图中明确示 出但是鉴于说明性实施例的本描述对本领域普通技术人员来说很显然的方面、实施例,以 及对所绘出的示例性实施例的修改。
[0021] 所属技术领域的技术人员知道,本发明的各个方面可以实现为系统、方法或计算 机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、 完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方 式,这里可以统称为"电路"、"模块"或"系统"。此外,在一些实施例中,本发明的各个方面 还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介 质中包含计算机可用的程序代码。
[0022]
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1