负载均衡?四层、七层负载均衡的区别

一、负载均衡

1、什么是负载均衡

负载均衡是一种计算机技术,用来在多个计算机(计算机集群)、网络连接、CPU、磁盘驱动器或者其他资源中分配负载,以达到最优化资源使用、最大化吞吐率、最小化响应时间、同时避免过载的目的。

负载均衡是将负载(工作任务、访问请求)进行平衡、分摊到多个操作单元上(服务器、组件)进行执行。是解决高性能,单点故障(高可用),扩展性(水平伸缩)的终极解决方案。

2、负载均衡的分类

根据负载均衡技术实现在OSI七层模型的不同层次,可以分为以下几种:

2.1 DNS负载均衡

利用域名解析实现负载均衡,在DNS服务器配置多个A记录,这些A记录对应的服务器构成集群互相减轻服务压力。大型服务器总是部分使用DNS解析,作为第一级负载均衡。

2.2 二层负载均衡(MAC)

二层负载均衡又叫链路层负载均衡,对应OSI模型的第二层,是基于MAC地址进行服务分发

2.3 三层负载均衡(IP)

三层负载均衡对应OSI模型的网络层,三层负载均衡提供一个虚拟IP对外提供服务,当请求进入负载均衡器后转发至集群中某个真实IP

2.4 四层负载均衡(TCP)

四层负载均衡对应OSI模型的传输层,由于在传输层,只有TCP/UDP协议,这两种协议中除了包含源IP、目标IP以外,还包含源端口号及目的端口号。四层负载均衡的特点是在IP负载均衡的基础上基于IP及端口号来进行负载均衡

2.5 七层负载均衡(HTTP)

对应OSI魔性的应用层,基于虚拟的URL或其他应用层信息(如浏览器类别,语言)的负载均衡。

3、负载均衡工具

市面上很多开源的负载均衡工具或者软件,基本上都是基于前面的方案实现的,大多数是工作在第七层和第四层的。应用最广泛的负载均衡软件:Nginx、LVS、HAProxy

3.1 Nginx: 七层负载均衡

Nginx是一个网页服务器,能反向代理HTTP、HTTPS、SMTP、POP3、IMAP的协议链接,以及一个负载均衡器和一个HTTP缓存

3.2 LVS:四层负载均衡

linux virtual server 也就是linux虚拟服务器。使用LVS要达到的目标是,通过LVS提供的负载均衡技术和linux操作西永实现一个高性能、高可用的服务器集群,它具有良好可靠性、可扩展性和操作性。

3.3 HAProxy: 七层负载均衡

HAProxy是一个使用C语言编写的开源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。

二、四层负载均衡、七层负载均衡的区别

原理上区别:

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

以TCP为例,负载均衡设备在接收到第一个莱斯客户端的SYN请求时,通过上述方式选择一个最佳的服务器,并对报文中目标IP地址进行修改,修改为后端服务器IP,直接转发给该服务器。TCP的连接建立,即三次握手是客户端和服务器直接建立的,负载均衡设备只是起到一个类似路由器的转发动作,在某些部署的情况下,为保证服务器回包可以正确返回给负载均衡设备,在转发保温袋饿同时还会对报文原来的源地址进行修改。

七层负载均衡,主要通过报文中的真正有意义的应用层内容,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器。

以TCP为例,负载均衡设备要根据真正的应用层内容再选择服务器,只能先代理最终的服务器和客户端建立连接后(即三次握手),才可能接收到客户端发送的真正应用层内容的报文,然后再根据该报文中的特定字段,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器。在这种情况下,负载均衡设备类似于一个代理服务器。

应用场景的需求:

七层负载均衡着重于应用广泛的HTTP协议,应用范围主要是众多的网站或者内部信息系统等基于B/S开发的系统。
四层负载均衡对应其他TCP应用,应用范围主要是基于C/S开发的ERP等系统。

七层负载均衡可以使得整个网络更加“智能化”,对客户端的请求和服务器的形影进行任何意义上的修改,极大地提高了应用系统在网络层的灵活性。但不可避免的是设备配置复杂,负载均衡压力增加,以及故障排查上的复杂性等。
安全性:七层负载均衡可以在堵在均衡设备上拦截SYN Flood攻击,设置多种策略,过滤特定报文,如SQL Injection等应用层面的攻击手段,进而提高系统整体安全性。但这要求负载均衡设备本身具有强大的抗DDos能力,否则服务器可以正常使用,但是作为中枢调度的负载均衡设备故障也会导致整个应用崩溃。

四层负载均衡效率更高、七层负载均衡更灵活。

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值