运维 | 四层和七层负载均衡介绍

关注: CodingTechWork

负载均衡

负载均衡介绍

概念

  1. 负载均衡是建立在现有的网络结构之上,提供一种廉价且透明的方式进行网络设备和服务器带宽的扩展,从而增加吞吐量,加强应用服务的数据处理能力,有效提高网络的灵活性和可用性。
  2. 负载均衡重点在于"均",由原来的单个节点承接流量,变成多个节点分担流量,减少请求响应时间,提高应用程序的可用性和可伸缩性。

分类

根据采用的设备对象区分
  1. 软件负载均衡
  2. 硬件负载均衡
根据OSI模型的位置区分
二层负载均衡(mac地址)

数据链路层,使用虚拟mac地址方式,外部请求流量经过虚拟mac地址,负载均衡收到流量请求后分配后端实际的mac地址进行响应。

三层负载均衡(ip地址)

网络层,使用虚拟ip地址方式,外部请求流量经过虚拟ip地址,负载均衡收到流量请求后分配后端实际的ip地址进行响应。

四层负载均衡(tcp)

传输层,使用ip+port接收外部流量请求,转发到对应的机器上。

七层负载均衡(http)

应用层,使用虚拟的url或ip地址接收外部流量请求,转发到对应的处理服务器。

协议分层

常用分层

OSI模型分层

  1. 应用层:对软件提供接口以使程序能使用网络服务,如事务处理程序、文件传送协议和网络管理等。(HTTP、Telnet、FTP、SMTP)
  2. 表示层:程序和网络之间的翻译官,管理数据的解密加密数据转换、格式化和文本压缩。(JPEG、ASCII、GIF、DES、MPEG)
  3. 会话层:负责在网络中的两节点之间建立和维持通信,以及提供交互会话的管理功能。(RPC、SQL、NFS)
  4. 传输层:提供建立、维护和拆除传送连接的功能;选择网络层提供最合适的服务;在系统之间提供可靠的透明的数据传送,提供端到端的错误恢复和流量控制。(TCP、UDP、SPX)
  5. 网络层:将网络地址(ip地址)翻译成对应物理地址(网卡地址),并决定如何将数据从发送方路由到接收方。(IP、ICMP、IGMP、IPX、ARP、RARP)
  6. 数据链路层:物理地址寻址、数据的成帧、流量控制、数据的检错、重发。(IEEE 802.3/.2、HDLC、PPP、ATM)
  7. 物理层:物理连网媒介,如电缆连线连接器。(RS232、V.35、RJ-45、FDDI)

四层负载均衡

介绍

  1. 四层负载均衡是基于ip+port的负载均衡。
  2. 四层是基于三层负载均衡,发布三层的ip地址(虚拟ip),再加上四层的端口号,从而决定哪些流量需要做负载均衡。
  3. 四层负载均衡器也称为四层交换机,分析IP层及TCP/UDP层,但是无法解析应用层协议。

原理

  1. 通过ip+port决定负载均衡的去向。
  2. 对流量请求进行NAT处理,转发至后台服务器。
  3. 记录tcp、udp流量分别是由哪台服务器处理,后续该请求连接的流量都通过该服务器处理。

示例

  1. 外部发送tcp请求进入负载均衡设备。
  2. 负载均衡设备接收到第一个来自客户端的SYN请求,选择后台服务器,将报文中的目标IP地址进行修改(修改为转发后的后台服务器),转发到该服务器。
  3. tcp三次握手进行客户端和服务器的连接。

产品

  1. F5:硬件负载均衡器,成本较高。
  2. Nginx:轻量级四层负载均衡器,可缓存。(nginx四层是通过upstream模块)
  3. Haproxy:模拟四层转发。
  4. lvs:重量级四层负载均衡器。

七层负载均衡

介绍

  1. 七层负载均衡器是基于虚拟的url或主机ip的负载均衡。
  2. 七层负载均衡在于内容的交换,即应用层报文内容的交换解析。
  3. 七层负载均衡器也称为七层交换机,支持四层负载均衡器的功能,且可分析应用层信息,如HTTP协议、URI、Cookie等信息。

原理

  1. 通过虚拟url或主机ip进行流量识别,根据应用层信息进行解析,决定是否需要进行负载均衡。
  2. 代理后台服务器与客户端建立连接,如nginx可代理前后端,与前端客户端tcp连接,与后端服务器建立tcp连接。

产品

  1. Nginx:基于http协议(nginx七层是通过proxy_paas)
  2. Haproxy:七层代理,会话保持、标记、路径转移等。

四层和七层的区别

  1. 分层位置:四层负载均衡在传输层及以下,七层负载均衡在应用层及以下。
  2. 性能:四层负载均衡架构无需解析报文消息内容,在网络吞吐量与处理能力上较高;七层可支持解析应用层报文消息内容,识别URL、Cookie、HTTP header等信息。
  3. 原理:四层负载均衡是基于ip+port;七层是基于虚拟的URL或主机IP等。
  4. 功能类比:四层负载均衡类似于路由器;七层类似于代理服务器。
  5. 安全性:四层负载均衡无法识别DDoS攻击;七层可防御SYN Cookie/Flood攻击
相关推荐
Leinwin2 小时前
OpenClaw 多 Agent 协作框架的并发限制与企业化规避方案痛点直击
java·运维·数据库
2401_865382502 小时前
信息化项目运维与运营的区别
运维·运营·信息化项目·政务信息化
漠北的哈士奇2 小时前
VMware Workstation导入ova文件时出现闪退但是没有报错信息
运维·vmware·虚拟机·闪退·ova
如意.7592 小时前
【Linux开发工具实战】Git、GDB与CGDB从入门到精通
linux·运维·git
运维小欣2 小时前
智能体选型实战指南
运维·人工智能
yy55273 小时前
Nginx 性能优化与监控
运维·nginx·性能优化
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ3 小时前
Linux 查询某进程文件所在路径 命令
linux·运维·服务器
05大叔5 小时前
网络基础知识 域名,JSON格式,AI基础
运维·服务器·网络
安当加密5 小时前
无需改 PAM!轻量级 RADIUS + ASP身份认证系统 实现 Linux 登录双因子认证
linux·运维·服务器
dashizhi20155 小时前
服务器共享禁止保存到本地磁盘、共享文件禁止另存为本地磁盘、移动硬盘等
运维·网络·stm32·安全·电脑