负载均衡集群系统及采用其提供服务的方法

文档序号:7775868阅读:173来源:国知局
专利名称:负载均衡集群系统及采用其提供服务的方法
技术领域
本发明涉及计算机网络技术领域,特别设计一种负载均衡集群系统、采用其提供服务的方法、上联交换机及负载均衡设备。
背景技术
负载均衡设备(LB)为各个业务应用提供了一种通用的负载均衡方法。但是所有业务的数据包均需要经由负载均衡设备。现有负载均衡设备单机数据包处理性能较低,而需要由负载均衡设备处理的业务流量远高于负载均衡设备的单机处理能力。因此单机负载均衡系统已不能满足这种需求。使用虚拟路由器冗余协议(VRRP)扩展多台互为主备的负载均衡设备,该方式使用VRRP协议,可以扩展出多台互为主备的负载均衡设备。所谓互为主备是指:一个虚拟服务(VS)同时只能由一台负载均衡设备(主设备)承载流量,对该虚拟服务来说,其它设备均为备用状态,该虚拟服务只有在主设备异常时才会使用其它备设备。不同的虚拟服务的主设备可以不同。因此,该方式要求各个虚拟服务的主设备只能为一台设备。使用虚拟路由器冗余协议(VRRP)扩展多台互为主备的负载均衡设备,此技术主要有以下缺点:(I)虚拟服务的主设备只能为一台负载均衡设备,备用设备不承载流量。当某一个虚拟服务的流量过大时,此方法将不能应对。(2) VRRP协议是二层协议,要求各个负载均衡器之间在同一个二层内,而目前网络的设计多数为三层,使用VRRP会造成网络部署上的麻烦。(3)使用该方法时,由于不同业务的主设备及从设备不同,会导致每个负载均衡设备的具体配置不同,使用起来较为不便。

