具体的client-server通信模型以及最为常用的通信模式
实现虚拟网络服务的主要技术,指出IP负载均衡技术是在负载调度器的实现技术中效率最高的。
在已有的IP负载均衡技术中:
1)有通过网络地址转换(Network Address Translation)将一组服务器构成一个高性能的、高可用的虚拟服务器,我们称之为VS/NAT技术(Virtual Server via Network Address Translation)。
2)在分析VS/NAT的缺点和网络服务的非对称性的基础上,我们提出了通过IP隧道实现虚拟服务器的方法VS/TUN (Virtual Server via IP Tunneling)
3)通过直接路由实现虚拟服务器的方法VS/DR(Virtual Server via Direct Routing)。
它们可以极大地提高系统的伸缩性。VS/NAT、VS/TUN和VS/DR技术是LVS集群中实现的三种IP负载均衡技术。
第一种模式
VS/NAT技术(Virtual Server via Network Address Translation)
VS/DR(Virtual Server via Direct Routing)




图四
client向负载均衡服务器发送一个CIP_VIP形式的数据包,之后发到一个负载均衡服务器,被负载均衡服务器查看自己的VIP和发过来的封装成的数据包CIP_VIP去判断是否接收,。之后被具体的负载均衡服务器接收之后,就会均衡服务器中的DIP中记录的realserver中的所有的mac地址(具体的这些mac地址是之前负载均衡服务器和realserver相互交互的时候记录保存下来的mac地址)之后均衡服务器会将CIP_VIP这个从客户端收到的数据包包装一个含有realserver的mac地址的层,之后就会将这个再次的包装一层的数据包发给相应的mac地址的realserver服务器,之后的过程,之后realserver端直接根据收到的CIP_VIP 在内存中建立一个realserver里面存在的socket(这个可以在linux中使用netstat -natp)去查看现阶段的这台服务器建立的所有的scoket连接,其中由于从客户端收到了CIP_VIP 的请求,所以会建立一个CIP:PORT VIP:PORT的socket连接,之后这个服务器端包装好想要返回给客户端的数据包之后,就会直接的去根据以前建立的CIP:PORT VIP:PORT的socket连接,直接走自己身上有的PIP(public ip)直接的发送数据包到之前发送请求给这个realserver的客户端,这样的话就会避免了比如客户端下载东西对应的服务器上传东西,上传的速度就会大大的提升
具体的图中三个VIP是完全的一样的,只是realserver中的vip是不会暴露在公共下的,只是自己知道,用于到时候realserver收到的包装有mac层的数据包拆开之后,见到里面的CIP_VIP中的vip是自己内部的vip,这时这个realserver才会真正的一次收到客户端发过来的CIP_VIP数据包,----------终于完成了一次数据包的client---->server的传输,之后
返回的数据包一般直接是之前建立的CIP:PORT VIP:PORT的socket连接,直接走自己身上有的PIP(public ip)直接的发送数据包到之前发送请求给这个realserver的客户端,这样的话数据包中的很多的IO限制就会解除掉了。

第三模式:
VS/TUN (Virtual Server via IP Tunneling)
又称隧道模式
也就是由负载均衡服务器到realserver之间的传输变成了:
负载均衡服务器将CIP_VIP这个包在外包一层DIP_RIP(这个是由负载均衡服务器到realserver的一个数据包)用这个去包装之前的那个CIP_VIP,直接走隧道到realserver
之后realserver返回客户端可以走隧道返回或者走pip---->一个运营商----->client
具体的负载均衡的实现见下节----LVS
原创文章:转载请注明作者及出处!

您的资助是我最大的动力!
金额随意,欢迎来赏!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)