System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术实施例涉及云计算,尤其涉及一种负载均衡方法、装置、电子设备及可读存储介质。
技术介绍
1、随着云计算的快速发展,负载均衡器正变得越来越重要,可以利用负载均衡器(load balancer,lb)来进行负载分配。目前,负载均衡器只拥有一种转发平面,如可以拥有数据平面开发套件(data plane development kit,dpdk)纯软件转发平面,或者可以拥有tofino网络芯片结合现场可编程门阵列(field programmable gate array,fpga)纯硬件转发平面。
2、相关技术中,基于dpdk开发的纯软件负载均衡,通常利用dpdk内核旁路、无锁队列、核隔离、网卡多队列和巨页等优化技术,通过软件达到了很高的性能。基于dpdk开发的纯软件转发平面的负载均衡器部署结构图如图1所示,而通常一套负载均衡会使用多活设备集群方式部署,每个设备上都有独立的业务平面和转发平面。其可以使用以下处理流程:
3、1)流量通过域间路由协议(border gateway protocol,bgp)引入到设备上;dpdk会进行报文解析,提取出五元组,并查找本地会话表;
4、2)如果本地有会话,则根据会话信息修改报文,将报文转发到后端;
5、3)如果本地没有会话,则送到本设备的业务处理模块,进行负载均衡逻辑处理,根据负载均衡算法,选择后端,生成会话表项,修改报文,将报文转发到后端;
6、4)处理过程中,这套负载均衡器内各单台设备都拥有独立的业务平面,各设备互不关联,
7、使用dpdk纯软件开发的负载均衡器相比较linux内核态的linux虚拟服务器(linux virtual server,lvs)而言已经具有了很好的性能,但由于单台带宽上限,需要很多台服务器组成集群,成本高,因此其在处理大象流、tb级别流量等方面依然存在的难以解决的问题。为此,业界开始使用tofino+fpga来实现硬件负载均衡器,基于tofino+fpga开发的纯硬件转发平面的负载均衡器部署结构图如图2所示,利用tofino网络芯片强劲的报文转发能力和灵活的可编程能力来进行报文转发,利用fpga超大规格表项能力来实现会话表项存储查询,使用本设备上的业务平面来进行业务逻辑处理。通常一套tofino+fpga硬件负载均衡器会使用多活设备方式部署,每个设备上都有独立的业务平面和转发平面。其可以使用以下处理流程:
8、1)流量首先通过bgp协议引入到设备上;tofino会进行报文解析,提取出五元组,利用fpga根据五元组查询会话;
9、2)如果fpga存储有会话,则构造报文携带查询结果,发送给tofino,tofino则根据会话信息修改报文,将报文转发到后端;
10、3)如果fpga本地没有会话,则会将报文上送到本设备的业务平面,进行负载均衡逻辑处理,根据负载均衡算法,选择后端,生成会话表项下发给fpga,同时tofino会根据会话修改报文,将报文转发到后端;
11、4)处理过程中,这套负载均衡器内各单台设备都拥有独立的业务平面,各设备互不关联,各自处理流量进行转发,内部信息完全不共享。
12、相关技术中,当使用dpdk纯软件转发平面时,如果遇到大流量,特别是单条大流时,其将出现性能问题;而当使用tofino+fpga纯硬件转发平面时,则单设备的成本较高,并且在进行高可用多台部署的情况下,还会存在整体利用率不高的问题。如此,相关技术中,负载均衡器无法很好地兼顾成本和性能之间的平衡。
技术实现思路
1、本专利技术实施例提供一种负载均衡方法、装置、电子设备及可读存储介质,以解决现有技术中负载均衡器无法很好地兼顾成本和性能之间的平衡的问题。本专利技术实施例可以让负载均衡器取得成本和性能之间的平衡,并且能够最大限度提升整体资源利用率。
2、第一方面,本专利技术实施例提供一种负载均衡方法,应用于负载均衡器,所述负载均衡器包括管理平面、业务平面和至少两个种类的转发平面,所述业务平面用于指导所述至少两个种类的转发平面进行报文转发,所述方法包括:
3、第一转发平面获取负载均衡实例的业务报文数据,所述第一转发平面是所述管理平面根据第一信息从所述至少两个种类的转发平面中确定的转发平面,所述第一信息包括所述负载均衡实例的业务流量特征和用户对转发平面的设置信息中的至少一项;
4、所述业务平面根据所述第一转发平面发送的会话查询报文进行负载均衡处理,得到会话响应报文;所述会话查询报文是所述第一转发平面根据所述业务报文数据进行封装得到的报文;
5、所述第一转发平面根据所述业务平面发送的所述会话响应报文进行所述业务报文数据的转发。
6、第二方面,本专利技术实施例提供一种负载均衡装置,应用于负载均衡器,所述负载均衡器包括管理平面、业务平面和至少两个种类的转发平面,所述业务平面用于指导所述至少两个种类的转发平面进行报文转发;所述装置包括:
7、确定模块,用于所述管理平面根据第一信息从所述至少两个种类的转发平面中确定第一转发平面,所述第一信息包括所述负载均衡实例的业务流量特征和用户对转发平面的设置信息中的至少一项;
8、获取模块,用于所述第一转发平面获取负载均衡实例的业务报文数据;
9、负载均衡处理模块,用于所述业务平面根据所述第一转发平面发送的会话查询报文进行负载均衡处理,得到会话响应报文;所述会话查询报文是所述第一转发平面根据所述业务报文数据进行封装得到的报文;
10、转发模块,用于所述第一转发平面根据所述业务平面发送的所述会话响应报文进行所述业务报文数据的转发。
11、第三方面,本专利技术实施例提供一种电子设备,包括处理器,存储器,存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述负载均衡方法的步骤。
12、第四方面,本专利技术实施例提供一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述负载均衡方法的步骤。
13、第五方面,本专利技术实施例提供一种计算机程序产品,包括计算机指令,所述计算机指令被处理器执行时实现上述负载均衡方法的步骤。
14、本专利技术实施例中,通过在一套负载均衡器中部署管理平面、业务平面和至少两个种类的转发平面,所述业务平面用于指导所述至少两个种类的转发平面进行报文转发,该负载均衡器在实现负载均衡时,通过管理平面根据第一信息从至少两个种类的转发平面中确定第一转发平面;第一转发平面获取负载均衡实例的业务报文数据;所述业务平面根据所述第一转发平面发送的会话查询报文进行负载均衡处理,得到会话响应报文;所述会话查询报文是所述第一转发平面根据所述业务报文数据进行封装得到的报文;所述第一转发平面根据所述业务平面发送的所述会话响应报文进行所述业务报文数据的转发。如此,通过在一套负载均衡器部署至少两个本文档来自技高网...
【技术保护点】
1.一种负载均衡方法,其特征在于,应用于负载均衡器,所述负载均衡器包括管理平面、业务平面和至少两个种类的转发平面,所述业务平面用于指导所述至少两个种类的转发平面进行报文转发,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述至少两个种类的转发平面包括以软件为开发基础的转发平面和以硬件为开发基础的转发平面;所述第一转发平面获取负载均衡实例的业务报文数据之前,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述管理平面控制所述负载均衡实例的业务报文数据从以软件为开发基础的转发平面引流切换至以硬件为开发基础的转发平面引流,包括:
4.根据权利要求2所述的方法,其特征在于,所述管理平面控制所述负载均衡实例的业务报文数据引流至以软件为开发基础的转发平面的情况下,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述业务平面根据所述第一转发平面发送的会话查询报文进行负载均衡处理,得到会话响应报文之前,所述方法还包括:
6.根据权利要求5所述的方法,其特征在于,所述业务平面根据所述第一转发平面发送的会
7.一种负载均衡装置,其特征在于,应用于负载均衡器,所述负载均衡器包括管理平面、业务平面和至少两个种类的转发平面,所述业务平面用于指导所述至少两个种类的转发平面进行报文转发;所述装置包括:
8.一种电子设备,其特征在于,所述电子设备包括处理器,存储器,存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至6中任一项所述的负载均衡方法的步骤。
9.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的负载均衡方法的步骤。
10.一种计算机程序产品,其特征在于,包括计算机指令,所述计算机指令被处理器执行时实现如权利要求1至6中任一项所述的负载均衡方法的步骤。
...【技术特征摘要】
1.一种负载均衡方法,其特征在于,应用于负载均衡器,所述负载均衡器包括管理平面、业务平面和至少两个种类的转发平面,所述业务平面用于指导所述至少两个种类的转发平面进行报文转发,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述至少两个种类的转发平面包括以软件为开发基础的转发平面和以硬件为开发基础的转发平面;所述第一转发平面获取负载均衡实例的业务报文数据之前,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述管理平面控制所述负载均衡实例的业务报文数据从以软件为开发基础的转发平面引流切换至以硬件为开发基础的转发平面引流,包括:
4.根据权利要求2所述的方法,其特征在于,所述管理平面控制所述负载均衡实例的业务报文数据引流至以软件为开发基础的转发平面的情况下,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述业务平面根据所述第一转发平面发送的会话查询报文进行负载均衡处理,得到会话响应报文之前,所述方法...
【专利技术属性】
技术研发人员:俞文俊,谭跃辉,马池志,彭国荣,蒋贤强,
申请(专利权)人:中移苏州软件技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。