收藏 分享(赏)

带回馈机制网格资源发现算法在多域环境中的改进.doc

上传人:cjc2202537 文档编号:211582 上传时间:2018-03-24 格式:DOC 页数:17 大小:112KB
下载 相关 举报
带回馈机制网格资源发现算法在多域环境中的改进.doc_第1页
第1页 / 共17页
带回馈机制网格资源发现算法在多域环境中的改进.doc_第2页
第2页 / 共17页
带回馈机制网格资源发现算法在多域环境中的改进.doc_第3页
第3页 / 共17页
带回馈机制网格资源发现算法在多域环境中的改进.doc_第4页
第4页 / 共17页
带回馈机制网格资源发现算法在多域环境中的改进.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、带回馈机制网格资源发现算法在多域环境中的改进小型微型计算机系统JournalofChineseComputerSystems2008 年 6 月第 6 期Vo1.29No.62008带回馈机制网格资源发现算法在多域环境中的改进崔建群 h,何炎祥,吴黎兵.(华中师范大学计算机科学系,湖北武汉 430079)0(武汉大学计算机学院,湖北武汉 430072)Email:摘要:网格资源发现算法是网格资源发现机制的核心 ,带回馈机制的网格资源发现算法充分利用响应报文与请求报文可能经不同路径返回的特点,在正向搜索失败时,启动反向搜索机制,在一个往返时间里进行二次搜索.但是算法在讨论时将整个网格的拓扑结构看

2、成是一个全分布的系统,所有节点位置平等,而现实中的网格大部分是由多个不同的自治系统联结而成,具有一定的区域性.本文对带回馈机制的网格资源发现算法在多域环境中进行了改进,将资源发现过程分为域内发现和域间发现两部分,分别采用不同的资源发现机制,性能分析和模拟实验表明该算法具有良好的可扩展性和较高的性能,更适合真实的网格环境.关键词:回馈机制;网格资源发现算法;多域环境中图分类号:TP393 文献标识码:A 文章编号:10001220(2008)06107805ImprovementofResourceDiscoveryAlgorithmwithFeedbackMechanisminMultidom

3、ainGridComputingCUIJianqun.HEYan xiang.,WULibing.(DepartmentofComputerScience,HuazhongNormalUniversity,Wuhan430079,China)Z(SchoolofComputer,WuhanUniversity,Wuhan430072,China)Abstract:Resourcediscoveryisachallengingproblemingridcomputingbecausecomputationalresourcesarelargescalegeo-graphicallydistrib

4、uted.Resourcediscoveryalgorithmwithfeedbackmechanismchoosesdifferentpathtosendrequestmessagesandcorrespondingresponsemessages.Afeedbackmechanismisaddedinresponsemessagetorediscoveryrequestedresourceiftheresourcecantbefoundinforwardingpath.Itprovidesmorechancestosatisfytherequest.Butthealgorithmtreat

5、sthegridasafulldistributedenvironmentwhereeverynodehasthesamerank.Infact,realgridisconstructedbymanydifferentAS.Inthispaper,weimprovetheresourcediscoveryalgorithminmultidomaingrid.Thealgorithmusesdifferentmechanismstodealwithdifferentenvironmentsuchasintradomainandinterdomain.Performanceanalysisands

6、imulationresultsshowthatthealgorithmhasgoodscalabilityandhigherperformance.Itismorecompatiblewithrealgridenvironment.Keywords:feedbackmechanism;gridresourcediscoveryalgorithm;multidomainenvironment1 前言网格资源发现算法是网格资源发现机制的核心,网格资源发现算法决定了网格资源服务的形式,覆盖网格的结构,资源注册,命名方式以及资源查找方式,并直接关系到网格资源发现的性能.目前对网格资源发现算法的研究仍

