负载均衡技术综述

更新时间:2023-07-28 06:30:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

©2004 Journal of Software 软 件 学 报 负载均衡技术综述

殷玮玮1+

1 (南京大学 软件学院,江苏 南京 210093)

Overview of Load Balancing Technology

YIN Wei-Wei1+

1(Department of Software Institute, Nanjing University, Nanjing 210093, China)

+ Corresponding author: Phn +86-**-****-****, Fax +86-**-****-****, E-mail: bingyu0046@, Received 2000-00-00; Accepted 2000-00-00

Yin WW. Overview of Load Balancing Technology. Journal of Software, 2004,15(1):0000~0000.

Abstract: Load balance technology based on existing network structure, provides a cheap and efficient method for expanding bandwidth of the server and increase the server throughput, strengthens network data processing ability, increases network flexibility and availability. This paper introduces in detail the three aspects: the classification of load balancing, load balancing and load balancing algorithm, then compares the load balancing algorithm commonly used and their advantages and disadvantages, and describes the dynamic load balancing strategy and three kinds of scheduling methods.

Key words: load balancing technology; the load conditions; the static load balancing algorithm; the dynamic load balancing algorithm

摘 要: 负载均衡技术基于现有网络结构,提供了一种扩展服务器带宽和增加服务器吞吐量的廉价有效的方法,加强了网络数据处理能力,提高了网络的灵活性和可用性。本文从负载均衡技术的分类、负载均衡技术和负载均衡算法三个方面对负载均衡做了详细介绍,对常用负载均衡算法做了优缺点比较,并对动态负载均衡算法遵循的策略和三种调度方式做了阐述。

关键词: 负载均衡技术; 负载状况;静态负载均衡算法;动态负载均衡算法

中图法分类号: **** 文献标识码: A

随着大规模并行分布处理系统,特别是网络工作站机群系统的广泛应用,如何采取有效的调度策略来平衡各结点(机)的负载,从而提高整个系统资源的利用率,已成为人们的研究热点。负载均衡技术基于现有网络结构,提供了一种扩展服务器带宽和增加服务器吞吐量的廉价有效的方法,加强了网络数据处理能力,提高了网络的灵活性和可用性。负载均衡的应用,能够有效地解决网络拥塞问题,能够就近提供服务,实现地理位置无关性(异地负载均衡)。同时,这项技术还能提高服务器的响应速度,提高服务器及其它资源的利用 Supported by the **** Foundation of China under Grant No.****, **** (基金中文完整名称); the **** Foundation of China under Grant No.****, **** (基金中文完整名称)

作者简介: 殷玮玮(1992-),女,河南舞阳人,硕士,主要研究领域为分布式计算,负载均衡.

效率,避免网络关键部位出现单点失效,从而为用户提供更好的访问质量。

1 负载均衡技术的分类

1.1 软件和硬件负载均衡

从负载均衡采用的设备可将其分为软件负载均衡和硬件负载均衡。

软件负载均衡解决方案是指在一台或多台服务器相应的操作系统上安装一个或多个附加软件来实现负载均衡,如DNS(Domain Name Server) Load Balance等,它的优点是基于特定环境,配置简单,使用灵活,成本低廉,可以满足一般的负载均衡需求。软件解决方案缺点也较多,因为每台服务器上安装额外的软件运行会消耗系统不定量的资源,越是功能强大的模块,消耗得越多,所以当连接请求特别大的时候,软件本身会成为服务器工作成败的一个关键;软件可扩展性并不是很好,受到操作系统的限制;由于操作系统本身的Bug 往往会引起安全问题。

硬件负载均衡解决方案是直接在服务器和外部网络间安装负载均衡设备,这种设备我们通常称之为负载均衡器,由于专门的设备完成专门的任务,独立于操作系统,整体性能得到大幅提高,加上多样化的负载均衡策略,智能化的流量管理,可达到最佳的负载均衡需求[1]。

1.2 本地和全局负载均衡

