梁 毅,邸瑞华,张 争,詹剑锋,王 磊
(1.北京工业大学计算机学院,北京 100124;2.中国科学院计算技术研究所,北京 100190)
基于虚拟货币的网格资源共享管理
梁 毅1,邸瑞华1,张 争1,詹剑锋2,王 磊2
(1.北京工业大学计算机学院,北京 100124;2.中国科学院计算技术研究所,北京 100190)
针对网格非合作资源共享环境中的资源共享管理问题,提出了基于虚拟货币的网格资源共享管理方法,设计了具有闭环特征的虚拟货币使用模式,定义了基于单位时间的资源费用模型,并提出了基于定期受限的资金注入及资源计费策略.实验结果表明,基于虚拟货币的网格资源共享管理,可以通过津贴帐户资金注入最大值的调整实现用户资源使用区分对待,并确保用户通过资源贡献实现更好的作业执行效率.
网格计算;资源共享;虚拟货币;用户帐户;资源计费
网格作为新兴的计算环境,提供了一个崭新的资源聚合和共享的平台.用户通过贡献其闲置的资源进入网格并使用网格中共享的资源,促进了闲置资源的利用,减少了资源冗余[1-2].然而,网格环境下新型资源使用模式对资源共享管理提出了挑战:随着网格规模的扩大,网格资源的提供者及资源的使用者不再来自于单一团体或合作式的多团体,即网格参与者间存在着非合作的资源共享关系[1,3].
在非合作的资源共享关系下,网格资源共享管理面临2个主要问题:1)如何促使资源所有者贡献其闲置资源;2)如何对用户的资源使用实现有效控制[3-4].既有的网格系统对于资源贡献的激励机制研究尚少,多沿用合作式环境中基于自愿、协议共享的资源提供模式,文献[5-7]中均提出通过确定SLA服务协议确保资源提供和服务质量.在用户资源使用控制上,既有网格系统,如Globus、Condor-G和AppLes等,多继承了传统的基于用户的优先级调度策略,以实现用户资源使用区分对待[8-10].然而,随着网格规模的扩大,在非合作的资源共享关系下,网格系统管理员难以预知用户及作业的完整信息,因此,难以对用户优先级进行实时准确的调整.此外,在非合作的网格资源共享环境中,无偿的资源共享模式难以防止用户通过贡献少量资源进入网格平台,并大量占用共享资源的恶意使用行为[2-3].与基于对等的资源交易平台相比,网格的研究重点是资源的共享,而非资源的实际交易[1].作者针对上述问题,提出了基于虚拟货币的网格资源共享管理.
基于虚拟货币的网格资源共享管理的核心思想是在网格资源共享中引入虚拟货币,实现网格资源的有偿使用以及对资源贡献的收益核算,从而达到对网格资源共享的控制以及对资源贡献的激励.虚拟货币是网格中资源使用/提供所获得收益的核算单位.
与传统电子商务平台不同,在网格环境中,收益核算的引入不仅仅是通过资源的“交易”盈利,更是资源的聚合共享,即鼓励用户贡献资源,支持资源较稳定地驻留于网格平台,进行多次交换共享,从而提高网格资源池的资源稳定性[11-12].因此,作者设计网格环境中虚拟货币的“闭环”使用模式如下:
1)虚拟货币获取模式.用户获得虚拟货币的途径有2种:一是通过网格系统的虚拟货币注入(即津贴),二是通过贡献资源进行资源交易,获取虚拟货币.
2)虚拟货币消费模式.虚拟货币仅可用于网格资源池中的资源购买.
用户对虚拟货币使用的“闭环”特征是指虚拟货币仅用于网格平台中的资源使用和贡献核算,不再与其他形式的货币(尤其是真实货币)进行流通交换.虚拟货币的“闭环”使用的优越性在于:
1)独立的货币形式,便于系统通过货币分配管理用户的资源使用份额.
2)封闭的使用模式,不与真实货币实现流通交换,防止资源所有者以盈利为目的,短暂地进入网格平台进行资源交易,提高网格资源池的资源稳定性.
3)实现“多劳多得”的原则,鼓励用户通过贡献资源实现收益,以获得更多的资源使用份额,从而促使用户提供资源,实现网格资源的聚合.
虚拟货币的引入,使得资源的使用和贡献都基于收益核算进行.用户资金账户定义及资源的费用模型如下.
1)用户资金账户定义
在基于虚拟货币的网格资源共享管理中,为每个网格用户设置2个帐户:津贴帐户和自盈利帐户.津贴帐户中的资金由网格系统定期注入,自盈帐户中的资金由用户通过贡献资源获得.对于账户资金注入的策略将在第3节中详细阐述.
2)资源费用模型
在网格环境中,用户作业的运行时间长短不一,这使得对于资源费用的表达必须基于一个统一的时间单位.
令Pi为用户作业i的资源费用模型,则
其中,(ri1,ri2,…,rin)为用户作业i使用的资源集;di为作业i的运行时间;si为作业i的开始运行时刻;u为资源计费的单位时间;对于任一mij∈(mi1,mi2,…,min),mij为作业i使用资源rij在单位时间内应付的资源费用,且满足 mij≥0.
由上述描述可知,基于虚拟货币的用户作业资源计费是基于单位时间内资源的费用进行的,同时,在模型中给出作业的起始运行时刻和总运行时间,可确定用户作业为资源使用而应付出的总费用.资源费用模型是制定资源计费策略的基础.在模型实现上,系统可根据作业运行时间特征,对所有资源确定一个统一的计费单位时间,从而确保计费精确性.
虚拟货币作为独立的货币形式,通过货币分配管理用户的资源使用份额,同时,通过资源有偿使用,促使资源拥有者贡献资源.因此,用户账户资金注入及资源计费策略是关键.
1)津贴帐户的资金注入策略
设Git为用户i的津贴帐户在t时刻的资金注入量,则Git可表示为
其中,I为常数,是津贴帐户2次资金注入的间隔时间;Mi为任一时刻用户i的津贴帐户中允许存储资金的最大值;ait为t时刻用户i的津贴帐户中的余额.
2)自盈利账户的资金注入策略
设vit为用户i的自盈利账户在t时刻的资金注入量,则
其中,O为常数,是自盈利帐户2次资金注入的间隔时间;Jit为距时刻t最近一次的用户i自盈利帐户资金注入时,使用用户i所提供资源的作业集;cijt为作业j在t时刻因使用用户i所提供的资源而产生的付费金额,可表示为
其中,Kij为作业j所使用的用户i提供的资源集;pk为资源k的单位时间计费;rijt为从距时刻t最近一次的用户i自盈利帐户资金注入到时刻t的时段内作业j的运行时间;u为资源计费的单位时间.
3)资源计费策略
设fit为用户i在t时刻的资源计费量,则
其中,dit为在t时刻用户i的津贴帐户及自盈利帐户余额的总量;C为常数,是2次资源付费的间隔时间,与O相同;Wit为距时刻t最近一次的用户i资源付费时,用户i正在运行的作业集;oijt为在时刻t用户i为其作业j所使用的资源应进行的付费总额,可表示为
其中,Rij为用户i的作业j所使用的资源集;pr为资源r的单位时间计费;njt为从距时刻t最近一次的用户i资源付费到时刻t的时段内作业j的运行时间;u为资源计费的单位时间.
帐户资金注入及资源计费策略实际上是基于定期受限的思想实现对用户资源使用的控制,并确保资源贡献的收益,即对于用户的津贴帐户定期(每隔I时间)注入资金,并限制了津贴帐户额度(最大值为Mi).同时,由策略描述可知,用户自盈利帐户的资金注入与用户的资源计费同时进行,定期(每隔O时间)对所有该用户正在使用的资源根据确定的价格实行计费,即∑oijt,并对该用户所有的资源贡献,根据确定的资源单位时间费用,从资源使用者帐户中获取费用,即∑cij.该策略对用户的资源使用进行了限制,即任意时刻用户所能使用的资源产生的总费用须小于等于用户帐户中的总余额.
基于定期受限的用户帐户资金注入及资源付费策略的优越性在于:1)基于资源有偿使用,通过定期注入资金,避免了既有网格环境中由于资源无偿使用而导致的恶意用户长期占用大量资源的行为;同时,通过限制津贴帐户的最大额度,避免了资金的累加,从而防止用户通过长期积蓄资金,大量占用资源的恶意行为;2)仅对周期内用户可拥有的资金的最大值进行了限制,而没有对用户在其作业间资金的分配进行限制,这就使得用户可以灵活地使用资金,克服了既有网格环境中基于用户的优先级模式下,用户A的所有作业的优先级均高于用户B作业的不合理现象,实现了更加灵活的用户资源使用;3)通过在作业执行过程中定期的费用扣除,支持用户在单位时间能获取资金用户更多的作业的资源,并降低作业执行结束后一次性付费导致的收益风险.同时,可以看到,在网格环境中该策略可以通过对用户的津贴账户设置不同的资金注入最大值Mi,实现对不同用户的区分对待.通过提高资金注入的最大值,使得用户在周期内拥有更多的资金,可完成更多的作业,从而提高用户作业的执行效率.在实验分析中,将验证这个结论.
测试是基于中国科学院计算所曙光高性能计算平台及北京工业大学高性能计算平台所构成的广域计算环境进行的,该环境共由32个节点组成[13].其中,16个节点的主要配置为CPU Intel XEON 2.8 GHz×2,内存2GB,另外16个节点的配置为CPU AMD OPTERON 1.8 GHz×2,内存1GB.
根据文献[14],并参考上海超级计算中心(中国国家网格CN-Grid主节点之一)的资源调度需求特征[15],构造了混合负载工作流,主要作业类型见表1.其中,迷你作业数与其他作业总数比例为1∶2,大、中、小作业比例数为1∶23∶86.测试设置负载工作流的作业总数为1980;作业到达符合泊松分布;虚拟货币表达为v S|,资源单价为60 v S|/s;津贴帐户和资源计费周期均为1 s;津贴帐户资金注入量为100 v S|/s.测试选取作业平均等待时间为性能指标[16].
表1 混合负载工作流作业类型表Table 1 Job categories in the hybrid work load
在该组实验中测试变化用户津贴帐户资金注入最大值对用户作业执行效率的影响.设置测试场景如下:在系统中设置30个用户,构造的负载工作流中的任一作业随机地属于其中一个用户.对于任一用户,固定其他用户的津贴帐户最大值(设置为100 v S|/s),改变该用户的津贴帐户最大值,测试属于该用户的所有作业的平均等待时间.为避免测试特殊性,该实验对所有30个用户均进行上述测试.在用户津贴帐户资金注入量分别为100、200、300、500、1 000 v S|/s时,所有30个用户的作业平均等待时间的均值分别为7.153、6.766、6.715、6.612、6.438 ks.实验结果表明,随着津贴账户注入资金数的增加,用户作业的平均等待时间不断减少,最大减少幅度为10%.其原因是通过向津贴帐户注入更多的资金,使得用户的作业不会因为账户缺乏资金而被阻塞.显然,通过注入资金的不同,实现了既有网格环境中优先级的用户区分对待,同时,允许用户自主支配其货币,克服了传统优先级算法统一设置用户作业优先级的缺陷,增加了资源分配的公平性和灵活性.
该组实验设置测试场景如下:在系统中设置30个用户,构造的负载工作流中的任一作业随机地属于其中一个用户.用户可向既有的32个节点的网格资源池中贡献资源.对于任一用户,固定其他用户的资源贡献量为0,变动该用户的资源贡献量,测试属于该用户的作业平均等待时间.用户所贡献的资源配置为CPU Intel XEON 2.8GHz×2,内存2GB.为避免实验特殊性,该实验对所有30个用户均进行上述测试.
由测试结果图1可知,随着用户资源贡献量的增加,用户作业平均等待时间不断减少,与不进行资源贡献比较,作业平均等待时间最大减少了14%.其原因是在基于虚拟货币的管理中,用户通过资源贡献实现收益,单位时间用户可获得更多虚拟货币支持其作业运行,从而减少了由于资金不足而等待的几率.因此,基于虚拟货币的管理,能促使那些具有作业运行需求的用户通过贡献资源,更好地支持其作业及早获得资源,提高作业执行效率.
图1 不同资源贡献量下用户作业平均等待时间变化Fig.1 Average job waiting time under different resource contributions
针对网格非合作资源共享环境中资源贡献激励及资源使用控制问题,提出了基于虚拟货币的网格资源共享管理.该方法通过对用户的资源使用和资源贡献进行基于虚拟货币的收益核算,实现对网格资源共享的控制以及对资源贡献的激励;通过定义虚拟货币的闭环使用模式鼓励资源贡献,提高网格资源池的资源稳定性;通过定义基于单位时间的资源费用模型确保对资源使用的精确计费;通过设计基于定期受限的用户帐户资金注入及资源计费策略,实现了对用户资源使用的区分对待,与传统优先级策略相比有较好的灵活性和可行性,并能防止恶意资源使用行为,确保资源收益.
[1]FOSTER I,KESSELMAN C.The grid:a blueprint for a new computing infrastructure[M].2nd ed.San Francisco:Morgan Kaufmann,2003:100-130.
[2]NABRZYSKI J,SCHOF JM,WEGLARZ J.Grid resource management:state of the art and future trends[M].Boston:Kluwer Academic Publishers,2003:145-168.
[3]SOBOLEWSKIM.Federated grid computing with interactive service-oriented programming[J].Concurrent Engineering,2006,14(1):55-66.
[4]FOSTER I,FREEMAN T.Virtual clusters for grid communities[C]∥The International Conference on Cluster Computing and Grid(CCGRID).Singapore:IEEE Computer Society,2006:23-34.
[5]OUELHADJD,GARIBALDI J.A multi-agent infrastructure and a service level agreement negotiation protocol for robust scheduling in grid computing[C]∥European Grid Forum,European Grid Conference 2005.Amsterdam,Netherlands:Springer,2005:98-104.
[6]DUMITRESCU C L,FOSTER I.Gruber:a grid resource usage SLA broker[C]∥European Grid Forum,the 11th International Euro-Par Conference.Lisbon,Portugal:Springer,2005:56-68.
[7]MENASCE D A,CASALICCHIO E.A framework for resource allocation in grid computing[C]∥The 12th IEEE International Symposium on Modeling,Analysis,and Simulation of Com puter and Telecommunications Systems(MASCOTS 2004).Netherlands:IEEE Computer Society,2004:110-123.
[8]FOSTER I.Globus toolkit version 4:software for service-oriented systems[C]∥The International Conference on Network and Parallel Computing 2005.Nanjing:Springer,2005:45-68.
[9]CASANOVA H,GRAZIANO O.The App LeS parameter sweep template:user-level middleware for the grid,scientific programming[J].IOS,2000,8(3):111-126.
[10]FREY J,TANNENBAUM T.Condor-G:a computationmanagementagent formulti-institutionalgrids[J].Journal of Cluster Computing,2002,5(3):237-246.
[11]AGARWAL V,KARNIK N,KUMAR A.Metering and accounting for composite e-services[C]∥The International Con ference on E-Commerce2003(CEC 2003).Newport Beach:IEEE Computer Society,2003:12-23.
[12]RAZAVI A R.MALONE P J.A distributed transaction and accountingmodel for digital ecosystem composed services[C]∥The 1st IEEE Conference on Digital EcoSystems and Technologies Conference(DEST'07).Cairns,Australia:IEEE Computer Society,2007:56-65.
[13]ZHANG Z H,MENG D,ZHAN JF.Easy and reliab le clustermanagement:the self-managementexperience of fire phoenix[C]∥IPDPS 2006 SMTPSWorkshop.Greece:IEEEComputer Society,2006:143-156.
[14]CHUN BN,CULLER D.User-centric performance analysis ofmarket-based cluster batch schedulers[C]∥The 2nd IEEE International Symposium on Cluster Computing and Grid(CCGrid 2002).Berlin,Germany:IEEECom puter Society,2002:100-113
[15]奚自立.上海超级计算中心运行五年分析[J].高性能计算发展与应用,2006,13(1):2-6.XIZi-li.The five-year analysis report on Shanghai supercomputing center[J].Development and App lication of High Performance Computing,2006,13(1):2-6.(in Chinese)
[16]ERNEMANN C,HAMSCHER V.Benefits of global grid computing for job scheduling[C]∥The 5th IEEE/ACM International Workshop on Grid Computing.Pittsburgh:IEEEComputer Society,2004:23-34.
(责任编辑 梁 洁)
Virtual Currency-based Grid Resource Sharing Management
LIANG Yi1,DIRui-hua1,ZHANG Zheng1,ZHAN Jian-feng2,WANG Lei2
(1.College of Com puter Science,Beijing University of Technology,Beijing 100124,China;2.Institute of Computing Technology,Chinese Academy of Sciences,Beijing100190,China)
With a view to the efficient management of the non-cooperated grid resource sharing,a virtual currency-based resource sharing management solution is proposed.As the key issue of the solution,the closelooped usemode of the virtual currency is defined and the time unit-based resource pricemodel is presentas the basis of the solution;and the funding injection and the resource charging strategy are designed.Experimental results show that the virtual currency-based resource management solution can prioritize user's job with the allowance account funding injection and ensure a better computational efficiency for users with the resource contribution.
grid computing;resource sharing;virtual currency;user account;resource price
TP302
A
0254-0037(2010)04-0540-06
2008-06-27.
国家自然科学基金资助项目(60703020);国家“九七三”计划资助项目(2007CB311100);北京工业大学青年基金资助项目(97007013200702).
梁 毅(1975—),女,广东中山人,讲师.