logo资料库

论文研究-基于均衡状态阈值的混合Web QoS控制方法.pdf

第1页 / 共3页
第2页 / 共3页
第3页 / 共3页
资料共3页,全文预览结束
Computer Engineering and Applications 计算机工程与应用 2013,49(14) 81 基于均衡状态阈值的混合 Web QoS 控制方法 胡德斌,蒋启明,米春桥 HU Debin, JIANG Qiming, MI Chunqiao 怀化学院 计算机科学与技术系,湖南 怀化 418008 Department of Computer Science and Technology, Huaihua University, Huaihua, Hunan 418008, China HU Debin, JIANG Qiming, MI Chunqiao. Mixed control method of Web QoS based on threshold of balance status. Com- puter Engineering and Applications, 2013, 49(14):81-83. Abstract:On the basis of web-server control clusters with QoS, based on L4/L7 switching, a mixed load balance strategy is designed, which takes into account content of request, server performance and overall equilibrium state of the cluster load. Algo- rithm introduces a feedback loop which dynamically adjusts the weights of servers, by choosing different strategy according to thresholds of load balance, the performance of the Web cluster system is promoted. Key words:quality of service; Web server; request dispatching; load balancing 摘 要:在对服务器集群 Web QoS 控制基础上,综合考虑请求内容和各服务器性能以及当前整个集群负载平衡状况,设计 了一种基于 L4/L7 双层分配的混合负载平衡调度策略,算法引入了一个反馈环节动态地改变 Web 服务器的权值,通过负载 平衡程度的阈值进行判断,选择不同的调度策略,从而提高了 Web 集群系统的性能。 关键词:服务质量(QoS);Web 服务器;请求分配;负载平衡 文献标志码:A 中图分类号:TP393 doi:10.3778/j.issn.1002-8331.1303-0182 1 引言 以往的研究工作对 Web 服务器 QoS 控制和集群负载 平衡策略的研究[1-6]是相对独立的,两者的分离使得分配器 的负载平衡策略没有考虑到 HTTP 请求的 QoS 类型。平衡 算法设计的好坏直接决定了集群系统的性能与效率[7]。目 前负载平衡算法 [8-11]分两大类,一类是基于第 4 层(L4)的, 一类是基于第 7 层(L7)的。L4 调度策略由于工作在 OSI 协 议的第四层,交换速度可达线速,一般采用基于硬件的实 现方式,调度算法不复杂,实现技术简单,由于无法识别请 求的内容,不能实现区分的服务,服务质量无法得到保证。 基于请求内容的 L7 负载平衡技术 [12-14],虽然能够识别 请求的内容,区分服务,保证服务质量,得到较好的平衡效 果,实现真正意义上的负载平衡,但影响性能的因素多而 复杂。另一方面,由于动态调度需要一种昂贵的和非常困 难的机制来收集和分析状态信息,这就增加了服务器负 担。请求分配器动态地对每一个服务器进行性能评价,周 期性地从服务器端收集信息并进行相应处理,实现的算法 往往较为复杂,需要消耗大量的系统资源与延长请求的处 理时间,而请求延迟时间本身就是一项重要的 QoS 指标。 以往负载平衡策略存在的问题主要有: (1)使用连接数并不能准确反映服务器负载的动态变 化和请求的内容。 (2)在使用类似基于服务器状态的调度算法中,造成 负载平衡算法复杂,开销增大,随着集群规模的扩大,将影 响集群可扩展性和性能。而且,没有一种很好负载评估方 法,往往只考虑服务器的负载,对负载状况不能准确把握。 (3)无论是在基于连接数还是服务器状态的调度算法 中,为了实现对异构集群环境的支持,都要引入权值来表 示各服务器性能的差异。而对服务器性能的估计本来就 是一个困难,造成对权值的标准很难把握,通常采用固定 的权值,难以动态地体现服务器性能的变化。 (4)如果完全采用 L7 的负载平衡算法,数据包的转发 层次比较高,在协议层中花费时间增加,影响了服务响应 时间。 (5)在负载平衡策略中没有考虑到平衡的状态,也很 少考虑对平衡的状态的量化判断。 2 算法设计 针对以往负载平衡策略存在的问题,考虑到局部性能 的优化,结合 L4 和 L7 请求分配的特点,设计了一种综合考 基金项目:湖南省自然科学基金(No.13JJ6075)。 作者简介:胡德斌(1975—),男,讲师,主要从事高性能网络、网络安全方向的研究;蒋启明(1961—),男,副教授,主要从事网络拥塞控制 方向、网络信息处理的研究。E-mail:hdb213@163.com 收稿日期:2013-03-13 修回日期:2013-04-28 文章编号:1002-8331(2013)14-0081-03
82 2013,49(14) Computer Engineering and Applications 计算机工程与应用 虑请求内容和各服务器性能以及当前整个集群负载平衡 状况的基于 L4/L7 双层分配的混合负载平衡调度策略(以 后简称 R2L 算法),算法引入了一个反馈环节以实现动态 的负载平衡,同时对加权论询算法(WRR)和负载最小优先 算法(LLF)进行了改进。其目标是减少平均应答时间,支 持负载的动态变化,提高系统的吞吐率,算法中由于考虑 到了请求的内容,因此能更好地支持 QoS。 2.1 算法描述 i ,这样每个真实节点就可以看作是一个矢量 {i w 在本文研究的集群 Web 服务器中,包含一个负载平衡 节点,主要负责请求的转发分配,集群中其他节点为真实 的单个 Web 服务器,负责处理具体的请求。为了描述这种 处理能力的区别,为每一个节点 i 赋予一个分配任务时的 } 权值 w i i 来 表 示 ,n 表 示 集 群 节 点 的 个 数 ,i(1  i  n) 为 节 点 用 S 号。因此,本文的研究环境可以看作是由一个负载平衡节 点 S  S 和一个节点集合 {S 0 1 首先从 HTTP 请求中提取文件的类型和文件的长度, 采用了对请求进行分类的思想并借用 WEB 性能评测估计 每类请求的平均所占资源量处理时间。通过某节点上所 有请求的处理时间以及该节点在集群系统中的权值(最初 根据经验手工分配,随着负载变化将进行动态的调整)获 得其当量负载,结合服务器本身的负载状况,在负载不均 衡时,选择集群中综合负载最小的服务器响应请求。 } 组成。 n  S 2 由于分配器对负载状况信息的收集需要一定的时延, 这种方法会使大量的 HTTP 请求在这段时间内聚集,导致 服务器负载倾斜,因此恰当设定对负载状况信息收集时间 间隔是非常重要的,过长会导致上述情况发生,过短会因 频繁获取负载信息消耗大量的系统资源。可以通过大量 实验的方法获取最佳的时间间隔。当集群系统处于一种 不均衡状态时,通过引入了一个反馈机制,依据节点的综 合负载状况,对每个节点的权值进行动态的调节。通过对 负载平衡状态的阈值判断,当集群系统趋于平衡时将调度 策略从基于 L7 的综合负载最小优先算法(ILLF)转换为一 种高效的基于 L4 的动态加权轮询分配算法(D-WRR),根 据当前服务器状态分配请求到服务器上。当 Web 服务器 集群系统不平衡时,再转换到原来的综合负载最小优先 (ILLF)调度策略,从而实现 L4/L7 双层分配。 2.2 负载评估 在负载平衡算法的设计中,首先要考虑的是如何对负 载进行有效地评估 [15],负载评估的准确性直接影响负载平 衡的效果。 在计算综合负载(即真实负载)时,主要使用两大类负 是在调度器 载信息:当量负载和服务器负载。当量负载 l i d 上收集到的,是处于请求队列中的负载,通常与请求连接 数量、请求连接类型、请求文件大小相关。而服务器负载 l i s 是在服务器上的各种负载信息,如服务器当前 CPU 负载、 服务器当前磁盘使用情况、当前内存利用情况和当前进程 数目等。用综合负载来反映服务器当前的负载情况比较 确切,对于不同的应用,会有不同的综合负载情况。 为了能够描述综合负载的大小,采用当量负载和服务 器负载等因素的加权值来表述: 2 l i z + b × l i s × l i d = b 1 (1) 这里引入两种负载信息的权值,以表示负载信息在综合负 载中轻重,其中 b 分别为当量负载和服务器负载的权值。 、b 1 2.3 综合负载最小优先策略(ILLF) 2 以往的负载最小优先调度策略 [16],通常只考虑服务器 端的负载状况,忽略了请求队列中的当量负载,因而不能 准确地反映负载的真实情况,也不能实现基于内容的请求 分配。综合考虑了服务器负载和当量负载,提出了一种基 于综合负载的负载最小优先调度算法(ILLF),将请求分配 到综合负载负载最小的服务器上,即 min(l i ) 。与传统的最 z 小负载优先算法(LLF)相比,这种改进的 LLF 调度算法能 比较准确地反映请求的内容和服务器的负载状况,适合负 载差异大的 Web 服务器集群系统,但是负载平衡器对各综 合负载的获取和比较是很困难的,而且也增加了负载平衡 器实现的开销。 2.4 基于均衡状态阈值动态反馈的双层混合控 制算法(R2L) 集群中各个节点负载的均衡性可以通过负载的均方 差来衡量,但测量出来的负载均方差没有一个可比的标 准,为了使得负载均方差具有可比性,首先将测量到的负 载的评估值作几何归一化处理。归一化处理方法如下: - l i z = l i z å n (l i z /w i /w )2 i i = 1 由式(2)得: n - å l i z i = 1 n - l z ) = E( 处理后,计算具有可比性的负载均方差: - l z ))2 ( n å i = 1 - E( - l i z n - 1 D( - l z ) = (2) (3) (4) i 这个负载均方差就可以标识集群的负载平衡程度,当 负载的均方差超过阈值时,集群内的负载没有得到很好的  通过调节 均衡,需要调整基本负载平衡算法的参数,如 w i 权值 w 来调整集群平衡程度的过程;当负载的均方差小于 阈值时,则说明集群的负载平衡状况比较好,而这个阈值 需要通过大量的实验来测得。根据负载均方差的阈值决 定使用何种请求分配策略:针对综合负载最小优先策略 (ILLF)适合负载差异大的环境的特点,当负载的均方差 ) 大于阈值时,即集群处于不平衡状态,采用 L7 的 ILLF D( 的策略。当负载的均方差 D( ) 小于阈值时,即集群处于 平衡状态,采用 L4 的动态加权轮询调度策略(D-WRR)。 2.5 动态加权轮询调度策略(D-WRR) - l z - l z 加权轮询调度算法(WRR)具有非常简单高效,但固定 的权值会导致服务器的负载倾斜的特点。对其进行了改
胡德斌,蒋启明,米春桥:基于均衡状态阈值的混合 Web QoS 控制方法 2013,49(14) 83 进,引入一个反馈机制对权值进行动态地改变。 根据公式(2)、(3),可知真实节点负载的均方差也和  l i  t) ,所以,当均方差较大时(即集 这几个量相关,即 f (w d i 群处于不均衡状态),可调整两个量,一个是请求的当量处  处于请求队列中的当量 理时间 t,另一个是节点的权重 w i 不能调整。由于请求的当量处理时间的调整是由 负载 l i d 统计来完成的,因此,最终可以通过 w 来调整个集群的均 衡状态。根据当前综合负载和整个集群平均负载的状况 对权值进行调整,调整权值的算法如下: i 如果真实节点 i 当前的权值为 w  当前的真实综合负 i 载为 l i z ,节点的新的权值 w ' 为: i w ' ® i ì ïï w í ïï w î - l i z ) D( - - E( l z - E( ) l z - )  0.45 l z - i D( i - l z ) > 0.45 - l z i i i 的值。当 D( 权值,并利用其 w 通过上式来动态地调节 w ) 低于阈值时,集 群系统负载处于相对平衡状态,此时记录下当前每个服务 器的 w 权值切换到 D-WWR 算法,进入 基于 L4 的快速响应中。设置一个时间间隔 T,T 值由实验 和统计获得,每隔一个时间 T,查询平衡状态阈值,由阈值 决定采用何种策略。T 设置过短,会造成频繁的切换,消耗 大量的系统资源,T 设置过长会导致大量的请求分配到权 值高的服务器上,因此恰当的设置 T 值是影响整个系统性 能的关键之一。动态反馈负载平衡算法可以较好地避免 服务器负载的倾斜,提高系统资源的使用效率,从而提高 系统的吞吐率。 3 测试分析 本文通过仿真实验对 WRR、ILLF、R2L 三种算法的性 能 进 行 了 比 较(其 中 ILLF、R2L 两 种 算 法 是 本 文 提 出 来 的),WRR 算法根据服务器的固有性能采用固定的权值。 分别使用上述 3 种请求分配算法测试对不同 HTTP 负载文 件集的访问情况,观察请求任务平均响应(完成)时间的变 化。对每种算法选择 8 个检测点,每个点采样 5 次,以平均 值作为该检测点的测试结果。 从图 1 和图 2 可以看出,R2L 算法的响应时间基本上是 低于 ILLF 算法,这是因为 R2L 算法在当负载处于均衡状态 时,局部使用了高效率的 D-WRR 算法,降低了响应时间, 同时在 D-WRR 算法中运用动态的权值来表示服务器当前 的性能(剩余性能)状态,较好反映了各服务器的负载状 4 3 2 1 0 s / m 间 时 应 响 均 平 2 4 WRR ILLF R2L 6 8 10 12 14 16 连续发送的请求数/103 图 1 轻负载文件集的平均请求响应时间 7 6 5 4 3 / s m 间 时 应 响 均 平 2 4 WRR ILLF R2L 6 8 10 12 14 16 连续发送的请求数/103 图 2 请求负载变化大文件集的平均请求响应时间 况,起到了较好的平衡效果。另外,R2L 算法的平均响应时 间变化曲线最为平滑,这说明 R2L 算法在对集群服务器当 前负载的评估更准确,使访问负载的分布更均匀。 在两种文件集的对比测试中,负载变化大的文件集平 均响应时间变化更大,这也是因为被访问文件的负载差异 加大,通过对综合负载计算累计误差也比轻负载文件集更 大所造成的。同时可以看出,R2L 算法与 ILLF 算法,由于 都存在负载采集、计算、比较的过程而消耗部分系统资源, 因此在低负载的情况,相对 WWR 算法不能体现优势,但通 常需要考虑的是如何在高负载和负载请求变化大的情况 下保证服务质量。 4 结束语 通过测试说明 R2L 算法优于常规调度算法,由于在算 法中考虑到平衡的状态、请求的内容、服务器的性能差异, 并引入了反馈机制,局部减少了请求响应时间,从而提升 整个 Web 集群系统性能。 参考文献: [1] 单志广,林闯,肖人毅,等.Web QoS 控制研究综述[J].计算机 学报,2004,27(2):145-156. [2] Shan Z,Lin C,Marinescu D C,et al.Modeling and perfor- mance analysis of QoS-aware load balancing of web-server clusters[J].Computer Networks,2002,40(2):235-256. [3] Schroeder T,Goddard S,Ramamurthy B.Scalable web server clustering technologies[J].IEEE Network,2000,14(3):38-45. [4] Cardellini V,Colajanni M,Yu P S.Dynamic load balancing on web-server systems[J].IEEE Internet Computing,1999,3 (3):28-39. [5] Guo J,Bhuyan L N.Load balancing in a cluster-based web for multimedia applications[J].IEEE Transactions on server Parallel and Distributed Systems,2006,17(11):1321-1334. [6] Andreolini M,Casalicchio E,Colajanni M,et al.A cluster-based web system providing differentiated and guaranteed services[J]. Cluster Computing,2004,7(1):7-19. [7] 周幼英,李福超,雷迎春.关于调度算法与 Web 集群性能的分 析[J].计算机研究与发展,2003(3):483-492. [8] Xu C Z,Liu B,Wei J.Model predictive feedback control for QoS assurance in web servers[J].Computer,2008,41(3): 66-72. (下转 87 页)
分享到:
收藏