CN112532542A - 一种负载均衡模式的选择方法及装置 - Google Patents
一种负载均衡模式的选择方法及装置 Download PDFInfo
- Publication number
- CN112532542A CN112532542A CN202011308807.3A CN202011308807A CN112532542A CN 112532542 A CN112532542 A CN 112532542A CN 202011308807 A CN202011308807 A CN 202011308807A CN 112532542 A CN112532542 A CN 112532542A
- Authority
- CN
- China
- Prior art keywords
- load balancing
- message
- outlet
- information
- quintuple information
- 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
- H04L49/00—Packet switching elements
- H04L49/50—Overload detection or protection within a single switching element
-
- 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
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请涉及通信技术领域,尤其涉及一种负载均衡模式的选择方法及装置,从候选的各报文中确定出满足元组信息条件的各报文;分别针对预设的各负载均衡模式,分别根据满足五元组信息条件的各报文的五元组信息,确定各报文的出口信息;分别针对每个负载均衡模式对应的各出口信息,确定各出口的模拟负载压力值,以及各出口的模拟负载压力值与标准负载压力值之间的误差值,并根据各误差值,确定任意一种负载均衡模式的均衡效果分值;将满足预设均衡效果分值条件的负载均衡模式作为满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式,这样,能够提高负载均衡模式的选择效率,并提高负载均衡模式选择的准确度。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种负载均衡模式的选择方法及装置。
背景技术
负载均衡是指在等价路由中报文按照一定的权重散列到每一条链路上,从而保证带宽资源能够得到充分利用,目前,随着通信技术的发展,越来越多的负载均衡模式开始出现,因此,同一条报文流中的各报文在不同的负载均衡模式下,所达到的负载均衡效果是不同的。
现有技术中,是通过对交换机进行随机调试,找到一种大致符合均衡误差的负载均衡模式,但是,这种方式需要干扰交换机运行状态,才能够选择出当前环境下最优的负载均衡模式,这样,会导致准确度较低,且降低了效率。
发明内容
本申请实施例提供一种负载均衡模式的选择方法及装置,以提高负载均衡模式选择的准确度和效率。
本申请实施例提供的具体技术方案如下:
一种负载均衡模式的选择方法,应用于交换机,包括:
根据获取到的候选的各报文的五元组信息,从所述候选的各报文中确定出满足预设的五元组信息条件的各报文;
分别针对预设的各负载均衡模式,分别根据所述满足五元组信息条件的各报文的五元组信息,确定所述满足五元组信息条件的各报文的出口信息;
分别针对每个所述负载均衡模式对应的各出口信息,确定各出口的模拟负载压力值,以及所述各出口的模拟负载压力值与标准负载压力值之间的误差值,并根据各误差值,确定任意一种负载均衡模式的均衡效果分值,其中,所述标准负载压力值为根据报文的数量和出口的数量确定出的,所述均衡效果分值表征所述各报文在该负载均衡模式下的负载压力的均衡效果的分值;
将满足预设均衡效果分值条件的负载均衡模式作为所述满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式。
可选的,根据获取到的候选的各报文的五元组信息,从所述候选的各报文中确定出满足预设的五元组信息条件的各报文,具体包括:
获取候选的各报文的报文头部信息,并获取各报文头部信息中包含的五元组信息,其中,所述报文头部信息中至少包括五元组信息,所述五元组信息中至少包括源IP地址;
分别根据各源IP地址,从所述候选的各报文中确定出满足预设的源IP地址条件的各报文,并将所述确定出的各报文作为满足预设的五元组信息条件的各报文。
可选的,分别根据所述满足五元组信息条件的各报文的五元组信息,确定所述满足五元组信息条件的各报文的出口信息,具体包括:
根据任意一种负载均衡模式的配置信息,确定对应的哈希算法;
分别将所述满足五元组信息条件的各报文的报文头部信息和所述交换机中预设的出口的数量作为哈希因子,并分别基于所述哈希算法对各哈希因子进行哈希运算,确定所述满足五元组信息条件的各报文中,每一个报文的出口信息。
可选的,分别针对每个所述负载均衡模式对应的各出口信息,确定各出口的模拟负载压力值,以及所述各出口的模拟负载压力值与标准负载压力值之间的误差值,具体包括:
分别针对各出口,统计任意一个出口对应的出口标识在满足五元组信息条件的各报文的出口信息中出现的次数,并将出现的次数作为该出口的模拟负载压力值;
分别计算所述各出口的模拟负载压力值与标准负载压力值之间的差值,获得所述各出口对应的误差值。
可选的,根据各误差值,确定任意一种负载均衡模式的均衡效果分值,具体包括:
分别根据所述各误差值,以及误差值与出口的均衡效果分值之间的对应关系,确定各出口的均衡效果分值;
根据所述各出口的均衡效果分值,以及对应的权重,计算所述满足五元组信息条件的各报文在任意一种负载均衡模式下的均衡效果分值。
可选的,将满足预设均衡效果分值条件的负载均衡模式作为所述满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式,具体包括:
从各负载均衡模式的均衡效果分值中,确定出均衡效果分值最大的负载均衡模式;
将确定出的均衡效果分值最大的负载均衡模式,作为所述满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式。
一种负载均衡模式的选择装置,应用于交换机,包括:
确定模块,用于根据获取到的候选的各报文的五元组信息,从所述候选的各报文中确定出满足预设的五元组信息条件的各报文;
第一处理模块,用于分别针对预设的各负载均衡模式,分别根据所述满足五元组信息条件的各报文的五元组信息,确定所述满足五元组信息条件的各报文的出口信息;
第二处理模块,用于分别针对每个所述负载均衡模式对应的各出口信息,确定各出口的模拟负载压力值,以及所述各出口的模拟负载压力值与标准负载压力值之间的误差值,并根据各误差值,确定任意一种负载均衡模式的均衡效果分值,其中,所述标准负载压力值为根据报文的数量和出口的数量确定出的,所述均衡效果分值表征所述各报文在该负载均衡模式下的负载压力的均衡效果的分值;
选择模块,用于将满足预设均衡效果分值条件的负载均衡模式作为所述满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式。
可选的,确定模块具体用于:
获取候选的各报文的报文头部信息,并获取各报文头部信息中包含的五元组信息,其中,所述报文头部信息中至少包括五元组信息,所述五元组信息中至少包括源IP地址;
分别根据各源IP地址,从所述候选的各报文中确定出满足预设的源IP地址条件的各报文,并将所述确定出的各报文作为满足预设的五元组信息条件的各报文。
可选的,分别根据所述满足五元组信息条件的各报文的五元组信息,确定所述满足五元组信息条件的各报文的出口信息时,第一处理模块具体用于:
根据任意一种负载均衡模式的配置信息,确定对应的哈希算法;
分别将所述满足五元组信息条件的各报文的报文头部信息和所述交换机中预设的出口的数量作为哈希因子,并分别基于所述哈希算法对各哈希因子进行哈希运算,确定所述满足五元组信息条件的各报文中,每一个报文的出口信息。
可选的,分别针对每个所述负载均衡模式对应的各出口信息,确定各出口的模拟负载压力值,以及所述各出口的模拟负载压力值与标准负载压力值之间的误差值时,第二处理模块具体用于:
分别针对各出口,统计任意一个出口对应的出口标识在满足五元组信息条件的各报文的出口信息中出现的次数,并将出现的次数作为该出口的模拟负载压力值;
分别计算所述各出口的模拟负载压力值与标准负载压力值之间的差值,获得所述各出口对应的误差值。
可选的,根据各误差值,确定任意一种负载均衡模式的均衡效果分值时,第二处理模块具体用于:
分别根据所述各误差值,以及误差值与出口的均衡效果分值之间的对应关系,确定各出口的均衡效果分值;
根据所述各出口的均衡效果分值,以及对应的权重,计算所述满足五元组信息条件的各报文在任意一种负载均衡模式下的均衡效果分值。
可选的,选择模块具体用于:
从各负载均衡模式的均衡效果分值中,确定出均衡效果分值最大的负载均衡模式;
将确定出的均衡效果分值最大的负载均衡模式,作为所述满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式。
一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述负载均衡模式的选择方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述负载均衡模式的选择方法的步骤。
本申请实施例中,根据获取到的候选的各报文的五元组信息,从候选的各报文中确定出满足预设的五元组信息条件的各报文,分别针对预设的各负载均衡模式,分别根据满足五元组信息条件的各报文的五元组信息,确定满足五元组信息条件的各报文的出口信息,分别针对每个负载均衡模式对应的各出口信息,确定各出口的模拟负载压力值,以及各出口的模拟负载压力值与标准负载压力值之间的误差值,并根据各误差值,确定任意一种负载均衡模式的均衡效果分值,将满足预设均衡效果分值条件的负载均衡模式作为满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式,这样,对于符合五元组信息条件的报文来说,在报文转发之前,对出口信息进行模拟计算,进而确定出最优的负载均衡模式,能够在不干扰交换机运行状态的情况下,实现对报文流量的均衡效果的分析,从而选择出最优的负载均衡模式,还能够提高负载均衡模式选择的准确度,并且,由于出口信息是对报文进行模拟计算进而获得的,因此,相比于现有技术中在报文转发之后对各出口进行均衡效果分析来说,能够提高负载均衡效果的分析的效率,并且,还能够提高对于负载均衡模式的选择效率。
附图说明
图1为本申请实施例中一种负载均衡模式的选择方法的流程图;
图2为本申请实施例中流量均衡计算过程的示意图;
图3为本申请实施例中负载均衡分析的流程图;
图4为本申请实施例中一种最佳负载模式推荐方法的流程图;
图5为本申请实施例中负载均衡模式的选择装置的结构示意图;
图6为本申请实施例中电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
负载均衡(Load Balance)指的是将工作负载平衡地分配到多个工作单元上,在通信技术领域中,负载均衡是指在聚合端口(Aggregate Port,AP)中或者等价路由(Equal-cost Multipath,ECMP)流量按照一定的权重分摊到每一条链路,从而保证带宽资源能够得到充分利用,目前,随着通信技术的发展,越来越多的负载均衡模式开始出现,因此,同一条报文流中的各报文在不同的负载均衡模式下,所达到的负载均衡效果是不同的。
现有技术中,是通过对交换机进行随机调试,例如,通过调整哈希因子来尽可能使均衡效果达到一个较为合适的结果,找到一种大致符合均衡误差的负载均衡模式,但是,这种方式需要干扰交换机运行状态,并且,调整哈希因子存在较大的不确定性,即在一个环境中负载均衡效果可以达到理想的状态,但是换个环境,有可能又需要重新调整哈希因子,这样,会导致准确度较低,且降低了效率。
为了解决上述问题,本申请实施例中,提供了一种负载均衡模式的选择方法,根据获取到的候选的各报文的五元组信息,从候选的各报文中确定出满足预设的五元组信息条件的各报文,分别针对预设的各负载均衡模式,分别根据满足五元组信息条件的各报文的五元组信息,确定满足五元组信息条件的各报文的出口信息,分别针对每个负载均衡模式对应的各出口信息,确定各出口的模拟负载压力值,以及各出口的模拟负载压力值与标准负载压力值之间的误差值,并根据各误差值,确定任意一种负载均衡模式的均衡效果分值,将满足预设均衡效果分值条件的负载均衡模式作为满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式,这样,计算符合五元组信息条件的各个报文的出口信息,并基于各报文的出口信息,模拟获得各出口的模拟负载压力值,并确定各出口的负载均衡效果的误差值,进而能够确定出报文的最优的负载均衡模式,能够实现在不干扰交换机运行状态的情况下分析负载均衡效果,尤其针对大量报文时,能够有效提高效率和准确度。
基于上述实施例,参阅图1所示,为本申请实施例中一种负载均衡模式的选择方法的流程图,具体包括:
步骤100:根据获取到的候选的各报文的五元组信息,从候选的各报文中确定出满足预设的五元组信息条件的各报文。
本申请实施例中,首先获取各个候选的报文,由于每一个报文都包含有报文头部信息,进而能够获取到每一个报文的报文头部信息,以及报文头部信息中的五元组信息,然后,获取预设五元组信息条件,并根据各个候选的报文的五元组信息,从各个候选的报文中,确定出满足预设五元组信息条件的各报文。
其中,负载均衡模式例如可以为增强型负载均衡模式,参阅表1所示,为本申请实施例中增强型负载均衡模式支持的匹配域。
表1.
本申请实施例中,提供了一种可能的实施方式,可以通过确定报文的源IP地址是否满足预设源IP地址条件,进而获取满足五元组信息条件的各报文,具体包括:
S1:获取候选的各报文的报文头部信息,并获取各报文头部信息中包含的五元组信息。
其中,报文头部信息中至少包括五元组信息,五元组信息中至少包括IP地址。
本申请实施例中,由于每一个报文中至少包括报文头部信息,报文头部信息中至少包括五元组信息,因此,读取每一个报文的报文头部信息中包含的五元组信息。
其中,五元组信息(5-tuple),通常指由源IP(Source IP)地址,目的IP(Destination IP)地址,源端口号(Source Port),目的端口号(Destination Port)和4层通信协议号(the Layer 4Protocol)五个字段,并且,根据报文的五元组信息可以唯一确定一个会话。
需要说明的是,本申请实施例中预设五元组信息条件不仅限于五元组信息中的源IP地址,可以为五元组信息中的任意一种,例如,还可以为目的IP地址。
S2:分别根据各源IP地址,从候选的各报文中确定出满足预设的源IP地址条件的各报文,并将确定出的各报文作为满足预设的五元组信息条件的各报文。
本申请实施例中,分别针对候选的各报文,根据候选的各报文的五元组信息中的源IP地址,分别判断报文的源IP地址是否满足预设源IP地址条件,通过分别对候选的各报文执行上述操作步骤,能够从检测到的候选的各报文中确定出满足预设的源IP地址条件的报文,并将确定出的各报文作为满足预设的五元组信息条件的各报文。
例如,假设预设源IP地址条件为10.10.10.1-10.10.10.100,则若报文的源IP地址为10.10.10.2,则该报文满足预设源IP地址条件,若报文的源IP地址为10.10.10.102,则该报文不满足预设源IP地址条件。
需要说明的是,流量负载均衡指的是在聚合端口中或等价路由中,将流量按照一定的权重分摊到每一条链路。交换机在一定时间内能够获取到大量的报文,获取到的这些报文的五元组信息可能是相同,也可能是不相同的,而本申请实施例中针对的应用场景为选择出同一范围内的报文的最优的负载均衡模式。因此,需要对获取到的这些候选的报文进行筛选,将满足预设的五元组信息条件的报文筛选出来,并基于满足五元组信息条件的各报文执行本申请实施例中的负载均衡模式的选择方法。
步骤110:分别针对预设的各负载均衡模式,分别根据满足五元组信息条件的各报文的五元组信息,确定满足五元组信息条件的各报文的出口信息。
本申请实施例中,执行步骤110时,具体包括:
S1:根据任意一种负载均衡模式的配置信息,确定对应的哈希算法。
本申请实施例中,每一种负载均衡模式的配置信息中,包含有均衡模式配置信息、扰动因子配置信息、哈希算法配置信息和对称哈希配置信息,因此,根据任意一种负载均衡模式的配置信息,就能够确定出该负载均衡模式下的流量负载均衡算法,并确定出流量负载均衡算法中的哈希算法,然后,可以根据哈希算法对哈希因子进行哈希运算。
其中,负载均衡模式可以配置在命令行界面(command-line interface,CLI)上,不同的负载均衡模式表征交换芯片在进行负载均衡计算时,将五元组信息中的何种信息作为哈希因子。
例如,可将源IP地址作为哈希因子,还可以将源IP地址和目的IP地址均作为哈希因子,本申请实施例中对此并不进行限制。
进一步地,本申请实施例中,还可以根据负载均衡模式的配置信息和交换机的硬件芯片的芯片类型,确定对应的哈希算法。
S2:分别将满足五元组信息条件的各报文的报文头部信息和交换机中预设的出口的数量作为哈希因子,并分别基于哈希算法对各哈希因子进行哈希运算,确定满足五元组信息条件的各报文中,每一个报文的出口信息。
本申请实施例中,在获取到哈希算法之后,分别针对满足五元组信息条件各报文,从交换机中直接获取负载均衡模式的配置信息,并根据负载均衡模式的配置信息选择任意一个报文的报文头部信息和交换机中预设的出口的数量,作为该报文的哈希因子,也就是说,根据负载均衡模式,确定需要进行负载均衡的信息,然后,基于获取到的哈希算法,并将负载均衡模式的配置信息作为哈希计算的一个参数,对该报文的哈希因子进行哈希运算,获得该报文的下一跳,并从该报文的下一跳中获得该报文的出口信息。
其中,下一跳至少包括下一跳IP地址、ECMP的权重和下一跳出接口等信息。
例如,假设在某一负载均衡模式是对目的IP地址进行负载均衡的,则在该负载均衡模式下,分别针对满足五元组信息条件各报文,将任意一个报文的目的IP地址和交换机的出口的数量作为该报文的哈希因子,并基于获取到的哈希算法,对该报文的哈希因子进行哈希运算,获得该报文的出口信息。
需要说明的是,在计算获得每一个满足五元组信息条件的报文的出口信息时,可以通过哈希模拟器实现,哈希模拟器指的是依据哈希算法来模拟计算报文的出口信息,本申请实施例中,采用软件算法模拟流量均衡,计算满足五元组信息条件的报文的出口信息,通过哈希模拟器,无需测试仪构造报文打流模拟,不会对正在运行的交换机产生干扰。
进一步地,在计算获得每一个满足五元组信息条件的报文的出口信息之前,还能够根据报文头部信息的前缀向数据面查询下一跳信息,获得满足五元组信息条件的各报文的下一跳,这样,在计算报文的出口信息时,从查询到的满足五元组信息条件的各报文的下一跳中,确定出报文的下一跳,并确定下一跳中的出口信息。
其中,查询方式例如可以为最长前缀匹配。
步骤120:分别针对每个负载均衡模式对应的各出口信息,确定各出口的模拟负载压力值,以及各出口的模拟负载压力值与标准负载压力值之间的误差值,并根据各误差值,确定任意一种负载均衡模式的均衡效果分值。
其中,标准负载压力值为根据报文的数量和出口的数量确定出的,均衡效果分值表征各报文在该负载均衡模式下的负载压力的均衡效果的分值。
本申请实施例中,分别针对各负载均衡模式,首先,根据各出口信息,确定各出口的模拟负载压力值,具体包括:
S1:分别针对各出口,统计任意一个出口对应的出口标识在满足五元组信息条件的各报文的出口信息中出现的次数,并将出现的次数作为该出口的模拟负载压力值。
本申请实施例中,分别针对交换机的各出口,统计任意一个出口对应的出口标识在满足五元组信息条件的各报文的出口信息中出现的次数,并将出现的次数作为该出口的模拟负载压力值。
例如,假设交换机共有4个出口,预设的报文数量为100K,经过上述计算之后,第一个出口所获取到的报文的数量为32K,第二个出口所获取到的报文数量为18K,第三个出口所获取到的报文的数量为29K,第四个出口所获取到的报文数量为22K。
S2:分别计算各出口的模拟负载压力值与标准负载压力值之间的差值,获得各出口对应的误差值。
本申请实施例中,获取各个出口的预设标准负载压力值,并分别针对交换机的各个出口,计算任意一个出口的模拟负载压力值与预设标准负载压力值之间的差值,并根据计算出的差值,确定出任意一个出口的误差值。
例如,假设第一个出口的标准负载压力值为25,第一个出口的模拟负载压力值为23,则该出口模拟负载压力值与标准负载压力值之间的差值为-2,误差值为8%。
又例如,假设第二个出口的标准负载压力值为25,第一个出口的模拟负载压力值为27,则该出口模拟负载压力值与标准负载压力值之间的差值为2,误差值为8%。
需要说明的是,本申请实施例中差值的正负号表征标准负载压力值与模拟负载压力值之间的大小关系,当某一个出口的差值为负数时,则表征该出口的模拟负载压力值小于均衡流量值,当某一个出口的差值为正数时,则表征该出口的模拟负载压力值大于标准负载压力值。
并且,需要说明的是,当差值为0时,表征该出口的模拟负载压力值与标准负载压力值相同。
本申请实施例中,预设的标准负载压力值为根据报文的数量和交换机的出口的数量获得的,例如,假设报文的个数为100K,交换机的出口的数量为4,则每一个出口的标准负载压力值均为25K。
最后,在获得各误差值之后,根据各误差值,确定该负载均衡模式的均衡效果分值,具体包括:
S1:分别根据各误差值,以及误差值与出口的均衡效果分值之间的对应关系,确定各出口的均衡效果分值。
本申请实施例中,分别根据各出口的误差值,以及误差值与均衡效果分值之间的对应关系,确定各出口的均衡效果分值。
需要说明的是,本申请实施例中,若误差值越小,则均衡效果分值越大,若误差值越大,则均衡效果分值越小。
S2:根据各出口的均衡效果分值,以及对应的权重,计算满足五元组信息条件的各报文在任意一种负载均衡模式下的均衡效果分值。
本申请实施例中,根据各均衡效果分值以及每一个出口对应的权重值,计算各报文在该负载均衡模式下的均衡效果分值。
进一步地,收集完数据后,计算下一跳出口分布情况。生成均衡效果报告和简要信息,CLI显示简要信息,包括当前设备均衡类型,每个出口流量百分比和均衡偏差值(max-min),并且,还会生成均衡效果报告,并将均衡效果报告保存至到设备储存器中,包括简要信息、每一条报文及对应详细出口信息和路由信息。
步骤130:将满足预设均衡效果分值条件的负载均衡模式作为满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式。
本申请实施例中,从计算获得的各均衡模式对应的均衡效果分值中,确定出满足预设均衡效果分值条件的负载均衡模式,并将确定出的负载均衡模式作为这些满足五元组信息条件的报文的在进行负载均衡时的优选的负载均衡模式。
需要说明的是,将确定出的负载均衡模式作为满足五元组信息条件的优选的负载均衡模式,这样,当再次获取到满足该五元组信息条件的各报文之后,并需要对这些报文进行负载均衡时,就能够根据优选的负载均衡模式,实现对各报文的负载均衡。
本申请实施例中,对步骤130提供了一种可能的实施方式,具体包括:
S1:从各负载均衡模式的均衡效果分值中,确定出均衡效果分值最大的负载均衡模式。
本申请实施例中,根据计算获得的各个均衡效果分值,从计算获得的各个均衡效果分值中,确定出最大的均衡效果分值,并确定最大的均衡效果分值对应的负载均衡模式。
S2:将确定出的均衡效果分值最大的负载均衡模式,作为满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式。
本申请实施例中,在计算获得负载均衡模式之后,将各均衡效果分值中,均衡效果分值最大的负载均衡模式,作为各报文的优选的负载均衡模式。
需要说明的是,本申请实施例中,当一组报文流计算结束之后,保存计算的结果,并修改算法库对应的参数,包括均衡算法,扰动因子,对称哈希等参数,进行新的一轮计算,遍历所有负载均衡模式,负责报告生成的组件汇总结果,计算出均衡效果最优的均衡模式组合,同样将报告保存至到设备储存器中。
本申请实施例中,根据获取到的候选的各报文的五元组信息,从候选的各报文中确定出满足预设的五元组信息条件的各报文,分别针对预设的各负载均衡模式,分别根据满足五元组信息条件的各报文的五元组信息,确定满足五元组信息条件的各报文的出口信息,分别针对每个负载均衡模式对应的各出口信息,确定各出口的模拟负载压力值,以及各出口的模拟负载压力值与标准负载压力值之间的误差值,并根据各误差值,确定任意一种负载均衡模式的均衡效果分值,将满足预设均衡效果分值条件的负载均衡模式作为满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式,这样,能够基于对满足预设五元组信息条件的报文进行计算,能够选择出当前预设条件内的最优的负载均衡模式,相比于现有技术中通过随机调试,找到一种大致符合均衡误差的负载均衡模式来说,能够有效提高负载均衡模式的选择效率和准确度,并且,通过本申请实施例中的方法,对于需要分析报文流量均衡效果的场景,能够获取一个范围内报文的出口分布情况,分析报文流量均衡效果,无需多次操作,能够减少处理时长,简化操作过程,提高交换机性能,并且,能够从软件计算的角度来分析一个范围内的报文的均衡效果,无需实际在测试设备上构造对应的报文流并打流验证。
基于上述实施例,参阅图2所示,为本申请实施例中流量均衡计算过程的示意图,具体包括:
首先,根据输入的报文的报文头部信息,以及预先配置的负载均衡模式对应的负载均衡算法,提取参与哈希运算的哈希因子。
然后,基于提取出的哈希因子,根据哈希算法对哈希因子进行计算,获得相应的哈希负载均衡key值(lb-key)。
需要说明的是,不同交换机哈希运算的算法有差异,哈希算法例如可以为RTAG7,RTAG7是交换机增强型负载均衡模式时用的哈希算法,本申请实施例中对此并不进行限制。
最后,根据哈希因子通过哈希算法计算获得哈希lb-key之后,对ECMP成员数求余,获得转发出口的标识,从而就能够获得报文的出口信息。
本申请实施例中,将报文的报文头部信息和硬件下一跳个数作为哈希因子,并通过哈希算法计算哈希因子,能够模拟获得一个报文在负载均衡中的出口,能够通过软件模拟的方式,计算与实际转发相同的结果,避免直接参与芯片转发,干扰运行中的环境。
基于上述实施例,参阅图3所示,为本申请实施例中负载均衡分析的流程图,具体包括:
步骤300:对各报文进行解析,获得各报文的报文头部信息。
需要说明的是,本申请实施例中的各报文为满足五元组信息条件的各报文。
步骤301:判断各报文是否均解析完成,若是,则执行步骤,若否,则执行步骤302。
步骤302:分别向数据面查询各报文的下一跳信息。
本申请实施例中,向数据面查询各报文的下一跳信息时,查询方式例如可以为最长前缀匹配。
步骤303:获取负载均衡模式的配置信息。
步骤304:根据交换机的交换芯片类型和负载均衡模式的配置信息,获取对应的哈希算法。
步骤305:分别针对各报文,将任意一报文的报文头部信息和硬件下一跳个数作为哈希因子,并根据哈希算法对哈希因子进行计算,获得各个报文的下一跳。
步骤306:分别获取各报文的下一跳的信息中的出口信息。
步骤307:汇总各报文的出口信息,并根据各报文的出口信息生成负载均衡效果报告。
步骤308:CLI显示简要结果。
本申请实施例中,针对数据中心流量均衡场景,通过在模拟转发之前,先对满足预设五元组信息条件的报文进行模拟计算,并采用软件模拟的方式计算负载均衡,可以分析在某一种负载均衡模式下,某一条报文流的出口,或分析某一个范围内,报文流出口分布情况,实现对流量均衡异常时的故障诊断,并能够根据交换机当前环境,生成最优均衡模式推荐报告。
基于上述实施例,参阅图4所示,为本申请实施例中一种最佳负载模式推荐方法的流程图,具体包括:
步骤400:分别对一组报文流的各报文进行解析,获得各报文的报文头部信息。
需要说明的是,本申请实施例中的各报文为满足五元组信息条件的各报文。
步骤410:调用批量哈希模拟器接口,计算一组报文流的负载均衡效果,并保存计算出的负载均衡效果。
步骤420:修改算法库的负载均衡模式和均衡配置。
本申请实施例中,修改算法库对应的参数,包括负载均衡算法,扰动因子,对称哈希等参数,进行新的一轮计算。
步骤430:判断所有负载均衡模式是否均遍历完成,若是,则执行步骤440,若否,则执行步骤410。
步骤440:生成负载均衡效果分值最高的负载均衡模式的推荐报告。
本申请实施例中,遍历所有负载均衡模式,并分别生成不同负载均衡模式的负载均衡效果的报告,进而负责报告生成的组件汇总结果,计算出负载均衡效果分值最高对应的负载均衡模式,同样将报告保存至设备存储器中。
进一步地,本申请实施例中的方法还可以应用于扩展均衡模式自适应调整功能,新增自适应模块,根据最优的负载均衡模式推荐报告,修改交换机的负载均衡类型为相应模式,循环修改哈希计算时的参数,进而能够获得该组报文在不同负载均衡模式下的均衡效果报告。
其中,哈希计算时的参数为负载均衡模式的配置信息对应的参数。
本申请实施例中,通过对一条报文流中的各个报文在不同的负载均衡模式下的负载均衡效果进行分析,可以在不干扰交换机运行状态的情况下分析流量均衡效果,找到当前环境下的最优的负载均衡模式,尤其针对大量报文时,可以有效提高效率和准确度。
基于同一发明构思,本申请实施例中还提供了一种负载均衡模式的选择装置,该基于负载均衡模式的选择装置例如可以是前述实施例中的交换机,该负载均衡模式的选择装置可以是硬件结构、软件模块、或硬件结构加软件模块。基于上述实施例,参阅图5所示为本申请实施例中负载均衡模式的选择装置的结构示意图,具体包括:
确定模块500,用于根据获取到的候选的各报文的五元组信息,从所述候选的各报文中确定出满足预设的五元组信息条件的各报文;
第一处理模块510,用于分别针对预设的各负载均衡模式,分别根据所述满足五元组信息条件的各报文的五元组信息,确定所述满足五元组信息条件的各报文的出口信息;
第二处理模块520,用于分别针对每个所述负载均衡模式对应的各出口信息,确定各出口的模拟负载压力值,以及所述各出口的模拟负载压力值与标准负载压力值之间的误差值,并根据各误差值,确定任意一种负载均衡模式的均衡效果分值,其中,所述标准负载压力值为根据报文的数量和出口的数量确定出的,所述均衡效果分值表征所述各报文在该负载均衡模式下的负载压力的均衡效果的分值;
选择模块530,用于将满足预设均衡效果分值条件的负载均衡模式作为所述满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式。
可选的,确定模块500具体用于:
获取候选的各报文的报文头部信息,并获取各报文头部信息中包含的五元组信息,其中,所述报文头部信息中至少包括五元组信息,所述五元组信息中至少包括源IP地址;
分别根据各源IP地址,从所述候选的各报文中确定出满足预设的源IP地址条件的各报文,并将所述确定出的各报文作为满足预设的五元组信息条件的各报文。
可选的,分别根据所述满足五元组信息条件的各报文的五元组信息,确定所述满足五元组信息条件的各报文的出口信息时,第一处理模块510具体用于:
根据任意一种负载均衡模式的配置信息,确定对应的哈希算法;
分别将所述满足五元组信息条件的各报文的报文头部信息和所述交换机中预设的出口的数量作为哈希因子,并分别基于所述哈希算法对各哈希因子进行哈希运算,确定所述满足五元组信息条件的各报文中,每一个报文的出口信息。
可选的,分别针对每个所述负载均衡模式对应的各出口信息,确定各出口的模拟负载压力值,以及所述各出口的模拟负载压力值与标准负载压力值之间的误差值时,第二处理模块520具体用于:
分别针对各出口,统计任意一个出口对应的出口标识在满足五元组信息条件的各报文的出口信息中出现的次数,并将出现的次数作为该出口的模拟负载压力值;
分别计算所述各出口的模拟负载压力值与标准负载压力值之间的差值,获得所述各出口对应的误差值。
可选的,根据各误差值,确定任意一种负载均衡模式的均衡效果分值时,第二处理模块520具体用于:
分别根据所述各误差值,以及误差值与出口的均衡效果分值之间的对应关系,确定各出口的均衡效果分值;
根据所述各出口的均衡效果分值,以及对应的权重,计算所述满足五元组信息条件的各报文在任意一种负载均衡模式下的均衡效果分值。
可选的,选择模块530具体用于:
从各负载均衡模式的均衡效果分值中,确定出均衡效果分值最大的负载均衡模式;
将确定出的均衡效果分值最大的负载均衡模式,作为所述满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式。
基于上述实施例,参阅图6所示为本申请实施例中电子设备的结构示意图。
本申请实施例提供了一种电子设备,该电子设备可以包括处理器610(CenterProcessing Unit,CPU)、存储器620、输入设备630和输出设备640等,输入设备630可以包括键盘、鼠标、触摸屏等,输出设备640可以包括显示设备,如液晶显示器(Liquid CrystalDisplay,LCD)、阴极射线管(Cathode Ray Tube,CRT)等。
存储器620可以包括只读存储器(ROM)和随机存取存储器(RAM),并向处理器610提供存储器620中存储的程序指令和数据。在本申请实施例中,存储器620可以用于存储本申请实施例中任一种负载均衡模式的选择方法的程序。
处理器610通过调用存储器620存储的程序指令,处理器610用于按照获得的程序指令执行本申请实施例中任一种负载均衡模式的选择方法。
基于上述实施例,本申请实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意方法实施例中的负载均衡模式的选择方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种负载均衡模式的选择方法,其特征在于,应用于交换机,包括:
根据获取到的候选的各报文的五元组信息,从所述候选的各报文中确定出满足预设的五元组信息条件的各报文;
分别针对预设的各负载均衡模式,分别根据所述满足五元组信息条件的各报文的五元组信息,确定所述满足五元组信息条件的各报文的出口信息;
分别针对每个所述负载均衡模式对应的各出口信息,确定各出口的模拟负载压力值,以及所述各出口的模拟负载压力值与标准负载压力值之间的误差值,并根据各误差值,确定任意一种负载均衡模式的均衡效果分值,其中,所述标准负载压力值为根据报文的数量和出口的数量确定出的,所述均衡效果分值表征所述各报文在该负载均衡模式下的负载压力的均衡效果的分值;
将满足预设均衡效果分值条件的负载均衡模式作为所述满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式。
2.如权利要求1所述的方法,其特征在于,根据获取到的候选的各报文的五元组信息,从所述候选的各报文中确定出满足预设的五元组信息条件的各报文,具体包括:
获取候选的各报文的报文头部信息,并获取各报文头部信息中包含的五元组信息,其中,所述报文头部信息中至少包括五元组信息,所述五元组信息中至少包括源IP地址;
分别根据各源IP地址,从所述候选的各报文中确定出满足预设的源IP地址条件的各报文,并将所述确定出的各报文作为满足预设的五元组信息条件的各报文。
3.如权利要求1所述的方法,其特征在于,分别根据所述满足五元组信息条件的各报文的五元组信息,确定所述满足五元组信息条件的各报文的出口信息,具体包括:
根据任意一种负载均衡模式的配置信息,确定对应的哈希算法;
分别将所述满足五元组信息条件的各报文的报文头部信息和所述交换机中预设的出口的数量作为哈希因子,并分别基于所述哈希算法对各哈希因子进行哈希运算,确定所述满足五元组信息条件的各报文中,每一个报文的出口信息。
4.如权利要求3所述的方法,其特征在于,分别针对每个所述负载均衡模式对应的各出口信息,确定各出口的模拟负载压力值,以及所述各出口的模拟负载压力值与标准负载压力值之间的误差值,具体包括:
分别针对各出口,统计任意一个出口对应的出口标识在满足五元组信息条件的各报文的出口信息中出现的次数,并将出现的次数作为该出口的模拟负载压力值;
分别计算所述各出口的模拟负载压力值与标准负载压力值之间的差值,获得所述各出口对应的误差值。
5.如权利要求1所述的方法,其特征在于,根据各误差值,确定任意一种负载均衡模式的均衡效果分值,具体包括:
分别根据所述各误差值,以及误差值与出口的均衡效果分值之间的对应关系,确定各出口的均衡效果分值;
根据所述各出口的均衡效果分值,以及对应的权重,计算所述满足五元组信息条件的各报文在任意一种负载均衡模式下的均衡效果分值。
6.如权利要求5所述的方法,其特征在于,将满足预设均衡效果分值条件的负载均衡模式作为所述满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式,具体包括:
从各负载均衡模式的均衡效果分值中,确定出均衡效果分值最大的负载均衡模式;
将确定出的均衡效果分值最大的负载均衡模式,作为所述满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式。
7.一种负载均衡模式的选择装置,其特征在于,应用于交换机,包括:
确定模块,用于根据获取到的候选的各报文的五元组信息,从所述候选的各报文中确定出满足预设的五元组信息条件的各报文;
第一处理模块,用于分别针对预设的各负载均衡模式,分别根据所述满足五元组信息条件的各报文的五元组信息,确定所述满足五元组信息条件的各报文的出口信息;
第二处理模块,用于分别针对每个所述负载均衡模式对应的各出口信息,确定各出口的模拟负载压力值,以及所述各出口的模拟负载压力值与标准负载压力值之间的误差值,并根据各误差值,确定任意一种负载均衡模式的均衡效果分值,其中,所述标准负载压力值为根据报文的数量和出口的数量确定出的,所述均衡效果分值表征所述各报文在该负载均衡模式下的负载压力的均衡效果的分值;
选择模块,用于将满足预设均衡效果分值条件的负载均衡模式作为所述满足五元组信息条件的各报文在进行负载均衡时的优选的负载均衡模式。
8.如权利要求7所述的装置,其特征在于,分别根据所述满足五元组信息条件的各报文的五元组信息,确定所述满足五元组信息条件的各报文的出口信息时,第一处理模块具体用于:
根据任意一种负载均衡模式的配置信息,确定对应的哈希算法;
分别将所述满足五元组信息条件的各报文的报文头部信息和所述交换机中预设的出口的数量作为哈希因子,并分别基于所述哈希算法对各哈希因子进行哈希运算,确定所述满足五元组信息条件的各报文中,每一个报文的出口信息。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-6任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1-6任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011308807.3A CN112532542B (zh) | 2020-11-20 | 2020-11-20 | 一种负载均衡模式的选择方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011308807.3A CN112532542B (zh) | 2020-11-20 | 2020-11-20 | 一种负载均衡模式的选择方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112532542A true CN112532542A (zh) | 2021-03-19 |
CN112532542B CN112532542B (zh) | 2022-08-16 |
Family
ID=74981919
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011308807.3A Active CN112532542B (zh) | 2020-11-20 | 2020-11-20 | 一种负载均衡模式的选择方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112532542B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113709053A (zh) * | 2021-08-03 | 2021-11-26 | 杭州迪普科技股份有限公司 | 一种基于流定义的分流方法及装置 |
CN114466019A (zh) * | 2022-04-11 | 2022-05-10 | 阿里巴巴(中国)有限公司 | 分布式计算系统、负载均衡方法、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404229A (zh) * | 2011-12-14 | 2012-04-04 | 华为技术有限公司 | 负载均衡系统、装置及方法 |
US9444744B1 (en) * | 2015-04-04 | 2016-09-13 | Cisco Technology, Inc. | Line-rate selective load balancing of permitted network traffic |
CN107078969A (zh) * | 2015-12-30 | 2017-08-18 | 华为技术有限公司 | 实现负载均衡的计算机设备、系统和方法 |
CN110838986A (zh) * | 2019-07-29 | 2020-02-25 | 迈普通信技术股份有限公司 | 一种lacp负载均衡的方法、设备及系统 |
-
2020
- 2020-11-20 CN CN202011308807.3A patent/CN112532542B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404229A (zh) * | 2011-12-14 | 2012-04-04 | 华为技术有限公司 | 负载均衡系统、装置及方法 |
US9444744B1 (en) * | 2015-04-04 | 2016-09-13 | Cisco Technology, Inc. | Line-rate selective load balancing of permitted network traffic |
CN107078969A (zh) * | 2015-12-30 | 2017-08-18 | 华为技术有限公司 | 实现负载均衡的计算机设备、系统和方法 |
CN110838986A (zh) * | 2019-07-29 | 2020-02-25 | 迈普通信技术股份有限公司 | 一种lacp负载均衡的方法、设备及系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113709053A (zh) * | 2021-08-03 | 2021-11-26 | 杭州迪普科技股份有限公司 | 一种基于流定义的分流方法及装置 |
CN113709053B (zh) * | 2021-08-03 | 2023-05-26 | 杭州迪普科技股份有限公司 | 一种基于流定义的分流方法及装置 |
CN114466019A (zh) * | 2022-04-11 | 2022-05-10 | 阿里巴巴(中国)有限公司 | 分布式计算系统、负载均衡方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112532542B (zh) | 2022-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110347596B (zh) | 一种测试方法、装置、系统、电子设备及介质 | |
CN112532542B (zh) | 一种负载均衡模式的选择方法及装置 | |
CN113938407B (zh) | 基于带内网络遥测系统的数据中心网络的故障检测方法及装置 | |
CN108650218A (zh) | 网络流量监测方法、装置、计算机设备及存储介质 | |
CN111835579B (zh) | 一种网络流量调度仿真有效性的测试方法及系统 | |
CN106332141A (zh) | 流量负载分担的方法和装置 | |
CN115883469B (zh) | 一种数据流负载平衡方法、装置及数据中心 | |
CN106375975A (zh) | 一种策略冲突检测方法及装置 | |
CN110619019A (zh) | 数据的分布式存储方法及系统 | |
Zhu et al. | Service function chain mapping with resource fragmentation avoidance | |
CN110225137A (zh) | 业务请求处理方法、系统、服务器及存储介质 | |
CN112584422A (zh) | 5g终端性能获取方法和装置 | |
CN112769943A (zh) | 一种业务处理的方法及装置 | |
JP5862811B1 (ja) | 評価装置、評価方法、及びプログラム | |
CN112307105A (zh) | 基于多线程的定时任务运行方法、装置、设备及存储介质 | |
CN106302162A (zh) | 一种基于客户端的应用类型智能识别方法及装置 | |
CN113726631B (zh) | 一种静态ip政企用户资源业务路径稽核方法及装置 | |
CN112995036A (zh) | 网络流量的调度方法及装置 | |
CN118175059A (zh) | 一种网络链路质量分析方法、装置及相关设备 | |
CN106716974A (zh) | 访问分发方法、装置及系统 | |
CN116723143B (zh) | 一种基于流量亲和性的网络靶场资源分配方法与系统 | |
CN113179295A (zh) | 报文处理方法及装置 | |
CN117459462A (zh) | 网络负载均衡方法和装置 | |
CN106878356B (zh) | 一种调度方法及计算节点 | |
CN117201365A (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 |