负载均衡从其应用的地理结构上分为本地负载均衡(Local Load Balance)和全局负载均衡(Global Load Balance,也叫地域负载均衡),本地负载均衡是指对本地的服务器群做负载均衡,全局负载均衡是指对分别放置在不同的地理位置、有不同网络结构的服务器群间做负载均衡。

本地负载均衡能有效地解决数据流量过大、网络负荷过重的问题,并且不需花费昂贵开支购置性能卓越的服务器,充分利用现有设备,避免服务器单点故障造成数据流量的损失。其有灵活多样的均衡策略把数据流量合理地分配给服务器群内的服务器共同负担。即使是再给现有服务器扩充升级,也只是简单地增加一个新的服务器到服务群中,而不需改变现有网络结构、停止现有的服务。

全局负载均衡主要用于在一个多区域拥有自己服务器的站点,为了使全球用户只以一个IP 地址或域名就能访问到离自己最近的服务器,从而获得最快的访问速度;也可用于子公司分散站点分布广的大公司通过Intranet(企业内部互联网)来达到资源统一合理分配的目的。

1.3 静态和动态负载均衡

负载均衡包括静态负载平衡和动态负载平衡。只是利用系统负载的平均信息,而忽视系统当前的负载状况的方法被称为静态负载均衡;根据系统当前的负载状况来调整任务划分的方法被称为动态负载均衡[2]。此内容将在第3小节详述。

1.4 网络层次上的负载均衡

针对网络上负载过重的不同瓶颈所在,从网络的不同层次入手,我们可以采用相应的负载均衡技术来解决现有问题。随着带宽增加,数据流量不断增大,网络核心部分的数据接口将面临瓶颈问题,原有的单一线路将很难满足需求,而且线路的升级又过于昂贵甚至难以实现,这时就可以考虑采用链路聚合(Trunking)技术。

链路聚合技术(第二层负载均衡)将多条物理链路当作一条单一的聚合逻辑链路使用,网络数据流量由聚合逻辑链路中所有物理链路共同承担,由此在逻辑上增大了链路的容量,使其能满足带宽增加的需求。 2 负载均衡技术

负载均衡有两方面的含义:首先,将大量的并发访问或数据流量分担到多台节点设备上分别处理,减少用户等待响应的时间;其次,单个重负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后,将结果汇总,返回给用户,系统处理能力得到大幅度提高。负载均衡能够均衡所有的服务器和应用之间

的通信负载,根据实时响应时间进行判断,将任务交由负载最轻的服务器来处理,以实现真正的智能通信管理和最佳的服务性能。目前,负载均衡技术面临三大问题:服务器的负载状况的评价、如何获取以及获取后如何处理[3]。

2.1 负载状况

2.1.1 负载状况的评价

负载状况的评价由三类组成:静态的、统计类的和动态的。静态的由资源决定,可以数字化评价;统计类的只能作为网站扩充的依据;动态地使用探测结果来评价。

2.1.2 负载状况的获取

由于系统中各服务器根据所有服务器的负载情况来决定新的用户访问请求的取舍,因此,各服务器必须知道其他服务器的负载状况,这要求每个服务器必须将自己的当前负载及时通知其他服务器。探知负载状况的技术主要有3种:

1) 利用agent技术使用网管协议SNMP:在需要的服务器上运行设计的agent,定时通知分配器,从而得

到服务器的确切情况。

2) 第三方的软件:有一些第三方开发的软件可以完成这种工作,需要分配器有相应的接口,从而可以

调整分配的结果。

3) 自己开发软件去主动获取:最简单的集成方法就是自己去开发,由分配器去探测服务器的负载状况。

2.2 负载均衡技术

根据实现层次不同,可将负载均衡技术分为如下几类:

2.2.1 基于客户端的负载均衡

这种模式需要每个客户程序均具备一定的服务器集群知识,在客户端运行特定的程序,该程序通过定期或不定期的收集服务器群的运行参数:CPU占用情况、磁盘IO、内存等动态信息,再根据某种选择策略,找到可以提供服务的最佳服务器,将本地的应用请求发向它。整个过程对于应用程序来说是完全透明的,所有的工作都在运行时处理。比如,在Berkeley研究的smart client中,服务提供一个JavaApplet在客户方浏览器中运行,Applet向各个服务器发请求来收集服务器的负载等信息,再根据这些信息将客户的请求发到相应的服务器;当服务器没有响应时,Applet向另一个服务器转发请求,实现高可用性。

