博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
四层和七层负载均衡
阅读量:6972 次
发布时间:2019-06-27

本文共 1165 字,大约阅读时间需要 3 分钟。

hot3.png

ISO 七层图

简单理解四层和七层负载均衡:

  ① 所谓四层就是基于IP+端口的负载均衡;七层就是基于URL等应用层信息的负载均衡;同理,还有基于MAC地址的二层负载均衡和基于IP地址的三层负载均衡。 换句换说,二层负载均衡会通过一个虚拟MAC地址接收请求,然后再分配到真实的MAC地址;三层负载均衡会通过一个虚拟IP地址接收请求,然后再分配到真实的IP地址;四层通过虚拟IP+端口接收请求,然后再分配到真实的服务器;七层通过虚拟的URL或主机名接收请求,然后再分配到真实的服务器。

  ② 所谓的四到七层负载均衡,就是在对后台的服务器进行负载均衡时,依据四层的信息或七层的信息来决定怎么样转发流量。 比如四层的负载均衡,就是通过发布三层的IP地址(VIP),然后加四层的端口号,来决定哪些流量需要做负载均衡,对需要处理的流量进行NAT处理,转发至后台服务器,并记录下这个TCP或者UDP的流量是由哪台服务器处理的,后续这个连接的所有流量都同样转发到同一台服务器处理。七层的负载均衡,就是在四层的基础上(没有四层是绝对不可能有七层的),再考虑应用层的特征,比如同一个Web服务器的负载均衡,除了根据VIP加80端口辨别是否需要处理的流量,还可根据七层的URL、浏览器类别、语言来决定是否要进行负载均衡。举个例子,如果你的Web服务器分成两组,一组是中文语言的,一组是英文语言的,那么七层负载均衡就可以当用户来访问你的域名时,自动辨别用户语言,然后选择对应的语言服务器组进行负载均衡处理。

  ③ 负载均衡器通常称为四层交换机或七层交换机。四层交换机主要分析IP层及TCP/UDP层,实现四层流量负载均衡。七层交换机除了支持四层负载均衡以外,还有分析应用层的信息,如HTTP协议URI或Cookie信息。

  1、负载均衡分为L4 switch(四层交换),即在OSI第4层工作,就是TCP层啦。此种Load Balance不理解应用协议(如HTTP/FTP/MySQL等等)。例子:LVS,F5。

  2、另一种叫做L7 switch(七层交换),OSI的最高层,应用层。此时,该Load Balancer能理解应用协议。例子:  haproxy,MySQL Proxy。

  注意:上面的很多Load Balancer既可以做四层交换,也可以做七层交换。

 

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

 

    所谓七层负载均衡,也称为“内容交换”,也就是主要通过报文中的真正有意义的应用层内容,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器。

 

 

转载于:https://my.oschina.net/u/2470065/blog/839314

你可能感兴趣的文章
HTML的footer置于页面最底部的方法
查看>>
dedecms---一个简单酷站的构建及解析
查看>>
网上商城系统主要模块
查看>>
牧羊少年奇幻之旅读书笔记
查看>>
iOS关于md5 32位加密
查看>>
IOS 公共类-MyMBProgressUtil Progress显示
查看>>
深入浅出SQL Server中的死锁
查看>>
Repeating Decimals, ACM/ICPC World Finals 1990, UVa202
查看>>
git 添加 ,密匙
查看>>
这几日英文大汇
查看>>
360搜索(边框)
查看>>
LeetCode 283 Move Zeros
查看>>
C# 缩放图片
查看>>
python with as的用法
查看>>
hdu 1133 Buy the Ticket(Catalan)
查看>>
Qt使用gtest
查看>>
JZ-C-30
查看>>
BZOJ 5369: [Pkusc2018]最大前缀和
查看>>
[hdu6107] Typesetting
查看>>
IOS网络请求类(NSURLCollection)
查看>>