CN112087376A - 一种负载分担的方法及装置 - Google Patents
一种负载分担的方法及装置 Download PDFInfo
- Publication number
- CN112087376A CN112087376A CN201910516915.0A CN201910516915A CN112087376A CN 112087376 A CN112087376 A CN 112087376A CN 201910516915 A CN201910516915 A CN 201910516915A CN 112087376 A CN112087376 A CN 112087376A
- Authority
- CN
- China
- Prior art keywords
- port
- bandwidth
- utilization rate
- path
- physical interface
- 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.)
- Granted
Links
Images
Classifications
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/72—Admission control; Resource allocation using reservation actions during connection setup
- H04L47/726—Reserving resources in multiple paths to be used simultaneously
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了一种负载分担的方法及装置,其中该方法包括:当报文的路由是等价多路径ECMP路由时,获取每一条成员路径出端口的带宽利用率;判断带宽利用率最小的出端口是否为物理接口;当是物理接口时,将所述带宽利用率最小的出端口作为所述报文发送出去的端口。如此,能够针对每个报文按路径物理带宽利用率进行负载分担,从而提高了负载分担后的网络总带宽。
Description
技术领域
本发明实施例涉及但不限于ECMP(Equal-cost multi-path routing,等价多路径)技术,更具体地涉及一种负载分担的方法及装置。
背景技术
ECMP系统存在多条不同链路到达同一目的地址的网络环境中,如果使用传统的路由技术,发往该目的地址的数据包只能利用其中的一条链路,其它链路处于备份状态或无效状态,并且在动态路由环境下相互的切换需要一定时间。而ECMP是一个逐跳的基于流的负载均衡策略,当路由器发现同一目的地址出现多个最优路径时,会更新路由表,为此目的地址添加多条规则,对应于多个下一跳。不仅增加了传输带宽,并且可以无时延无丢包地备份失效链路的数据传输。
但是实际情况是,各路径的带宽、时延和可靠性等不一样,把各个路径认可成一样,不能很好地利用带宽,尤其在路径间差异大时,效果会非常不理想。
发明内容
有鉴于此,本发明实施例提供了一种负载分担的方法,包括:
当报文的路由是等价多路径ECMP路由时,获取每一条成员路径出端口的带宽利用率;
判断带宽利用率最小的出端口是否为物理接口;
当是物理接口时,将所述带宽利用率最小的出端口作为所述报文发送出去的端口。
本发明实施例还提供了一种负载分担的装置,包括:
获取单元,用于当报文的路由是等价多路径ECMP路由时,获取每一条成员路径出端口的带宽利用率;
判断单元,用于判断带宽利用率最小的出端口是否为物理接口;
确定单元,用于当是物理接口时,将所述带宽利用率最小的出端口作为所述报文发送出去的端口。
本发明实施例还提供了一种负载分担的装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述负载分担的方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有信息处理程序,所述信息处理程序被处理器执行时实现上述负载分担的方法的步骤。
本发明实施例提供的技术方案,能够针对每个报文按路径物理带宽利用率进行负载分担,从而提高了负载分担后的网络总带宽。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本发明一实施例提供的一种负载分担的方法的流程示意图;
图2为本发明另一实施例提供的一种负载分担的方法的流程示意图;
图3为本发明另一实施例提供的一种负载分担的方法的流程示意图;
图4为本一实施例提供的ECMP系统的架构示意图;
图5为本发明另一实施例提供的一种负载分担的方法的流程示意图;
图6为本另一实施例提供的ECMP系统的架构示意图;
图7为本发明一实施例提供的一种负载分担的装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1为本发明一实施例提供的一种负载分担的方法的流程示意图,如图1所示,该方法包括:
步骤101,当报文的路由是等价多路径ECMP路由时,获取每一条成员路径出端口的带宽利用率;
步骤102,判断带宽利用率最小的出端口是否为物理接口;
步骤103,当是物理接口时,将所述带宽利用率最小的出端口作为所述报文发送出去的端口。
其中,所述获取每一条成员路径出端口的带宽利用率,包括:
获取当前时间往前一秒时间内,所述每一条成员路径出端口的发送比特数;
获取所述每一条成员路径出端口的带宽比特数;
将所述每一条成员路径出端口的发送比特数除于对应的带宽比特数,得到所述每一条成员路径出端口的带宽利用率。
其中,当所述出端口为物理接口时,所述物理接口的发送比特数为接口本身的发送比特数,所述物理接口的带宽比特数为接口本身的容量带宽;
当所述出端口为聚合接口时,所述聚合接口的发送比特数为各个成员口的发送比特数之和,所述聚合接口的带宽比特数为各个成员口的容量带宽之和;
当所述出端口为隧道接口时,所述隧道接口的发送比特数为其所包含的物理接口、聚合接口以及下级ECMP所包含的物理接口、聚合接口发送比特数的总和,所述隧道接口的带宽比特数为其所包含的物理接口、聚合接口以及下级ECMP所包含的物理接口、聚合接口容量带宽的总和。
其中,该方法还包括:
当不是物理接口时,获取所述带宽利用率最小的出端口中每一个成员口的带宽利用率;
选择带宽利用率最小的成员口作为所述报文发送出去的端口。
其中,所述获取所述带宽利用率最小的出端口中每一个成员口的带宽利用率,包括:
获取当前时间往前一秒时间内,所述每一个成员口的发送比特数;
获取所述每一个成员口的带宽比特数;
将所述每一个成员口的发送比特数除于对应的带宽比特数,得到所述每一个成员口的带宽利用率。
其中,该方法还包括:
当每一条成员路径出端口的带宽利用率相等或者都为零时,判断带宽比特数最大的出端口是否为物理接口;
当是物理接口时,将所述带宽比特数最大的出端口作为所述报文发送出去的端口;
当不是物理接口时,获取所述带宽比特数最大的出端口中每一个成员口的带宽利用率;
选择带宽利用率最小的成员口作为所述报文发送出去的端口。
其中,该方法还包括:
当报文的路由不是ECMP路由时,判断路径出端口是否为物理接口;
当是物理接口时,选择所述路径出端口作为所述报文发送出去的端口;
当不是物理接口时,获取所述路径出端口中每一个成员口的带宽利用率;
选择带宽利用率最小的成员口作为所述报文发送出去的端口。
图2为本发明另一实施例提供的一种负载分担的方法的流程示意图,如图2所示,该方法包括:
步骤201,判断报文的路由是否是ECMP路由;
其中,报文进入设备后,可以通过目的地址查找路由。
当所述报文的路由是ECMP路由时,执行步骤202,当所述报文的路由不是ECMP路由时,执行步骤206:
步骤202,获取每一条成员路径出端口的带宽利用率;
其中,所述获取每一条成员路径出端口的带宽利用率,包括:
获取当前时间往前一秒时间内,所述每一条成员路径出端口的发送比特数;
获取所述每一条成员路径出端口的带宽比特数;
将所述每一条成员路径出端口的发送比特数除于对应的带宽比特数,得到所述每一条成员路径出端口的带宽利用率。
其中,所述出端口,按照形态分类,分为物理接口、聚合接口、隧道接口。
物理接口的发送比特数为接口本身的发送比特数。聚合接口的发送比特数为各个成员口的发送比特数之和。隧道接口的发送比特数为其所包含的物理接口、聚合接口以及下级ECMP所包含的物理接口、聚合接口发送比特数的总和。
物理接口的带宽(即带宽比特数)为接口本身的容量带宽。聚合接口的带宽为各个成员口的容量带宽之和。隧道接口的带宽为其所包含的物理接口、聚合接口以及下级ECMP所包含的物理接口、聚合接口容量带宽的总和。
步骤203,判断带宽利用率最小的出端口是否为物理接口;
当所述带宽利用率最小的出端口是物理接口时,执行步骤204,当所述带宽利用率最小的出端口不是物理接口时,执行步骤205:
步骤204,将所述带宽利用率最小的出端口作为所述报文发送出去的端口;
步骤205,获取所述带宽利用率最小的出端口中每一个成员口的带宽利用率,选择带宽利用率最小的成员口作为所述报文发送出去的端口;
其中,所述获取所述带宽利用率最小的出端口中每一个成员口的带宽利用率,包括:
获取当前时间往前一秒时间内,所述每一个成员口的发送比特数;
获取所述每一个成员口的带宽比特数;
将所述每一个成员口的发送比特数除于对应的带宽比特数,得到所述每一个成员口的带宽利用率。
其中,当每一成员口的带宽利用率相等或者都为零时,还可以选择带宽比特数最大的成员口作为所述报文发送出去的端口。
步骤206,判断路径出端口是否为物理接口;
当所述路径出端口是物理接口时,执行步骤207,当所述路径出端口不是物理接口时,执行步骤208:
步骤207,选择所述路径出端口作为所述报文发送出去的端口;
步骤208,获取所述路径出端口中每一个成员口的带宽利用率,选择带宽利用率最小的成员口作为所述报文发送出去的端口。
其中,所述获取所述所述路径出端口中每一个成员口的带宽利用率,包括:
获取当前时间往前一秒时间内,所述每一个成员口的发送比特数;
获取所述每一个成员口的带宽比特数;
将所述每一个成员口的发送比特数除于对应的带宽比特数,得到所述每一个成员口的带宽利用率。
其中,当每一成员口的带宽利用率相等或者都为零时,还可以选择带宽比特数最大的成员口作为所述报文发送出去的端口。
物理接口是设备的最小物理出接口形态,通过本发明实施例提供的选路逻辑,可以明确指出从哪个物理接口发送该报文。
本发明实施例提供的技术方案,采用了逐报计算路径的方式,实现数据报文在ECMP的各个路径之间按照相同的带宽利用率选择出端口,与现有技术相比,增加了网络的健壮性进步,避免了非平衡链路组网环境下的木桶效应,提高了整网的带宽利用率和稳定性。
图3为本发明另一实施例提供的一种负载分担的方法的流程示意图。
本实施例应用于图4所示的ECMP系统。如图4所示,Router A设备和Router B、C设备建立ECMP系统。Router B和Router C两个设备作为Router A设备的等价路由的两台下一跳路径,负责分担从Router A设备出向的流量。Router A设备通过路径1的物理接口port1与Router B设备相连,带宽为10M。Router A设备通过路径2的物理接口port2与Router C设备相连,带宽为2M。
如图3所示,该方法包括:
步骤301,获取路径1出端口port1和路径2出端口port2的带宽利用率;
本实施例中,外部报文进入RouterA设备,通过报文的目的地址,查询路由表,通过查找报文的目的地址,找到若干条等价的下一跳路径。
本实施例中,如图4所示环境中,路由为ECMP等价路由,等价路由数目为2。路径1出端口为物理接口port1,链路带宽为10M,路径2出端口为物理接口port2,链路带宽为2M。
获取当前时间往前1s内port1的发送比特数,将port1的发送比特数和port1的带宽10M做除法得出物理接口port1的端口带宽利用率;
同样地,获取当前时间往前1s内port2的发送比特数,将port2的发送比特数和port2的带宽2M做除法得出物理接口port2的端口带宽利用率。
具体而言,可以在Router A设备中设置统计模块、配置模块、带宽利用率计算模块;
其中,配置模块用于保存Router A设备中每一个出端口的带宽;
例如,保存port1的带宽为10M,port2的带宽为2M。
统计模块,用于在收到一个报文后,统计当前时间往前1s内每一个出端口的发送比特数;
例如,统计当前时间往前1s内port1的发送比特数和当前时间往前1s内port2的发送比特数。
带宽利用率计算模块,用于从统计模块获取当前时间往前1s内每一个出端口的发送比特数,并从配置模块获取每一个出端口的带宽比特数,然后将对应的两个比特数做除法计算,得出每一个出端口的带宽利用率。
例如,将port1的发送比特数和port1的带宽10M做除法得出物理接口port1的端口带宽利用率;将port2的发送比特数和port2的带宽2M做除法得出物理接口port2的端口带宽利用率。
步骤302,获取带宽利用率最小的出端口作为报文发送出去的端口。
具体而言,可以在Router A设备中设置路径选择器,将路径1和路径2的出端口带宽利用率送入到路径选择器中,从中选择带宽利用率最小的路径,选定为该报文实际要走的出端口。
本实施例中,假设选取的出端口为路径1,由上述流程选取的路径1出端口为物理接口port1,不需要再经过额外选举流程,报文从物理接口port1发出。
其中,步骤301是对每个需要计算ECMP出口路径的报文做逐包计算,且获取的是实时端口带宽利用率,实际应用效果会在路径1和路径2上出端口形成相近的带宽利用率,从而达到基于带宽的均衡负载分担。如图4所示场景,在没有其他流量,只有需要计算ECMP出口流量的情况下,路径1的物理接口port1跟路径2的物理接口port2,出方向报文数量的比例为5:1。在有其他流量的情况下,该ECMP出口流量分配比例不定,但是可以确保各个出接口的带宽利用率近似相等。
图5为本发明另一实施例提供的一种负载分担的方法的流程示意图。
本实施例应用于图6所示的ECMP系统。如图6所示,Router A设备和Router B、C、D设备建立ECMP系统。Router B、C、D三个设备作为Router A设备的等价路由的三台下一跳路径,负责分担从Router A设备出向的流量。Route A设备通过路径1的物理接口port1与Router B设备相连,带宽为10M。Router A设备通过路径2的聚合接口smartgroup2与RouterC设备相连,其中smartgroup2包含两个物理接口,每个端口带宽均为10M。Router A设备通过路径3的隧道接口tunnel3与Router D设备相连,其中tunnel3为ECMP出口,包含两条路径,对应的出端口分别为物理接口port3.1和物理接口port3.2。其中物理接口port3.1的带宽为10M,物理接口port3.2的带宽为20M。
如图5所示,该方法包括:
步骤501,获取路径1出端口port1、路径2出端口smartgroup2和路径3出端口tunnel3的带宽利用率;
其中,外部报文进入RouterA设备,通过报文的目的地址,查询路由表。通过查找报文的目的地址,找到若干条等价的下一跳路径。
本实施例中,如图6所示环境中,路由为ECMP等价路由,等价路由数目为3。路径1出端口为物理接口port1,链路带宽为10M。路径2出端口为聚合接口smartgroup2,链路带宽为20M。路径3出端口为隧道接口tunnel3,链路带宽为30M。
其中,路径1出端口为物理接口port1,port1的发送比特数为接口本身的发送比特数,port1的带宽10M,将port1的发送比特数和port1的带宽10M做除法计算,得出物理接口port1的端口带宽利用率。
其中,路径2出端口为聚合接口smartgroup2,smartgroup2包括两个成员口,smartgroup2的发送比特数为两个成员口总的发送比特数,smartgroup2的带宽为两个成员口总的带宽20M,使用smartgroup2两个成员口总的发送比特数,除以两个成员口总的带宽20M,得出聚合接口smartgroup2的端口带宽利用率。
其中,路径3出端口为隧道接口tunnel3,tunnel3为ECMP出口,包含两条路径,tunnel3的发送比特数为tunnel3两条路径对应的两个出端口总的发送比特数,tunnel3的带宽为tunnel3两条路径对应的两个出端口总的带宽30M,使用tunnel3两条路径对应的两个出端口总的发送比特数,除以两条路径对应的两个出端口总的带宽30M,得出隧道接口tunnel3的端口带宽利用率。
具体而言,可以在Router A设备中设置统计模块、配置模块、带宽利用率计算模块;
其中,配置模块用于保存Router A设备中每一个出端口的带宽;
例如,保存port1的带宽为10M,smartgroup2的两个成员口带宽分别为10M,tunnel3的两条路径对应的两个出端口port3.1带宽为10M,port3.2带宽为20M。
统计模块,用于在收到一个报文后,统计当前时间往前1s内每一个出端口的发送比特数;
例如,统计当前时间往前1s内,port1的发送比特数、smartgroup2的发送比特数、tunnel3的发送比特数。
带宽利用率计算模块,用于从统计模块获取当前时间往前1s内每一个出端口的发送比特数,并从配置模块获取每一个出端口的带宽比特数,然后将对应的两个比特数做除法计算,得出每一个出端口的带宽利用率。
例如,将port1的发送比特数和port1的带宽10M做除法得出物理接口port1的端口带宽利用率;将smartgroup2的发送比特数和smartgroup2的带宽20M做除法得出smartgroup2的端口带宽利用率;将tunnel3的发送比特数和tunnel3的带宽30M做除法得出tunnel3的端口带宽利用率。
步骤502,选出带宽利用率最小的出端口;
具体而言,可以在在Router A设备中设置路径选择器,例如,将路径1、2、3的出端口带宽利用率送入到路径选择器中,从中选择带宽利用率最小的路径,选定为该报文实际要走的出端口。本实施例中,假设选取的出端口为路径3。
由上述流程选取的路径3出端口为隧道接口tunnel3,不是物理接口,需要再经过额外选举流程,继续步骤503。
步骤503,获取tunnel3中两个成员口port3.1和port3.2的带宽利用率;
其中,获取当前时间往前1s内,port3.1的发送比特数,获取port3.1的带宽10M,将两个比特数做除法计算,得出物理接口port3.1的端口带宽利用率。
获取当前时间往前1s内,port3.2的发送比特数,获取port3.2的带宽20M,将两个比特数做除法计算,得出物理接口port3.2的端口带宽利用率。
步骤504,选出带宽利用率最小的成员口,作为报文发送出去的端口。
具体而言,将port3.1和port3.2的带宽利用率送入到路径选择器中,从中选择带宽利用率最小的路径,选定为该报文实际要走的出端口。
本实施例中,假设选取的成员口为路径port3.2。由上述流程选取的路径1出端口为物理接口port3.2,不需要再经过额外选举流程,报文从物理接口port3.2发出。
其中,步骤501、503是对每个需要计算ECMP出口路径的报文做逐包计算,且获取的是实时端口带宽利用率实际应用效果会在路径1、2、3上出端口形成相近的带宽利用率,从而达到基于带宽的均衡负载分担。如图6所示场景,在没有其他流量,只有需要计算ECMP出口流量的情况下,路径1的物理接口port1,跟路径2的聚合接口smartgroup2,跟路径3的隧道接口tunnel3,在出方向报文数量的比例为1:2:3。在有其他流量的情况下,该ECMP出口流量分配比例不定,但是可以确保各个出接口的带宽利用率近似相等。
图7为本发明一实施例提供的一种负载分担的装置的结构示意图,如图7所示,该装置包括:
获取单元,用于当报文的路由是等价多路径ECMP路由时,获取每一条成员路径出端口的带宽利用率;
判断单元,用于判断带宽利用率最小的出端口是否为物理接口;
确定单元,用于当是物理接口时,将所述带宽利用率最小的出端口作为所述报文发送出去的端口。
其中,所述获取单元,具体用于获取当前时间往前一秒时间内,所述每一条成员路径出端口的发送比特数;
获取所述每一条成员路径出端口的带宽比特数;
将所述每一条成员路径出端口的发送比特数除于对应的带宽比特数,得到所述每一条成员路径出端口的带宽利用率。
其中,当所述出端口为物理接口时,所述物理接口的发送比特数为接口本身的发送比特数,所述物理接口的带宽比特数为接口本身的容量带宽;
当所述出端口为聚合接口时,所述聚合接口的发送比特数为各个成员口的发送比特数之和,所述聚合接口的带宽比特数为各个成员口的容量带宽之和;
当所述出端口为隧道接口时,所述隧道接口的发送比特数为其所包含的物理接口、聚合接口以及下级ECMP所包含的物理接口、聚合接口发送比特数的总和,所述隧道接口的带宽比特数为其所包含的物理接口、聚合接口以及下级ECMP所包含的物理接口、聚合接口容量带宽的总和。
其中,所述确定单元,还用于当不是物理接口时,获取所述带宽利用率最小的出端口中每一个成员口的带宽利用率;
选择带宽利用率最小的成员口作为所述报文发送出去的端口。
其中,所述获取所述带宽利用率最小的出端口中每一个成员口的带宽利用率,包括:
获取当前时间往前一秒时间内,所述每一个成员口的发送比特数;
获取所述每一个成员口的带宽比特数;
将所述每一个成员口的发送比特数除于对应的带宽比特数,得到所述每一个成员口的带宽利用率。
其中,所述判断单元,还用于当每一条成员路径出端口的带宽利用率相等或者都为零时,判断带宽比特数最大的出端口是否为物理接口;
当是物理接口时,将所述带宽比特数最大的出端口作为所述报文发送出去的端口;
当不是物理接口时,获取所述带宽比特数最大的出端口中每一个成员口的带宽利用率;
选择带宽利用率最小的成员口作为所述报文发送出去的端口。
其中,所述判断单元,还用于当报文的路由不是ECMP路由时,判断路径出端口是否为物理接口;
当是物理接口时,选择所述路径出端口作为所述报文发送出去的端口;
当不是物理接口时,获取所述路径出端口中每一个成员口的带宽利用率;
选择带宽利用率最小的成员口作为所述报文发送出去的端口。
本发明实施例还提供了一种负载分担的装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述任一项所述负载分担的方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有信息处理程序,所述信息处理程序被处理器执行时实现上述任一项所述负载分担的方法的步骤。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
Claims (10)
1.一种负载分担的方法,包括:
当报文的路由是等价多路径ECMP路由时,获取每一条成员路径出端口的带宽利用率;
判断带宽利用率最小的出端口是否为物理接口;
当是物理接口时,将所述带宽利用率最小的出端口作为所述报文发送出去的端口。
2.根据权利要求1所述的方法,其特征在于,所述获取每一条成员路径出端口的带宽利用率,包括:
获取当前时间往前一秒时间内,所述每一条成员路径出端口的发送比特数;
获取所述每一条成员路径出端口的带宽比特数;
将所述每一条成员路径出端口的发送比特数除于对应的带宽比特数,得到所述每一条成员路径出端口的带宽利用率。
3.根据权利要求2所述的方法,其特征在于,
当所述出端口为物理接口时,所述物理接口的发送比特数为接口本身的发送比特数,所述物理接口的带宽比特数为接口本身的容量带宽;
当所述出端口为聚合接口时,所述聚合接口的发送比特数为各个成员口的发送比特数之和,所述聚合接口的带宽比特数为各个成员口的容量带宽之和;
当所述出端口为隧道接口时,所述隧道接口的发送比特数为其所包含的物理接口、聚合接口以及下级ECMP所包含的物理接口、聚合接口发送比特数的总和,所述隧道接口的带宽比特数为其所包含的物理接口、聚合接口以及下级ECMP所包含的物理接口、聚合接口容量带宽的总和。
4.根据权利要求1所述的方法,其特征在于,该方法还包括:
当不是物理接口时,获取所述带宽利用率最小的出端口中每一个成员口的带宽利用率;
选择带宽利用率最小的成员口作为所述报文发送出去的端口。
5.根据权利要求5所述的方法,其特征在于,所述获取所述带宽利用率最小的出端口中每一个成员口的带宽利用率,包括:
获取当前时间往前一秒时间内,所述每一个成员口的发送比特数;
获取所述每一个成员口的带宽比特数;
将所述每一个成员口的发送比特数除于对应的带宽比特数,得到所述每一个成员口的带宽利用率。
6.根据权利要求1所述的方法,其特征在于,该方法还包括:
当每一条成员路径出端口的带宽利用率相等或者都为零时,判断带宽比特数最大的出端口是否为物理接口;
当是物理接口时,将所述带宽比特数最大的出端口作为所述报文发送出去的端口;
当不是物理接口时,获取所述带宽比特数最大的出端口中每一个成员口的带宽利用率;
选择带宽利用率最小的成员口作为所述报文发送出去的端口。
7.根据权利要求1所述的方法,其特征在于,该方法还包括:
当报文的路由不是ECMP路由时,判断路径出端口是否为物理接口;
当是物理接口时,选择所述路径出端口作为所述报文发送出去的端口;
当不是物理接口时,获取所述路径出端口中每一个成员口的带宽利用率;
选择带宽利用率最小的成员口作为所述报文发送出去的端口。
8.一种负载分担的装置,其特征在于,包括:
获取单元,用于当报文的路由是等价多路径ECMP路由时,获取每一条成员路径出端口的带宽利用率;
判断单元,用于判断带宽利用率最小的出端口是否为物理接口;
确定单元,用于当是物理接口时,将所述带宽利用率最小的出端口作为所述报文发送出去的端口。
9.一种负载分担的装置,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述负载分担的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有信息处理程序,所述信息处理程序被处理器执行时实现如权利要求1至7中任一项所述负载分担的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910516915.0A CN112087376B (zh) | 2019-06-14 | 2019-06-14 | 一种负载分担的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910516915.0A CN112087376B (zh) | 2019-06-14 | 2019-06-14 | 一种负载分担的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112087376A true CN112087376A (zh) | 2020-12-15 |
CN112087376B CN112087376B (zh) | 2023-03-14 |
Family
ID=73734076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910516915.0A Active CN112087376B (zh) | 2019-06-14 | 2019-06-14 | 一种负载分担的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112087376B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114866473A (zh) * | 2022-02-25 | 2022-08-05 | 网络通信与安全紫金山实验室 | 一种转发装置及流量输出接口调节方法 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1725761A (zh) * | 2005-06-10 | 2006-01-25 | 杭州华为三康技术有限公司 | 网络设备实现链路聚合的方法 |
CN1878130A (zh) * | 2005-06-08 | 2006-12-13 | 华为技术有限公司 | 一种数据转发方法 |
CN101217528A (zh) * | 2008-01-18 | 2008-07-09 | 杭州华三通信技术有限公司 | 一种链路聚合方法和装置 |
US20080175269A1 (en) * | 2007-01-22 | 2008-07-24 | Alvarez Daniel A | Bandwidth based selection for routing data |
CN101605091A (zh) * | 2009-02-13 | 2009-12-16 | 华为技术有限公司 | 一种多端口负载分担方法、装置和网络系统 |
CN101729427A (zh) * | 2010-01-20 | 2010-06-09 | 杭州华三通信技术有限公司 | 一种多链路负载分担和选路的方法和路由器 |
US8014278B1 (en) * | 2007-12-17 | 2011-09-06 | Force 10 Networks, Inc | Adaptive load balancing between ECMP or LAG port group members |
US8787400B1 (en) * | 2012-04-25 | 2014-07-22 | Juniper Networks, Inc. | Weighted equal-cost multipath |
CN104283807A (zh) * | 2014-09-17 | 2015-01-14 | 杭州华三通信技术有限公司 | 一种te隧道建立方法和装置 |
CN105743801A (zh) * | 2014-12-08 | 2016-07-06 | 中兴通讯股份有限公司 | 一种堆叠系统的流量转发的方法及装置 |
CN106961399A (zh) * | 2016-01-08 | 2017-07-18 | 中兴通讯股份有限公司 | 隧道出端口预留带宽的分配方法及系统 |
CN107645400A (zh) * | 2016-07-22 | 2018-01-30 | 中兴通讯股份有限公司 | 策略发送、接收方法、装置及控制器 |
CN108055203A (zh) * | 2017-12-26 | 2018-05-18 | 杭州迪普科技股份有限公司 | 一种等价路由负载分担方法及装置 |
CN108259334A (zh) * | 2017-01-25 | 2018-07-06 | 新华三技术有限公司 | 一种等价路由表项建立方法和装置 |
CN109617803A (zh) * | 2018-12-10 | 2019-04-12 | 北京华为数字技术有限公司 | 一种转发表项生成方法、装置及设备 |
-
2019
- 2019-06-14 CN CN201910516915.0A patent/CN112087376B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1878130A (zh) * | 2005-06-08 | 2006-12-13 | 华为技术有限公司 | 一种数据转发方法 |
CN1725761A (zh) * | 2005-06-10 | 2006-01-25 | 杭州华为三康技术有限公司 | 网络设备实现链路聚合的方法 |
US20080175269A1 (en) * | 2007-01-22 | 2008-07-24 | Alvarez Daniel A | Bandwidth based selection for routing data |
US8014278B1 (en) * | 2007-12-17 | 2011-09-06 | Force 10 Networks, Inc | Adaptive load balancing between ECMP or LAG port group members |
CN101217528A (zh) * | 2008-01-18 | 2008-07-09 | 杭州华三通信技术有限公司 | 一种链路聚合方法和装置 |
CN101605091A (zh) * | 2009-02-13 | 2009-12-16 | 华为技术有限公司 | 一种多端口负载分担方法、装置和网络系统 |
CN101729427A (zh) * | 2010-01-20 | 2010-06-09 | 杭州华三通信技术有限公司 | 一种多链路负载分担和选路的方法和路由器 |
US8787400B1 (en) * | 2012-04-25 | 2014-07-22 | Juniper Networks, Inc. | Weighted equal-cost multipath |
CN104283807A (zh) * | 2014-09-17 | 2015-01-14 | 杭州华三通信技术有限公司 | 一种te隧道建立方法和装置 |
CN105743801A (zh) * | 2014-12-08 | 2016-07-06 | 中兴通讯股份有限公司 | 一种堆叠系统的流量转发的方法及装置 |
CN106961399A (zh) * | 2016-01-08 | 2017-07-18 | 中兴通讯股份有限公司 | 隧道出端口预留带宽的分配方法及系统 |
CN107645400A (zh) * | 2016-07-22 | 2018-01-30 | 中兴通讯股份有限公司 | 策略发送、接收方法、装置及控制器 |
CN108259334A (zh) * | 2017-01-25 | 2018-07-06 | 新华三技术有限公司 | 一种等价路由表项建立方法和装置 |
CN108055203A (zh) * | 2017-12-26 | 2018-05-18 | 杭州迪普科技股份有限公司 | 一种等价路由负载分担方法及装置 |
CN109617803A (zh) * | 2018-12-10 | 2019-04-12 | 北京华为数字技术有限公司 | 一种转发表项生成方法、装置及设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114866473A (zh) * | 2022-02-25 | 2022-08-05 | 网络通信与安全紫金山实验室 | 一种转发装置及流量输出接口调节方法 |
CN114866473B (zh) * | 2022-02-25 | 2024-04-12 | 网络通信与安全紫金山实验室 | 一种转发装置及流量输出接口调节方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112087376B (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180248790A1 (en) | Route determining method, and corresponding apparatus and system | |
CN102263697B (zh) | 一种聚合链路流量分担方法和装置 | |
US9049131B2 (en) | Network system and load balancing method | |
US10044770B2 (en) | Method and apparatus for managing a plurality of sessions in a multi-path routing based network | |
EP4181477B1 (en) | Path selection in software defined wide area networks | |
CN105743801A (zh) | 一种堆叠系统的流量转发的方法及装置 | |
US20200162388A1 (en) | Data communication method and data communications network | |
US7395351B1 (en) | Method for assigning link weights in a communications network | |
CN101789949A (zh) | 一种实现负荷分担的方法和路由设备 | |
US20230084470A1 (en) | Method and apparatus for controlling network traffic path | |
CN110768917B (zh) | 一种报文传输方法及装置 | |
CN116232977A (zh) | 一种基于链路和设备状态的网络负载均衡方法及装置 | |
EP3490200A1 (en) | Data packet transmission method and border routing bridge device | |
CN112087376B (zh) | 一种负载分担的方法及装置 | |
EP3474504B1 (en) | Leaf-to-spine uplink bandwidth advertisement to leaf-connected servers | |
US20110249676A1 (en) | Method and System for Forwarding and Switching Traffic in a Network Element | |
CN111464443B (zh) | 基于服务功能链的报文转发方法、装置、设备及存储介质 | |
CN116668374A (zh) | 通信方法及装置 | |
CN107276908B (zh) | 一种路由信息处理方法及分组交换设备 | |
CN112039765B (zh) | 路由信息发送的方法、路由选路的方法和装置 | |
CN111740917A (zh) | 一种报文转发方法和装置 | |
US8072908B2 (en) | Partitioned forwarding of packets originated on a broadcast link among layer 2 forwarding devices of different adjacency networks | |
CN104469846A (zh) | 一种报文处理方法及设备 | |
CN102857436A (zh) | 一种基于irf网络的流量传输方法和设备 | |
CN113746734B (zh) | 一种流量转发方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |