一种低能耗集群环境下的服务质量保证方法

文档序号:7551199阅读:245来源:国知局
专利名称:一种低能耗集群环境下的服务质量保证方法
技术领域
本发明属于集群系统中节能调度的服务质量保证领域,特别涉及一种低能耗集群环境下的服务质量保证方法。
背景技术
绿色低碳的理念已经越来越深入到社会的各个领域,IT设施的节能也已成为当前的研究热点。过去考虑到手持设备和移动设备等嵌入式系统通过电池来供电,而没有连接到公共电网中,能耗成为制约这些设备使用时间长度的关键因素,因此在这些设备中有许多低功耗和低能耗的设计。但在当前的大规模数据中心中,能耗成为越来越大的成本开销。大规模集群系统的节能也被当作一个重要的技术领域。集群系统中节能的方法一般有两种:一种是保持满足当前负载任务的最小工作节点数,另一种是根据各个节点的性能特征,充分发挥各个节点的最大计算能力,避免能量消耗在功耗大的节点部件上。现有技术中,最常用的节能方法是根据外部负载请求量的多少自适应地对集群节点进行关闭和唤醒,使得系统根据资源的消耗情况提供对应的资源服务,避免过多的服务资源带来的资源浪费。但是这种根据外部负载的情况自适应的调整工作集群节点数目和待机集群节点数目的方法,必然要涉及到集群节点在两种状态之间的转换,即处于休眠状态的集群节点通过唤醒进入工作状态,处于工作状态的集群节点通过待机命令,进入休眠状态。虽然对集群节点进行关闭过程中不会带来服务质量的下降,但是当系统需要唤醒集群节点时,处于唤醒延迟时间内的集群节点并不能向外部负载提供任何服务,这将严重地降低系统的服务质量。而衡量一个Web服务器性能的重要指标就是响应时间,随着用户数目的增加,访问的负载量越大,web服务器的响应时间也会随之增加,当响应延迟时间增加到用户无法接受的时候,用户很可能会因为过久的等待而失去耐心,最终放弃访问该页面。当访问的等待时间超过8秒时,约30%的用户会选择终止访问且离开该网站,但是当服务响应的时间能够缩短I秒,终止访问的用户比例会降至8%。一般的唤醒延迟时间短则几秒,长则十几秒甚至更长,设想一下,一个普通的用户访问一个网站,集群节点唤醒时间所带来的响应延迟将会导致巨大的用户资源的流失,这是一个流行的互联网网站所不能接受的。