7、然是网格资源管理研究领域中的重点问题.根据对查询请求的处理方式不同,网格资源发现算法主要分为集中式资源发现算法和分布式资源发现算法.在集中式的环境中,中心服务器存储共享资源可检索的索引.所有可用系统的状态信息被聚集在该中心机上.从概念上讲这种发现调度模式是非常有用的,但它形成了一个瓶颈,使得计算网格的大小规模不容易扩充,因此更多的研究重心转移到分布式网格资源发现算法上来.目前在分布式网格资源发现算法研究领域内.已有不少研究成果1, 为了在基本不增加系统额外开销的情况下,提高资源发现算法的成功率,本课题组曾提出一种带回馈机制的新型网格资源发现算法.这种算法在正向搜索和返回资源消息时,选择不同的路

8、径,一旦资源发现失败.在将该消息返回给资源请求者的同时,在不同的返回路径上再进行一次资源发现,这样只需要增加微小的系统开销,就可以很好地提高资源发现的成功率.但是后来的研究发现.这种带回馈机制的发现算法将整个网格的拓扑结构看成是一个全分布的系统,所有节点位置平等,不太适用于目前常见的多域网格环境.因此本文将带回馈机制网格资源发现算法在多域环境中进行了收稿日期:20070207 收修改稿日期:20070514 基金项目:国家自然科学基金重大研究计划(90104005)资助作者简介:崔建群,女,1974 年生,讲师,博士研究生,研究方向为网络通信,高性能计算;何炎祥,1952 年生,教授,博士生导

9、师,CCF 会员.研究方向为分布式计算; 吴黎兵.1972 年生,副教授,博士,研究方向为网络通信,分布式计算.6 期崔建群等:带回馈机制网格资源发现算法在多域环境中的改进 1079一定的改进,使其更适用于多域的真实网格环境.2 带回馈机制的网格资源发现算法原理带回馈机制的网络资源发现算法,主要创新点在于将一次资源发现过程分为两个阶段:正向搜索过程和反向回馈过程.在正向搜索中采用基于邻接表和玎 L 的算法来选择搜索路径,如果正向搜索失败,系统在返回失败信息的同时启动反向搜索机制,选择与正向搜索路径不同的返回路径,并在返回过程中再次搜索所需资源.由于对该算法的讨论在文献6中有详细的介绍,以下仅以

10、一个实例进行简单介绍.正向搜索请求反向回馈响应使用资源请求A 的邻接表一一一一一资源匹源节点图 I 基于回馈机制的网格资源发现算法原理Fig.1Gridresourcediscoveryalgorithmwithfeedbackmechanism图 1 中假设 A 发出 R1 类型资源的搜索请求,TTL 初值为 4.首先 A 查找自己本地资源,发现无法满足该请求 ,则查看自己的邻接表,由于邻接表中对 R1 类型资源成功响应的次数以 B 最多,因此它选择 B 作为下一跳,将资源请求转发到 B.B 收到资源请求后 ,首先将仃,减 1,接着重复 A 的动作.相同的过程在节点间重复,直到找到匹配资源或

11、 L 一 0.如果在丌 L=0 以前找到匹配资源 ,则将成功信息送回A 节点,否则在几一 0 的节点上(G 节点),生成失败报文并在反向回馈的过程中继续寻找相匹配的资源.假设在节点 E找到所需要的资源,则和正向查找成功一样向 A 节点返回成功报文.无论上述哪种情况,只要是将报文回馈给源节点 A,一律采用系统自身的路由算法来转发相应的报文,而不再需要根据资源邻接表来定位.3 算法在多域环境中的改进实验表明带回馈机制的网格资源发现算法可以较好地提高资源发现成功率,同时基本未增加系统开销.不过上述算法在讨论时将整个网格的拓扑结构看成是一个全分布的系统,所有节点位置平等.而现实中的网格大部分是由多个不

