传输层 四层负载均衡可以做什么?

OSI 模型下的七层 LB 与四层 LB


由于七层负载均衡可以解析到应用层协议,所以它可以做许多的事情。

四层负载均衡主要面对的是传输层协议,理论上只能解析到udp和tcp层的协议。

 四层负载均衡与表示层的 TLS 卸载


许多负载均衡还会解析到OSI表示层当中的TLS层,四层LB可以忽略TLS/SSL,它可以原封不动的将TCP协议发到我们的上游服务当中。

但是四层负载均衡也可以在中间配置响应的证书,以及解析TLS的方法,可以将TLS/SSL剥掉,只剩下后面的TCP发给我们的上游服务。

当然客户端发来的是裸的TCP协议,我们也可以在TCP上面包一层TLS/SSL,需要在四层的LB当中配置相应的证书。

四层负载均衡与连接五元组


之前说过TCP是四元组,包括两个IP和两个端口, 这里说五元组是因为还有一个协议,如果是TCP的话可以标识一个连接。如果是UDP的话,虽然没有连接,但是可以标识一个UDP的session。

所以客户端最终和我们的服务器进行通信的时候没有四层的LB,它们是同一个连接,或者是同一个session的,但是一旦引入了四层的LB,由于它有独立的IP,所以这一定是两条连接,因为我们新引入了一个不同的IP。

三层路由器与四层负载均衡


 在家里打开的笔记本电脑,通过wifi经过运营商的线路穿过了广域网,我们想访问某个web站点,这个web站点提供了两台服务器,由于有两台服务器,那么整个web服务的可用性就会比较高,这两个服务器前就会放四层的负载均衡,这个负载均衡和服务器同在企业的IDC机房内,发过来的请求就会穿过路由器,经过广域网,最终到达企业内网当中。

在企业内网当中首先给到负载均衡,那么这是同一个连接,负载均衡将会建立新的TCP连接,选择后端某一台服务器,那么这就是第二个连接。

多层 LB


在企业的服务器端,我们可能会有多层的LB,上面说的是对外的负载均衡,但是在内部的,比如很多数据库前面加一个内部的LB。

对于外部的LB通常起到了信任边界的作用,在外层的LB之后就是企业的内网,我们通常不考虑安全问题,而在LB之外,就是我们的客户端,中间有很多中间人。

信任的边界


通常public LB要起到TLS SSL的剥离作用

UDP 负载均衡的理论依据


 四层负载均衡也可以对UDP进行反向代理,它的理论依据就是基于5元组,两个端口+两个地址,这个时候还是使用UDP协议,因此客户端和负载均衡之间的session是固定的,而负载均衡重新发给上游服务这个session也是固定的,有了这两个session之后,负载均衡就可以建立两个通道,

 客户端首先发送了一个报文,这个报文虽然是UDP报文,由于源IP和源端口,那么负载均衡器又构造出来了新的src为c,新的dest为d的报文。

猜你喜欢

转载自blog.csdn.net/qq_34556414/article/details/126833791