一种集群内负载均衡方法、设备和系统技术方案

技术编号:15520687 阅读:92 留言:0更新日期:2017-06-04 10:11
本发明专利技术提供了一种集群内负载均衡方法、设备和系统,负载均衡设备创建并维护客户端的唯一标识信息与真实服务器的MAC地址的对应关系,实现在客户端的一次业务完成之前,负载均衡设备根据客户端的唯一标识信息与真实服务器的MAC地址的对应关系,将从同一客户端接收到的数据包路由到同一台真实服务器,从而使得在客户端发起一个业务请求到本次业务结束的过程中,同一个真实服务器为其提供服务,保证了客户端的业务状态连续。

Load balancing method, equipment and system in cluster

The present invention provides a device and system load balancing method, cluster, correspondence between the unique identification information of load balancing equipment to create and maintain the client with the real MAC address of the server, realize before a business client, load balancing equipment according to the corresponding relationship between the real and unique identification information client server MAC address the route will be from the same client receives the data packet to the same real servers, which makes a request to process the business end of the launch of a business on the client side, with a real server to provide services, ensure the client's business and continuous state.

【技术实现步骤摘要】
一种集群内负载均衡方法、设备和系统
本专利技术涉及一种负载均衡领域,尤其涉及一种集群内负载均衡方法、设备和系统。
技术介绍
现有的负载均衡技术中,当客户端发起一个业务请求时,负载均衡设备会根据负载均衡算法给客户端分配一个服务器进行业务响应。由于客户端从发起一个业务请求到本次业务结束,需要与服务器进行多次数据交互,而在每次数据交互时,负载均衡设备分配给客户端的服务器不一定是同一个,因此,在客户端发起一个业务请求到本次业务结束的过程中,有可能存在多个服务器先后为同一个客户端提供服务,造成了客户端的业务状态不连续。
技术实现思路
本专利技术旨在至少解决上述问题之一。本专利技术的主要目的在于提供一种集群内负载均衡方法、设备和系统。为达到上述目的,本专利技术的技术方案具体是这样实现的:本专利技术一方面提供了一种集群内负载均衡方法:方案1、一种集群内负载均衡方法,应用于包含一个负载均衡设备和多个真实服务器的集群,其中,所述集群中的所有负载均衡设备和真实服务器的虚拟IP地址相同;所述方法包括:步骤S101:所述负载均衡设备接收IP包,并从所述IP包获取所述IP包的包头;步骤S102:所述负载均衡设备根据所述IP包的包头确定所述IP包的目的IP地址为所述负载均衡设备的虚拟IP地址;步骤S103:所述负载均衡设备从所述IP包获取能唯一标识客户端的地址信息,并根据所述地址信息获取所述客户端的唯一标识信息;步骤S104:所述负载均衡设备在预设的标识信息与真实服务器的MAC地址的对应关系中查找所述客户端的唯一标识信息,在查找到所述唯一标识信息的情况下,获取与所述唯一标识信息对应的真实服务器的MAC地址,其中,所述对应关系中记录的所述真实服务器与所述负载均衡设备在同一个集群中;步骤S105:所述负载均衡设备将所述IP包的目的MAC地址修改为所述对应的真实服务器的MAC地址,并发送修改后的IP包;步骤S106:所述对应的真实服务器接收并解析所述修改后的IP包,并对解析得到的数据进行响应,得到响应数据;步骤S107:所述对应的真实服务器封装所述响应数据,得到并发送响应IP包,其中,所述响应IP包的目的IP地址为所述修改后的IP包的源IP地址,所述响应IP包的源IP地址为所述对应的真实服务器的虚拟IP地址。方案2、根据方案1所述的方法,在步骤S104中,在从所述对应关系中没有查找到所述客户端的唯一标识信息的情况下,所述方法还包括:步骤S105’:所述负载均衡设备根据负载均衡算法为所述客户端分配所述集群内的一个真实服务器,将所述客户端的唯一标识信息与分配的所述真实服务器的MAC地址记录到所述对应关系中,然后将所述IP包的目的MAC地址修改为所述根据负载均衡算法获取的真实服务器的MAC地址,并发送修改后的IP包,执行步骤S106。方案3、根据方案2所述的方法,所述负载均衡设备根据负载均衡算法为所述客户端分配所述集群内的一个真实服务器,包括:查询所述集群内的多个真实服务器的可连接数,根据所述负载均衡算法从可连接数大于或等于1的真实服务器中为所述客户端分配所述目的服务器;并将所述目的服务器的可连接数减一。方案4、根据方案1至3任一项所述的方法,在查找到所述唯一标识信息的情况下,在步骤S105之前,所述方法还包括:步骤S108:所述负载均衡设备判断所述对应的真实服务器的状态是否发生变化,在所述对应的真实服务器的状态没有发生变化的情况下,执行步骤S105。方案5、根据方案4所述的方法,在所述对应的真实服务器的状态发生变化的情况下,所述方法还包括:步骤S109:所述负载均衡设备判断所述对应的真实服务器的状态是否为结束状态,若否,执行步骤S110,否则,执行步骤S111;步骤S110:所述负载均衡设备更新所述对应的真实服务器的状态,执行步骤S105;步骤S111:所述负载均衡设备删除所述对应关系中记录的与所述客户端的唯一标识信息匹配的记录。方案6、根据方案5所述的方法,在所述删除所述对应关系中记录的与所述客户端的唯一标识信息匹配的记录之后,所述方法还包括:将所述对应的真实服务器的可连接数加一。方案7、根据方案1至6任一项所述的方法,在步骤S101之前,所述方法还包括:步骤S201:所述负载均衡设备启动端口服务;步骤S202:所述负载均衡设备初始化所述集群内的真实服务器的可连接数,初始化所述对应关系。方案8、根据方案1至7任一项所述的方法,所述方法还包括:步骤S301:所述负载均衡设备监听端口;步骤S302:所述负载均衡设备接收所述集群内的真实服务器发送的集群信息,所述集群信息至少包括真实服务器的真实IP地址、MAC地址、可连接数和真实服务器的状态,并根据所述集群信息对所述集群内的各个真实服务器的可连接数及状态进行同步。方案9、根据方案1至8任一项所述的方法,所述方法还包括:步骤S401:所述负载均衡设备判断所述对应关系中的各项记录是否超时,并删除所述对应关系中已超时的记录。本专利技术的另一方面提供一种负载均衡设备:方案10、应用于包含一个负载均衡设备和多个真实服务器的集群,其中,所述集群中的所有负载均衡设备和真实服务器的虚拟IP地址相同;所述设备包括:接收模块,用于接收IP包,并从所述IP包获取所述IP包的包头;判断模块,用于根据所述IP包的包头确定所述IP包的目的IP地址为所述负载均衡设备的虚拟IP地址;获取模块,用于从所述IP包获取能唯一标识客户端的地址信息,并根据所述地址信息获取所述客户端的唯一标识信息;负载均衡模块,用于在预设的标识信息与真实服务器的MAC地址的对应关系中查找所述客户端的唯一标识信息,在查找到所述唯一标识信息的情况下,获取与所述唯一标识信息对应的真实服务器的MAC地址,将所述IP包的目的MAC地址修改为所述对应的真实服务器的MAC地址,得到修改后的IP包;其中,所述对应关系中记录的所述真实服务器与所述负载均衡设备在同一个集群中;发送模块,用于发送所述负载均衡模块得到的修改后的IP包。方案11、根据权利要求10所述的设备,所述负载均衡模块还用于:在从所述对应关系中没有查找到所述客户端的唯一标识信息的情况下,根据负载均衡算法为所述客户端分配所述集群内的一个真实服务器,将所述客户端的唯一标识信息与分配的所述真实服务器的MAC地址记录到所述对应关系中,将所述IP包的目的MAC地址修改为所述根据负载均衡算法获取的真实服务器的MAC地址,并得到修改后的IP包。方案12、根据权利要求11所述的设备,所述负载均衡模块根据负载均衡算法为所述客户端分配所述集群内的一个真实服务器,包括:查询所述集群内的多个真实服务器的可连接数,根据所述负载均衡算法从可连接数大于或等于1的真实服务器中为所述客户端分配所述目的服务器;并将所述目的服务器的可连接数减一。方案13、根据方案10至12任一项所述的设备,所述负载均衡模块还用于:在查找到所述唯一标识信息的情况下,判断所述对应的真实服务器的状态是否发生变化,在所述对应的真实服务器的状态没有发生变化的情况下,执行将所述IP包的目的MAC地址修改为所述对应的真实服务器的MAC地址的操作。方案14、根据方案13所述的设备,所述负载均衡模块还用于:在判断所述对应的真实服务器的状态发生变化的情况下,判断所述对应的真实服务器的状态是否为本文档来自技高网...
一种集群内负载均衡方法、设备和系统

