基于资源预留的网格服务质量保证方法

文档序号:7743172阅读:123来源:国知局
专利名称:基于资源预留的网格服务质量保证方法
技术领域
本发明涉及计算机网络中的网格计算领域,特别涉及网格服务质量保证,具体涉
及一种基于资源预留的网格服务质量保证方法。
背景技术
随着网格技术和Web服务技术的融合,网格体系结构已由计算网格发展到服务网格体系结构。在服务网格体系结构中,网格资源不能再狭义地理解为某种物理实体,而是以服务的形式进行了虚拟化。服务表示了在网络化环境中可被共享和利用的任何能力,包括计算机、存储系统、网络、计算机程序以及数据库等等。服务网格的本质在于协调各种资源的使用,无缝地交付非平凡的服务质量,满足不同用户的需求。服务质量QoS (Quality ofService)是一个综合指标,用于衡量用户使用一个服务的满意程度。它描述了关于网格服务的某些性能特点,这些性能特点是用户可见的,它以用户可理解的语言表述为一组参数,是对服务者服务水平的一种度量和评价。网格QoS保证通过对网格资源的管理和协同分配来实现,一个优秀的网格资源管理系统在适应网格资源异构性大、动态性强、易于造成资源冲突等特性的同时,还要保证用户提出的QoS需求[1]。 目前,服务网格主要利用多媒体网络中的资源预留机制作为QoS保证的方法。GRAAP(Grid Resource Allocation Agreement Protocol)对资源预留及其状态作了精确定义,Siddiqui等学者扩展了资源预留的要素[2], SNAP(ServiceNegotiation andAcquisition Protocol)协议所定义的三类SLA (Service LevelAgreement)可以作为资源预留协商的实现方法,这些成果启发了本发明工作。但是,在基于资源预留的网格服务质量保证方面还存在很多不足之处,目前所提出的一些资源预留体系架构不能支持虚拟组织间的协作,也不能消除由网格资源可获得性和性能的动态性所带来的负面影响,这导致系统有效性的下降,从而引起信任度的降低。并且,现有的一些资源预留协商策略缺乏与网格QoS描述模型和分类等方面的结合,没有考虑预留请求QoS需求参数之间的区别,这导致误拒率的上升。此外,目前的研究仅仅狭义地提出了计算资源池的概念,在资源种类繁多的服务网格环境下资源池的概念有待进一步扩展,而且目前的研究没有针对基于资源池的资源联合分配方式提出形式化的模型和行之有效的算法。 [l]C. Castillo, G. N. Rouskas and K. Harfoush. On the Design of OnlineSchedulingAlgorithms for Advance Reservations and QoS in Grids. IEEE Int.Parallel andDistributed Processing Symposium(IPDPS' 07) ,Mar. 2007,pp. 1_10
[2]M. Siddiqui, A. Vi 1 lazon and T. Fahringer. Grid Capacity PlanningwithNegotiation-based Advance Reservation for Optimized QoS. Proc. of the ACM/IEEESupercomputing 2006 (SC' 06)Conference. Tampa, Florida, USA. Nov. 200
发明内容
技术问题本发明针对现有技术的不足和缺陷,提出了一种基于资源预留的网格服务质量保证方法,本发明提出基于虚拟组织的网格资源预留系统架构,基于此架构,本发明提出针对单个工作单元网格应用的基于QoS欧拉距离的网格资源分配算法和针对工作单元工作流应用的网格资源联合分配算法。 技术方案本发明的基于资源预留的网格服务质量保证方法包括基于虚拟组织的网格资源预留系统架构和网格资源联合分配方法,其中 a.基于虚拟组织的网格资源预留系统架构处理预留请求的工作流程如下
al.需求分解模块对到达虚拟组织的预留请求进行资源需求解析,确定该服务请求所需要的资源种类, a2.虚拟资源容器根据步骤al中解析出的服务请求所需要的资源种类,与相应的虚拟资源容器建立绑定关系,虚拟资源容器负责把同一个虚拟组织中相同种类的逻辑资源聚合到一个虚拟的资源池中,形成功能性的虚拟资源, a3.当预留请求的开始时间到达时,逻辑资源分配器通过查询资源信息数据库,依
据资源联合分配算法所给出的资源分配方案,为该预留请求所绑定的所有虚拟资源容器选
择特定的逻辑资源,并分配给该预留请求;针对由单个工作单元组成的网格应用,逻辑资源
分配器使用基于QoS欧拉距离的的网格资源联合分配算法;针对由工作单元工作流组成的
网格应用,逻辑资源分配器则使用具有QoS保证的网格资源联合分配方法, a4.预留请求获得所需的单个或多个逻辑资源,运行完毕或预留结束时间到达后
释放这些资源,一个预留请求处理结束; b.网格资源联合分配方法具体描述如下 bl. QoS欧拉距离(QED,QoS Euclidian Distance)用于衡量用户QoS的要求与资源提供的QoS参数之间的偏差程度,算法中考虑硬QoS参数和软QoS参数的区别来计算QoS欧拉距离, b2.对应于单个工作单元网格应用的预留请求首先到达虚拟资源容器的预留队列,资源分配器为预留队列中到达预留时间的预留请求选择当前时间最合适的逻辑资源,实现预留请求与逻辑资源的最终绑定,基于QoS欧拉距离的逻辑资源分配算法(RA_QED),选择与预留请求之间欧拉距离尽量小逻辑资源进行绑定。 具有QoS保证的网格联合资源分配方法为将具有QoS保证的网格资源分配问题归化为腿P (Multiple-choice Multiple-dimension K卿sack Problem)问题禾口其启发式求解算法, cl.由工作流组成的网格应用需要分配多个资源协同完成,这类预留请求的成功完成需要在预留时间段内获得多种类的资源,与多个相应的虚拟资源容器进行虚拟绑定,选取虚拟资源容器所聚合的资源完成该请求。具有QoS保证的网格资源分配就是在保证所选出的多个资源协同满足该预留请求QoS需求的前提下,优化用户满意度,该问题可归化为匪KP问题, c2.匪KP是NP_hard问题,具有QoS保证的网格资源分配问题也是NP_hard的,因此,得出最优网格资源分配方案的算法是指数级的。本发明提出多项式时间复杂度的网格资源分配启发式算法,可以求出网格资源分配的近最优(near-optimal)方案。
有益效果本发明专利提出一种基于资源预留的网格服务质量保证方法,能够达到如下有益的效果
(1)基于虚拟组织的网格资源预留系统架构符合服务网格以虚拟组织为单位管理 资源的理念,该系统架构采用基于虚拟资源容器的资源管理方式,实现预留请求与资源的 运行时绑定,解决了由网格资源动态性所引起的预留请求拒绝率偏高、重协商频繁等问题。
(2)基于QoS欧拉距离的网格资源分配算法(RA_QED)与SNAP协议相比,RA_QED有 效提高了预留请求的接受率,尤其在资源重负载情况下,预留请求接受率提高得更为明显。 如附图4所示。 (3)RA—MHEU算法是一种适合于资源种类和数量较多的高效资源联合分配算法,它 的时间复杂度是多项式级的,附图5. (a)给出RA—MHEU算法与最优解算法的比较结果,由图 可知,RA_MHEU算法所求出的解集接近于最优解。当问题规模变大时,RA_MHEU算法解的质 量和运行时间比其他启发式算法具有更大的优势,附图5. (b)给出了 RA—MHEU算法解与贪 心算法的比较结果。


图1为本发明所述的基于虚拟组织的网格资源预留系统架构图; 图2为本发明所述的RA_QED算法流程图; 图3为本发明所述的RA_MHEU算法流程图; 图4为本发明所述的RA_QED算法与SNAP基于SLA的算法的性能比较图; 图5为本发明所述的RA_MHEU算法解与最优解的比较图; 图6为RA_MHEU算法解与贪心算法的比较图。
具体实施例方式
基于资源预留的网格服务质量保证方法通过虚拟组织内的网格资源预留系统架 构来实现,如附图l所示,其中包括网格资源预留系统架构的工作流程、虚拟资源容器、针 对单个工作单元网格应用的基于QoS欧拉距离的网格资源分配算法和针对工作单元工作 流应用的网格资源联合分配算法四方面的技术方案 a.基于虚拟组织的网格资源预留系统架构处理预留请求的工作流程如下
al.需求分解(Request Decomposition)模块对到达虚拟组织的预留请求进行资 源需求解析,确定该服务请求所需要的资源种类。 a2.虚拟资源容器(VRC, Virtual Resource Container)根据步骤(al)中解析出
的服务请求所需要的资源种类,与相应的虚拟资源容器建立绑定关系。 a3.当预留请求的开始时间到达时,逻辑资源分配器(Logical
ResourceAllocation Manager)通过查询资源信息数据库,依据资源联合分配算法,为该预
留请求所绑定的所有虚拟资源容器选择特定的逻辑资源,并分配给该预留请求。 a4.预留请求获得所需的单个或多个逻辑资源,运行完毕或预留结束时间到达时
释放这些资源, 一个预留请求处理结束。 b.该系统架构引入了虚拟资源容器,它将同一个虚拟组织中相同种类的逻辑资源 聚合到一个虚拟的资源池中,形成功能性的虚拟资源。当多个预留请求同时与某虚拟资源 容器绑定时,虚拟资源容器需要建立预留队列,并负责预留队列的维护,调度和重协商。当 提前预留队列中的提前预留元素到达预留开始时间时,逻辑资源分配器选择合适的逻辑资源与预留请求进行绑定,预留过程进入活跃状态。 利用虚拟资源容器管理网格资源至少具备以下两大优势 bl.适应资源的动态性预留请求占用资源是在未来的一段时间内,物理资源本地负载的变化和允许动态加入和退出的策略使得相对应的逻辑资源的服务能力在网格环境下具有动态波动性,如果预留请求直接与具体物理站点所提供的逻辑资源相绑定,将可能由于所绑定的资源在未来时间段内不可用或性能不能满足要求而导致该预留请求无法成功运行。虚拟资源容器维持预留请求队列,为每个预留请求进行运行时绑定,从而屏蔽逻辑资源的动态性,提高预留请求的成功率。 b2.高度的自治性和灵活性服务网格面向的是大规模的开放环境,不可能对所有物理站点进行集中式的管理,各物理站点需要有良好的自治性,虚拟资源容器使得各物理站点可以控制贡献给网格层的资源种类和比例,具有高度的自治性。另外,虚拟资源容器可以通过的层层嵌套的方式构成更大范围内的虚拟资源容器,具有很强的灵活性。
c.针对单个工作单元网格应用的基于QoS欧拉距离的网格资源分配算法
cl. QoS欧拉距离用于衡量用户QoS需求与资源提供的QoS参数之间的偏差程度,QoS欧拉距离的计算充分考虑了硬QoS参数和软QoS参数的区别,具体的计算方法为
SNAP针对每个任务制定相应的TSLA (Task Service Level Agreement),任务可看作是一组QoS参数的集合,即ti = {qi,化…,qm}。网格资源层被抽象为一组逻辑资源的集合R二 {&, r2, " , rn},针对每个逻辑资源SNAP制定RSLA(resourceservice levelagreement),每个逻辑资源也被看作是一组QoS参数的集合,假设m个QoS参数中有k个硬QoS参数,即有m-k个软QoS参数。于是,TSLA和RSLA分别可以表示为= {Ql, q2,,qk, qk+1,…,qj , A = {&, r2, ...,rk,rk+1,…,rj。 定义特征值Cj表示第j个QoS参数是否被满足。Cj = 1表示该QoS参数被满足,否则(^ = 0,可由式(1)计算。定义特征值hi表示网格任务ti的所有硬QoS参数是否被满足,可通过公式(2)计算。hi = 1表示k个硬QoS参数都能被满足。
。=
1 (力—。)-化.《0
o(力o
(1)^n。
(2) 本发明认为只有在服务请求所有硬QoS参数都被满足的前提下,用欧拉距离来表示服务被满足的程度才有意义。因此,提出利用公式(3)计算QoS欧拉距离。QoS欧拉距离描述了供需QoS向量之间的偏差关系,在确保硬QoS被满足的情况下,计算软QoS的偏差程度。
+ 00 = 0
(3) g幼=
z(力-r》2 C2.对应于单个工作单元网格应用的预留请求首先到达虚拟资源容器的预留队列,资源分配器根据基于QoS欧拉距离的逻辑资源分配算法(RA_QED),为预留队列中到达预留时间的请求选择与预留请求之间欧拉距离最小的可用逻辑资源进行绑定,具体算法流
6程图如附图2所示。 d.针对工作单元工作流网格应用的网格联合资源分配算法 dl.由工作流组成的网格应用的预留请求需要多种类的资源协同完成,因而这类
预留请求需与多个虚拟资源容器进行虚拟绑定,选取虚拟资源容器所聚合的资源完成该类
请求。具有QoS保证的网格资源分配就是在保证所选出的多个资源协同满足该类预留请求
QoS需求的前提下,优化用户满意度。此问题可归化为匪KP求解问题 假设预留请求的QoS需求向量表示为m维的向量Q =Q2,, Qm],需要使用
到的虚拟资源容器为VRQ, VRC2,….,VR(;,为总的N个虚拟资源容器的子集,虚拟资源容
器聚合的资源数量分别为cpcv…,cv资源rij表示VRCi中的第j个资源,其资源QoS属
性表示为m维向量rij二 [r^,r^,, rijm],资源r".的用户满意度为U".。逻辑资源分配
器为预留请求在每个虚拟资源容器中选择一个资源,使得选出的n个资源总的QoS参数满
足预留请求向量Q,且选出资源的用户满意度最大。 以上描述的数学表示为 她X 满足ZI^P^^a (k = 1,2, ,m),Z 二lxij e {0, 1} i = 1, 2. , n ; j = 1,
2, . . . , Ci其中Xij标识资源ru是否被选出,Xij = 1表示VRCi中的第j个原子资源被选 出,1>々=1表示在VRCi中只选择一个且必须选择一个物理资源。 d2.本发明提出多项式时间复杂度的网格资源分配启发式算法RA—MHEU,用来解 决匪KP求解问题。RA_MHEU选择用户满意度较高且节省QoS较多的资源。预留请求的QoS 需求和资源的QoS属性都是m维向量,因此算法首先对m维QoS向量进行量化,量化的权重 为已选出资源QoS属性向量Qfi,。即令 A rij = (r [i] [x [i] ] -r [i] [ j]) □ Qfix/ | Qfix | (4) 若Arij > O,说明资源的总体QoS属性得到了节省。当Arij无法再得到提高时, RA—MHEU算法的规则就试图提高单位QoS属性上的用户满意度Ap,令
口p = (U[i][x[i]]-U[i][j])/口r (5) 若A p > 0,说明资源的单位QoS属性的用户满意度得到了提高。RA_MHEU算法就 是在一组可行初始解的基础上不断提高Arij和Ap的值,即对解向量进行升级,从而得出 近最优解。RA_MHEU算法包括寻找初始解和升级解向量两部分。
RA_MHEU寻找初始解步骤 定义fk = Qfix[k]/Q[k]为第k个QoS参数的违背因子,fk越大表示选出资源的第 k个QoS参数越接近预留请求QoS向量的第k个分量;fk越大也表示未选资源第k个QoS参 数上的变动范围越小。fk> l表示第k个QoS参数已经违背预留请求的QoS需求,解集不 可行。 RA_MHEU算法寻找初始解的步骤如下 (1)将所有VRC中的资源按用户满意度非递减排列,将每个VRC的第l个资源作为 初始解,即以用户满意度最小的资源作为初始解。
(2)如果当前的解向量为可行解,则进入RA_MHEU的升级解向量步骤。 (3)遍历n个VRC,选择QoS节省量Ar最大的资源作为替换方案,令f' k为替换
后的第k个QoS参数的违背因子。如果对于任意k,kG {l,2,3"*m}同时满足以下三条原
则就将该资源替换解向量中的值,否则不作替换。回到步骤(2),三条原则如下 (i)令S = k, s丄Max(fJ,即fs为违背因子最大值,有f' s < f" (ii)对任意e = 1,2…m,如果fe > l且e - S ,有f' E《fE ; (iii)对任意e = 1,2…m,如果fe《l且e - S ,有;f' E《l; (4)可行解向量不存在,RA_MHEU算法结束。 RA—MHEU算法的在寻找初始解时, 一旦判定解向量可行就进入升级解向量步骤。否则就通过替换某个VRC中的资源重新判定解向量是否可行,但是替换后的违背因子需要满足三条原则。原则1表示替换后的最大违背因子需要减小,原则2表示对于已经违背预留请求QoS需求的分量(fE > 1)在替换后不增加,原则3表示对于未违背预留请求QoS需求的分量(fE《1)在替换后仍然不违背。如果所有VRC的违背因子在不断的进步后,仍然找不到可行的解向量则可以判定能够满足预留请求QoS需求的资源分配方案不存在,RA_MHEU算法失败。 RA_MHEU升级解向量步骤 (1)遍历n个VRC,选择比初始可行解具有更高用户满意度的资源。如果替换后解向量仍然可行,且A r大于当前的最大值,则替换当前VRC中的资源。 (2)对于此资源如果Ap大于当前的最大值,则替换当前VRC中的资源,回到步骤(1)。 RA—MHEU算法流程图如附图3所示,其时间复杂度为0 (n2 (C_l)2m),为多项式函数。
权利要求
一种基于资源预留的网格服务质量保证方法,其特征在于该方法包括基于虚拟组织的网格资源预留系统架构和网格资源联合分配方法,其中a.基于虚拟组织的网格资源预留系统架构处理预留请求的工作流程如下a1.需求分解模块对到达虚拟组织的预留请求进行资源需求解析,确定该服务请求所需要的资源种类,a2.虚拟资源容器根据步骤a1中解析出的服务请求所需要的资源种类,与相应的虚拟资源容器建立绑定关系,虚拟资源容器负责把同一个虚拟组织中相同种类的逻辑资源聚合到一个虚拟的资源池中,形成功能性的虚拟资源,a3.当预留请求的开始时间到达时,逻辑资源分配器通过查询资源信息数据库,依据资源联合分配算法所给出的资源分配方案,为该预留请求所绑定的所有虚拟资源容器选择特定的逻辑资源,并分配给该预留请求;针对由单个工作单元组成的网格应用,逻辑资源分配器使用基于QoS欧拉距离的的网格资源联合分配算法;针对由工作单元工作流组成的网格应用,逻辑资源分配器则使用具有QoS保证的网格资源联合分配方法,a4.预留请求获得所需的单个或多个逻辑资源,运行完毕或预留结束时间到达后释放这些资源,一个预留请求处理结束;b.网格资源联合分配方法具体描述如下b1.QoS欧拉距离用于衡量用户QoS的要求与资源提供的QoS参数之间的偏差程度,算法中考虑硬QoS参数和软QoS参数的区别来计算QoS欧拉距离,b2.对应于单个工作单元网格应用的预留请求首先到达虚拟资源容器的预留队列,资源分配器为预留队列中到达预留时间的预留请求选择当前时间最合适的逻辑资源,实现预留请求与逻辑资源的最终绑定,基于QoS欧拉距离的逻辑资源分配算法选择与预留请求之间欧拉距离尽量小逻辑资源进行绑定。
2. 根据权利要求1所述的基于资源预留的网格服务质量保证方法,其特征在于具有 QoS保证的网格联合资源分配方法为将具有QoS保证的网格资源分配问题归化为匪KP问 题和其启发式求解算法,cl.由工作流组成的网格应用需要分配多个资源协同完成,这类预留请求的成功完成 需要在预留时间段内获得多种类的资源,与多个相应的虚拟资源容器进行虚拟绑定,选取 虚拟资源容器所聚合的资源完成该请求。具有QoS保证的网格资源分配就是在保证所选 出的多个资源协同满足该预留请求QoS需求的前提下,优化用户满意度,该问题可归化为 匪KP问题,c2.匪KP是NPJiard问题,具有QoS保证的网格资源分配问题也是NP_hard的,因此,得 出最优网格资源分配方案的算法是指数级的。
全文摘要
基于资源预留的网格服务质量保证方法,主要包含基于虚拟组织的网格资源预留系统架构及部署在架构中的网格资源联合分配算法。基于虚拟组织的网格资源预留系统架构引入虚拟资源容器聚合相同功能的资源,到达虚拟组织的预留请求首先与虚拟资源容器进行虚拟绑定,当请求的预留时间到达时,逻辑资源分配器为预留请求分配一个或多个资源。针对单个工作单元和工作单元工作流两种不同类型的网格应用,逻辑资源分配器中部署了基于QoS欧拉距离的网格资源联合分配算法和具有QoS保证的网格联合资源分配算法。
文档编号H04L12/56GK101783768SQ20101011997
公开日2010年7月21日 申请日期2010年3月8日 优先权日2010年3月8日
发明者伍之昂, 宋爱波, 罗军舟 申请人:东南大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1