发明内容
本发明的目的在于克服现有技术的缺点与不足,提供一种低能耗集群环境下的服务质量保证方法,该方法使得集群系统的功耗更低且服务质量更高。本发明的目的通过下述技术方案实现:一种低能耗集群环境下的服务质量保证方法,包括以下步骤,( I)集群系统接收来自用户的负载连接请求,记录负载连接的请求数,集群系统根据用户的请求将负载连接至各个集群节点;
(2)根据集群系统所记录的负载连接的请求数,得出当前t时刻前一段时间T内负载连接数之和的实际值,然后根据该实际值预测系统在t+T时刻的负载连接数预测值V ;(3)根据t+T时刻的负载连接数预测值V计算出系统在t+T时刻需要保持在工作状态下的集群节点个数N;(4)判断步骤(3)中得到的集群节点数个数N是否大于当前t时刻处于工作状态下的工作集群节点个数A,若是,则唤醒N-A个处于休眠状态下的集群节点,进入步骤(6);若否,则进入步骤(5);(5)判断当前t时刻工作状态下集群节点数A和t+T时刻需要保持在工作状态下的集群节点个数N是否相等,若是,则进入步骤(6);若否,即N小于A,则进行节能调度,选择一个或多个处于工作状态下的集群节点作为源节点,再选择一个或多个处于工作状态下的集群节点作为目的节点,然后将源节点上的负载迁移至目的节点上,源节点退出工作状态,进入休眠状态,在当前时刻t之后的T时间内保持至少有N个集群节点处于工作状态;执行步骤(6);(6)本轮集群节点的调度完成,返回步骤(2)。优选的,所述步骤(2)中根据指数平滑公式得到当前t时刻后一段时间T内,即在时间区间[t,t+T)内负载连接数之和的预测值Pt为:
Pt=BXRim+(1-a) XPim ;其中IV1为当前t时刻前一段时间T内,即在时间区间[t_T,t)内负载连接数之和的实际值,Pu为当前t时刻前一段时间T内,即在时间区间[t_T,t)内负载连接数之和的预测值,a为平滑常数;根据相邻两个时间间隔,即在时间区间[t_T,t)与[t,t+T)内的负载连接数斜率相等得出:(Pt+1-Pt)/T=(Pt-Rt_1)/T ;根据上式得到t+T时刻后一段时间T内,即在时间区间[t+T,t+2T)内负载连接数之和的预测值Ρτ+1为:PT+1=2XPT-RT_1 ;根据上式得到系统在t+T时刻的负载连接数预测值V:
Ρτ + ιV=-ο
T优选的,所述步骤(3)中t+T时刻需要保持在工作状态下的集群节点数N为:
VV—< jV< —+ 1.Γ C ’其中N为整数,C为每个集群节点负载连接数的最大阈值。优选的,所述T的值为70秒。优选的,所述步骤(I)中由集群系统的前端机接收来自用户的负载连接请求,并且记录负载连接的请求数;前端机的负载均衡模块将负载连接至各个集群节点,并且监测各个集群节点的负载,维护以及记录各个集群节点上负载的数据结构。
优选的,所述步骤(5)中选择A-N个负载连接数最少的集群节点作为源节点。更进一步的,所述步骤(5)中选取与源节点上的负载连接数之和小于或等于集群节点的负载连接数最大阈值且负载连接数最大的集群节点作为目的节点。优选的,所述步骤(5)在确定目的节点后,源节点通过IP隧道将客户端的IP及端口信息发送给目的节点,然后目的节点根据这些信息与客户端重新进行三次握手,源节点上的负载就迁移至目的节点上。更进一步的,所述步骤(5)中目的节点和客户端的三次握手为:作为服务端的目的节点被动等待,客户端发送编号为η的syn包,服务端发送编号n+1的ack包,和另外一个编号k的syn包,客户端回复编号k+Ι的ack包。优选的,将所述步骤(5)中源节点的休眠等级置于ACPI第三级。本发明相对于现有技术具有如下的优点及效果:(I)本发明方法是在负载预测的基础上实现的,通过当前时刻之前的一段历史负载值来进行负载的预测,当预测到下一时刻负载连接数的预测值超出当前工作状态下集群节点所能承受的值时,则提前唤醒需要启动的集群节点,提前启动下一时刻所需要的集群节点,避免了集群节点唤醒过程给负载带来的响应延迟,提高了集群系统的服务质量,克服大规模集群节能调度中由于节点的唤醒带来的系统服务质量下降问题。当预测到下一时刻负载连接数的预测值没有超出当前工作状态下集群节点所能承受的值时,则保留尽可能少的集群节点,将多余的集群节点关闭,以进一步降低集群系统的功耗。(2)本发明方法负载连接数的预测是在指数平滑的基础上兼容了斜率预测法,因此本发明方法负载连接数的预测值更加靠近实际值,即精确度更高。(3)本发明方法在对多余的集群节点进行关闭时,选取负载连接数最少的集群节点作为待迁移的源节点,可以减少负载迁移的开销;选取与源节点负载连接数之和小于等于集群节点负载连接数最大阈值且负载连接数最大的集群节点作为目的节点,充分利用了目的节点的服务资源。(4)本发明方法源节点的负载被迁移后,将其休眠等级置为ACPI第三级STR(Suspend to Ram,挂起内存)模式,ACPI第三级下功耗只有10瓦左右,进一步降低了本发明休眠节点的功耗,并且处于ACPI第三级的休眠节点被唤醒所需要的时间相较于全关闭的情况下要短很多。