12、同的自治系统联结而成,具有一定的区域性.另外由于网格中的节点通常较多,为了减少因资源发现而增加的网络数据流量,带回馈机制算法采用每个资源节点只向一个邻居节点转发资源请求的策略.但是这种策略会降低资源申请在网格中的扩散速度,在正向转发资源请求时,无法让请求并行在多条路径同时进行搜索.针对上述问题,本文将带回馈机制的资源发现算法改进为多域环境下的 RDPFMD(ResourceDiscoverywithProbeFeedbackinMultiDomain)算法,以适应不同的网格环境.3.1 算法原理3.1.1 相关定义定义 1.域(domain):每个自治系统称为一个独立的域.定义 2.边界资源提

13、供者 BRP(BorderResourceProvider):每个域有一个边界资源节点,负责收集本域中的资源分布情况,将其记录在资源分布表中,同时还负责将资源请求向其它域进行转发.定义 3.资源分布表 RDT(ResourceDistrutionTable):用来记录域内资源的分布情况,表中的各项为四元组(,R),R),R,),t,表示域内的某个资源节点 ,R)为该资源节点拥有的资源类型的集合,R)描述了与R) 中资源类型对应的资源性能集合,R)则为该资源节点各类资源的使用状态,1 表示正在使用,0 表示未被使用.例如:(202.114.66.23,“CPU“,“memory“,“disk“)

14、,(“一 2.6GHz“,“一 256M“,“2OGAND80G“),1,1,0)表示地址为 202.114.66.23的节点上 CPU 和内存的资源已经不能再被分配,但可以提供存储资源.3.1.2 网格拓扑RDPFMD 算法建立在常见的两层网格拓扑结构上,整个网格分为多个相对独立的域,每个域由多个终端节点组成,这些终端节点分为两类,一类是普通域内节点,可能是资源申请者或资源提供者,另一类是边界资源提供者 BRP(图 2).图 2 多域网格拓扑结构Fig.2Topologyofmultidomaingrid图 2 中有 6 个域 A,B,C,D,E,F,每个域内包含一个BRP 节点和多个普通节

15、点(E,F 的普通节点未画出).普通节点在系统初始化时,将自己可以提供的资源信息发送给 BRP节点,并在本地保留该信息的副本.BRP 将其记录在自己本地的资源分布表 RDT 中.当普通节点中资源提供情况与其保留下来的发给 BRP 资源信息副本不一致时,普通节点会向BRP 发送资源更新消息,以保证 RDT 中的资源信息与真实情况一致.在此拓扑结构上的资源发现算法 RDPFMD,分为域内发现和域间发现两个过程.(1)域内发现. 资源申请节点(如 A1 节点)fi- 先将资源发现请求发给本域的 BRP 节点(A 节点),BRP 节点在 RDT 中查询域内是否有资源节点可以满足该请求,如果有,则将该请

16、求转发给最接近资源请求性能要求的资源节点(如 A3),由A3 决定是否为 A1 提供所需的资源.如果 A3 向 A1 发送资1080 小型微型计算机系统 2008 矩源发现成功响应报文,则 A1 就可以将要处理的作业传送至A3 进行处理.A3 收到作业后,还需向 BRP 节点发送资源更新消息,以确保 BRP 节点的 RDT 表中资源信息的正确性.(2)域间发现. 如果 BRP 节点 A 在 RDT 中没有找到 A1节点所需的资源,则启动域间资源发现算法,在域间发现中我们采用前面介绍的基于回馈机制的算法思想,不过为了加快请求扩散的速度,在选择向哪个域间邻居节点转发请求时,不再只选择资源邻接表中对

17、该类资源响应频率最高的一个节点,而是选择所有过去曾经响应过该类资源的节点进行转发.由于一个域通常只有一个处于工作状态的 BRP 节点,所以虽然增加了同时转发的节点数,加快了查找的速度,却不会导致明显的网络流量增加.由于可能同时有多条选择路径,也就可能有多个满足条件的资源节点信息返回给申请者,此时按照先响应先服务FRFS(FirstResponseFirstServed)原则,选择最早到达资源申请者的资源节点作为该次资源发现的结果.其后的步骤与前面介绍的带回馈机制的资源发现算法相同,在此不作赘述.3.2 算法描述实现上述 RDPFMD 多域环境下的资源发现机制需要两个算法,运行在普通节点上的 R

