CN104954275A - 用于多路径负载平衡的系统和方法 - Google Patents
用于多路径负载平衡的系统和方法 Download PDFInfo
- Publication number
- CN104954275A CN104954275A CN201510130519.6A CN201510130519A CN104954275A CN 104954275 A CN104954275 A CN 104954275A CN 201510130519 A CN201510130519 A CN 201510130519A CN 104954275 A CN104954275 A CN 104954275A
- Authority
- CN
- China
- Prior art keywords
- path
- interface
- switch
- bandwidth
- balance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/125—Shortest path evaluation based on throughput or bandwidth
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及用于多路径负载平衡的系统和方法。具体地,一种用于多路径负载平衡的计算机实现的方法,可以包括:(1)识别从源交换机至目的交换机的多个路径,(2)针对多个路径中的每个路径,至少部分基于路径中的一个或多个数据链路的最低链路带宽,确定路径的限制带宽,以及(3)至少部分基于多个路径中的每个路径的限制带宽,穿过多个路径平衡从源交换机被传输至目的交换机的网络流量。还公开了各种其他方法、系统和计算机可读介质。
Description
技术领域
本发明总体上涉及负载平衡,更具体地,涉及用于多路径负载平衡的系统和方法。
背景技术
用于在层2网络中分发流量的传统技术依赖于链路状态路由协议以识别在网络中的两个交换机之间传输流量的路径(例如,最短路径或最低成本路径)。不幸地,许多链路状态路由协议可以将在网络中两个交换机之间传输的流量限制到数据链路的单个集合,这可能导致冗余的数据链路不被使用。因此,本公开确定并解决了对用于多路径负载平衡的系统和方法的需要。
发明内容
如下面将更加详细地描述的,本公开总体上涉及用于穿过多个路径来负载平衡网络流量的系统和方法,该多个路径将网络、诸如构成虚拟机箱结构的交换机网络内的两个交换机互连。在一个示例中,用于多路径负载平衡的计算机实现的方法可以包括:(1)识别从源交换机至目的交换机的多个路径,(2)针对多个路径中的每个路径,至少部分基于路径中的一个或多个数据链路的最低链路带宽,确定路径的限制带宽,以及(3)至少部分基于多个路径中的每个路径的限制带宽,穿过多个路径来平衡从源交换机被传输至目的交换机的网络流量。
类似地,合并上述方法的系统可以包括:(1)识别模块,该识别模块识别从源交换机至目的交换机的多个路径,(2)确定模块,该确定模块针对多个路径中的每个路径,至少部分基于路径中的一个或多个数据链路的最低链路带宽,确定路径的限制带宽,(3)平衡模块,该平衡模块至少部分基于多个路径中的每个路径的限制带宽,穿过多个路径来平衡从源交换机被传输至目的交换机的网络流量,以及(4)至少一个物理处理器,该至少一个物理处理器执行识别模块、确定模块和平衡模块。
相应的非瞬态计算机可读介质可以包括一个或多个计算机可读指令,当该一个或多个计算机可读指令由网络设备的至少一个处理器执行时,可以促使网络设备以(1)识别从源交换机至目的交换机的多个路径,(2)针对多个路径中的每个路径,至少部分基于路径中的一个或多个数据链路的最低链路带宽,确定路径的限制带宽,以及(3)至少部分基于多个路径中的每个路径的限制带宽,穿过多个路径来平衡从源交换机被传输至目的交换机的网络流量。
可以根据本文中描述的一般性原则,将来自上述实施例中的任何实施例的特征彼此组合来使用。在结合附图以及权利要求书来阅读以下详细的描述时,将更加充分地理解这些和其他实施例、特征和优点。
附图说明
附图图示了若干示例性实施例并且构成说明书的一部分。这些附图与以下描述一同说明并阐述了本公开的各种原理。
图1是用于多路径负载平衡的示例性系统的框图。
图2是用于多路径负载平衡的示例性系统的框图。
图3是用于多路径负载平衡的示例性系统的框图。
图4是用于多路径负载平衡的示例性方法的流程图。
图5是用于多路径负载平衡的示例性系统的框图。
图6是用于多路径负载平衡的示例性系统的框图。
图7是能够实现本文中所描述的和/或所图示的实施例中的一个或多个实施例,和/或与本文中所描述的和/或所图示的实施例中的一个或多个实施例结合来使用的示例性计算系统的框图。
所有附图中,相同的参考字符和描述是指示相似的但不一定完全相同的元素。尽管本文中所描述的示例性实施例易受各种修改和可替换形式的影响,但是特定实施例已经在附图中通过示例的方式被示出并且将在本文中被详细地描述。然而,本文中描述的示例性的实施例不旨在被限制于所公开的特定形式。更确切地说,本公开涵盖了落入所附权利要求书的范围内的所有修改、等价方案以及可替换方案。
具体实施方式
本公开描述用于穿过多个路径来负载平衡网络流量的各种系统和方法,该多个路径将网络、诸如构成虚拟机箱结构的交换机网络内的两个交换机互连。本公开的实施例可以通过以下方式穿过将网络中的两个交换机互连的多个路径来平衡网络流量:(1)识别互连两个交换机的两个或多个路径,(2)基于组成每个路径的数据链路的链路带宽,确定每个路径的限制带宽,以及(3)基于路径的限制带宽,穿过路径来平衡网络流量。
如下面将更详细地阐述的,通过使用多个路径来负载平衡在两个交换机之间传输的网络流量,本公开的实施例实质上可以改进数据链路和/或路径的使用率。此外,通过基于路径的限制带宽穿过多个路径来负载平衡网络流量,本公开的实施例可以防止组成路径的数据链路中的任何数据链路成为网络流量的瓶颈,尤其是在具有非对称的拓扑结构的网络中。如下面更详细地讨论的,本公开的实施例还可以提供各种其他优点和特征。
参考图1-3、图5和图6,以下将提供用于多路径负载平衡的示例性系统的详细描述。还将结合图4提供相应的计算机实现的方法的详细描述。此外,将结合图7提供能够实现本文所描述的一个或多个实施例中的一个或多个实施例的示例性计算系统的详细描述。
图1是用于多路径负载平衡的示例性系统100的框图。如图1所示,示例性系统100可以包括用于执行一个或多个任务的一个或多个模块102。例如,以及如下面将更详细地阐述的,示例性系统100可以包括识别模块104,该识别模块104识别从源交换机至目的交换机的多个路径。示例系统100还可以包括确定模块106,该确定模块106至少部分基于路径中的一个或多个数据链路的最低链路带宽,针对多个路径中的每个路径确定路径的限制带宽。
另外,以及如下面将更详细地阐述的,示例性的系统100可以包括平衡模块108,该平衡模块108至少部分基于多个路径中的每个路径的限制带宽,来穿过多个路径平衡从源交换机被传输至目的交换机的网络流量。尽管被图示为单独的元素,图1中的模块102中的一个或多个模块可以表示单个模块或应用的部分。
在特定实施例中,图1中的模块102中的一个或多个模块可以表示一个或多个软件应用或程序,当该一个或多个软件应用或程序由计算设备执行时,可以促使计算设备执行一个或多个任务。例如,以及如下面将更详细地阐述的,模块102中的一个或多个模块可以表示被存储并被配置为运行在一个或多个计算设备上的软件模块,诸如图2中所图示的设备(例如,交换机202-208)和/或图7中的计算系统700。图1中的模块102中的一个或多个模块还可以表示被配置为执行一个或多个任务的一个或多个专用计算机的全部或部分。在至少一个示例中,图1中的模块102中的一个或多个模块可以表示穿过数据链路和/或路径来负载平衡流量的系统的全部或部分,该数据链路和/或路径互连构成虚拟机箱结构的交换机网络(例如,表现为单个逻辑交换机的交换机的集合)。
如图1所示,示例性系统100还可以包括一个或多个数据库,诸如数据库120。在一个示例中,数据库120可以包括用于存储关于在网络中连接交换机的路径的信息的路径122,用于存储关于构成路径的数据链路的信息的数据链路124,以及用于存储关于连接至路径的交换机的接口中的一个或多个接口的信息的接口126。在至少一个实施例中,数据库120可以表示链路状态数据库的全部或部分。
数据库120可以表示单个数据库或计算设备或者多个数据库或计算设备的部分。例如,数据库120可以表示图2中的交换机202-208和/或图7中的计算系统700的部分。可替换地,图1中的数据库120可以表示能够由计算设备访问的一个或多个物理上分离的设备,诸如图2中的交换机202-208和/或图7中的计算系统700。在至少一个示例中,数据库120可以表示控制平面数据,该控制平面数据可以包括任意类型或形式的与控制交换机网络内的分组的移动相关的数据或代码。
可以通过各种方式实现图1中的示例性系统100。例如,示例性系统100的全部或部分可以表示图2中的示例性网络200的部分。如图2和图3所示,网络200可以包括经由一个或多个数据链路210-220互连的交换机202-208。在一些示例中,可以使用模块102中的一个或多个模块对交换机202-208中的一个或多个交换机进行编程,和/或交换机202-208中的一个或多个交换机可以存储数据库120中的数据的全部或部分。
在一个实施例中,当图1中的模块102中的一个或多个模块由交换机202-208中的至少一个处理器执行时,可以促使交换机202-208中的一个或多个交换机穿过数据链路210-220来负载平衡流量。例如,以及如下面将更详细地阐述的,模块102中的一个或多个模块可以促使交换机202-208中的一个或多个交换机以(1)识别从交换机202至交换机204的每个有效路径,(2)至少部分基于路径中的一个或多个数据链路的最低链路带宽,针对所识别的路径中的每个路径确定路径的限制带宽,以及(3)至少部分基于路径中的每个路径的限制带宽,穿过所识别的路径来平衡从交换机202传输至交换机204的网络流量。
交换机202-208通常表示任意中介计算设备,该任意中介计算设备连接网段或网络设备和/或促进计算环境中的两个或多个其他计算设备之间的通信。交换机202-208的示例包括但不限于,分组交换机、网桥、多层交换机、网络集线器、信号中继器、路由器和/或任意其他适当的交换设备。在一些示例中,交换机202-208可以表示层2网络的全部或部分。在至少一个示例中,交换机202-208可以表示虚拟机箱结构。
如图2和图3所示,交换机202-208可以经由数据链路210-220被互连。数据链路210-220通常表示能够促进通信或数据传递的任意介质或架构。数据链路210-220中的每个数据链路可以表示在网络200中的两个交换机的数据端口之间的物理连接(例如,经由电线或电缆)。图2图示了网络200的对称的拓扑结构。如本文中使用的,术语“对称的拓扑结构”可以通常指代任意网络拓扑结构,其中在网络中的任意两个交换机之间的多个路径具有完全相同或相似的特性,诸如带宽、跳跃的数目或每路径分段的数据链路的数目。图3图示了网络200的非对称的拓扑结构。如本文中所使用的,术语“非对称的拓扑结构”通常指代任意网络拓扑结构,其中在网络中的任意两个交换机之间的多个路径具有不相似的特性。图6还提供了具有非对称的拓扑结构的示例性网络600的图示。
图4是用于多路径负载平衡的示例性计算机实现的方法400的流程图。图4中所示的步骤可以由任意适当的计算机可执行的代码和/或计算系统执行。在一些实施例中,图4中所示的步骤可以由图1中的系统100、图2中的网络200、图6中的网络600和/或图7中的计算系统700的部件中的一个或多个部件执行。
如图4所示,在步骤410处,本文中描述的系统中的一个或多个系统可以识别从源交换机至目的交换机的多个路径。例如,在步骤410处,识别模块104作为图3中的交换机202的一部分,可以识别经由数据链路210、214、218和220通过交换机206连接交换机202和交换机204的路径,以及经由数据链路212和216通过交换机208连接交换机202和交换机204的路径。
如本文中所使用的,术语“交换机”通常指代能够在计算网络的设备之间路由或转发信息的任意设备、系统或应用,该信息可以是以分组的形式。如本文中所使用的,术语“源交换机”可以指代网络中的交换机,在该交换机处接收数据并且从该交换机转发数据;以及如本文中所使用的,术语“目的交换机”可以指代网络中的交换机,数据被转发至该交换机。
在网络中的源交换机和目的交换机可以经由一个或多个路径连接。如本文中所使用的,术语“路径”可以指代网络中两个设备之间的任意路由,该路由可以由两个设备中的一个设备使用以将网络流量转发至另一设备。在一些示例中,术语“路径”可以指代最短路径、最低成本路径和/或等成本路径。通常,路径可以由一个或多个数据链路构成。使用图2作为示例,交换机202可以通过经由数据链路210和214通过交换机206的路径以及经由数据链路212和216通过交换机208的路径被连接至交换机204。此外,路径的分段可以由一个或多个数据链路构成。使用图3作为示例,交换机202可以经由交换机202和206之间的包括数据链路210、218和220的路径分段被连接至交换机204。
在一些实施例中,两个路径可共享数据链路。使用图6中的网络600作为示例,交换机602可以通过共享数据链路644的至少两个路径(例如,经由数据链路620、630和644通过交换机604和610的路径、以及经由数据链路622、632和644通过交换机606和610的路径)被连接至交换机614。
如本文中所使用的,术语“数据链路”可以指代在网络中的两个设备之间的任意物理的或逻辑的连接。例如,术语“数据链路”可以指代两个设备之间的物理连接,这些设备的物理端口经由物理的电线或电缆来连接。数据链路的示例包括图2和图3中的数据链路210-220以及图6中的数据链路620-646。
数据链路可以具有链路带宽。如本文中所使用的,术语“链路带宽”通常可以指代在给定时间量中可以通过数据链路的信息量的测量,通常用千兆比特每秒(Gb/s)表示。在图2、3和6中,每个数据链路旁边被括起的数字可以以Gb/s为单位表示数据链路的链路带宽。如图3所示,数据链路210-220中的每个数据链路可以具有10Gb/s的带宽。如图6所示,数据链路620、626、630、642和646中的每个数据链路可以具有40Gb/s的带宽,以及数据链路622、628、632、634、636和644中的每个数据链路可以具有10Gb/s的带宽。在一些示例中,数据链路的带宽可以被交换机和/或构成数据链路的物理连接的带宽影响。
在一些情况下,可以将多个交换机组合以形成可以表现为单个逻辑交换机的虚拟机箱结构(例如,虚拟交换机结构)。如本文中所使用的,术语“虚拟机箱结构”通常指代互连的交换机的集合,该互连的交换机的集合可以作用为单个逻辑设备工作和/或作为单个逻辑设备被管理。通常,虚拟机箱结构中的交换机可以将来自虚拟机箱结构的入口的输入数据互连至虚拟机箱结构的出口。在一些示例中,虚拟机箱结构可以通过提供虚拟机箱结构中的节点(如,交换机)之间的任意对任意的连接来促进高水平的可扩展性。此外,虚拟机箱结构可以通过提供冗余的交换机和/或冗余数据链路和/或路径来促进高可用性。在一些示例中,可以不限制构成虚拟机箱结构的交换机的拓扑结构。
回到图4,本文中所描述的系统可以以各种方式执行步骤410。在一个示例中,识别模块104可以识别从网络中的每个交换机至网络中的所有其他交换机的所有有效的转发路径。在另一示例中,识别模块104可以识别从网络中每个交换机至网络中所有其他交换机的所有最短路径,所有最低成本路径和/或所有等成本路径。
在一个示例中,识别模块104作为网络中的交换机中的一个或多个交换机的一部分,可以使用适当的链路状态路由协议(诸如举例而言,中间系统到中间系统(IS-IS))以交换并累积可以用于识别路径的拓扑信息(例如,链路带宽)。使用图3作为示例,识别模块104作为交换机202-208中的每个交换机的一部分,可以使用适当的链路状态路由协议以交换并累积识别交换机202-208中的每个交换机并且描述交换机202-208如何通过数据链路210-220被连接的拓扑信息。
在一些示例中,识别模块104可以通过计算路径识别从源交换机至目的交换机的多个路径。在至少一个示例中,识别模块104可以使用最短路径算法(诸如举例而言,Dijkstra算法)来计算连接两个交换机的多个路径。在一些示例中,识别模块104可以计算从源交换机至目的交换机的两个或多个等成本路径。在至少一个示例中,识别模块104可以允许两个或多个路径共享数据链路。在至少一个实施例中,识别模块104可以计算路径,使得考虑到路径的带宽和/或跳跃的数目。
在一些实施例中,识别模块104作为网络中的源交换机的一部分,可以(1)识别网络中的每个目的交换机和(2)互连源交换机至目的交换机的每个路径。在一些示例中,识别模块104可以针对每个所识别的目的交换机,将连接源交换机至目的交换机的路径存储为被连接至路径的源交换机的接口的列表。如本文中所使用的,术语“接口”可以指代交换机和另一设备(例如,另一交换机)之间的物理的或逻辑的互连点。在一些示例中,术语“接口”可以指代至数据链路或路径的交换机的连接点。如下面将更详细地阐述的,当源交换机接收应当被转发至目的交换机的数据时,源交换机可以在与目的交换机相关联的接口列表中选择接口中的一个或多个接口以将数据转发至目的交换机。
在一些示例中,识别模块104可以使用表1中的示例性算法识别从源交换机至目的交换机的多个路径。
表1
返回图4,在步骤420处,本文中所描述的系统中的一个或多个系统可以至少部分基于路径中的一个或多个数据链路的最低链路带宽,针对多个路径的每个路径确定路径的限制带宽。例如,在步骤420处,确定模块106作为图3中的交换机202的一部分,可以基于路径中的一个或多个数据链路的最低链路带宽,针对将交换机202连接至交换机204的每个路径确定路径的限制带宽。
如在本文中使用的,短语“限制带宽”可以指代在给定时间量中可以通过数据链路的信息量的任意测量,通常用千兆比特每秒(Gb/s)表示。因为路径可以由多个数据链路构成,路径的限制带宽可以等于在具有最低链路带宽的路径中的数据链路的链路带宽。如果路径的分段包括多于一个数据链路(例如,图3中的交换机202和206之间的路径分段可以包括数据链路210、218和220,以及交换机602和612之间的路径分段可以包括数据链路620、634、622和636),路径的限制带宽可以等于具有最低聚合链路带宽的路径中的分段的带宽。
本文中所描述的系统可以以各种方式执行步骤420。在一个示例中,确定模块106可以通过以下方式向路径指派限制带宽:(1)识别路径中的每个数据链路,(2)确定路径中的哪个数据链路具有最低链路带宽,以及(3)将限制带宽指派给等于具有最低链路带宽的路径中的数据链路的链路带宽的路径。使用图2作为示例,平衡模块108可以将等于10Gb/s的限制带宽指派给经由交换机206将交换机202连接至交换机204的路径,以响应于确定数据链路210和214各自具有等于10Gb/s的链路带宽。
在一些示例中,确定模块106可以通过以下方式将限制带宽指派给路径:(1)识别路径中的每个分段,(2)确定路径中的哪个分段具有最低的聚合链路带宽,以及(3)将限制带宽指派给等于具有最低聚合链路带宽的路径中的分段的聚合链路带宽的路径。使用图3作为示例,确定模块106可以将等于10Gb/s的限制带宽指派给经由交换机206将交换机202连接至204的路径(例如,由数据链路210、214、218和220构成的路径),以响应于确定了包括数据链路214的路径中的分段与包括数据链路210、218和220的路径中的分段(在这个示例中,30Gb/s)相比具有较低的聚合链路带宽(在这个示例中,10Gb/s)。使用图6作为附加的示例,确定模块106可以将等于10Gb/s的限制带宽指派给经由交换机604和612将交换机602连接至交换机604的路径(例如,由数据链路620、634和646组成的路径),以响应于确定了包括数据链路634的路径中的分段与包括数据链路620的路径中的分段(在这个示例中,40Gb/s)或者包括数据链路646的路径中的分段(在这个示例中,40Gb/s)相比具有较低的综合链路带宽(在这个示例中,10Gb/s)。
在至少一个实施例中,确定模块106可以作为识别路径的一部分来确定路径的限制带宽。另外地或可替换地,确定模块106可以作为计算路径的一部分来确定路径的限制带宽。在一些实施例中,确定模块106可以使用表1中的算法来确定路径的限制带宽。
在步骤430处,本文中所描述的系统中的一个或多个系统可以至少部分基于多个路径中的每个路径的限制带宽,来穿过多个路径平衡从源交换机被传输至目的交换机的网络流量。例如,在步骤430处,平衡模块108作为图3中的交换机202的一部分,可以至少部分基于路径中的每个路径的限制带宽来穿过(1)经由交换机206将交换机202连接至交换机204的路径和(2)经由交换机208将交换机202连接至交换机204的路径,平衡从交换机202传输至交换机204的网络流量。
本文中所描述的系统可以以各种方式执行步骤430。通常,平衡模块108可以通过与每个路径的限制带宽成比例的方式穿过每个路径来传输网络流量的一部分,穿过连接源交换机和目的交换机的多个路径来平衡从源交换机被传输至目的交换机的网络流量。在一些示例中,基于指派给路径的路径权重或指派给连接路径的源交换机的接口的接口权重,平衡模块108可以将从源交换机待传输至目的交换机的网络流量的总量分配到路径上。例如,当源交换机接收应当被转发至目的交换机的数据时,源交换机可以基于指派给路径和/或接口的权重,选择一个或多个路径或者一个或多个接口以将数据转发至目的交换机。
在一个示例中,平衡模块108可以至少部分基于路径的限制带宽与将源交换机连接至目的交换机的所有路径的限制带宽的总和的比值,将路径权重指派给将源交换机连接至目的交换机的路径。在将路径权重指派给每个路径之后,平衡模块108可以使用指派给每个路径的路径权重,确定有多少从源交换机被转发至目的交换机的网络流量应该经由该路径被转发。如本文中所使用的,术语“路径权重”可以指代可以被指派给路径的任意值,该值指示多少网络流量应当经由该路径在源交换机和目的交换机之间被传输,以便于穿过连接源交换机和目的交换机的路径和/或数据链路来平衡网络流量。
通常,平衡模块108可以将路径权重指派给将源交换机连接至目的交换机的路径,该路径权重等于路径的限制带宽与将源交换机连接至目的交换机的所有路径的限制带宽的总和的比值,使得路径的路径权重指示在源交换机处接收到的应当经由该路径传输至目的交换机的网络流量的百分比。当源交换机接收应当被转发至目的交换机的数据时,源交换机可以基于指派给路径的路径权重,选择将源交换机连接至目的交换机的一个或多个路径,在该一个或多个路径上将数据转发至目的交换机。
使用图3作为示例,平衡模块108可以通过首先确定路径中的每个路径的限制带宽(在这个示例中,10Gb/s),以将路径权重指派给经由交换机206将交换机202连接至交换机204的路径,以及经由交换机208将交换机202连接至交换机204的路径。接下来,平衡模块108可以确定这些路径的限制带宽的和等于20Gb/s(在这个示例中,10Gb/s+10Gb/s=20Gb/s)。在确定了每个路径的限制带宽与两个路径的限制带宽的总和的比值等于1/2后(在这个示例中,10Gb/s/20Gb/s=1/2),平衡模块108然后可以将等于1/2的路径权重指派给两个路径。在这个示例中,平衡模块108作为交换机202的一部分,可以使用路径权重来确定从交换机202传输至交换机204的网络流量中的50%应当经由将交换机202连接至交换机204的路径中的每个路径来传输。
在一些示例中,平衡模块108可以将与特定目的交换机相关联的接口权重指派给源交换机的每个接口。例如,平衡模块108可以至少部分基于(1)接口的带宽和(2)源交换机与接口连接至的目的交换机之间的路径,将与特定目的交换机相关联的接口权重指派给源交换机的接口。在将与特定目的交换机相关联的接口权重指派给源交换机的每个接口之后,平衡模块108可以使用指派给每个接口的接口权重,来确定在源交换机和目的交换机之间被转发的多少网络流量应该经由该接口被转发。如本文中使用的,短语“接口权重”可以指代可以被指派给接口的任意值,该值指示在源交换机和目的交换机之间传输的多少网络流量应该经由该接口被传输,以便于穿过连接源交换机与目的交换机的路径和/或数据链路平衡网络流量。在一些示例中,平衡模块108可使用表1中的算法将接口权重指派给源交换机的接口。
如果源交换机的接口将源交换机连接至将源交换机连接至目的交换机的仅一个路径,则平衡模块108可以基于(1)接口的带宽与也连接至该路径的所有接口的带宽的总和的比值,和(2)路径的限制带宽与将源交换机连接至目的交换机的所有路径的限制带宽的总和的比值,将与目的交换机相关联的接口权重指派给接口。通常,平衡模块108可以将与目的交换机相关联的接口权重指派给接口,该接口权重等于以下两者的乘积:(1)接口带宽与同样连接至该路径的所有接口的带宽的总和的比值,(2)路径的限制带宽与将源交换机连接至目的交换机的所有路径的限制带宽的总和的比值。当源交换机接收应当被转发至目的交换机的数据时,源交换机可以基于指派给接口的接口权重选择将源交换机连接至目的交换机的一个或多个接口,在该一个或多个接口上将数据转发至目的交换机。
使用图3和图5作为示例,平衡模块108可以通过首先确定(1)接口508、512和514的带宽等于各自的数据链路210、218和220的链路带宽(在这个示例中,10Gb/s),以及(2)接口508、512和514的带宽的总和等于30GB/s(在这个示例中,10Gb/s+10Gb/s+10Gb/s=30Gb/s),以将接口权重指派给将交换机202连接至经由交换机206将交换机202连接至204的路径(例如,由数据链路210、218和220构成的路径)的接口508、512和514。
使用这个信息,平衡模块108然后可以将等于1/6(例如,(1)每个接口的带宽与所有三个接口的带宽的总和的比值(在这个示例中,10Gb/s/30Gb/s=1/3)与(2)经由交换机206将交换机202连接至204的路径的限制带宽与将交换机202连接至交换机204的所有路径的限制带宽的总和的比值(在这个示例中,1/2)的乘积)的接口权重指派给接口508、512和514的每个接口。在这个示例中,平衡模块108作为交换机202的一部分,可以使用指派给接口508、512和514的接口权重,来确定从交换机202传输至交换机204的网络流量的1/6应当经由接口508、512和514中的每个接口被传输。
如果源交换机的接口将源交换机连接至将源交换机连接至目的交换机的路径中的多于一个路径,则平衡模块108可以通过以下来将与目的交换机相关的接口权重分配至接口:(1)针对每个路径的接口计算与目的交换机相关联的接口权重(例如,如上所述,犹如接口将源交换机连接至将源交换机连接至目的交换机的路径中的仅一个路径)以及(2)对作为结果的接口权重求和。
如上所述,通过使用多个路径负载平衡在源交换机与目的交换机之间传输的网络流量,本公开的实施例实质上可以提高数据链路和/或路径的利用率。此外,通过基于路径的限制带宽穿过多个路径来负载平衡网络流量,本公开的实施例可以防止构成路径的数据链路的任意数据链路成为网络流量的瓶颈,尤其是在具有非对称拓扑结构的网络中。
图7是能够实现本文中所描述的和/或所图示的实施例中的一个或多个实施例,或者与本文中所描述的和/或所图示的实施例中的一个或多个实施例结合来使用的示例性计算系统700的框图。在一些实施例中,计算系统700的全部或部分可以独立地或与其他元素相结合地执行与图4相结合来描述的步骤中的一个或多个步骤,和/或作为用于独立地或与其他元素相结合地执行与图4相结合来描述的步骤中的一个或多个步骤的装置。计算系统700的全部或部分还可以执行本文中所描述的和/或所图示的任意其他步骤、方法或过程,和/或作为用于执行和/或实现本文中所描述的和/或所图示的任意其他步骤、方法或过程的装置。计算系统700广泛地表示任意类型或形式的电负载,包括能够执行计算机可读指令的单处理器或多处理器计算设备或系统。计算系统700的示例包括但不限于,工作站、膝上计算机、客户端侧终端、服务器、分布式计算系统、移动设备、网络交换机、网络路由器(例如,骨干路由器、边缘路由器、核心路由器、移动服务路由器、宽带路由器等)、网络设备(例如,网络安全设备、网络控制设备、网络定时设备、SSL VPN(安全套接字协议层虚拟专用网络)设备等)、网络控制器、网关(例如,服务网关、移动分组网关、多接入网关、安全网关等)和/或任意其他类型或形式的计算系统或设备。
计算系统700可以是被编程、被配置和/或以其他方式被设计为遵守一种或多种网络协议。根据特定实施例,计算系统700可以被设计为使用开放式系统互联(OSI)参考模型的一层或多层的协议工作,诸如物理链路层协议、数据链路层协议、网络层协议、传输层协议、会话层协议、表示层协议和/或应用层协议。例如,计算系统700可以包括根据通用串行总线(USB)协议、电器和电子工程师学会(IEEE)1394协议、以太网协议、T1协议、同步光纤网(SONET)协议、同步数字层级(SDH)协议、综合服务数字网(ISDN)协议、异步传输模式(ATM)协议、点对点协议(PPP)、以太网上的点对点协议(PPPoE)、ATM上的点对点协议(PPPoA)、蓝牙协议、IEEE802.XX协议、帧中继协议、令牌环协议、发生树协议、和/或任意其他适当的协议来配置的网络设备。
计算系统700可以包括各种网络和/或计算部件。例如,计算系统700可以包括至少一个处理器714和至少一个系统存储器716。处理器714通常表示任意类型或形式的能够处理数据或者理解并执行指令的处理单元。处理器714可以表示专用集成电路(ASIC)、片上系统(例如,网络处理器)、硬件加速器、通用处理器和/或任意其他适当的处理元素。
处理器714可根据上面讨论的网络协议中的一种或多种网络协议来处理数据。例如,处理器814可以执行或实现协议栈的一部分、可以处理分组、可以执行存储器操作(例如,将分组排队用于后续处理)、可以执行终端用户应用和/或可以执行任意其他处理任务。
系统存储器716通常表示任意类型或形式的能够存储数据和/或其他计算机可读指令的易失性或非易失性存储设备或介质。系统存储器716的示例包括但不限于,随机存取存储器(RAM)、只读存储器(ROM)、闪存或任意其他适当的存储设备。尽管不是必须的,但在特定实施例中,计算系统700还可以包括易失性存储单元(诸如举例而言,系统存储器716)和非易失性存储设备(诸如举例而言,如下面详细得描述的主存储设备732)两者。系统存储器716可以被实现为网络设备中的共享的存储器和/或分布式存储器。此外,系统存储器716可以存储分组和/或在网络操作中使用的其他信息。在一个示例中,可以将图1中的模块102中的一个或多个模块加载至系统存储器716中。
在特定实施例中,示例性的计算系统700也可包括除了处理器714和系统存储器716之外的一个或多个部件或元素。例如,如图7所示,计算系统700可以包括存储器控制器718、输出/输出(I/O)控制器720和通信接口722,它们中的每一个可以经由通信基础设施712互连。通信基础设施712通常表示任意类型或形式的能够促进计算设备的一个或多个部件之间的通信的基础设施。通信基础设施712的示例包括但不限于,通信总线(诸如串行ATA(SATA)、工业标准结构(ISA)、外部部件互连标准(PCI),PCI快速(PCIe)和/或任意其他适合的总线)和网络。
存储器控制器718通常表示任意类型或形式的能够处理存储器或数据或控制计算系统700的一个或多个部件之间的通信的设备。例如,在特定实施例中,存储器控制器818可以经由通信基础设施712控制处理器714、系统存储器716和I/O控制器720之间的通信。在一些实施例中,存储器控制器718可以包括直接存储器存取(DMA)单元,该直接存储器存取(DMA)单元可以从链路适配器传递数据(例如,分组)或者将数据(例如,分组)传递至链路适配器。
I/O控制器720通常表示任意类型或形式的能够协调和/或控制计算设备的输入和输出功能的设备或模块。例如,在特定实施例中,I/O控制器720可以控制或促进在计算系统700的一个或多个元素之间的数据的传递,诸如处理器714、系统存储器716、通信接口722和存储器接口730。
通信接口722广泛地表示任意类型或形式的能够在示例性计算系统700和一个或多个附加的设备之间促进通信的通信设备或适配器。例如,在特定实施例中,通信接口722可以促进计算系统700和包括附加的计算系统的专用或公用网络之间的通信。通信接口722的示例包括但不限于,链路适配器、有线网络接口(诸如网络接口卡)、无线网络接口(诸如无线网络接口卡)以及任意其他适当的接口。在至少一个实施例中,通信接口722可以经由至网络、诸如互联网的直接链路来提供至远程服务器的直接连接。通信接口722还可以通过,例如局部网络(诸如以太网网络)、个人局域网、广域网、专用网络(例如,虚拟专用网络)、电话或有线电视网络、蜂窝电话连接、卫星数据连接或任意其他适当的连接,间接地提供这样的连接。
在特定实施例中,通信接口722还可以表示主机适配器,该主机适配器被配置为经由外部总线或通信信道促进计算系统700和一个或多个附加的网络或存储设备之间的通信。主机适配器的示例包括但不限于,小型计算机系统接口(SCSI)主机适配器、通用串行总线(USB)主机适配器、IEEE 1394主机适配器、高级技术附件(ATA)、并行ATA(PATA)、串行ATA(SATA)以及外部SATA(eSATA)主机适配器、光纤信道接口适配器、以太网适配器等。通信接口722也可以使得计算系统700能够参与分布式计算或远程计算。例如,通信接口722可以从远程设备接收指令或向远程设备发送指令用于执行。
如图7所示,示例性的计算系统700还可以包括主存储设备732和/或经由存储接口730被耦合至通信基础设施712的备份存储设备734。存储设备732和734通常表示任意类型或形式的能够存储数据和/或其他计算机可读指令的存储设备或介质。例如,存储设备732和734可以表示磁盘驱动(例如,所谓的硬盘驱动)、固态驱动、软盘驱动、磁带驱动、光盘驱动、闪盘驱动等。存储接口730通常表示任意类型和形式的用于在存储设备732和734与计算系统700的其他部件之间传递数据的接口或设备。在一个示例中,可将图1中的数据库120存储在主存储设备732中。
在特定实施例中,存储设备732和734可以被配置为从被配置为存储计算机软件的可擦除存储单元中读取和/或向被配置为存储计算机软件的可擦除存储单元写入数据或其他计算机可读信息。适当的可擦除存储单元的示例包括但不限于,软盘、磁带、光盘、闪存设备等。存储设备732和734还可以包括其他相似的结构或设备,用于允许将计算机软件、数据或其他计算机可读指令加载到计算系统700中。例如,存储设备732和734可以被配置为读取或者写入软件、数据或其他计算机可读信息。存储设备732和734可以是计算系统700的一部分,或者可以是通过其他接口系统来访问的单独的设备。
许多其他设备或子系统可以被连接至计算系统700。相反,不需要使用在图7中所示的所有部件和设备以实践本文中所描述的和/或所图示的实施例。上面引用的设备和子系统也可以以与图7所示的那些方式不同的方式被互连。计算系统700也可以采用任意数目的软件、固件和/或硬件配置。例如,本文中公开的示例性实施例中的一个或多个实施例可以被编码为计算机可读存储介质上的计算机程序(也称为计算机软件、软件应用、计算机可读指令或计算机控制逻辑)。术语“计算机可读存储介质”通常指代任意形式的能够存储或承载计算机可读指令的设备、载体或介质。计算机可读的示例包括但不限于,诸如载波的传输型介质,和诸如磁存储介质(例如,硬盘驱动器和软盘)、光存储介质(例如,光盘(CD)和数字化视频光盘(DVD))、电存储介质(例如,固态驱动器和闪存介质)的非瞬态型介质,以及其他分布式系统。
尽管前述公开使用特定的框图、流程图以及示例阐述了各种实施例,然而可以单独地和/或共同地使用广泛的硬件、软件或固件(或其任意组合)配置来实现每个框图部件、流程图步骤、操作和/或本文中所描述的和/或所图示的部件。此外,由于可实现许多其他结构以实现相同的功能,任何包含在其他部件中的部件的公开应当被考虑为实际上是示例性的。
在一些实施例中,图1中的系统100的全部或部分可以表示云计算环境或基于网络的环境的部分。云计算环境或基于网络的环境可以通过互联网提供各种服务和应用。这些云计算和基于网络的服务(例如,作为服务的软件、作为服务的平台、作为服务的基础设施等)可以是通过网页浏览器或其他远程接口可访问的。本文中描述的各种功能还可提供网络交换能力、网关接入能力、网络安全功能、网络的内容高速缓存和分发服务、网络控制服务和/或其他网络功能。
本文中所描述的或所图示的过程参数和步骤的序列仅通过示例的形式给出,并且可以根据需要被改变。例如,尽管本文中所图示的和/或所描述的步骤可能以特定的顺序被示出或被讨论,但并不一定需要按所描述的或所讨论的顺序执行这些步骤。本文中所描述的或所图示的各种示例性方法也可以省略本文中所描述的或所图示的一个或多个步骤,或者包括那些公开的步骤之外的附加的步骤。
已经提供了前述描述以使得其他本领域的技术人员以最好地利用本文中公开的示例性实施例的各个方面。该示例性描述并不旨在是穷经的或者被限定于所公开的任何精确的形式。在不偏离本公开的主旨和范围的情况下,许多修改和变化是有可能的。本文中公开的实施例应当被考虑为在所有方面是说明性的而非限制性的。应当参考所附的权利要求书以及其等价形式来确定本公开的范围。
除非特别指出,在说明书及权利要求书中使用的术语被“连接至”或“耦合至”(以及他们的衍生体)将被理解为允许直接的和间接的(即,经由其他元素或部件)连接。另外,在说明书及权利要求书中使用的术语“一个”或“一种”应当被理解为是“至少其中之一”的含义。最后,为了方便使用,在说明书及权利要求书中使用的术语“包括”和“具有”(以及他们的衍生体)是与术语“包含”可互换的,并且与“包含”具有相同的含义。
Claims (15)
1.一种计算机实现的方法,包括:
识别从源交换机至目的交换机的多个路径,其中:
所述多个路径中的每个路径包括一个或多个数据链路;并且
所述一个或多个数据链路中的每个数据链路具有链路带宽;
针对所述多个路径中的每个路径,至少部分基于在路径中的所述一个或多个数据链路的最低链路带宽,确定路径的限制带宽;以及
至少部分基于所述多个路径中的每个路径的所述限制带宽,穿过所述多个路径平衡从所述源交换机传输至所述目的交换机的网络流量。
2.根据权利要求1所述的方法,其中所述源交换机和所述目的交换机包括表现为单个逻辑交换机的虚拟机箱结构的至少一部分。
3.根据权利要求1或2中的任一项所述的方法,其中穿过所述多个路径平衡所述网络流量包括,针对所述多个路径中的每个路径:
至少部分基于路径的所述限制带宽与所述多个路径中的所有路径的所述限制带宽的总和的比值,向所述路径指派路径权重;以及
使用指派给所述路径的所述路径权重以经由所述路径传输所述网络流量的一部分。
4.根据权利要求3所述的方法,其中使用指派给所述路径的所述路径权重以经由所述路径传输所述网络流量的所述部分包括:
识别连接至所述路径的所述源交换机的多个接口;
针对在所述多个接口中的每个接口,
确定所述接口的带宽;以及
至少部分基于所述接口的所述带宽与所述多个接口中的所有接口的所述带宽的总和的比值,向所述接口指派接口权重;
以及
使用指派给每个接口的所述接口权重以穿过所述多个接口平衡经由所述路径被传输的所述网络流量的所述部分。
5.根据权利要求1至3中的任一项所述的方法,其中穿过所述多个路径平衡所述网络流量包括,穿过连接至所述多个路径的所述源交换机的多个接口平衡所述网络流量。
6.根据权利要求5所述的方法,其中穿过连接至所述多个路径的所述源交换机的所述多个接口平衡所述网络流量包括,针对所述多个接口中的每个接口:
至少部分基于以下来向接口指派接口权重:
所述接口的所述带宽与在所述多个接口中的所有接口的所述带宽的总和的比值,其中所述多个接口连接至所述接口连接至的所述多个路径中的至少一个路径;以及
在所述接口连接至的所述多个路径中的所述至少一个路径的所述限制带宽与所述多个路径中的所有路径的所述限制带宽的总和的比值;以及
使用指派给所述接口的所述接口权重以经由所述接口来传输所述网络流量的一部分。
7.根据权利要求1至6中的任一项所述的方法,其中所述多个路径至少包括从所述源交换机至所述目的交换机的每个最短路径。
8.根据权利要求1至7中的任一项所述的方法,其中所述多个路径中的至少两个路径共享数据链路。
9.一种系统,包括:
识别模块,被存储在存储器中,所述识别模块识别从源交换机至目的交换机的多个路径,其中:
所述多个路径中的每个路径包括一个或多个数据链路;以及
所述一个或多个数据链路具有链路带宽;
确定模块,被存储在存储器中,所述确定模块针对所述多个路径中的每个路径,至少部分基于路径中的所述一个或多个数据链路的最低链路带宽,确定路径的限制带宽;
平衡模块,被存储在存储器中,所述平衡模块至少部分基于所述多个路径中的每个路径的限制带宽,穿过所述多个路径平衡从所述源交换机被传输至所述目的交换机的网络流量;以及
至少一个物理处理器,所述至少一个物理处理器执行所述识别模块、所述确定模块和所述平衡模块。
10.根据权利要求9所述的系统,其中所述源交换机和所述目的交换机包括表现为单个逻辑交换机的虚拟机箱结构的至少一部分。
11.根据权利要求9或10中的任一项所述的系统,其中所述平衡模块穿过所述多个路径平衡所述网络流量通过,针对所述多个路径中的每个路径:
至少部分基于所述路径的所述限制带宽与所述多个路径中的所有路径的所述限制带宽的总和的比值,向所述路径指派路径权重;以及
使用指派给所述路径的所述路径权重经由所述路径传输所述网络流量的一部分。
12.根据权利要求11所述的系统,其中所述平衡模块通过以下步骤,来使用指派给所述路径的所述路径权重经由所述路径传输所述网络流量的所述部分:
识别连接至所述路径的所述源交换机的多个接口;
针对所述多个接口中的每个接口,
确定所述接口的带宽;以及
至少部分基于所述接口的所述带宽与所述多个接口中的所有接口的所述带宽的总和的比值,向所述接口指派接口权重;
以及
使用指派给每个接口的所述接口权重以穿过所述多个接口平衡经由所述路径传输的所述网络流量的所述部分。
13.根据权利要求9至11中的任一项所述的系统,其中所述平衡模块通过穿过连接至所述多个路径的所述源交换机的多个接口平衡所述网络流量,来穿过所述多个路径平衡所述网络流量。
14.根据权利要求13所述的系统,其中所述平衡模块通过以下步骤,来穿过连接至所述多个路径的所述源交换机的所述多个接口平衡所述网络流量:针对所述多个接口中的每个接口,
至少部分基于以下来向所述接口指派接口权重:
所述接口的所述带宽与在所述多个接口中的所有接口的所述带宽的总和的比值,其中所述多个接口连接至所述接口连接至的所述多个路径中的至少一个路径;以及
在所述接口连接至的所述多个路径中的所述至少一个路径的所述限制带宽与所述多个路径中的所有路径的所述限制带宽的总和的比值;以及
使用指派给所述接口的所述接口权重以经由所述接口来传输所述网络流量的一部分。
15.根据权利要求9至14中的任一项所述的系统,其中所述多个路径至少包括从所述源交换机至所述目的交换机的每个最短路径。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/229,958 US9654401B2 (en) | 2014-03-30 | 2014-03-30 | Systems and methods for multipath load balancing |
US14/229,958 | 2014-03-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104954275A true CN104954275A (zh) | 2015-09-30 |
Family
ID=52779509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510130519.6A Pending CN104954275A (zh) | 2014-03-30 | 2015-03-24 | 用于多路径负载平衡的系统和方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9654401B2 (zh) |
EP (1) | EP2928131B1 (zh) |
CN (1) | CN104954275A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107018088A (zh) * | 2017-03-06 | 2017-08-04 | 北京安博通科技股份有限公司 | 传输链路选择方法及装置 |
CN108632156A (zh) * | 2017-03-24 | 2018-10-09 | 英特尔公司 | 负载平衡系统、设备和方法 |
CN109426549A (zh) * | 2017-09-01 | 2019-03-05 | 英特尔公司 | 针对虚拟环境的加速器互连分配 |
CN109450807A (zh) * | 2018-11-28 | 2019-03-08 | 迈普通信技术股份有限公司 | 一种接口选择方法及通信设备 |
WO2020244486A1 (zh) * | 2019-06-04 | 2020-12-10 | 华为技术有限公司 | 一种负载分担方法和网络设备 |
CN114697256A (zh) * | 2019-03-01 | 2022-07-01 | 瞻博网络公司 | 基于集中式控制器的动态网络带宽分配与管理 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI525451B (zh) * | 2014-07-21 | 2016-03-11 | 緯創資通股份有限公司 | 儲存系統及其資料傳輸方法 |
US20160065449A1 (en) * | 2014-08-29 | 2016-03-03 | Cisco Technology, Inc. | Bandwidth-Weighted Equal Cost Multi-Path Routing |
GB2555445B (en) * | 2016-10-28 | 2020-07-15 | Canon Kk | Multi-copy data transmission with rate adaptation |
US10420007B2 (en) * | 2017-10-03 | 2019-09-17 | Itron Networked Solutions, Inc. | Energy aware routing for mesh networks |
TWI689823B (zh) | 2018-01-04 | 2020-04-01 | 財團法人工業技術研究院 | 動態工作移轉方法及伺服器 |
CN111698173B (zh) * | 2020-06-29 | 2022-09-13 | 迈普通信技术股份有限公司 | 一种流量调度方法、装置及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103379042A (zh) * | 2012-04-25 | 2013-10-30 | 丛林网络公司 | 路径加权的等价多路径 |
CN103560972A (zh) * | 2013-11-22 | 2014-02-05 | 烽火通信科技股份有限公司 | 一种双上行企业网关按带宽比例传送报文的方法 |
CN103685054A (zh) * | 2013-12-18 | 2014-03-26 | 武汉烽火网络有限责任公司 | 基于业务感知的多路径负载均衡方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6370119B1 (en) * | 1998-02-27 | 2002-04-09 | Cisco Technology, Inc. | Computing the widest shortest path in high-speed networks |
US6697333B1 (en) * | 1998-03-04 | 2004-02-24 | Alcatel Canada Inc. | Bandwidth load consideration in network route selection |
US7072304B2 (en) * | 2002-02-27 | 2006-07-04 | Nortel Networks Limited | Network path selection based on bandwidth |
US7720054B2 (en) * | 2004-03-02 | 2010-05-18 | Cisco Technology, Inc. | Router configured for outputting update messages specifying a detected attribute change of a connected active path according to a prescribed routing protocol |
US7958208B2 (en) | 2004-09-22 | 2011-06-07 | At&T Intellectual Property I, L.P. | System and method for designing a customized switched metro Ethernet data network |
US20080212584A1 (en) | 2007-03-02 | 2008-09-04 | At&T Knowledge Ventures, L.P. | Method and system for presentation of multicast trees |
US8958310B2 (en) | 2010-01-28 | 2015-02-17 | Hewlett-Packard Development Company, L.P. | Investigating quality of service disruptions in multicast forwarding trees |
US8499060B2 (en) * | 2010-03-19 | 2013-07-30 | Juniper Networks, Inc. | Upgrading system software in a chassis without traffic loss |
US8625466B2 (en) | 2010-05-11 | 2014-01-07 | Calix, Inc. | Multi-card network device appearing as single entity in spanning tree network |
US8787400B1 (en) * | 2012-04-25 | 2014-07-22 | Juniper Networks, Inc. | Weighted equal-cost multipath |
US8848509B2 (en) | 2012-04-27 | 2014-09-30 | Telefonaktiebolaget L M Ericsson (Publ) | Three stage folded Clos optimization for 802.1aq |
US8717944B2 (en) | 2012-08-23 | 2014-05-06 | Cisco Technology, Inc. | TRILL optimal forwarding and traffic engineered multipathing in cloud switching |
US9083645B2 (en) | 2012-09-07 | 2015-07-14 | Dell Products L.P. | Systems and methods providing reverse path forwarding compliance for a multihoming virtual routing bridge |
-
2014
- 2014-03-30 US US14/229,958 patent/US9654401B2/en not_active Expired - Fee Related
-
2015
- 2015-03-23 EP EP15160250.5A patent/EP2928131B1/en not_active Not-in-force
- 2015-03-24 CN CN201510130519.6A patent/CN104954275A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103379042A (zh) * | 2012-04-25 | 2013-10-30 | 丛林网络公司 | 路径加权的等价多路径 |
CN103560972A (zh) * | 2013-11-22 | 2014-02-05 | 烽火通信科技股份有限公司 | 一种双上行企业网关按带宽比例传送报文的方法 |
CN103685054A (zh) * | 2013-12-18 | 2014-03-26 | 武汉烽火网络有限责任公司 | 基于业务感知的多路径负载均衡方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107018088A (zh) * | 2017-03-06 | 2017-08-04 | 北京安博通科技股份有限公司 | 传输链路选择方法及装置 |
CN107018088B (zh) * | 2017-03-06 | 2020-03-17 | 北京安博通科技股份有限公司 | 传输链路选择方法及装置 |
CN108632156A (zh) * | 2017-03-24 | 2018-10-09 | 英特尔公司 | 负载平衡系统、设备和方法 |
CN109426549A (zh) * | 2017-09-01 | 2019-03-05 | 英特尔公司 | 针对虚拟环境的加速器互连分配 |
CN109450807A (zh) * | 2018-11-28 | 2019-03-08 | 迈普通信技术股份有限公司 | 一种接口选择方法及通信设备 |
CN109450807B (zh) * | 2018-11-28 | 2022-02-22 | 迈普通信技术股份有限公司 | 一种接口选择方法及通信设备 |
CN114697256A (zh) * | 2019-03-01 | 2022-07-01 | 瞻博网络公司 | 基于集中式控制器的动态网络带宽分配与管理 |
CN114697256B (zh) * | 2019-03-01 | 2024-03-05 | 瞻博网络公司 | 基于集中式控制器的动态网络带宽分配与管理 |
WO2020244486A1 (zh) * | 2019-06-04 | 2020-12-10 | 华为技术有限公司 | 一种负载分担方法和网络设备 |
Also Published As
Publication number | Publication date |
---|---|
US9654401B2 (en) | 2017-05-16 |
EP2928131B1 (en) | 2018-09-12 |
EP2928131A1 (en) | 2015-10-07 |
US20150281088A1 (en) | 2015-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104954275A (zh) | 用于多路径负载平衡的系统和方法 | |
US9083645B2 (en) | Systems and methods providing reverse path forwarding compliance for a multihoming virtual routing bridge | |
CN108243103B (zh) | 用于在克洛斯网络中分配路由协议信息的装置、系统和方法 | |
CN104954276B (zh) | 用于负载平衡多播流量的系统和方法 | |
US8811153B1 (en) | Switch fabric for network devices | |
US8644139B2 (en) | Priority based flow control within a virtual distributed bridge environment | |
CN108886496A (zh) | 多路径虚拟交换 | |
US10200286B2 (en) | Systems and methods for load balancing in a data center | |
US10616141B2 (en) | Large scale fabric attached architecture | |
CN107409066A (zh) | 用于自动检测和配置服务器上行链路网络接口的系统和方法 | |
CN104754025A (zh) | 可编程分布式联网 | |
CN108574634A (zh) | 用于跨越共享标签的标签交换路径提供节点保护的装置、系统和方法 | |
CN104320350A (zh) | 用于提供基于信用的流控制的方法及系统 | |
CN106484322A (zh) | 一种挂载文件系统的方法、装置及设备 | |
CN105052092A (zh) | 具有孤立端口的多节点虚拟交换机中的路径优化 | |
CN116547952A (zh) | 利用分段标识符优化分段路由路径 | |
CN112559166A (zh) | 用于确定与分级转发信息库的路由相关的业务负载分布的装置、系统和方法 | |
CN109150721B (zh) | 用于在mpls分组上施加标签栈条目的装置、系统和方法 | |
US10715437B2 (en) | Deadline driven packet prioritization for IP networks | |
US10088643B1 (en) | Multidimensional torus shuffle box | |
CN108696429B (zh) | 促进基于控制器的多播信令的装置、系统和方法 | |
CN104348737A (zh) | 一种组播报文的传输方法及交换机 | |
US9762474B2 (en) | Systems and methods for selecting a router to connect a bridge in the network on chip (NoC) | |
CN108512756B (zh) | 促进iBGP对等体的标签标识的路由决策的装置、系统和方法 | |
CN117643039A (zh) | 组织网络中进行服务链接 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150930 |
|
WD01 | Invention patent application deemed withdrawn after publication |