一种负载均衡方法及系统技术方案

技术编号:15395328 阅读:97 留言:0更新日期:2017-05-19 06:50
本发明专利技术提供一种负载均衡方法及系统,该方法包括:负载均衡设备接收客户端发送的第一请求数据包;并根据客户端与服务器的预设映射关系确定与客户端对应的目标服务器,并获取目标服务器的IP,目标服务器的虚拟IP与负载均衡设备的虚拟IP相同;负载均衡设备对第一请求数据包进行IP封装得到第二请求数据包,IP封装为在第一请求数据包中增加新IP头;以及按照新IP头向目标服务器发送第二请求数据包;目标服务器接收第二请求数据包,对第二请求数据包进行IP解封装,获得第一请求数据包,并对第一请求数据包进行处理,得到响应数据;目标服务器生成响应数据包,并按照响应数据包的IP头向客户端发送响应数据包。

Load balancing method and system

The invention provides a load balancing method and system, the method includes: a first load balancing device receives the request data sent by the client and the client package; and to determine the corresponding target server according to the preset mapping relation between the client and the server, and access to the target server IP, IP virtual target server with the same virtual IP load balancing device IP; load balancing equipment package second request packet to the first request packet, IP package for adding new IP header in the first request packet; and according to the new IP second head sent to the target server request packet; the target server receives a second request packet, second packets to request IP solution package get the first request packet, and the first request packet processing, get the response data of the target server response is generated; Packet, and sends the response packet to the client according to the IP header of the response packet.