【技术保护点】
一种集群内负载均衡方法,应用于包含一个负载均衡设备和多个真实服务器的集群,其中,所述集群中的所有负载均衡设备和真实服务器的虚拟IP地址相同;其特征在于,所述方法包括:步骤S101:所述负载均衡设备接收IP包,并从所述IP包获取所述IP包的包头;步骤S102:所述负载均衡设备根据所述IP包的包头确定所述IP包的目的IP地址为所述负载均衡设备的虚拟IP地址;步骤S103:所述负载均衡设备从所述IP包获取能唯一标识客户端的地址信息,并根据所述地址信息获取所述客户端的唯一标识信息;步骤S104:所述负载均衡设备在预设的标识信息与真实服务器的MAC地址的对应关系中查找所述客户端的唯一标识信息,在查找到所述唯一标识信息的情况下,获取与所述唯一标识信息对应的真实服务器的MAC地址,其中,所述对应关系中记录的所述真实服务器与所述负载均衡设备在同一个集群中;步骤S105:所述负载均衡设备将所述IP包的目的MAC地址修改为所述对应的真实服务器的MAC地址,并发送修改后的IP包;步骤S106:所述对应的真实服务器接收并解析所述修改后的IP包,并对解析得到的数据进行响应,得到响应数据;步骤S107:所述对应的真实服务器封装所述响应数据,得到并发送响应IP包,其中,所述响应IP包的目的IP地址为所述修改后的IP包的源IP地址,所述响应IP包的源IP地址为所述对应的真实服务器的虚拟IP地址。...

