网络负载均衡方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:31169132 阅读:29 留言:0更新日期:2021-12-04 13:29
本发明专利技术公开的一种网络负载均衡方法,包括以下步骤:编写eBPF负载分发源程序;将eBPF负载分发源程序编译成BPF字节码;将BPF字节码加载至负载均衡设备上的目标负载均衡网卡;目标负载均衡网卡触发已加载的eBPF负载分发逻辑,并接收来自客户端的数据包;eBPF负载分发逻辑根据数据包确定真实服务器地址信息和需要转发数据包所使用的目标网卡端口;以及eBPF负载分发逻辑通过目标网卡端口将数据包转发至真实服务器地址信息所对应的真实服务器。还公开了一种实现上述网络负载均衡方法的装置、计算机设备和存储介质。本发明专利技术很好地解决了原有软件负载均衡技术存在的性能不足问题。件负载均衡技术存在的性能不足问题。件负载均衡技术存在的性能不足问题。

【技术实现步骤摘要】
网络负载均衡方法、装置、计算机设备和存储介质


[0001]本专利技术涉及计算机
,尤其涉及一种基于eBPF技术实现的网络负载均衡方法、装置、计算机设备和存储介质。

技术介绍

[0002]在Web世界中,负载均衡(Load Balancing,简称LB)是一种网络设备的集群技术,它通过将特定的业务(网络服务、网络流量等)分担到多个网络设备上,在提高业务处理能力的同时,保证服务的高可用性。
[0003]由于负载均衡设备通常位于关键入站路径上,需要处理每个入站数据包,因而其性能对管理延迟和扩展后端服务器的数量来说特别重要。传统上,通常使用基于硬件的解决方案来完成此项任务,其通过专用加速器来减轻主CPU的负担。然而,专用加速器的价格昂贵,并且在系统部署维护升级等方面缺乏延展性和灵活性,从用户使用角度来说,较为不便。
[0004]基于软件的网络负载均衡系统对上述缺点有所改善,软件负载均衡系统拥有相对灵活的弹性架构,通常可以运行于任何云平台或大众化Linux服务器上,并且能够与特定服务器上的其他服务共存,这就允许用户在当前已部署的大批本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种网络负载均衡方法,其特征在于,包括以下步骤:编写eBPF负载分发源程序,以实现基于eBPF技术的负载分发逻辑;将所述eBPF负载分发源程序编译成BPF字节码;将编译后的BPF字节码加载至负载均衡设备上的目标负载均衡网卡;当所述目标负载均衡网卡接收到来自客户端发送的连接请求时,所述目标负载均衡网卡触发已加载的eBPF负载分发逻辑,并接收来自客户端的数据包;所述eBPF负载分发逻辑根据所述数据包确定真实服务器地址信息和需要转发所述数据包所使用的目标网卡端口;以及所述eBPF负载分发逻辑通过所述目标网卡端口将所述数据包转发至所述真实服务器地址信息所对应的真实服务器。2.如权利要求1所述的网络负载均衡方法,其特征在于,所述eBPF负载分发逻辑根据所述数据包确定真实服务器地址信息和需要转发所述数据包所使用的目标网卡端口,包括以下步骤:所述eBPF负载分发逻辑根据所述数据包的五元组信息从真实服务器节点池中选择出需要转发的真实服务器地址信息,并对所述数据包的目标IP和目标Port进行修改;以及所述eBPF负载分发逻辑以真实服务器地址信息为主键对路由表进行查询,以查找出需要转发所述数据包所使用的目标网卡端口。3.如权利要求1所述的网络负载均衡方法,其特征在于,还包括以下步骤:当真实服务器接收到所述数据包产生响应时,接收所述真实服务器采用NAT模式返回的响应内容,并将所述响应内容转发至客户端。4.如权利要求1所述的网络负载均衡方法,其特征在于,所述eBPF负载分发源程序通过BCC工具或C语言进行编写。5.如权利要求1所述的网络负载均衡方法,其特征在于,所述eBPF负载分发源程序通过Clang工具编译成BPF字节码。6.如权利要求1...

【专利技术属性】
技术研发人员:贺红杰陈磊掌晓愚
申请(专利权)人:上海格尔安全科技有限公司
类型:发明
国别省市:

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

1