【技术实现步骤摘要】
一种负载均衡方法及系统
本专利技术涉及一种数据交互领域,尤其涉及一种负载均衡方法及系统。
技术介绍
随着互联网技术的发展,客户端与服务器之间数据交互量也日趋增多,通过部署服务器集群可以有效提高网络服务的效率。现有在网络集群中通常会设置负载均衡设备,用来将客户端的数据包根据负载均衡算法分配到同一集群中的各个服务器中。一般情况下,客户端发起一次业务处理流程,例如一次交易流程通常需要与服务器进行多次数据交互,例如一次交易流程中可能会涉及到输入登录密码、输入金额、输入支付密码等等多次交互。然而,采用现有的负载均衡算法,负载均衡设备可能会将同一客户端的一次业务处理流程中发起的多次数据交互分配给不同的服务器,从而导致该客户端的业务处理流程中断,例如在客户端发送登录请求时,负载均衡设备为该客户端分配服务器A来处理登录请求,服务器A验证该客户端的登录请求并通过后发送登录成功响应给客户端,接着客户端发送支付请求,此时,采用现有负载均衡算法负载均衡设备可能分配服务器B来处理支付请求,由于服务器B没有对客户端的登录请求进行过验证,此时服务器B可能会向客户端返回需要重新进行登录的响应,从而导致客户端本次的交易流程异常中断。
技术实现思路
本专利技术旨在解决上述问题。本专利技术的主要目的在于提供一种负载均衡方法;本专利技术的另一目的在于提供一种负载均衡系统。为达到上述目的,本专利技术的技术方案具体是这样实现的:本专利技术一方面提供了一种负载均衡方法,包括:负载均衡设备接收客户端发送的第一请求数据包,所述第一请求数据包的IP头中源IP为所述客户端的IP、目的IP为所述负载均衡设备的虚拟IP;所述负载均衡设备根据客户端与服务器的预设映射关系确定与所述客户端对应的目标服务器,并获取所述目标服务器的IP,所述目标服务器的虚拟IP与所述负载均衡设备的虚拟IP相同;所述负载均衡设备对所述第一请求数据包进行IP封装得到第二请求数据包,所述IP封装为在所述第一请求数据包中增加新IP头,所述新IP头为源IP为所述负载均衡设备的IP、目的IP为所述目标服务器的IP;所述负载均衡设备按照所述新IP头向所述目标服务器发送所述第二请求数据包;所述目标服务器接收所述第二请求数据包,对所述第二请求数据包进行IP解封装,获得第一请求数据包,并对所述第一请求数据包进行处理,得到响应数据;所述目标服务器基于所述响应数据生成响应数据包,并按照所述响应数据包的IP头向所述客户端发送响应数据包,所述响应数据包的IP头为源IP为所述目标服务器的虚拟IP、目的IP为所述客户端的IP。本专利技术一方面还提供一种负载均衡方法,包括:前置负载均衡设备接收客户端发送的原始请求数据包,所述原始请求数据包的IP头中源IP为所述客户端的IP、目的IP为所述前置负载均衡设备的IP;所述前置负载均衡设备基于所述原始请求数据包生成第一请求数据包,并根据所述客户端与负载均衡设备的预设映射关系确定与所述客户端对应的负载均衡设备,并向所述负载均衡设备发送所述第一请求数据包,所述第一请求数据包的IP头中源IP为所述前置负载均衡设备的IP、目的IP为所述负载均衡设备的虚拟IP;所述负载均衡设备接收所述第一请求数据包;所述负载均衡设备根据客户端与服务器的预设映射关系确定与所述客户端对应的目标服务器,并获取所述目标服务器的IP,所述目标服务器的虚拟IP与所述负载均衡设备的虚拟IP相同;所述负载均衡设备对所述第一请求数据包进行IP封装得到第二请求数据包,所述IP封装为在所述第一请求数据包中增加新IP头,所述新IP头中源IP为所述负载均衡设备的IP、目的IP为所述目标服务器的IP;所述负载均衡设备按照所述新IP头向所述目标服务器发送所述第二请求数据包;所述目标服务器接收所述第二请求数据包,对所述第二请求数据包进行IP解封装,获得第一请求数据包,并对所述第一请求数据包进行处理,得到响应数据;所述目标服务器基于所述响应数据生成响应数据包,并按照所述响应数据包的IP头向所述前置负载均衡设备发送响应数据包,所述响应数据包的IP头中源IP为所述目标服务器的虚拟IP、目的IP为所述前置负载均衡设备的IP;所述前置负载均衡设备接收所述响应数据包,并按照转发IP头向所述客户端转发所述响应数据包,所述转发IP头中源IP为所述前置负载均衡设备的IP、目的IP为所述客户端的IP。其中,所述负载均衡设备确定与所述客户端对应的目标服务器,并获取所述目标服务器的IP包括:所述负载均衡设备在客户端与服务器的预设映射关系中查找是否与所述客户端对应的目标服务器;若未查找到,则所述负载均衡设备为所述客户端分配目标服务器,获取所述目标服务器的IP,并记录所述客户端的唯一标识信息与所述目标服务器的IP的对应关系;若查找到,则所述负载均衡设备获取所述目标服务器的IP。其中,所述负载均衡设备为所述客户端分配目标服务器,包括:所述负载均衡设备获取所述目标服务器的可用连接数;根据所述目标服务器的可用连接数为所述客户端分配目标服务器。其中,还包括:所述负载均衡设备更新所述目标服务器的可用连接数;所述负载均衡设备更新所述目标服务器的可用连接数包括:所述负载均衡设备在为所述客户端分配目标服务器之后,更新所述目标服务器的可用连接数;或者,所述负载均衡设备接收所述目标服务器发送的结束本次连接通知信息,更新所述目标服务器的可用连接数;或者,所述负载均衡设备接收所述客户端发送的结束本次连接通知信息,更新所述目标服务器的可用连接数;或者,所述负载均衡设备定期向所述目标服务器发送状态查询请求,接收所述目标服务器发送的最新可用连接数,使用所述最新可用连接数更新所述目标服务器的可用连接数。其中,所述客户端的唯一标识信息包括:所述客户端的IP地址和端口号;或者,所述客户端的唯一标识信息包括:所述客户端的MAC地址;或者,所述客户端的唯一标识信息包括:对所述客户端的IP地址和端口号进行不可逆运算得到的数值;或者,所述客户端的唯一标识信息包括:对所述客户端的MAC地址进行不可逆运算得到的数值。本专利技术另一方面提供一种负载均衡系统,包括:负载均衡设备,用于接收客户端发送的第一请求数据包,所述第一请求数据包的IP头中源IP为所述客户端的IP、目的IP为所述负载均衡设备的虚拟IP,并用于根据客户端与服务器的预设映射关系确定与所述客户端对应的目标服务器,并获取所述目标服务器的IP,所述目标服务器的虚拟IP与所述负载均衡设备的虚拟IP相同;还用于对所述第一请求数据包进行IP封装得到第二请求数据包,所述IP封装为在所述第一请求数据包中增加新IP头,所述新IP头为源IP为所述负载均衡设备的IP、目的IP为所述目标服务器的IP;以及还用于按照所述新IP头向所述目标服务器发送所述第二请求数据包;所述目标服务器,用于接收所述第二请求数据包,对所述第二请求数据包进行IP解封装,获得第一请求数据包,并对所述第一请求数据包进行处理,得到响应数据,以及基于所述响应数据生成响应数据包,并按照所述响应数据包的IP头向所述客户端发送响应数据包,所述响应数据包的IP头为源IP为所述目标服务器的虚拟IP、目的IP为所述客户端的IP。本专利技术另一方面还提供一种负载均衡系统,包括:前置负载均衡设备,用于接收客户端发送的原始请求数据包,所述原始请求本文档来自技高网...
一种负载均衡方法及系统