图1是本发明方法的流程图。
具体实施例方式下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。实施例如图1所示,本实施例一种低能耗集群环境下的服务质量保证方法步骤如下:( I)集群系统的前端机接收来自用户的负载连接请求,并且记录负载连接的请求数,前端机的负载均衡模块根据用户的请求,利用负载均衡算法将负载分发到相应集群节点上。负载均衡模块监测各个集群节点的负载,维护以及记录各个集群节点上负载的数据结构。(2)根据集群系统前端机所记录的负载连接的请求数,得出当前t时刻前一段时间T=70秒内负载连接数之和的实际值IV1,然后根据IV1预测系统在t+T时刻的负载连接数预测值V;根据指数平滑公式得到当前t时刻后一段时间T内,即在时间区间[t,t+T)内负载连接数之和的预测值Pt为:PT=a X Rim+ (I —a) X Pim ;其中IV1为当前t时刻前一段时间T内,即在时间区间[t_T,t)内负载连接数之和实际值,Pu为当前t时刻前一段时间T内,即在时间区间[t_T,t)内负载连接数之和的预测值,a为平滑常数;根据相邻两个时间间隔,即在时间区间[t_T,t)与[t,t+T)内的负载连接数斜率相等得出:(Pt+1-Pt)/T=(Pt-Rt_1)/T ;根据上式得到t+T时刻后一段时间T内,即在时间区间[t+T,t+2T)内负载连接数之和的预测值Ρτ+1为:PT+1=2XPT-RT_1 ;根据上式得到系统在t+T时刻的负载连接数预测值V:
权利要求
1.一种低能耗集群环境下的服务质量保证方法,其特征在于,包括以下步骤, (1)集群系统接收来自用户的负载连接请求,记录负载连接的请求数,集群系统根据用户的请求将负载连接至各个集群节点; (2)根据集群系统所记录的负载连接的请求数,得出当前t时刻前一段时间T内负载连接数之和的实际值,然后根据该实际值预测系统在t+T时刻的负载连接数预测值V ; (3)根据t+T时刻的负载连接数预测值V计算出系统在t+T时刻需要保持在工作状态下的集群节点个数N; (4)判断步骤(3)中得到的集群节点数个数N是否大于当前t时刻处于工作状态下的工作集群节点个数A, 若是,则唤醒N-A个处于休眠状态下的集群节点,进入步骤(6); 若否,则进入步骤(5); (5)判断当前t时刻工作状态下集群节点数A和t+T时刻需要保持在工作状态下的集群节点个数N是否相等, 若是,则进入步骤(6); 若否,即N小于A,则进行节能调度,选择一个或多个处于工作状态下的集群节点作为源节点,再选择一个或多 个处于工作状态下的集群节点作为目的节点,然后将源节点上的负载迁移至目的节点上,源节点退出工作状态,进入休眠状态,在当前时刻t之后的T时间内保持至少有N个集群节点处于工作状态;执行步骤(6); (6 )本轮集群节点的调度完成,返回步骤(2 )。
2.根据权利要求1所述的低能耗集群环境下的服务质量保证方法,其特征在于,所述步骤(2)中根据指数平滑公式得到当前t时刻后一段时间T内,即在时间区间[t,t+T)内负载连接数之和的预测值Pt为:PT=aX Rim+(l_a) XPim ; 其中IV1为当前t时刻前一段时间T内,即在时间区间[t-T,t)内负载连接数之和的实际值,Pt-!为当前t时刻前一段时间T内,即在时间区间[t-T,t)内负载连接数之和的预测值,a为平滑常数; 根据相邻两个时间间隔,即在时间区间[t_T,t)与[t,t+T)内的负载连接数斜率相等得出:(Pm-PtVT=(Pt-Rh)ZT ; 根据上式得到t+T时刻后一段时间T内,即在时间区间[t+T,t+2T)内负载连接数之和的预测值Ρτ+1为: PT+1=2XPT-RT_1 ; 根据上式得到系统在t+T时刻的负载连接数预测值V: V=^i0 T
3.根据权利要求1所述的低能耗集群环境下的服务质量保证方法,其特征在于,所述步骤(3)中t+T时刻需要保持在工作状态下的集群节点数N为: I/T/ V %.V..—< iV< —+ 1.C C ’其中N为整数,C为每个集群节点负载连接数的最大阈值。
4.根据权利要求1或3所述的低能耗集群环境下的服务质量保证方法,其特征在于,所述T的值为70秒。
5.根据权利要求1所述的低能耗集群环境下的服务质量保证方法,其特征在于,所述步骤(I)中由集群系统的前端机接收来自用户的负载连接请求,并且记录负载连接的请求数;前端机的负载均衡模块将负载连接至各个集群节点,并且监测各个集群节点的负载,维护以及记录各个集群节点上负载的数据结构。
6.根据权利要求1所述的低能耗集群环境下的服务质量保证方法,其特征在于,所述步骤(5)中选择A-N个负载连接数最少的集群节点作为源节点。
7.根据权利要求6所述的低能耗集群环境下的服务质量保证方法,其特征在于,所述步骤(5)中选取与源节点上的负载连接数之和小于或等于集群节点的负载连接数最大阈值且负载连接数最大的集群节点作为目的节点。
8.根据权利要求1所述的低能耗集群环境下的服务质量保证方法,其特征在于,所述步骤(5)在确定目的节点后,源节点通过IP隧道将客户端的IP及端口信息发送给目的节点,然后目的节点根据这些信息与客户端重新进行三次握手,源节点上的负载就迁移至目的节点上。
9.根据权利要求8所述的低能耗集群环境下的服务质量保证方法,其特征在于,所述步骤(5)中目的节点和客户端的三次握手为:作为服务端的目的节点被动等待,客户端发送编号为η的syn包,服务端发送编号n+1的ack包,和另外一个编号k的syn包,客户端回复编号k+Ι的ack包。
10.根据权利要求1所述的低能耗集群环境下的服务质量保证方法,其特征在于,将所述步骤(5)中源节点的休眠等级`置于ACPI第三级。
全文摘要
本发明公开了一种低能耗集群环境下的服务质量保证方法,包括以下步骤(1)集群系统接收来自用户的负载连接请求,将负载连接至各个集群节点;(2)根据当前t时刻前一段时间T内负载连接数之和的实际值预测系统在t+T时刻的负载连接数预测值V;(3)预测值V计算出系统在t+T时刻需要保持在工作状态下的集群节点个数N;(4)判断N是否大于A,若是,唤醒N-A个处于休眠状态下的集群节点,进入步骤(6);若否,则进入步骤(5);(5)判断A和N是否相等,若是,则进入步骤(6);若否,则进行节能调度,执行步骤(6);(6)本轮集群节点的调度完成,返回步骤(2)。本发明使得集群系统的功耗更低且服务质量更高。
文档编号H04L12/26GK103108039SQ201310030340
公开日2013年5月15日 申请日期2013年1月25日 优先权日2013年1月25日
发明者邓玉辉, 胡杨, 孟小华, 周继鹏, 梁倬骞 申请人:暨南大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1