发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明的第一个目的在于提出一种负载均衡集群系统,该负载均衡集群系统保证每个负载均衡设备承载的流量相对均匀,提高了负载均衡的能力,提升了客户端(互联网)访问速度,且提高了每个后端服务器的利用率,使得请求报文的处理速度得到提升。本发明的第二个目的在于提出一种采用负载均衡集群系统提供服务的方法。本发明的第三个目的在于提出一种上联交换机。本发明的第四个目的在于提出一种负载均衡设备。为了实现上述目的,本发明的第一方面实施例提出了一种负载均衡集群系统,包括上联交换机,所述上联交换机与客户端相连,所述上联交换机与所述多个负载均衡设备通过路由协议相连,且所述上联交换机中设置有路由表,用于接收所述客户端发送的请求报文,并根据所述路由表和所述请求报文选择所述多个负载均衡设备中的一个并向其发送所述请求报文;以及多个负载均衡设备组成的负载均衡集群,其中,所述负载均衡设备均与所述上联交换机相连,用于接收所述上联交换机发送的请求报文,并根据预设的负载均衡策略为所述请求报文选择后端服务器,并将所述请求报文的目的地址替换为所述后端服务器的地址。根据本发明实施例的负载均衡集群系统,上联交换机可以将不同客户端请求的相同虚拟服务(请求报文)或者一个客户端请求的多个不同的虚拟服务(请求报文)根据上联交换机中设置的路由表将不同客户端请求的相同虚拟服务或者一个客户端请求的多个不同的虚拟服务分配到不同的负载均衡设备中,即将不同客户端请求的相同虚拟服务或者一个客户端请求的多个不同的虚拟服务分配到不同的负载均衡设备中,由此,负载均衡设备的流量相对均匀,提高了负载均衡的能力,提升了客户端(互联网)访问速度。另外,负载均衡设备根据预设的负载均衡策略为虚拟服务(请求报文)选择不同的后端服务器进行处理,使得每个后端服务器当前处理的虚拟服务(请求报文)数量相对均衡,避免其中一些后端服务器非常繁忙,而其它一些后端服务器处于空闲,提高了每个后端服务器的利用率,由此避免虚拟服务在一些后端服务器中等待处理时间,提升了虚拟服务(请求报文)的处理速度。本发明第二方面实施例提出了一种采用负载均衡集群系统提供服务的方法,包括以下步骤:上联交换机接收客户端发送的请求报文;所述上联交换机根据自身维护的路由表和所述请求报文选择多个负载均衡设备中的一个负载均衡设备并向其发送所述请求报文;所述负载均衡设备根据预设的负载均衡策略为所述请求报文选择后端服务器,并将所述请求报文的目的地址替换为所述后端服务器的地址;以及所述负载均衡设备通过下联交换机将所述请求报文发送至所述后端服务器。根据本发明实施例的采用负载均衡集群系统提供服务的方法,上联交换机可以将不同客户端请求的相同虚拟服务(请求报文)或者一个客户端请求的多个不同的虚拟服务(请求报文)根据上联交换机中设置的路由表将不同客户端请求的相同虚拟服务或者一个客户端请求的多个不同的虚拟服务分配到不同的负载均衡设备中,即将不同客户端请求的相同虚拟服务或者一个客户端请求的多个不同的虚拟服务分配到不同的负载均衡设备中,由此,负载均衡设备的流量相对均匀,提高了负载均衡的能力,提升了客户端(互联网)访问速度。另外,负载均衡设备根据预设的负载均衡策略为虚拟服务(请求报文)选择不同的后端服务器进行处理,使得每个后端服务器当前处理的虚拟服务(请求报文)数量相对均衡,避免其中一些后端服务器非常繁忙,而其它一些后端服务器处于空闲,提高了每个后端服务器的利用率,由此避免虚拟服务在一些后端服务器中等待处理时间,提升了虚拟服务(请求报文)的处理速度。本发明第三方面实施例提出了一种上联交换机,包括:接收模块,用于接收客户端发送的请求报文,及负载均衡设备发送的响应报文;路由表维护模块,用于维护所述上联交换机与多个负载均衡设备之间的路由表;分配模块,用于根据所述路由表和所述请求报文选择所述多个负载均衡设备中的一个;以及发送模块,用于向所述多个负载均衡设备中的一个发送所述请求报文,并将所述响应报文发送至所述客户端。本发明第四方面实施例提出了一种负载均衡设备,包括:路由模块,用于与上联交换机之间建立路由连接;接收模块,用于接收所述上联交换机发送的请求报文,及下联交换机发送的响应报文;负载均衡模块,用于根据预设的负载均衡策略为所述请求报文选择后端服务器;地址转换模块,用于将所述请求报文的目的地址替换为所述后端服务器的地址;以及发送模块,用于将目的地址替换后的所述请求报文发送至所述下联交换机,及将所述响应报文发送至所述上联交换机。本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。