这种技术存在明显的通用性问题,因为每一个客户端都要安装这个特殊的程序;并且,为了保证应用层的透明运行,需要针对每一个应用程序加以修改,要对代码进行重新开发,工作量比较大,因而这种技术仅适用于特殊的应用场合。

2.2.2 应用服务器的负载均衡

如果将客户端的负载均衡层移植到某一个中间平台,形成三层结构,则客户端应用可以不需要做特殊的修改,透明的通过中间层应用服务器将请求均衡到相应的服务结点。比较常见的实现手段就是反向代理技术。通过反向代理服务器,可以将请求按一定的策略转发给多台服务器,或者可以直接将缓存的数据返回客户端,这样的加速模式在一定程度上可以提升客户端的访问速度,从而达到负载均衡的目的,目前广泛采用的有HTTP 反向代理技术。

然而,反向代理技术必须为每一种服务都专门开发一个反向代理服务器,这样就限制了反向代理负载均衡技术的应用范围,现在一般都用于对Web服务器的负载均衡;随着并发连接数量的增加,代理服务器本身的负载也会变得非常大,最后反向代理服务器本身会成为服务的瓶颈。

2.2.3 基于DNS域名系统的负载均衡

最早的负载均衡技术是通过DNS轮循来实现的,DNS负载均衡技术是在DNS服务器中为同一个主机名配置多个IP地址,在应答DNS查询时,DNS服务器对每个查询将以DNS文件中主机记录的IP 地址按顺序返回不同的解析结果,将客户端的访问引导到不同的机器上去,使得不同的客户端访问不同的服务器,从而达到负载均衡的目的。其中最为著名的是NCSA Web服务器。

基于DNS的方法简单易行,没有瓶颈问题,但是不能考虑距离远近,减少记录的有效期TTL易造成网络信息冗余。尽管如此,它还是一种非常有效的做法,被包括Yahoo在内的很多大型网站采用[4]。DNS负载均衡存在的缺点是DNS负载均衡采用的是简单的轮循负载算法,无法区分服务器的差异,不能做到为性能较好的服务器多分配请求。此外,为了使地址能随机分配,保证不同的客户计算机能均匀获得不同的地址,就应使刷新时间尽量短,不同地方的DNS服务器能更新对应的地址,达到随机获得地址,然而将过期时间设置得过短,将使DNS流量大增,而造成额外的网络问题。

2.2.4 高层协议的负载均衡

高层协议负载均衡技术通常是指Web内容交换或七层交换,该方法综合考虑客户请求的内容,如URL名称、类型、Cookies等,提供了一种对访问流量的高层控制方式。Web内容交换技术检查所有的HTTP报头,根据报头内的信息来执行负载均衡的决策。常见的技术实现主要是依靠HTTP协议中的重定向功能等。

Web内容交换负载均衡优点表现在如下几个方面:

1) 通过对HTTP报头的检查,可以检测出HTTP400、500和600系列的错误信息,因而能透明地将连接请

求重新定向到另一台服务器,避免应用层故障。

2) 可根据流经的数据类型(如判断数据包是图像文件、压缩文件或多媒体文件格式等),把数据流量引向

相应内容的服务器来处理,增加系统性能。

3) 能根据连接请求的类型,如是普通文本、图像等静态文档请求,还是asp.cgi等的动态文档请求,把相

应的请求引向相应的服务器来处理,提高系统的性能及安全性。

2.2.5 网络接入负载均衡

即第四层交换技术,很多硬件厂商已经将这种技术集成在他们的交换机或路由器中,已经被广泛用于构建各种服务器集群。它一般采用随机选择、根据服务器的连接数量或者响应时间进行选择的负载均衡策略来分配负载,对外提供一个一致的IP 地址,并映射为多个内部IP地址,对每次TCP和UDP连接请求,根据其访问的端口号,按照即定的策略动态选择一个内部地址,将数据包转发到该地址上,达到负载均衡的目的,例如采用NAT负载均衡技术。

