lv概念,组成部分及ipv三大负载均衡技术

  

  • LVS

LVS概念、组成部分及IPVS三大负载均衡技术


IP层和基于内容请求分发的负载平衡调度解决方法,并在Linux内核中实现了这些方法,将一组云服务器构成一个实现可伸缩的、高可用网络服务的虚拟服务器。

Load Balancer)。负载调度器能无缝地将网络请求调度到真实服务器上,从而使得服务器集群的结构对客户是透明的,客户访问集群系统提供的网络服务就像访问一台高性能、高可用的服务器一样。客户程序不受服务器集群的影响不需作任何修改。系统的伸缩性通过在服务机群中透明地加入和删除一个节点来达到,通过检测节点或服务进程故障和正确地重置系统达到高可用性。由于我们的负载调度技术是在Linux内核中实现的,我们称之为(Linux Virtual Server)。

LVS项目已提供了一个实现可伸缩网络服务的Linux Virtual Server框架。在LVS框架中,提供了含有三种"IP负载均衡技术"的IP虚拟服务器软件"IPVS"、"基于内容请求分发的内核Layer-7交 换机KTCPVS"和"集群管理软件"。可以。



"load balancer"或者"Director",它是整个集群对外的前端机,负责将客户的请求发送到一组服务器上执行,而客户认为服务是来自一个IP地址(我们可称之为虚拟IP地址VIP)上的。


IP负载均衡技术是效率最高的。在已有的IP负载均衡技术中有通过网络地址转换(Network Address Translation)将一组服务器构成一个高性能的、高可用的虚拟服务器,我们称之为VS/NAT技术(Virtual Server via Network Address Translation),大多数商品化的IP负载均衡调度器产品都是使用此方法,如Cisco的LocalDirector、F5的Big/IP和 Alteon的ACEDirector。在分析VS/NAT的缺点和网络服务的非对称性的基础上,我们提出通过IP隧道实现虚拟服务器的方法VS/TUN (Virtual Server via IP Tunneling),和通过直接路由实现虚拟服务器的方法VS/DR(Virtual Server via Direct Routing),它们可以极大地提高系统的伸缩性。所以,IPVS软件实现了这三种IP负载均衡技术,它们的大致原理如下

"Virtual Server via Network Address Translation"的英文缩写。通过网络地址转换,,完成整个负载调度过程。在VS/NAT的方式下,Director也可以兼为一台RealServer。VS/NAT的工作原理图如下:

Web服务的报文可能有以下的源地址和目标地址:

172.1

PORT

"Virtual Server via IP Tunneling"缩写。。IP隧道技术亦称为IP封装技术(IP encapsulation)。图如下:

NAT技术时,由于请求和响应报文都必须经过调度器地址重写,当客户请求越来越多时,调度器的处理能力将成为瓶颈。为了解决这个问题,。由于一般网络服务应答比请求报文大许多,。

。这种方法没有IP隧道的开销,对集群中的真实服务器也没有必须支持IP隧道协议的要求,但是。RealServer上绑定的VIP配置在各自Non-ARP的网络设备上(如lo或tunl),Director的VIP地址对外可见,而。。VS/DR的结构图如下:

VS/NAT和VS/TUN中的一样,它的报文转发方法又有不同,。在VS/DR中,调度器根据各个服务器的负载情况,动态地选择一台服务器,,再将修改后的数据帧在与服务器组的局域网上发送。因为数据帧的MAC地址是选出的服务器,所以服务器肯定可以收到这个数据帧,从中可以获得该IP报文。当服务器发现报文的目标地址VIP是在本地的网络设备上,服务器处理这个报文,然后根据。



,当服务器结点数目升到20时,颈,因为在VS/NAT中请求和响应报文都需要通过负载调度器。

IP地址或者端口号在报文数据中传送的网络服务,需要编写相应的应用模块来转换报文数据中的IP地址或者端口号。这会带来实现的工作量,同时

VS/TUN 的集群系统中,负载调度器只将请求调度到不同的后端服务器,后端服务器将应答的数据直接返回给用户。这样,负载调度器就可以处理大量的请求,它甚至可以调度百台以上的服务器(同等规模的服务器),而它不会成为系统的瓶颈。即使负载调度器只有100Mbps的全双工网卡,整个系统的最大吞吐量可超过 1Gbps。所以,VS/TUN可以极大地增加负载调度器调度的服务器数量。

lv概念,组成部分及ipv三大负载均衡技术