【技术保护点】
一种负载均衡方法,其特征在于,包括:负载均衡设备接收客户端发送的第一请求数据包,所述第一请求数据包的IP头中源IP为所述客户端的IP、目的IP为所述负载均衡设备的虚拟IP;所述负载均衡设备根据客户端与服务器的预设映射关系确定与所述客户端对应的目标服务器,并获取所述目标服务器的IP,所述目标服务器的虚拟IP与所述负载均衡设备的虚拟IP相同;所述负载均衡设备对所述第一请求数据包进行IP封装得到第二请求数据包,所述IP封装为在所述第一请求数据包中增加新IP头,所述新IP头为源IP为所述负载均衡设备的IP、目的IP为所述目标服务器的IP;所述负载均衡设备按照所述新IP头向所述目标服务器发送所述第二请求数据包;所述目标服务器接收所述第二请求数据包,对所述第二请求数据包进行IP解封装,获得第一请求数据包,并对所述第一请求数据包进行处理,得到响应数据;所述目标服务器基于所述响应数据生成响应数据包,并按照所述响应数据包的IP头向所述客户端发送响应数据包,所述响应数据包的IP头为源IP为所述目标服务器的虚拟IP、目的IP为所述客户端的IP。

【技术特征摘要】
1.一种负载均衡方法,其特征在于,包括:负载均衡设备接收客户端发送的第一请求数据包,所述第一请求数据包的IP头中源IP为所述客户端的IP、目的IP为所述负载均衡设备的虚拟IP;所述负载均衡设备根据客户端与服务器的预设映射关系确定与所述客户端对应的目标服务器,并获取所述目标服务器的IP,所述目标服务器的虚拟IP与所述负载均衡设备的虚拟IP相同;所述负载均衡设备对所述第一请求数据包进行IP封装得到第二请求数据包,所述IP封装为在所述第一请求数据包中增加新IP头,所述新IP头为源IP为所述负载均衡设备的IP、目的IP为所述目标服务器的IP;所述负载均衡设备按照所述新IP头向所述目标服务器发送所述第二请求数据包;所述目标服务器接收所述第二请求数据包,对所述第二请求数据包进行IP解封装,获得第一请求数据包,并对所述第一请求数据包进行处理,得到响应数据;所述目标服务器基于所述响应数据生成响应数据包,并按照所述响应数据包的IP头向所述客户端发送响应数据包,所述响应数据包的IP头为源IP为所述目标服务器的虚拟IP、目的IP为所述客户端的IP。2.一种负载均衡方法,其特征在于,包括:前置负载均衡设备接收客户端发送的原始请求数据包,所述原始请求数据包的IP头中源IP为所述客户端的IP、目的IP为所述前置负载均衡设备的IP;所述前置负载均衡设备基于所述原始请求数据包生成第一请求数据包,并根据所述客户端与负载均衡设备的预设映射关系确定与所述客户端对应的负载均衡设备,并向所述负载均衡设备发送所述第一请求数据包,所述第一请求数据包的IP头中源IP为所述前置负载均衡设备的IP、目的IP为所述负载均衡设备的虚拟IP;所述负载均衡设备接收所述第一请求数据包;所述负载均衡设备根据客户端与服务器的预设映射关系确定与所述客户端对应的目标服务器,并获取所述目标服务器的IP,所述目标服务器的虚拟IP与所述负载均衡设备的虚拟IP相同;所述负载均衡设备对所述第一请求数据包进行IP封装得到第二请求数据包,所述IP封装为在所述第一请求数据包中增加新IP头,所述新IP头中源IP为所述负载均衡设备的IP、目的IP为所述目标服务器的IP;所述负载均衡设备按照所述新IP头向所述目标服务器发送所述第二请求数据包;所述目标服务器接收所述第二请求数据包,对所述第二请求数据包进行IP解封装,获得第一请求数据包,并对所述第一请求数据包进行处理,得到响应数据;所述目标服务器基于所述响应数据生成响应数据包,并按照所述响应数据包的IP头向所述前置负载均衡设备发送响应数据包,所述响应数据包的IP头中源IP为所述目标服务器的虚拟IP、目的IP为所述前置负载均衡设备的IP;所述前置负载均衡设备接收所述响应数据包,并按照转发IP头向所述客户端转发所述响应数据包,所述转发IP头中源IP为所述前置负载均衡设备的IP、目的IP为所述客户端的IP。3.根据权利要求1或2所述的方法,其特征在于,所述负载均衡设备确定与所述客户端对应的目标服务器,并获取所述目标服务器的IP包括:所述负载均衡设备在客户端与服务器的预设映射关系中查找是否与所述客户端对应的目标服务器;若未查找到,则所述负载均衡设备为所述客户端分配目标服务器,获取所述目标服务器的IP,并记录所述客户端的唯一标识信息与所述目标服务器的IP的对应关系;若查找到,则所述负载均衡设备获取所述目标服务器的IP。4.根据权利要求3所述的方法,其特征在于,所述负载均衡设备为所述客户端分配目标服务器,包括:所述负载均衡设备获取所述目标服务器的可用连接数;根据所述目标服务器的可用连接数为所述客户端分配目标服务器。5.根据权利要求4所述的方法,其特征在于,还包括:所述负载均衡设备更新所述目标服务器的可用连接数;所述负载均衡设备更新所述目标服务器的可用连接数包括:所述负载均衡设备在为所述客户端分配目标服务器之后,更新所述目标服务器的可用连接数;或者,所述负载均衡设备接收所述目标服务器发送的结束本次连接通知信息,更新所述目标服务器的可用连接数;或者,所述负载均衡设备接收所述客户端发送的结束本次连接通知信息,更新所述目标服务器的可用连接数;或者,所述负载均衡设备定期向所述目标服务器发送状态查询请求,接收所述目标服务器发送的最新可用连接数,使用所述最新可用连接数更新所述目标服务器的可用连接数。6.根据权利要求3所述的方法,其特征在于,所述客户端的唯一标识信息包括:所述客户端的IP地址和端口号;或者,所述客户端的唯一标识信息包括:所述客户端的MAC地址;或者,所述客户端的唯一标识信息包括:对所述客户端的IP地址和端口号进行不可逆运算得到的数值;或者,...

【专利技术属性】
技术研发人员:李东声
申请(专利权)人:天地融科技股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1