NAT负载均衡是一种比较完善的负载均衡技术,起着NAT负载均衡功能的设备一般处于内部网到外部网间的网关位置,如路由器、防火墙、四层交换机、专用负载均衡器等均衡算法也较灵活,如随机选择、最少连接数及响应时间等来分配负载,NAT负载均衡可以通过软件或者硬件方式来实现。

2.2.6 传输链路负载均衡

随着高带宽应用需求不断增大时( 例如Web访问、文档传输及VOD视频、IP电话等),网络核心部位如交换机、服务器、路由器等的数据链路将产生瓶颈问题,这将会导致客户应用请求的响应时间大大增加,同时单一的访问链路不可避免的存在单点故障问题,网络的可靠性没有保障。链路聚合技术为消除传输链路上的瓶颈与不可靠因素提供了成本低廉的解决方案。

链路聚合技术是将多条线路的传输容量融合成一个单一的逻辑链路来使用,每条线路都用于网络传输,扩大了网络的传输容量,其中的某条线路断开也不会影响到网络的运行。目前广泛采用的链路聚合技术主要有以下几种:

1) IMUX反转多路复用器工作在T1/E1的比特层,可以捆绑多个同步的DS1信道来传输数据,实现负载均

衡,该技术目前已经广泛用于广域网接入。

2) IMA是另外一种基于ATM的多线路的反向多路复用技术,能够运行在使用ATM路由器的平台上。

3) 基于路由器的多重链路PPP,又称MP或MLP,是应用于使用PPP封装数据链路的路由器负载平衡技术。

MP可以将大的PPP数据包分解成小的数据段,根据一定策略再将其分发给平行的多个线路,主要用于广域网链路的备份及广域网连接带宽的扩展。

4) 基于网卡的链路聚合,自动负载均衡(Adaptive Load Balancing,简称ALB)和网卡冗余(Adapter Fault

Tolerance,简称AFT)已经在很多产品中实现,如Intel的多端口网卡,采用这些技术可以大大提高了服务器的网络吞吐量及可靠性,不过这项技术需要操作系统驱动层和网络交换机的支持。

3 常用负载均衡算法

影响负载均衡的因素有三个,分别是算法、网络拓扑以及负载均衡的粒度[5],下文对负载均衡算法进行研究。负载均衡算法包括两种:静态负载均衡和动态负载均衡。

3.1 静态负载均衡算法

静态负载均衡不管各个成员服务器运行时刻的负载情况,而只是根据预先设定的分配方案对用户的请求进行分配。轮叫调度算法(Round Robin)也是一种比较常见的静态算法,即把客户请求依次分派给各个成员服务器,例如,把第i个请求分配给服务器Sk,k = i mod N。该算法的优点是其简洁性,无需记录当前所有连接的状态,是一种无状态调度。轮叫调度算法假设所有服务器处理性能均相同,相对简单,但是不适用于服务器组中处理性能不一的情况,而且当请求服务时间变化较大时,容易导致服务器间的负载不平衡[6]。对于异构系统,也可以采用上述类似的按处理能力比例分配的处理方法[7]。

3.2 动态负载均衡算法

由于影响客户访问频率的因素很多,且难以预测,因此静态调度往往不能令人满意。此时可以根据各个服务器上任务执行实际状态的变化,随时动态地调整任务分配,使用系统状态信息进行负载调整。目前已提出了很多动态算法,如Pick-K算法,Basic LI和Aggressive LI算法[8],Pick-KX算法[9]等。

3.2.1 典型动态负载分配算法所遵循的策略

1) 启动策略

