负载均衡:四层与七层

负载均衡建立在现在网络基础之上,提供一种廉价透明有效的方式扩展网络设备和服务器带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。负载均衡可分为七层负载与四层负载。

四层负载(目标地址与端口交换)

主要通过报文中的目标地址和端口,再加上负载均衡设备设置的服务器选择方式,决定最终的内部服务器。

以常见的TCP为例,负载均衡设备在接收到第一个来自客户端的SYN请求时,即通过上述方式选择一个最的服务器,并对报文中IP地址进行修改(修改为后端服务器IP),直接转发给譔服务器。TCP的连接建立,即3次握手是客户端和服务器直接建立的,负载均衡设备只是起到一个类似路由的转发作用。在某些部署情况下,为保证服务器回包可以正确返回给负载均衡设备,在转发报文的同时可能会对报文原来的源地址进行修改。实现四层负载均衡的软件有:

F5:硬件负载均衡器,功能很好,但是成本很高。

LVS:重量级的四层负载软件

nginx:轻量级的四层负载软件,带缓存功能,正则表达式较灵活。

haproxy:模拟四层转发,比较灵活。

相关推荐
清风-云烟20 小时前
使用redis-cli命令实现redis crud操作
java·linux·数据库·redis·spring·缓存·1024程序员节
Joeysoda1 天前
Java数据结构 (链表反转(LinkedList----Leetcode206))
java·linux·开发语言·数据结构·链表·1024程序员节
比特在路上1 天前
StackOrQueueOJ3:用栈实现队列
c语言·开发语言·数据结构·1024程序员节
0xCC说逆向3 天前
Windows图形界面(GUI)-QT-C/C++ - Qt键盘与鼠标事件处理详解
c语言·开发语言·c++·windows·qt·win32·1024程序员节
明明真系叻4 天前
2025.1.18机器学习笔记:PINN文献精读
人工智能·笔记·深度学习·机器学习·1024程序员节
0xCC说逆向5 天前
Windows图形界面(GUI)-QT-C/C++ - Qt List Widget详解与应用
c语言·开发语言·c++·windows·qt·win32·1024程序员节
明明真系叻7 天前
2025.1.12机器学习笔记:GAN文献阅读
人工智能·笔记·深度学习·机器学习·1024程序员节
比特在路上8 天前
OJ12:160. 相交链表
c语言·数据结构·算法·链表·1024程序员节
earthzhang20219 天前
《深入浅出HTTPS》读书笔记(28):DSA数字签名
开发语言·网络协议·算法·https·1024程序员节
比特在路上9 天前
初阶数据结构【栈及其接口的实现】
c语言·开发语言·数据结构·1024程序员节