18、DPFMDnormalnode()算法和运行在 BRP 节点尺 DPFMDB 尺 P()算法.以下分别是对这两个算法的伪代码描述.算法 1.RDPFMDnormalnode()1sendresourceinformationmessagetoBRPwheninitialization;2sendresourcerequestmessagereq(/d,“,R)toBRP;3,“g=receivemsg();/receivemsg()willbeblockedtillamessageisreceived4If(isResponse 一,t 曙(,tg)5Casefstart(msg)60lsen

19、djob(Job,);break;/findthematchingnode7TMAX,waitforacertaintimethengoto2;break;8otherwiselfendestimate(Job,tstart);9wadadvancereservereq(u,R,fstart,fend);10.If(advancereservationrequestissuccessfu1)11schedule(Job,tstart);/thejobwillbesendtowhenitistimetot-start12Else/cannotfindthematchingnodeandadvan

20、cereservationnode13waitforacertaintimethengoto214Endif15EndCase16Else17If(isRequestmsg(msg)/themessageisarequestmessagefromBRP18reserve(R);/reserveRfortherequest19send(responsemsg,“);20Else21If(isJobExeReq(g)/themessageisajobexecutionre.quest22sendupdatemsg(u,Rl,R,R)toBRP23Endif24EndIf25Endif算法 2.RD

21、PFMDBRPO1buildRDTbasedonresourceinformationmessageofnormalnodes2msgreceivemsg();/receivemsg()willbeblockedtillamessageisreceived3If(islntraRequestmsg(rag)/themessageisaintradomainrequest4vlookup(RDT,R);5If(visnotnul1)/visthematchnode6send(msg,v);7Else/thereisnotmatchnodeinthedomain8reqmsgreq(id,R,丁了

22、 1L);9If(isnonull(n=node(R,)inRAT)10sendneighbor(reqmessage,n),11Else12sendneighbor(reqmsg,random(n);13Endif14Endif15Else/themessageisainter-domainrequest16RDPFResponserexe一 modify(msg);/itisthesamewithRDPFResponserexeexceptforusingsendneighbor(reqmessage,n)insteadofsendneighbor(reqmessage,n)17Endif

23、4 性能分析为了对 RDPFMD 算法进行定量分析,需要用到Faloutsos 等人口发现的 Internet 拓扑中存在的 4 条幂律定理.定理 1.(等级指数叨) 节点出度与该节点等级的尺次幂成比例:r,其中节点等级 r 为在按出度降序排列序列中的索引值.定理 2.(出度指数 0)出度频率与该出度 d 的 0 次幂成比例:do.定理 3.(hopplot 指数日)h 跳内节点对的数量 P()与h 的 H 次幂成比例:P(h)och.定理 4.(特征指数 E)特征值九与其次序 i 的 E 次幂成比例:koci.4.1 网络流量分析首先对 RDPFMD 算法所增加的网络数据流量进行分析,通过统

24、计一次资源发现可能产生的报文个数来估计因资源发现而导致的网络流量.RDPFMD 算法包括域内发现和域间发现两部分,因此应为:N 一 N 女+ 女(1)其中域内发现所产生报文个数一一的最大值为:max() 一 3(2)由于域间发现采用了同时向曾经响应过该类资源的多个邻居转发资源请求,因此请求报文产生的最大个数与 Flooding 方法相同,另外在反向回馈探测过程中由于最多经过 k 个节点=TTL),因此还会产生最多 k 条响应报文,所以域间发现所产生的报文个数 N 一一一也最大值为:max(N 一一女)一 +L 一3(1-3TrL)+TTL(1-3)(3)1-d,其中为域间 BRP 节点的平均出度数:一一

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 教育学

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报