发送者启动:该算法由发送者触发负载分配。当系统中的某个处理机结点的负载W(i)>W1*,即为重载结点,称该结点为发送者。它主动寻找一个负载轻的处理机结点来接收自己的一部分负载。显然当整个系统的平均负载为轻载时,发送者能够容易找到负载的接收者,因此系统比较稳定。但当其为重载时,该系统中的大部分处理机结点的负载都处于重载,所以很难找到负载轻的处理机结点,反而使发送者结点的负载更加恶化,严重影响系统性能。

接收者启动:该算法是由接收者触发负载分配。当系统中的某个处理机结点的负载W(i)<W2*,轻载时,即称该结点为接收者。它必须主动寻找发送者,以便接收一部分负载。当整个系统的平均负载处于重载时,接收者可以容易地找到一个发送者,这种情况下,它优于发送者启动算法。接收者启动算法的主要缺点是,当系统整体负载相对较少时,过多的任务请求占用了带宽,延迟了重服务器的任务执行。

对称启动:对称启动算法是结合了接收者启动算法和发送者启动算法两者的优点。当整个系统平均负载处于轻载时,用发送者启动算法,负载重的处理机结点很容易找到可以接收其负载的处理机结点;当处于重载时,使用接收者启动算法较合适,此时负载较轻的处理机结点很容易找到负载重的处理机结点,以便接收一部分负载,这样该算法就避免了接收者和发送者启动算法的缺点。

自适应算法:自适应算法中,每台处理机结点利用查询过程中搜集的信息,将所有的处理机结点分为发送、接收和中立者(重载、轻载和适载),并用3张表(发送、接收和中立者表)[11]分别记录这些结点的处理机名。当处理机结点为发送者时,启动发送者算法,当处理机结点为接收者时,启动接收者算法。自适应算法的优点是:查询时查询结点和被查询结点均能更新自己的3张表,真实地记录系统中所有处理机结点的状态信息。每个结点可以根据自身的3张表选择合适的处理机结点发送或接收负载。显然,当系统重载时,由于处理机结点的接收者表多为空,从而抑制发送者启动算法部分,由接收者启动算法进行负载分配;系统轻载时,由于处理机结点发送者表多数为空,从而抑制接收者启动算法部分,由发送者启动算法进行负载分配。其缺点是:系统中的每台处理机结点均保存3张表,浪费存储空间。在该算法中主要的开销在于一个处理机结点对另一个处理机结点的查询。由于在表中选择处理机是随机的,而且这3个表保存的是整个系统的处理机结点的信息,所以在表中不但不能很快选择到合适的处理机结点,使系统资源不能被充分利用,而且还会干扰其它正在运行中的处理机结点,随着其结点的增多,系统的额外开销将会越来越多[10]。

2) 转移策略

每台服务器有两个控制阀值:过载标志(HWM)和轻载标志(LWM)。当服务器的负载大于HWM 时,需要将部分负载转移出去;当服务器的负载小于LWM 时,需要接收部分新的负载。负载转移不是原子动作,出现冲突时,可以选择强制执行或重新选择宿主服务器。

3) 选择策略

启动服务器选择最合适转移,最能起平衡作用的任务发送给合适的目标服务器。常用的策略有抢占式任务迁移和非抢占式的负载共享两种。

4) 收益性策略

使用不平衡因子来评估系统平衡负载是否有收益。该策略的原则是转移所产生的开销应小于所产生的响应时间收益。负载代价来自三个方面:服务器之间传播的负载信息;任务转移前的选择决策过程;任务移植的通信延迟。

5) 位置策略

位置策略用来寻找合适的服务器共享负载。常用的算法有Shortest Queue、Round-Robin、Random、K-Subset 和最近邻居等。

6) 信息策略

决定收集系统中其他服务器状态信息的时机、收集的方位和收集的信息。信息策略设计越合理,每台服务器收集的信息就越准确,信息量就越大,负载均衡效果就越好。

3.2.2 动态负载平衡调度

1) 集中式调度

