论文部分内容阅读
随着计算机网络的不断发展,人们对计算机系统的可靠性和高可用性的要求也越来越高。很多大型网站广泛使用集群系统来提高服务性能,但是系统中仍然存在任务分配节点和任务处理节点的单点失效问题。对于一些要求不断网的应用如证券交易网络,不允许单点故障的存在,任何例外的中断都将造成不可估量的损失,服务的高可用性成为主要问题之一。
为了保持单个服务器的高可用性和可靠性,大都在服务器端配置多网卡。根据对双网卡的使用方式,可分为链路聚集技术和网络冗余技术。链路聚集技术是在服务器与网络基础设旌之间建立多条的链路来提高服务器的高可用性和服务速率。链路聚集技术使得多条物理链路在逻辑上表现成一条链路,任何一条链路的失效都不会导致服务器的不可访问。但是使用链路聚集技术需要有专用的网络驱动程序以及网络设备(如网卡、交换机等),增大了服务器对操作系统和底层硬件设备的依赖,并且链路聚集技术所使用的负载均衡算法是不对称的负载均衡算法。
网络冗余的基本方法是双网(或多网)冗余,其工作原理为:任何时刻只有一个子网处于工作状态(即主网),另一子网处于备份工作状态(即备用网),当主网络出现故障时,所有设备切换到备用网络上来,系统继续运行。计算机网络冗余需采用专用的网络热备份软件、服务器和交换机、双环以太网和智能网卡等,每个冗余设计都有针对性。容错局域网配置比较复杂,且资源利用率比较低。
为了既保持多网卡系统中容错的特性,简化系统的配置和减少对专用软硬件的依赖,又能够尽可能地通过负载均衡任务调度来提高系统运行效率,本论文采用中间件技术来屏蔽底层多网卡和管理所有的冗余数据连接。系统提供一套网络通信接口,应用通过这套通信接口把数据发送给系统,由系统统一把数据发送给目的应用。通过这种集中式数据管理和发送,系统能较好地控制向网络发送的数据量,通过平衡多个接口上的负载来提高系统的传输性能。
本论文的主要贡献有:
1)提出并设计基于多网卡的负载均衡中间件(MLBM)来支持多网卡系统。该方法可以有效地简化系统的配置,并采用同一接口向上层提供服务,可获得良好的可移植性,简化对底层网络模型和硬件的依赖;
2)研究多种负载均衡算法,包括轮询算法、热备份算法、基于网络参数的负载均衡算法和基于簇的负载均衡算法等,分析算法在不同应用背景中的性能变化,其中部分负载均衡算法能实现对等的负载均衡。设计了一种在集群环境中对称的动态负载均衡算法LBOC,通过动态改变集群的逻辑控制结构,可有效提高系统的运行性能,尽可能地避免调度节点成为系统瓶颈的问题。
3)实现面向多网卡的负载均衡中间件的原型系统,并对该系统中负载均衡算法分别进行性能测试和分析。