在有线分布式系统中,负载均衡是指将网络的外部服务请求均匀分配到多台后端的服务器上,从而提高网络服务质量的方法。
由于任务到达的随机性,以及各处理节点处理能力上的差异,当分布式系统运行一段时间后,某些节点分配的任务还很多(称之为超载),而另一些节点却是空闲的(称之为轻载)。一方面,使超载节点上的任务尽可能快地完成是当务之急;另一方面,某些节点轻载是一种浪费。如何避免这种忙与空闲并存情况的发生,从而有效地提高系统的资源利用率,减少任务的平均响应时间。这是负载均衡需要解决的问题。
有线分布式系统中的负载均衡方法操作的对象是任务。收集负载信息,进行相关算法决策,对分配给各节点的任务进行重新调度如进程迁移或任务迁移,是负载均衡的基本途径。负载均衡问题是对任务的优化组合问题。
负载均衡技术应用到无线系统下具有新的特点。无线局域网中的负载均衡面临比有线网络更多的困难。随着无线局域网中扩展服务集中的终端的移动和无线信道的时变,各个接入点(AP)上的负载出现差异。负载均衡的作用就是平衡各个AP的差异,以达到最大化的网络资源利用。负载均衡是无线资源管理的重点,IEEE的802.11工作组的TGv任务组,专门负责解决无线局域网的负载均衡问题。
1 有线分布式系统中的负载均衡
1.1有线分布式系统负载均衡的技术难点
负载均衡需要解决的核心问题有两个:一是何时进行任务迁移,另一个是怎样进行任务迁移。要实现负载均衡,难点在以下几个方面:
对系统的负载情况进行准确的评价。
负载均衡要求进行某些额外附加处理,如系统内各节点负载信息的收集、存储、决策、任务迁移等。这些额外处理带来额外的网络和主机开销,是对系统性能的损害。
要避免负载抖动,即被迁移的任务在各节点之间被不断迁移而得不到执行。
解决系统各节点的硬件或软件的配置差异问题。
当前有线网络的负载均衡集中在Web服务器、邮件服务器电子商务中的业务服务器等环境下的应用问题。
1.2有线分布式系统中负载均衡算法的分类
负载均衡有许多种分类方法,但是从整体上可以按照与系统的负载状态是否相关,分为状态无关均衡和状态相关均衡两大类。前者又叫静态均衡,后者又叫动态均衡。静态负载均衡是机械式的,按固定的模式或规则来分配客户请求,而不管服务器的运行情况。动态负载均衡则带有智能化的特征,能够根据各台服务器运行时负载情况来恰当地分配请求。
状态无关均衡,就是根据以往的经验或系统本身信息的收集,把外来的任务分配给各个节点,或对某些节点上的任务进行重新分配。由于这样的均衡决策是与系统当前状态无关的,带有一定的盲目性,因而,决策的准确性很低,通用性差,有时甚至会造成与预期完全相反的结果,加剧不均衡的程度,造成系统性能的恶化。
状态相关均衡,其决策取决于系统当前的状态,也就是说,系统可以根据当前的负载分布情况,对各个节点上的任务进行动态的调整,使已经分配给超载节点上的任务,通过通信设备,迁移到轻载的节点上去,从而提高系统的资源利用率,减小任务的平均响应时间。动态均衡法通常包含以下3个方面:
(1)各个节点间负载信息的收集,方法通常有3种:周期性收集策略、命令驱动策略、状态变化驱动策略。
(2)根据所收集的负载信息进行决策:节点根据收集的负载信息,确定需要进行负载迁移的节点对。发生负载迁移的节点,根据实际需要,可以有一对或多对。
(3)实现任务在各节点之间的迁移:在负载均衡系统中的任务迁移可分抢先任务迁移和非抢先任务迁移两种。
2 无线局域网中的负载均衡
无线局域网中的负载均衡与有线分布式系统中的负载均衡不同,表现在负载均衡控制的对象和控制方式上。由于无线终端的移动性和无线信道的时变性,无线局域网中的负载均衡面临的情况更加复杂。
2.1无线局域网的特点
无线局域网(WLAN)是指应用无线通信技术将计算机设备互联起来,构成的可以互相通信和实现资源共享的网络体系。《ANSI/IEEEStd802.11,1999Edition》[1]是IEEE 802.11无线局域网标准工作组制订的物理层和媒体访问控制协议标准,便于无线局域网运营商及无线设备制造商建立互操作网络设备。物理层定义了数据传输的信号特征和调制方式,媒体访问控制层可视为由一系列可完成诸如信息交换、功率控制、关联管理、同步管理和过程管理的服务组成。
在无线局域网中有两种角色:AP和终端(STA)。AP作为固定基础设备,通过有线分布式系统互连。STA作为移动终端,接受AP提供的接入服务。
WLAN共有两种工作组织形式,独立基本服务集(IBSS)和基本服务集(BSS)[2]。IBSS表示的就是Adhoc方式的终端独立组织成一个网络单元,在这种方式下没有固定的基础设施,所有的终端直接与其他终端互连,网络组织非常独立。BSS表示的就是基础模式,至少一个AP作为网络的管理设备,管理所有的STA,向STA提供接入和传输服务。为了扩展无线局域网的覆盖范围,增加终端的移动性,多个BSS可以联合组成扩展服务集(ESS)。扩展服务集通过扩展服务集识别号(ESSID)来区分,AP通过基本服务集识别号(BSSID)来区分。多个AP工作在不同的无线信道,通过有线分布式系统互连。终端可以在ESS所覆盖的范围内自由移动,并随着移动从ESS内的一个AP切换到另一个AP。
终端通过扫描信道,获取所处WLAN环境中扩展服务集和基本服务集信息,并选择加入一个合适的基本服务集。WLAN中负载均衡就是由多个AP为多个移动终端提供接入服务的系统,每一个AP通过利用网络信息进行站点管理,目的是充分利用网络现有资源,减少网络阻塞。
位于中心点的AP,经过一段时间的运行,连接的终端的个数要多于四周AP的终端个数,承担的业务也已经饱和,此时连接到中心点AP的终端的业务的服务质量(QoS)已经不能保证。而外围的AP业务还不饱和,网络中出现负载差异。负载均衡就是要解决这种差异,将中心点AP的某些业务转移到外围的AP上,以提高网络的服务容量和中心点AP的业务质量。
STA在进入网络的时候必须选择一个AP作为连接对象,这就是终端接入过程,接入过程要经过扫描、认证、连接等步骤。一般而言,在ESS中,终端在扫描过程中会扫描到多个AP的信息,终端选择AP的条件是扫描到的AP的信号强度。由于无线局域网中STA的移动特性和无线信道的时变特性,STA在某些情况下会发生从一个BSS切换到另一个BSS的情况。这种情况就是无线局域网中的切换。终端切换带来的问题是切换时延,甚至上层业务的中断。切换还会带来的问题是“乒乓效应”。即STA不停地在两个或多个AP之间切换,STA就像乒乓球一样。这样会造成负载抖动,对网络资源造成极大的损耗。
2.2无线局域网负载均衡的技术难点
当前的IEEE802.11标准并没有对负载均衡方面做出描述和规定,网络负载的分布完全靠终端的业务自由和随意地切换决定。没有负载均衡的系统的缺点表现在以下几个方面:
(1)无线网络的效率和性能会降低
扩展服务集作为一个整体向终端提供服务。通常无线网络中的热点出现后,某AP的负载可能超过限制,大量的业务和用户竞争该AP的资源,造成该AP上的业务的QoS发生恶化,并可能长期处于这种状态。如果其邻接AP的负载水平却相对较低,没有负载均衡调整的话,整个网络将处于一种非稳定状态,无线网络的效率和性能都会因此而受到影响。
(2)增加网络拥塞的风险
没有负载均衡控制的网络,终端的切换是自由和盲目的,随着热点的出现,大量的终端会涌向热点AP,离开原有的AP。而终端向目标AP切换的结果是不能保证的,当热点AP的业务饱和之后,新的终端就不能接入,或者虽然接入,但是造成AP的拥塞,所有的业务中断。
(3)降低网络的容忍度
同样,当某一AP的负载饱和后,新的终端的接入会造成严重的后果,但此时,网络中其他非饱和AP还可以承接终端的接入,向更多的终端和业务提供服务。如果采取负载均衡调整,负载饱和AP的任务就可以被分担,整个扩展服务集中的AP的负载保持相对稳定和平衡,可以容忍网络的波动和变化。
(4)资源利用率差
没有负载均衡的网络,不能统筹调度和安排网络负载的分布,往往随着某一个或几个AP的饱和出现饱和,而其他非饱和的AP的资源无法得以利用。
总之,没有负载均衡的网络,业务的发生处于自由而不受控的状态,网络的稳定性很差,随着热点的出现,很容易出现终端拥塞,导致局部区域的网络瘫痪,或者终端业务的QoS指标降低。
在无线局域网中,负载均衡调整的对象与有线分布式系统中不同。在有线系统中,负载均衡调整对象是一个一个的排队任务,而在无线局域网中,任务的承担者是移动的STA,虽然一个STA上有多个任务,但是作为单独个体的STA却无法根据任务进行更加细致的划分。所以,在无线局域网中,负载均衡的控制对象就是STA,实质上就是一个STA上所有的任务的总和,即便是进行任务迁移,也需要把整个STA上的所有任务都进行迁移。所以无线局域网中的负载均衡调整的最小单位就是STA,而迁移的方式也只有切换和接入控制两个方面。
基于载波侦听多点接入/冲突避免(CSMA/CA)机制的无线局域网是一个突发系统,除了有线分布式系统下的负载均衡的技术难点外,无线信道的时变特性和干扰,终端移动性等会引入更多新的技术难度:
(1)负载信息的收集困难
在扩展服务集中,多个AP工作在不同的信道上,虽然可以通过AP之间的分配系统(DS)进行传输,但属于设备间的私有协议。IEEE802.11k致力于解决无线网络测量问题,对于负载信息而言,最优的测量者还是AP。但是负载信息的交互却没有好的方法。另外一个关于负载信息的困难是对负载信息的量化困难。对于分组交换的无线网络而言,除了业务量之外,业务的QoS要求也是很重要的一个方面。终端数量将影响网络管理的开销,也是负载信息中的重要部分,还有一些其他因素如发射功率、信道选择等,都需要在评价AP的负载水平时加以考虑。
(2)决策过程的困难
由于终端是可以移动的,而终端上的任务是随机突发的,所以在一个时刻收集到的负载信息,对未来的均衡调整策略的真实有效性是需要评估的。在决策的过程中要充分考虑到这些因素。另外,负载均衡的调整目标的选择是很困难的。在无线网络决策确定了负载均衡的目标之后,参与者要通过切换将负载转移。终端进行一次切换的时间是100ms以上,即便是快速切换也需要60ms左右的时延。而且一次调整的对象也不仅仅是一个,所以,在这段时间之内,网络状况有可能已经发生变化。负载均衡的决策算法还涉及到降低参与者以减少管理开销,避免造成网络中大的波动等问题。
(3)任务迁移的困难
任务迁移是通过终端的切换实现的,而终端切换首先是引入时延,对终端的相关业务造成影响。其次会引入网络管理的开销,增加的开销本身就会对AP造成管理负担,对整个网络的性能也是一种影响。另外,在无线局域网中的负载均衡必须考虑STA切换失败的风险,因为虽然AP可以做出任务迁移或切换的决策,但是终端不一定能够连接到负载轻的BSS上,造成的结果就是终端离开后,不得不重新寻找新的接入点,上层业务同时中断。负载均衡的收敛与否也和终端切换的结果相关。
负载均衡已经被作为IEEE802.11v中的主要工组内容,纳入了标准的制订工作。快速切换是IEEE802.11r标准的工作内容。快速切换和负载均衡内容是紧密联系的。
共2页: 1 [2] 下一页 |