在集中式调度中,所有任务的调度都是由一个调度服务器,即“负载均衡器”来完成的。“负载均衡器”负责搜集系统负载信息,并决定负载平衡调度方案。集中式调度实现比较简单,很容易获得各服务器的负载信息,可以根据NodeLoadList列表进行负载快速转移,具有控制集中,调度有力等优点。但在结点数较多的大规模并行分布系统中,由于各结点与调度服务器的通讯成为瓶颈,所以调度开销比较大[12,13,14];另一方面,在客户终端任务到达很密集的情况下,任务在“负载均衡器”上的排队等待时间就会大大增加任务处理总时间。所以,除非结点数目较少,或者在底层硬件系统中采取比如超级集线器这样的一些特殊实现措施[15],否则在分布存储的并行系统中不大采用集中式平衡调度方法[16]。

2) 分布式调度

在分布式调度中,没有负载均衡器,任务被分配给所有服务节点,通过服务器间的交互,每台服务器都有其他服务器的负载信息,即都有NodeLoadList 列表,由本服务器完成任务的调度,当负载饱和时可以将一部分任务转移到其他轻载服务器。分布式调度的最大优点在于具有良好的可扩放性,具有很强的容错能力,不会出现集中式负载均衡那样瓶颈问题。目前常用的分布式负载平衡调度方法主要有基于随机选择任务移动结点的概率调度算法[17]、根据负载变化差额而基于梯度(Gradient)模型的调度算法[18]以及自适应的近邻契约算法[19]等。但是在分布式调度算法中,每台服务器都需定时向其他服务器广播其负载信息,发送负载信息总数为:N=n(n-1),其中n 为服务器总数目,N 为系统负载更新信息数。因此,服务器之间的交互信息量N 随着服务器数目的增加而成倍增加,将会占用大量的网络资源,从而导致系统性能下降。其次,由于所有服务器都具有相同的负载信息表,所有重服务器都会把负载转移到同一台轻服务器,从而导致轻服务器负载急剧增大,很快变为重服务器,如此反复,导致任务不能及时处理。

3) 混合/层次调度

为了最小化负载均衡开销,一些负载均衡方法重在研究如何根据层次拓扑结构来构建一个层次树的问题。HBM[20]利用层次树进行多级负载均衡,根据层次化的网络结构将处理器划分为多个组(均衡域),由这些均衡域组织成一个层次结构。在层次结构中的每一层,相邻的域间进行负载均衡,并且从底层至上层,在每层执行相同的域间负载均衡过程,最后在根节点完成全局的负载均衡。混合策略(HybridLB)[21]类似于传统的层次负载均衡策略,将处理器划分为多个独立的、自治的组,并将这些组按层次结构进行组织。每层中的每个子树的根节点与其所有子节点形成一个负载均衡组,根节点充当该均衡组的头节点,控制负载均衡组内的负载均

衡过程,充当类似集中式策略中央节点的功能。第i层的根处理器参与由第i+1层(层的序号由底至上递增)的头节点控制的负载均衡过程,但第i层各节点的子节点不参与第i+1层的负载均衡过程。与HBM不同的是,HybridLB可在不同的层采用不同的策略,并最小化任务传输的距离和数量以优化负载均衡的通讯开销[22]。

论文[22]中列举以上三种调度常用算法和算法性能比较,此处不再详述。

4 总结

本文通过负载均衡技术分类方式、负载均衡技术和负载均衡算法三个方面对负载均衡做了介绍。其中,DLB(动态负载均衡)是现在应用最广泛的一种方式,随着新兴的多/众核相关技术和应用的出现及进一步发展,DLB技术的重要性日益凸显。但是现有的动态负载平衡算法不尽完善,比如有些DLB算法每次运行只选择一个符合条件( 负载最轻[23]、距离最近[24]、其他约束条件[25]) 的轻载节点作为负载迁移的目标节点,负载迁移后, 若重载节点仍过载,则再次运行算法,直至负载平衡,增加了负载平衡的时空开销和系统对任务的平均响应时间。针对此问题,论文[26]中将多个轻载节点作为负载迁移目标节点的多目标迁移机制,对DLB的性能做了改善。未来对于DLB研究主要集中在以下几个层面:在系统层次上,通过考虑拓扑结构来优化通讯可提高DLB 策略的性能[27, 28, 29, 30];在节点组层面上进行通讯开销优化:考虑到节点内的通讯速度远快于节点间通讯的事实[31],研究如何将更多的节点间通讯密集的任务划分到同一节点内可进一步优化通讯性能;在节点层面上研究细粒度划分与数据依赖性对性能的影响,设计适应于统一多核计算模型和异构体系结构的负载均衡策略来提高策略的计算性能、可扩展性和可移植性,为提高并行性引入的同步开销代价大于收益以及计算具有较大粒度并行性和依赖度的问题时,需要多少处理器节点才是恰当的等问题。

