# LVS的DR,TUN,NAT模型推导
# 四层负载均衡
为什么传输控制层要用虚线呢?
是因为LVS到四层又没到四层,第一,LVS不会和客户端产生三次握手的,第二,四层只是偷窥一下直接扔到后面了
后面模型推导会详细讲到。
LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。
# 规定语义,语境
# LVS的NAT模型推导
图解
步骤梳理
- 客户端会发一个数据包(CIP->VIP),经过运营商网络的节点,然后来到VIP
- VIP这个LVS服务器将客户端发来的数据包(CIP->VIP)转化为(CIP->RIP),然后转发给RS
- RS收到(CIP->RIP)这个数据包,发现目标IP与自己一致则收下这个包,然后返回数据包(RIP->CIP),由于RS上配置的下一跳网关就是LVS服务器
- LVS服务器收到RS发来的数据包(RIP->CIP)进行恢复(VIP->CIP),返回给客户端
- 最终客户端接收到数据包(VIP->CIP)
特点
- 由于通讯是非对称的,一般发送的数据较少,返回的数据较多,而且入包、出包都要走LVS服务器,所以带宽成为瓶颈
- 由于要对目标IP地址进行修改,需要消耗算力
# LVS的DR模型推导
图解
步骤梳理
- 客户端会发一个数据包(CIP->VIP),经过运营商网络的节点,然后来到VIP
- VIP这个LVS服务器通过之前arp广播及RS的上线通告获取RS@MAC地址,将客户端发来的数据包(CIP->VIP)加上RS@MAC地址(MAC地址欺骗),数据包发送到RS
- RS收到(CIP->VIP)这个数据包,发现目标IP与自己一致则收下这个包,然后返回数据包(VIP->CIP),直接返回至客户端
- 最终客户端接收到数据包(VIP->CIP)
特点
- RS中要配置VIP,但是VIP要对外隐藏,对内可见
- LVS服务器与RS要在同一局域网
- 因为是基于2层的,速度快,成本低