在网络优化的主流设备中,负载均衡常被称为是"四七层交换机",担当着重要使命。尽管,负载均衡设备对于很多企业IT管理人员来说已经非常熟悉,但是在具体使用过程中,例如针对四层和七层应用等技术疑问,依然会误+导部分用户并产生应用误区。
那么,四层和七层两者到底区别在哪里?在应用中如何让负载均衡设备更好地满足应用场景的需求呢?对此,国内知名应用交付厂商太一星晨给予了详细解读。
第一.技术原理上的区别。
四层负载均衡,也就是主要通过报文中的目标地址和端口,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器。
以常见的TCP为例,负载均衡设备在接收到第一个来自客户端的SYN 请求时,即通过上述方式选择一个最佳的服务器,并对报文中目标IP地址改为后端服务器IP,直接转发给该服务器。TCP的连接建立,即三次握手是客户端和服务器直接建立的,负载均衡设备只是起到一个类似路由器的转发动作。
七层负载均衡:也称为“内容交换”,主要通过报文中真正有意义的应用层内容,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器。
以常见的HTTP为例,负载均衡设备要根据真正的应用层内容再选择服务器,必须先代理实际服务器和客户端建立连接(三次握手)后,才可能接受到客户端发送的真正应用层内容的报文,然后再根据该报文中的特定字段,加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器。
在这种情况下,负载类似于一个代理服务器与前端的客户端以及后端的服务器会分别建立TCP连接。所以,从技术原理上来看,七层负载均衡明显的对负载均衡设备的要求更高,设备性能消耗也更大。
第二.应用场景的需求。
七层应用负载的优势是使整个网络更"智能"。例如访问一个网站的用户流量,可以通过七层的方式,将对图片类的请求转发到特定的图片服务器并可以使用缓存技术;将对文字类的请求转发到特定的文字服务器并可以使用压缩技术。
在技术原理上,这种方式可以对客户端的请求和服务器的响应进行任意意义上的修改,极大提升了应用系统在网络层的灵活性。很多在后台,例如Nginx或者Apache上部署的功能都前移到负载均衡设备上。
对于网络中最常见的SYN Flood攻击,七层负载则提供了更好的安全性:
1.四层模式下:这些SYN攻击都会被转发到后端的服务器上。
2.七层模式下:这些SYN攻击自然在负载均衡设备上就截止,不会影响后台服务器的正常运营。
另外负载均衡设备可以在七层层面设定多种策略,过滤特定报文,例如SQLInjection等应用层面的特定攻击手段,从应用层面进一步提高系统整体安全。
现在的7层负载均衡,主要还是着重于应用HTTP协议,所以其应用范围主要是众多的网站或者各种基于B/S开发的应用系统。 4层负载均衡则对应其他TCP/UDP应用,经常用于C/S开发的系统。
四层负载工作模式简单,负载性能高,后台服务器都必须承载相同的业务,
七层负载工作模式复杂,性能消耗高,但带来了更好的灵活度,更有效的利用资源,加速对资源的使用。
那么,对于很多用户关心的链路负载是在第几层呢?通过上面的分析答案显然已经出来了——链路当然是工作在四层模式以下啦!
好文章,需要你的鼓励
临近年底,苹果公布了2024年App Store热门应用和游戏榜单,Temu再次成为美国下载量最多的免费应用。
云基础设施市场现在已经非常庞大,很难再有大的变化。但是,因为人们可以轻松地关闭服务器、存储和网络——就像开启它们那样,预测全球云基础设施开支可能非常困难。