致谢 在此,感谢给予本文支持的所有著作的作者,尤其要感谢南京大学软件学院葛季栋副教授对本论文的指导。

References:

[1] Liu XH. Research on Load Balancing Technology. Science & Technology Information, 2007, No12:173~174(in Chinese with

English abstract).

[2] Sun JC, Zhang LB, Chi XB, eds. Network parallel computing and distributed programming environment. Beijing: Science press,

2003.30~36.

[3] Xue J, Li ZZ, Wang YL. The development of load balancing [J]. Mini micro computer system, 2003, 24(12):2100~2103.

[4] Xiao JB, Wang Y. Application of DNS to achieve load balancing Web cluster service [J]. Computing Systems, 2003(10):59~62.

[5] Hu ZA, Wang L. The relationship between Algorithm, network topology with scheduling frequency and dynamic load balancing

[J].Computer engineering and science,2000,22(1):104~107.

[6] Yin F. Distributed system dynamic load distribution algorithm research [J].Microcomputer information, 2009 (18): 91~93.

[7] Wang S, Xiu BX, Xiao WD. The Web server cluster load balancing algorithms [J]. Computer engineering, 2004, 40(25):78~80.

[8] Dahlin M.Interpreting Stale Load Information[C].In: Proc of the 19th Intl Conf on Distributed Computing Systems, 1999-05.

[9] Mitzenmacher M.How Useful is Old Information[C].In: Proc of the 15th Annual ACM.

[10] Mao M, Pan J. Dynamic Load Balancing Self-adapting Algorithm in Multi-Processor Systems and Its Improvements [J]. Power of

intelligence, 2002(2): 55~58.

[11] Zhu SP. A new way of dynamic load balancing algorithm design [J]. Computer engineering, 1995,16(3):26~28.

[12] Hesham El-Rewini, Theodore G Lewis, Hesham H Ali. Task scheduling. Englewood Cliffs, New Jersey: PTR Prentice Hall, 1994.

[13] Joosen W, Pollet J.The efficient management of task clusters in a dynamic load balancer. In: Proceedings of the International

Conference'94 on Parallel Distributed Systems. Hsinchu, Taiwan, Dec. 1994. 19~21.

[14] Feng MD, Yuen CK. Dynamic load balancing on a distributed system. In: Proceeding s of the 6th Symposium on Parallel and

Distributed Processing. Dallas, Texas, Oct. 1994. 26~29.

[15] Gene Eu Jan, Ming-Bo Lin. Effective load balancing on highly parallel multicomputers based on super concentrators. In:

Proceedings of the International Conference'94 on Parallel Distributed Systems. Hsinchu, Taiwan, Dec. 1994. 19~21.

[16] Chen HP, Ji YC, Chen GL.A general model of distributed dynamic load balancing scheduling [J]. Journal of software, 1998, 9(1):

25~29.

[17] Soumen Chakrabartietal. Randomized load balancing for tree-structured computation. In: Proceedings of the International

Conference '94 on Parallel Distributed Systems. Hsinchu, Taiwan, Dec. 1994. 19~21.

[18] Lin F C H, Keller R M. The gradient model load balancing method. IEEE Transactions on Software Engineering, 1987, SE-13:

32~38.

[19] Shu W, Kale L V. A dynamic scheduling strategy for the Chare-Kernei system. In: Proceedings of Supercomputing’89.Reno,

Nevada, Nov. 1989. 389~398.

