在分析VS/NAT的缺点和网络服务的非对称性的基础上,我们提出了VS/TUN和直接通过路由实现虚拟服务器的方法VS/DR,他们可以极大的提高系统的伸缩性。
IP负载均衡:四层负载是基于IP+端口的负载均衡,主要代表是LVS(Linux Virtual Server)。
LVS工作原理:LVS的IP负载均衡技术是通过IPVS模块实现的,IPVS模块工作在内核空间。
LVS的工作模式
1.NAT模式
通过修改IP报文转发,集群局限在局域网内。通过网络地址转换,调度器重写请求报文的目标地址,根据预设的调度算法,将请求分派给后端的真实服务器;真实服务器的响应报文通过调度器时,报文的源地址被重写,再返回给客户,完成整个负载调度过程。
2.TUN模式
通过再封装一层IP报文转发,集群可在公网上。采用NAT技术时,由于请求和响应报文都必须经过调度器地址重写,当客户请求越来越多时,调度器的处理能力将成为瓶颈。为了解决这个问题,调度器把请求报文通过IP隧道转发至真实服务器,而真实服务器将响应直接返回给客户,所以调度器只处理请求报文。由于一般网络服务应答比请求报文大许多,采用 VS/TUN技术后,集群系统的最大吞吐量可以提高10倍。
3.DR模式
通过 MAC 地址改写机制实现转发,集群局限于局域网内,需要设置lo接口的VIP不能响应本地网络内的arp请求。通过改写请求报文的MAC地址,将请求发送到真实服务器,而真实服务器将响应直接返回给客户。同VS/TUN技术一样,VS/DR技术可极大地提高集群系统的伸缩性。这种方法没有IP隧道的开销,对集群中的真实服务器也没有必须支持IP隧道协议的要求,但是要求调度器与真实服务器都有一块网卡连在同一物理网段上。
西部数码负载均衡EasySLB服务,在多台云主机间实现应用程序流量的自动分配。可实现故障自动切换,提高业务可用性,并提高资源利用率。业务链接 https://www.west.cn/cloudhost/slb.asp