在一组服务器前有一个LVS主机,用户通过Virtual IP Address(即LVS主机的外部地址)连结服务时,请求到达LVS主机,LVS主机以负载平衡方法从一组真实服务器选出一个,将目标地址 Virtual IP Address重新指向内部实际提供服务服务器的地址。同时,LVS主机记录这个连接,当这个连接的真实服务器的响应经过LVS主机时,LVS主机将来源地址和来源端口改?Virtual IP Address和相应的埠,再把响应发给用户。当连接终止或逾时,LVS主机将这个连接从纪录中删除。这样,用户所看到的只是在Virtual IP Address 上提供的服务。
IP Tunneling 虚拟主机 Virtual Server via IP Tunneling (VS/TUN)
VS/NAT的优点是服务器可以运行任何支持TCP/IP的操作系统,它只需要一个IP地址配置在LVS主机上,服务器组可以用私有的IP地址。缺点是它的扩充能力有限,当服务器结点数目升到20时,LVS主机本身有可能成为系统的新瓶颈,因为在VS/NAT中请求和响应封包都需要通过负载LVS主机。在Pentium 166主机上测得重写封包的平均延时为60us,假设TCP封包的平均长度为536 Bytes,则LVS主机的最大吞吐量为8.93 MBytes/s。再假设每台服务器的吞吐量为600KBytes/s,这样一个LVS主机可以带动16台服务器。
* Virtual Server via IP Tunneling
在VS/TUN的集群系统中,负载LVS主机只将请求分配到不同的实际服务器,实际服务器将应答的资料直接返回给用户。这样,负载LVS主机就可以处理巨量的请求,而不会成为系统的瓶颈。即使负载LVS主机只有100Mbps的全双工网卡,虚拟服务器的最大吞吐量可以达到几Gbps。所以, VS/TUN 可以极大地增加负载LVS主机分配的服务器数量,它可以用来构建高性能超级服务器。VS/TUN技术对服务器的要求是所有的服务器必须支持"IP Tunneling"或者"IP Encapsulation"协议。目前,VS/TUN 的后端服务器主要运行Linux操作系统。因为"IP Tunneling"正成为各个操作系统的标准协议,所以VS/TUN也会适用运行其它操作系统的后端服务器。
* Virtual Server via Direct Routing