[20] M H Willebeek-LeMair, eds. Strategies for dynamic load balancing on highly parallel computers [J]. IEEE T Parall Distrib, 1993,

4(9):979- 993.

[21] G B Zheng. Achieving High Performance on Extremely Large Parallel Machines: Performance Prediction and Load Balancing[D].

Urbana: UIUC, 2005.

[22] Yang JX, Tan GZ, Wang RS. Review of Parallel and distributed system dynamic load balancing strategy were [J]. Journal of

electronic, 2010, 38(5): 1122~1130.

[23] BAHIJM, CONTASSOTIVIER S, COUTURIER R. Coupling dynamic load balancing with a synchronism in iterative algorithms on

the computational grid[C].Proceedings of the 17th International Parallel and Distributed Processing Symposium. Nice, France, 2003.

[24] YANMAZE, TONGUZOK. Location dependent dynamic load balancing[C].IEEE Global Telecommunications Conference. St Louis,

USA, 2005.

[25] Wang YB, HYATTR. An improved algorithm of two choices in randomized dynamic load balancing [C].Proceedings of the Fifth

International Conference on Algorithms and Architectures for Parallel Processing . Beijing, China, 2002.

[26] Liu B, Shi F, Gao YJ, eds. Dynamic load balancing algorithm based on a multi-destination migration mechanism [J]. Journal of

Harbin engineering university, 2008, 29(8): 842~845.

[27] EAGER D, LAZOWSKA E, ZAH ORJAN J. Dynamic load sharing in homogeneous distributed systems [J].IEEE Transactions on

Software Engineering,1986, 12(5) : 662~675.

[28] T Agarwal. Strategies for Topology aware Task Mapping and for Rebalancing with Bounded Migrations [D].Urbana:UIUC,2005.

[29] P K K Loh, eds. How network topology affects dynamic load balancing[J].IEEE Par Dist Tech, 1996, 4(3):25~35.

[30] V E Taylor, eds. Balancing load versus decreasing communication: parameterizing the tradeoff [J].J Par Distr Comp, 2001, 61(5):

567~580.

[31] A Bhatelé, eds. Dynamic topology aware load balancing algorithms for molecular dynamics applications [A].In Proc.23rd ACM

ICS[C]. New York: ACM Press, 2009.110~116.

附中文参考文献:

[1] 刘学辉.关于负载均衡技术的研究.科技资讯,2007,No.12:173-174.

[2] 孙家昶,张林波,迟学彬等.网络并行计算与分布式编程环境.北京:科学出版社,2003.30-36.

[3] 薛军,李增智,王云岚.负载均衡技术的发展[J].小型微型计算机系统, 2003, 24(12):2100- 2103.

[4] 肖军弼,王宇.应用DNS实现Web集群服务的负载均衡[J].计算机系统应用, 2003(10):59- 62.

[5] 胡子昂,王立.算法、网络拓扑及调度频率与动态负载平衡的关系[J].计算机工程与科学,2000,22(1):104-107.

[6] 尹锋.分布式系统动态负载分配算法研究[J].微计算机信息,2009 (18): 91-93.

[7] 王霜,修保新,肖卫东.Web服务器集群的负载均衡算法研究[J].计算机工程与应用,2004,40(25):78-80.

[10] 毛茅,潘娟.多处理机系统中动态负载平衡自适应算法及其改进[J].电力情报, 2002(2): 55-58.

[11] 朱世平.动态负载平衡算法设计的新途径[J].计算机工程与设计,1995,16(3):26-28.

[16] 陈华平,计永昶,陈国良.分布式动态负载平衡调度的一个通用模型[J].软件学报, 1998, 9(1): 25-29.

[22] 杨际祥,谭国真,王荣生.并行与分布式计算动态负载均衡策略综述[J].电子学报, 2010, 38(5): 1122-1130.

[26] 刘滨,石峰,高玉金,等.多目标迁移机制的动态负载平衡算法[J].哈尔滨工程大学学报, 2008, 29(8): 842-845.

本文来源:https://www.bwwdw.com/article/txim.html

Top