【技术特征摘要】
1.一种集群内负载均衡方法,应用于包含一个负载均衡设备和多个真实服务器的集群,其中,所述集群中的所有负载均衡设备和真实服务器的虚拟IP地址相同;其特征在于,所述方法包括:步骤S101:所述负载均衡设备接收IP包,并从所述IP包获取所述IP包的包头;步骤S102:所述负载均衡设备根据所述IP包的包头确定所述IP包的目的IP地址为所述负载均衡设备的虚拟IP地址;步骤S103:所述负载均衡设备从所述IP包获取能唯一标识客户端的地址信息,并根据所述地址信息获取所述客户端的唯一标识信息;步骤S104:所述负载均衡设备在预设的标识信息与真实服务器的MAC地址的对应关系中查找所述客户端的唯一标识信息,在查找到所述唯一标识信息的情况下,获取与所述唯一标识信息对应的真实服务器的MAC地址,其中,所述对应关系中记录的所述真实服务器与所述负载均衡设备在同一个集群中;步骤S105:所述负载均衡设备将所述IP包的目的MAC地址修改为所述对应的真实服务器的MAC地址,并发送修改后的IP包;步骤S106:所述对应的真实服务器接收并解析所述修改后的IP包,并对解析得到的数据进行响应,得到响应数据;步骤S107:所述对应的真实服务器封装所述响应数据,得到并发送响应IP包,其中,所述响应IP包的目的IP地址为所述修改后的IP包的源IP地址,所述响应IP包的源IP地址为所述对应的真实服务器的虚拟IP地址。2.根据权利要求1所述的方法,其特征在于,在步骤S104中,在从所述对应关系中没有查找到所述客户端的唯一标识信息的情况下,所述方法还包括:步骤S105’:所述负载均衡设备根据负载均衡算法为所述客户端分配所述集群内的一个真实服务器,将所述客户端的唯一标识信息与分配的所述真实服务器的MAC地址记录到所述对应关系中,然后将所述IP包的目的MAC地址修改为所述根据负载均衡算法获取的真实服务器的MAC地址,并发送修改后的IP包,执行步骤S106。3.根据权利要求2所述的方法,其特征在于,所述负载均衡设备根据负载均衡算法为所述客户端分配所述集群内的一个真实服务器,包括:查询所述集群内的多个真实服务器的可连接数,根据所述负载均衡算法从可连接数大于或等于1的真实服务器中为所述客户端分配所述目的服务器;并将所述目的服务器的可连接数减一。4.根据权利要求1至3任一项所述的方法,其特征在于,在查找到所述唯一标识信息的情况下,在步骤S105之前,所述方法还包括:步骤S108:所述负载均衡设备判断所述对应的真实服务器的状态是否发生变化,在所述对应的真实服务器的状态没有发生变化的情况下,执行步骤S105。5.根据权利要求4所述的方法,其特征在于,在所述对应的真实服务器的状态发生变化的情况下,所述方法还包括:步骤S109:所述负载均衡设备判断所述对应的真实服务器的状态是否为结束状态,若否,执行步骤S110,否则,执行步骤S111;步骤S110:所述负载均衡设备更新所述对应的真实服务器的状态,执行步骤S105;步骤S111:所述负载均衡设备删除所述对应关系中记录的与所述客户端的唯一标识信息匹配的记录。6.根据权利要求5所述的方法,其特征在于,在所述删除所述对应关系中记录的与所述客户端的唯一标...

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

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

1