本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:图1为本发明实施例的负载均衡集群系统的结构图;图2为本发明实施例的采用负载均衡集群系统提供服务的方法的流程图;图3为图2所示的采用负载均衡集群系统提供服务的方法中步骤S102的流程图;图4为本发明实施例的上联交换机的结构图;图5为本发明实施例的上联交换机的分配模块的结构图;以及图6为本发明实施例的负载均衡设备的结构图。
具体实施例方式下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。在本发明的描述中,需要理解的是,术语“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底” “内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。在本发明的描述中,除非另有规定和限定,需要说明的是,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是机械连接或电连接,也可以是两个元件内部的连通,可以是直接相连,也可以通过中间媒介间接相连,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。以下结合附图首先描述根据本发明实施例的负载均衡集群系统。参考图1,根据本发明实施例的负载均衡集群系统包括上联交换机110和负载均衡集群120,其中负载均衡集群120包括多个负载均衡设备(如图1中从左至右依次排列的N个负载均衡设备,即负载均衡设备I至负载均衡设备N,N为正整数)。上联交换机110与客户端相连,上联交换机110与多个负载均衡设备(负载均衡设备I至负载均衡设备N)通过路由协议相连,且上联交换机110中设置有路由表,用于接收客户端发送的请求报文,并根据路由表和请求报文选择多个负载均衡设备中的一个并向其发送请求报文,即上联交换机110根据路由表和请求报文选择将请求报文发送给负载均衡设备I至负载均衡设备N的其中一个。多个负载均衡设备(负载均衡设备I至负载均衡设备N)均与上联交换机110相连,用于接收上联交换机110发送的请求报文,并根据预设的负载均衡策略为请求报文选择后端服务器130,并将请求报文的目的地址替换为后端服务器的地址。如图1所示,上联交换机110设置有多个端口(从左至右依次排列的端口 I至端口 N),多个端口和多个负载均衡设备之间一一对应,上联交换机110将请求报文从端口发送给相应的负载均衡设备。根据本发明实施例的负载均衡集群系统,上联交换机110可以将不同客户端150请求的相同虚拟服务(请求报文)或者一个客户端150请求的多个不同的虚拟服务(请求报文)根据上联交换机110中设置的路由表将不同客户端150请求的相同虚拟服务或者一个客户端150请求的多个不同的虚拟服务分配到不同的负载均衡设备中(负载均衡设备I至负载均衡设备N),即将不同客户端150请求的相同虚拟服务或者一个客户端150请求的多个不同的虚拟服务分配到不同的负载均衡设备中,由此,负载均衡设备的流量相对均匀,提高了负载均衡的能力,提升了客户端150(互联网)访问速度。另外,负载均衡设备(负载均衡设备I至负载均衡设备N)根据预设的负载均衡策略为虚拟服务(请求报文)选择不同的后端服务器130进行处理,使得每个后端服务器130当前处理的虚拟服务(请求报文)数量相对均衡,避免其中一些后端服务器130非常繁忙,而其它一些后端服务器130处于空闲,提高了每个后端服务器130的利用率,由此避免虚拟服务在一些后端服务器130中等待处理时间,提升了虚拟服务(请求报文)的处理速度,使资源得到更为合理的利用。如图1所示,本发明实施例的负载均衡集群系统还包括有下联交换机140,其中,多个负载均衡设备通过下联交换机140与多个后端服务器130相连,下联交换机140根据请求报文(虚拟服务)的目的地址将请求报文发送至对应的后端服务器130。在本发明的一个实施例中,多个负载均衡设备(负载均衡设备I至负载均衡设备N)还用于将每个负载均衡设备自身的虚拟服务IP发送至所述上联交换机,以建立所述上联交换机110至每个所述负载均衡设备的路由。即每个负载均衡设备将配置在自身的虚拟服务IP发布给上联交换机110上,这样在上联交换机110上就有一条到该负载均衡设备的虚拟服务IP的路由。进一步地,多个负载均衡设备中至少有部分负载均衡设备具有相同的虚拟服务IP,其中,每个虚拟服务IP对应的路由的权值均相同。也就是说,对于每个负载均衡设备上配置的虚拟服务IP可以有多个不同的虚拟服务IP,当然,也可以在每一个负载均衡设备上配置同样的虚拟服务IP,并且将路由权值cost设为相同,这样对于同一个虚拟服务IP,上联交换机110可以建立与多个负载均衡设备之间的路由连接,例如有10个负载均衡设备(负载均衡设备I至负载均衡设备10),其中9个负载均衡设备可以配置一个相同的虚拟服务IP,7个可以配置另外一个虚拟服务IP,从而上位机可以根据路由表和请求报文选择任意一个具有该请求报文所请求的虚拟服务的虚拟服务IP的负载均衡设备,由此不但提高了每个负载均衡设备的利用率,且能够避免对全部的负载均衡设备同时构成攻击。根据上述的实施例,当上联交换机110根据路由表判断出客户端150所请求的虚拟服务的虚拟服务IP的路由有多个时(多个负载均衡设备均配置有此虚拟服务IP),上联交换机110通过对请求报文的五元组进行哈希运算以从路由表中选择所述多个负载均衡设备中的一个并向其发送所述请求报文,换言之,上联交换机110按照该请求报文的五元组,即〈源IP地址、目的IP地址、源端口号PORT、目的端口号PORT、协议号 > 进行分流,从多个路由链路中选择下一跳地址,即该地址对应于一个负载均衡设备。进一步地,上联交换机110按照该请求报文的五元组进行分流通过哈希运算实现,即哈希HASH(五元组)% M0其中M为路由权值cost相同的路由路径的数量,上述HASH函数通过厂商实现。五元组信息是较为分散的,由此分发给每一个负载均衡设备的流量也是较为均匀的。进而访问虚拟服务IP的流量在上联交换机110就按照五元组进行了分流,分配到不同的负载均衡设备上面,实现流量的均匀分配,避免部分负载均衡设备承载流量过大,提高传输速度。在本发明的一个实施例中,负载均衡设备还用于将请求报文的源地址替换为负载均衡设备的地址。即将请求报文的客户端150的IP地址替换为接收此请求报文的负载均衡设备的后端IP(BIP),需理解,每个负载均衡设备的后端IP均不相同。由于请求报文需要经过负载均衡设备发送到不同的后端服务器130,因此,后端服务器130需要知道发送给该后端服务器130的负载均衡设备的后端IP,这样后端服务器130才能够将后续处理的结果发送给相应的负载均衡设备。由于后端服务器130为多个,因此,负载均衡设备需要根据预设的负载均衡策略为请求报文选择后端服务器130。多个负载均衡设备可以将请求报文首先发送给下联交换机140,由下联交换机140统一下发,因此,下联交换机140需要知道负载均衡设备的后端IP,这样,下联交换机140将后端服务器130生成的响应报文根据负载均衡设备的后端IP发送到相应的负载均衡设备,负载均衡设备将响应报文的目的地址(负载均衡设备的后端IP)替换为客户端的地址(五元组的源IP地址)并通过上联交换机110将响应报文发送至客户端150。在本发明的一个实施例中,还可以对负载均衡设备的虚拟服务IP进行配置,当负载均衡设备中的虚拟服务IP变化时,负载均衡设备向上联交换机110发送添加或删除虚拟服务IP路由的消息。其中,添加时负载均衡设备将该虚拟服务IP配置到系统的网络接口上。删除虚拟服务时将虚拟服务IP从系统网络接口删除即可,由此负载均衡设备根据网络接口上的IP变化,向上联交换机110的路由表中添加或删除相应的路由消息。上述添加或删除虚拟服务IP的方式具有添加删除操作方便。另外,不同的负载均衡设备可以使用相同的配置,便于运维管理。如图2所示,本发明的进一步实施例提出了一种采用负载均衡集群系统提供服务的方法,包括如下步骤:步骤S101,上联交换机接收客户端发送的请求报文。步骤S102,上联交换机根据自身维护的路由表和请求报文选择多个负载均衡设备中的一个负载均衡设备并向其发送请求报文。即上联交换机根据路由表和请求报文选择将请求报文发送给多个负载均衡设备的其中一个。如图3所示,上联交换机根据自身维护的路由表和请求报文选择多个负载均衡设备中的一个包括如下步骤:步骤S201,上联交换机对请求报文的五元组进行哈希运算。上联交换机按照该请求报文的五元组,即〈源IP地址、目的IP地址、源端口号PORT、目的端口号PORT、协议号>进行分流。哈希HASH(五元组)% Μ。其中M为路由权值cost相同的路由路径的数量。步骤S201,根据哈希运算结果从路由表中选择所述多个负载均衡设备中的一个。由于五元组信息是较为分散的,由此分发给每一个负载均衡设备的流量也是较为均匀的。进而访问虚拟服务IP的流量在上联交换机110就按照五元组进行了分流,分配到不同的负载均衡设备上面,实现流量的均匀分配,避免部分负载均衡设备承载流量过大,提高传输速度。通过多个负载均衡设备将每个负载均衡设备自身的虚拟服务IP发送至所述上联交换机,以建立所述上联交换机至每个所述负载均衡设备的路由,即建立了上联交换机与多个负载均衡设备之间的路由表。由此,在上联交换机上就有一条到该负载均衡设备的虚拟服务IP的路由。步骤S103,负载均衡设备根据预设的负载均衡策略为请求报文选择后端服务器,即上联交换机设置有多个端口,多个端口和多个负载均衡设备之间一一对应,上联交换机将请求报文从端口发送给相应的负载均衡设备。并将请求报文的目的地址替换为后端服务器的地址。步骤S104,负载均衡设备通过下联交换机将请求报文发送至后端服务器。多个负载均衡设备通过下联交换机与多个后端服务器相连,下联交换机根据请求报文(虚拟服务)的目的地址将请求报文发送至对应的后端服务器。在本发明的一个实施例中,后端服务器根据请求报文生成相应的响应报文,并将所述响应报文通过下联交换机发送至所述负载均衡设备。负载均衡设备将所述响应报文的目的地址(负载均衡设备的后端IP)替换为客户端的地址并通过所述上联交换机将所述响应报文发送至所述客户端。在本发明的一个示例中,多个负载均衡设备中至少有部分负载均衡设备具有相同的虚拟服务IP,其中,每个虚拟服务IP对应的路由的权值均相同。也就是说,对于每个负载均衡设备上配置的虚拟服务IP可以有多个不同的虚拟服务IP,当然,也可以在每一个负载均衡设备上配置同样的虚拟服务IP,并且将路由权值cost设为相同,这样对于同一个虚拟服务IP,上联交换机可以建立与多个负载均衡设备之间的路由连接,例如有10个负载均衡设备,其中9个负载均衡设备可以配置一个相同的虚拟服务IP,7个可以配置另外一个虚拟服务IP,从而上位机可以根据路由表和请求报文选择任意一个具有该请求报文所请求的虚拟服务的虚拟服务IP的负载均衡设备,由此不但提高了每个负载均衡设备的利用率,且能够避免对全部的负载均衡设备同时构成攻击。在本发明的一个示例中,负载均衡设备将所述请求报文的源地址替换为所述负载均衡设备的地址。即将请求报文的客户端的IP地址替换为接收此请求报文的负载均衡设备的后端IP(BIP),需理解,每个负载均衡设备的后端IP均不相同。由于请求报文需要经过负载均衡设备发送到不同的后端服务器,因此,后端服务器需要知道发送给该后端服务器的负载均衡设备的后端IP,这样后端服务器才能够将后续处理的结果发送给相应的负载均衡设备。本发明的进一步实施例还提出了一种可用于上述负载均衡集群系统中的上联交换机。如图4所示,本发明实施例的上联交换机110包括接收模块111、路由表维护模块112、分配模块113和发送模块114。
接收模块111用于接收客户端发送的请求报文,及负载均衡设备发送的响应报文。路由表维护模块112用于维护所述上联交换机与多个负载均衡设备之间的路由表。在本发明的一个示例中,路由表维护模块112用于接收多个负载均衡设备发送的其自身的虚拟服务IP,并为每个虚拟服务IP建立对应的路由。即多个负载均衡设备将每个负载均衡设备自身的虚拟服务IP发送至所述路由表维护模块112,路由表维护模块112建立上联交换机110至每个负载均衡设备的路由。即每个负载均衡设备将配置在自身的虚拟服务IP发布给路由表维护模块112上,由此在上联交换机110上就有一条到该负载均衡设备的虚拟服务IP的路由,并将该路由加入路由表中。分配模块113用于根据所述路由表和所述请求报文选择所述多个负载均衡设备中的一个。参考图5,分配模块114包括哈希子模块431和选择子模块432。哈希子模块431用于对所述请求报文的五元组进行哈希运算。哈希子模块431按照该请求报文的五元组,即〈源IP地址、目的IP地址、源端口号PORT、目的端口号PORT、协议号 > 进行分流,从多个路由链路中选择下一跳地址,即该地址对应于一个负载均衡设备。哈希子模块431按照该请求报文的五元组进行分流通过哈希运算实现,即哈希HASH(五元组)% M。其中M为路由权值cost相同的路由路径的数量,上述HASH函数通过厂商实现。选择子模块432用于根据所述哈希子模块431的哈希结果从所述路由表中选择所述多个负载均衡设备中的一个。由于五元组信息是较为分散的,由此分发给每一个负载均衡设备的流量也是较为均匀的。进而访问虚拟服务IP的流量在上联交换机110就按照五元组进行了分流,分配到不同的负载均衡设备上面,实现流量的均匀分配,避免部分负载均衡设备承载流量过大,提高传输速度。发送模块114用于向所述多个负载均衡设备中的一个发送所述请求报文,并将所述响应报文发送至所述客户端。在本发明的进一步实施例中,还提出了一种用于上述负载均衡集群系统的负载均衡设备。如图6所示,本发明实施例的负载均衡设备600包括路由模块610、接收模块620、负载均衡模块630、地址转换模块640和发送模块650。路由模块610用于与上联交换机之间建立路由连接。在本发明的一个示例中,路由模块610还用于将每个所述负载均衡设备自身的虚拟服务IP发送至所述上联交换机110,以建立所述上联交换机110至每个负载均衡设备600的路由。即每个路由模块610将配置在自身的虚拟服务IP发布给上联交换机110上,这样在上联交换机110上就有一条到该负载均衡设备的虚拟服务IP的路由。在本发明的另一示例中,当负载均衡设备600中的虚拟服务IP变化时,路由模块610还用于向上联交换机发送添加或删除虚拟服务IP路由的消息。即路由模块610可以对负载均衡设备600的虚拟服务IP进行配置,当负载均衡设备中的虚拟服务IP变化时,路由模块610向上联交换机110发送添加或删除虚拟服务IP路由的消息。其中,添加时负载均衡设备将该虚拟服务IP配置到系统的网络接口上。删除虚拟服务时将虚拟服务IP从系统网络接口删除即可,由此负载均衡设备600根据网络接口上的IP变化,向上联交换机110的路由表中添加或删除相应的路由消息。由此,上述添加或删除虚拟服务IP的方式具有添加删除操作方便。另外,不同的负载均衡设备可以使用相同的配置,便于运维管理。接收模块620用于接收所述上联交换机发送的请求报文,及下联交换机发送的响应报文。负载均衡模块630用于根据预设的负载均衡策略为所述请求报文选择后端服务器。地址转换模块640用于将所述请求报文的目的地址替换为所述后端服务器的地址。由于后端服务器130为多个,因此,地址转换模块640需要根据预设的负载均衡策略为请求报文选择后端服务器130。地址转换模块640可以将请求报文首先发送给下联交换机140,由下联交换机140统一下发,因此,下联交换机140需要知道负载均衡设备的后端IP,这样,下联交换机140将后端服务器130生成的响应报文根据负载均衡设备的后端IP发送到相应的负载均衡设备600,负载均衡设备600的地址转换模块640将响应报文的目的地址(负载均衡设备的后端IP)替换为客户端的地址(五元组的源IP地址)并通过上联交换机110将响应报文发送至客户端150。在本发明的一个示例中,地址转换模块640还用于将所述请求报文的源地址替换为所述负载均衡设备的地址,并将所述响应报文的目的地址替换为所述客户端的地址。发送模块650用于将目的地址替换后的所述请求报文发送至所述下联交换机,及将所述响应报文发送至所述上联交换机。在本发明的一个示例中,负载均衡设备中保存有多个虚拟服务IP。由此,可以对客户端不同的请求报文提供虚拟服务,即每个负载均衡设备可以为多种请求报文提供虚拟服务,进而上联交换机可以为客户端的请求报文选择多个负载均衡设备,提高负载均衡设备的利用率,降低请求报文的传输时间,提高效率。根据本发明的实施例,与传统的虚拟路由器冗余协议(VRRP)方式相比能够由多个负载均衡设备同时承载请求报文的流量,极大的提高了负载均衡的能力,提高更多的客户端的请求报文流量增长的需求。流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(R0M),可擦除可编辑只读存储器(EPR0M或闪速存储器),光纤装置,以及便携式光盘只读存储器(⑶ROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。上述提到的存储介质可以是只读存储器,磁盘或光盘等。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同限定。
权利要求
1.一种负载均衡集群系统,其特征在于,包括: 上联交换机,所述上联交换机与客户端相连,所述上联交换机与所述多个负载均衡设备通过路由协议相连,且所述上联交换机中设置有路由表,用于接收所述客户端发送的请求报文,并根据所述路由表和所述请求报文选择所述多个负载均衡设备中的一个并向其发送所述请求报文;以及 多个负载均衡设备组成的负载均衡集群,其中,所述负载均衡设备均与所述上联交换机相连,用于接收所述上联交换机发送的请求报文,并根据预设的负载均衡策略为所述请求报文选择后端服务器,并将所述请求报文的目的地址替换为所述后端服务器的地址。
2.如权利要求1所述的负载均衡集群系统,其特征在于,还包括: 下联交换机,所述多个负载均衡设备通过所述下联交换机与多个后端服务器相连,所述下联交换机根据所述请求报文的目的地址将所述请求报文发送至对应的后端服务器。
3.如权利要求1所述的负载均衡集群系统,其特征在于,所述多个负载均衡设备还用于将每个所述负载均衡设备自身的虚拟服务IP发送至所述上联交换机,以建立所述上联交换机至每个所述负载均衡设备的路由。
4.如权利要求1所述的负载均衡集群系统,其特征在于,所述多个负载均衡设备中至少有部分所述负载均衡设备具有相同的虚拟服务IP,其中,每个虚拟服务IP对应的路由的权值均相同。
5.如权利要求1所述的负载均衡集群系统,其特征在于,所述上联交换机用于对所述请求报文的五元组进行哈希运算以从所述路由表中选择所述多个负载均衡设备中的一个并向其发送所述请求报文。
6.如权利要求2所述的负载均衡集群系统,其特征在于,所述负载均衡设备还用于将所述请求报文的源地址替换为所述负载均 衡设备的地址。
7.如权利要求1-6任一项所述的负载均衡集群系统,其特征在于,所述下联交换机还用于将所述后端服务器生成的响应报文发送至所述负载均衡设备,所述负载均衡设备将所述响应报文的目的地址替换为所述客户端的地址并通过所述上联交换机将所述响应报文发送至所述客户端。
8.如权利要求1-7任一项所述的负载均衡集群系统,其特征在于,当所述负载均衡设备中的虚拟服务IP变化时,所述负载均衡设备向所述上联交换机发送添加或删除虚拟服务IP路由的消息。
9.一种采用负载均衡集群系统提供服务的方法,其特征在于,包括以下步骤: 上联交换机接收客户端发送的请求报文; 所述上联交换机根据自身维护的路由表和所述请求报文选择多个负载均衡设备中的一个负载均衡设备并向其发送所述请求报文; 所述负载均衡设备根据预设的负载均衡策略为所述请求报文选择后端服务器,并将所述请求报文的目的地址替换为所述后端服务器的地址;以及 所述负载均衡设备通过下联交换机将所述请求报文发送至所述后端服务器。
10.如权利要求9所述的采用负载均衡集群系统提供服务的方法,其特征在于,还包括: 所述多个负载均衡设备将每个所述负载均衡设备自身的虚拟服务IP发送至所述上联交换机,以建立所述上联交换机至每个所述负载均衡设备的路由。
11.如权利要求9所述的采用负载均衡集群系统提供服务的方法,其特征在于,所述多个负载均衡设备中至少有部分所述负载均衡设备具有相同的虚拟服务IP,其中,每个虚拟服务IP对应的路由的权值均相同。
12.如权利要求9所述的采用负载均衡集群系统提供服务的方法,其特征在于,所述上联交换机根据自身维护的路由表和所述请求报文选择多个负载均衡设备中的一个进一步包括: 所述上联交换机对所述请求报文的五元组进行哈希运算; 所述上联交换机根据哈希运算结果从所述路由表中选择所述多个负载均衡设备中的一个。
13.如权利要求9所述的采用负载均衡集群系统提供服务的方法,其特征在于,还包括: 所述负载均衡设备将所述请求报文的源地址替换为所述负载均衡设备的地址。
14.如权利要求13所 述的采用负载均衡集群系统提供服务的方法,其特征在于,还包括: 所述后端服务器根据所述请求报文生成相应的响应报文,并将所述响应报文通过下联交换机发送至所述负载均衡设备; 所述负载均衡设备所述响应报文的目的地址替换为所述客户端的地址并通过所述上联交换机将所述响应报文发送至所述客户端。
15.一种上联交换机,其特征在于,包括: 接收模块,用于接收客户端发送的请求报文,及负载均衡设备发送的响应报文; 路由表维护模块,用于维护所述上联交换机与多个负载均衡设备之间的路由表; 分配模块,用于根据所述路由表和所述请求报文选择所述多个负载均衡设备中的一个;以及 发送模块,用于向所述多个负载均衡设备中的一个发送所述请求报文,并将所述响应报文发送至所述客户端。
16.如权利要求15所述的上联交换机,其特征在于,所述路由表维护模块用于接收所述多个负载均衡设备发送的其自身的虚拟服务IP,并为每个虚拟服务IP建立对应的路由。
17.如权利要求15所述的上联交换机,其特征在于,所述分配模块进一步包括: 哈希子模块,用于对所述请求报文的五元组进行哈希运算; 选择子模块,用于根据所述哈希子模块的哈希结果从所述路由表中选择所述多个负载均衡设备中的一个。
18.—种负载均衡设备,其特征在于,包括: 路由模块,用于与上联交换机之间建立路由连接; 接收模块,用于接收所述上联交换机发送的请求报文,及下联交换机发送的响应报文; 负载均衡模块,用于根据预设的负载均衡策略为所述请求报文选择后端服务器; 地址转换模块,用于将所述请求报文的目的地址替换为所述后端服务器的地址;以及 发送模块,用于将目的地址替换后的所述请求报文发送至所述下联交换机,及将所述响应报文发送至所述上联交换机。
19.如权利要求18所述的负载均衡设备,其特征在于,所述路由模块,还用于将每个所述负载均衡设备自身的虚拟服务IP发送至所述上联交换机,以建立所述上联交换机至每个所述负载均衡设备的路由。
20.如权利要求18所述的负载均衡设备,其特征在于,所述负载均衡设备中保存有多个虚拟服务IP。
21.如权利要求18所述的负载均衡设备,其特征在于,所述地址转换模块,还用于将所述请求报文的源地址替换为所述负载均衡设备的地址,并将所述响应报文的目的地址替换为所述客户端的地址。
22.如权利要求18所述的负载均衡设备,其特征在于,当所述负载均衡设备中的虚拟服务IP变化时,所述路由模块还用于向所述上联交换机发送添加或删除虚拟服务ip路由的 消息。
全文摘要
本发明提出了一种负载均衡集群系统即采用其提供服务的方法,该系统包括与客户端和多个负载均衡设备均相连的上联交换机,其设置有路由表以接收客户端发送的请求报文,并根据路由表和请求报文选择一个负载均衡设备发送请求报文;负载均衡设备均与上联交换机相连,接收请求报文,并根据预设的负载均衡策略为请求报文选择后端服务器,并将请求报文的目的地址替换为所述后端服务器的地址。根据本发明的实施例每个负载均衡设备承载的流量相对均匀,提高了负载均衡的能力,提升了客户端(互联网)访问速度,且提高了每个后端服务器的利用率,由此避免虚拟服务在一些后端服务器中等待处理时间,提升了虚拟服务(请求报文)的处理速度。
文档编号H04L12/803GK103166870SQ201110415528
公开日2013年6月19日 申请日期2011年12月13日 优先权日2011年12月13日
发明者刘晓光, 刘涛, 吴教仁, 刘宁, 张 诚 申请人:百度在线网络技术(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1