负载均衡方法、装置、设备及存储介质制造方法及图纸

技术编号:24254321 阅读:25 留言:0更新日期:2020-05-23 01:06
本申请公开了一种负载均衡方法、装置、设备及存储介质,属于网络技术领域。所述方法包括:通过第一网卡,接收第一请求报文,第一请求报文携带第一源地址和第一目的地址,第一源地址为客户端的地址,第一目的地址为负载均衡设备的地址;通过IPVS模块,将第一请求报文中的第一目的地址修改为第二目的地址,得到第二请求报文,第二目的地址为目标真实服务器的地址;通过BPF,将第二请求报文中的第一源地址修改为第二源地址,得到第三请求报文,第二源地址为负载均衡设备的地址。本申请利用IPVS模块实现DNAT,利用BPF实现SNAT,从而实现FullNAT转发模式,而且对SNAT的源代码的改动较少,便于升级维护。

Load balancing method, device, equipment and storage medium

【技术实现步骤摘要】
负载均衡方法、装置、设备及存储介质
本申请涉及网络
,特别涉及一种负载均衡方法、装置、设备及存储介质。
技术介绍
LVS(LinuxVirtualServer,Linux虚拟服务器)是一种基于TCP(TransmissionControlProtocol,传输控制协议)/IP(InternetProtocol,互联网协议)的负载均衡技术,其转发效率极高,具有处理百万计并发连接请求的能力。LVS的负载均衡技术应用于LVS集群中,LVS集群包括LB(LoadBalancer,负载均衡设备)和后端的多个RS(RealServer,真实服务器)。客户端在访问网络时,可以先将请求报文发送给LB,再由LB从后端的多个RS中选择一个RS作为响应请求的目标RS,将请求报文转发给目标RS,由目标RS对该请求报文进行响应,并返回响应报文。目前,LVS的负载均衡技术一般通过IPVS(IPVirtualServer,IP虚拟服务器)模块实现,IPVS模块是LVS集群的核心软件模块,它安装在LB的内核中。而且,目前的IPVS模块仅支持DNAT(Destin本文档来自技高网...

【技术保护点】
1.一种负载均衡方法,其特征在于,应用于负载均衡设备,所述负载均衡设备配置有第一网卡、第二网卡、国际互连协议虚拟服务器IPVS模块和柏克莱封包过滤器BPF,所述方法包括:/n通过所述第一网卡,接收客户端发送的第一请求报文,所述第一请求报文携带第一源地址和第一目的地址,所述第一源地址为所述客户端的地址,所述第一目的地址为所述负载均衡设备的地址;/n通过所述IPVS模块,将所述第一请求报文中的所述第一目的地址修改为第二目的地址,得到第二请求报文,所述第二目的地址为目标真实服务器的地址,所述目标真实服务器是从多个真实服务器中选择得到;/n通过所述BPF,将所述第二请求报文中的所述第一源地址修改为第二...

【技术特征摘要】
1.一种负载均衡方法,其特征在于,应用于负载均衡设备,所述负载均衡设备配置有第一网卡、第二网卡、国际互连协议虚拟服务器IPVS模块和柏克莱封包过滤器BPF,所述方法包括:
通过所述第一网卡,接收客户端发送的第一请求报文,所述第一请求报文携带第一源地址和第一目的地址,所述第一源地址为所述客户端的地址,所述第一目的地址为所述负载均衡设备的地址;
通过所述IPVS模块,将所述第一请求报文中的所述第一目的地址修改为第二目的地址,得到第二请求报文,所述第二目的地址为目标真实服务器的地址,所述目标真实服务器是从多个真实服务器中选择得到;
通过所述BPF,将所述第二请求报文中的所述第一源地址修改为第二源地址,得到第三请求报文,所述第二源地址为所述负载均衡设备的地址;
通过所述第二网卡,将所述第三请求报文发送给所述目标真实服务器。


2.根据权利要求1所述的方法,其特征在于,所述通过所述IPVS模块,将所述第一请求报文中的所述第一目的地址修改为第二目的地址,包括:
通过所述IPVS模块,从IPVS列表中获取第一请求报文元组对应的第二请求报文元组,根据所述第二请求报文元组,将所述第一请求报文中的所述第一目的地址修改为第二目的地址;
其中,所述第一请求报文元组包括所述第一源地址和所述第一目的地址,所述第二请求报文元组包括所述第一源地址和所述第二目的地址,所述IPVS列表中存储有不同的请求报文元组以及每个请求报文元组对应的目的地址转换后的请求报文元组。


3.根据权利要求1所述的方法,其特征在于,所述第一目的地址包括参考IP地址和参考端口,所述参考IP地址为所述负载均衡设备的至少一个IP地址中的任一个,所述参考端口为所述负载均衡设备的至少一个端口中的任一个;
所述通过所述IPVS模块,将所述第一请求报文中的所述第一目的地址修改为第二目的地址之前,还包括:
若通过所述IPVS模块,确定所述参考IP地址和所述参考端口满足预设规则,则触发执行通过所述IPVS模块,将所述第一请求报文中的所述第一目的地址修改为第二目的地址的步骤。


4.根据权利要求1所述的方法,其特征在于,所述通过所述BPF,将所述第二请求报文中的所述第一源地址修改为第二源地址,包括:
通过所述BPF,从BPF列表中获取第二请求报文元组对应的第三请求报文元组,根据所述第三请求报文元组,将所述第二请求报文中的所述第一源地址修改为所述第二源地址;
其中,所述第二请求报文元组包括所述第一源地址和所述第二目的地址,所述第三请求报文元组包括所述第二源地址和所述第二目的地址,所述BPF列表中存储有不同的请求报文元组以及每个请求报文元组对应的源地址转换后的请求报文元组。


5.根据权利要求4所述的方法,其特征在于,所述通过所述BPF,从BPF列表中获取第二请求报文元组对应的第三请求报文元组之前,还包括:
若所述第一请求报文为所述客户端在建立网络连接时首次发送的请求报文,则通过所述IPVS模块,获取所述负载均衡设备的地址;
通过所述IPVS模块,将所...

【专利技术属性】
技术研发人员:范建明金峰
申请(专利权)人:腾讯云计算北京有限责任公司
类型:发明
国别省市:北京;11

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

1