CN100502389C - 一种基于ogsa规范的网格计算过程表示系统及其实现方法 - Google Patents

一种基于ogsa规范的网格计算过程表示系统及其实现方法 Download PDF

Info

Publication number
CN100502389C
CN100502389C CNB2004100255454A CN200410025545A CN100502389C CN 100502389 C CN100502389 C CN 100502389C CN B2004100255454 A CNB2004100255454 A CN B2004100255454A CN 200410025545 A CN200410025545 A CN 200410025545A CN 100502389 C CN100502389 C CN 100502389C
Authority
CN
China
Prior art keywords
gst
service
msg
services
gstn
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2004100255454A
Other languages
English (en)
Other versions
CN1595932A (zh
Inventor
陈庆奎
那丽春
宋云
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Shanghai for Science and Technology
Original Assignee
University of Shanghai for Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Shanghai for Science and Technology filed Critical University of Shanghai for Science and Technology
Priority to CNB2004100255454A priority Critical patent/CN100502389C/zh
Publication of CN1595932A publication Critical patent/CN1595932A/zh
Application granted granted Critical
Publication of CN100502389C publication Critical patent/CN100502389C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种基于OGSA规范的网格计算过程表示系统及其实现方法。所述系统包括通过WAN或Internet网络互连的过程服务器PS(包括GPS、LPS)、过程信息库PIB、全局时钟GTS、网格服务节点GSN、应用代理AA和过程服务代理PSA;所述实现方法包括运行在GPS、LPS、PSA、GSN上的相关的进程算法;所述计算方法包括按照先根顺序访问网格服务树GST所有节点的三个过程,DP、CP和RP,三个过程之间是异步并行进行的,并且保持了一定的同步机制。本发明属于一种粗粒度并行的网格系统,它采用的多级分布的过程服务器PS、分布的PSA机制以及全局Web时钟体系,非常适合广域网络上的网格计算,具有良好的可扩展性。本发明适合于基于WAN或Internet的网格系统监测、计算过程分析和服务性能分析,还可以用于互联网络上的Web service的QOS分析、监测等方面。

Description

一种基于OGSA规范的网格计算过程表示系统及其实现方法
技术领域
本发明涉及一种使用互联网络的通用数据处理设备及其计算、实现方法,特别是涉及一种基于OGSA规范的网格计算过程表示系统及其实现方法。
背景技术
网格是构筑在互联网上的新兴技术,它将高速互联网、高性能计算机、大型数据库、传感器、远程设备等融为一体,为科技人员和普通使用者提供更多的资源、功能和交互性。互联网主要为人们提供电子邮件、网页浏览等通信功能,而网格功能则更多更强,能让人们透明地使用计算、存储等其他资源。网格已经成为下一代互联网的重要的发展方向。目前,网格浪潮正酝酿涌动的时刻,各国政府纷纷投下巨资,进行网格理论、技术、标准以及应用的研究、开发、实施工作。网格的具体应用已经成为当今网络计算领域关注的焦点,通过广域网络或Internet把若干个超级计算机系统或计算机网络资源以及其它一切可用资源连接在一起构成超级计算环境,提供高性能价格比的超级服务资源环境是网格研究的主要目的。目前,已经有一些网格系统在各个领域成功应用,如Globus、legion、Condor、CERN DataGrid、VEGA、ChinaGrid等。网格的体系结构一直是该领域的焦点,因为它决定着网格的计算方式和发展模式。重要的网格体系结构目前有两个:一个是Foster在早些时候提出的五层沙漏结构,一个是结合Web service技术的开放网格服务结构OGSA,后者是当前学术界和工业界公认的标准,是Global GridForum4的重要标准建议。仅仅有了规范的体系结构,还不能就实现网格的计算,需要研究该体系结构上的计算实现方法。对五层砂漏结构而言,该结构是一个以协议为中心的体系结构,其计算过程涉及到多层协议,所以很难用建模表示一个有效的网格计算过程。对OGSA规范而言,其是一个以服务为中心的模型,通过虚拟的网格服务构建不同规模的服务资源,甚至是更广阔的虚拟组织,应用空间非常广阔,但OGSA仅仅是一个规范框架,其中大部分工作留给各个研究机构、实践机构去完成,又因为网格的广域性带来了网络延迟和异构性等一系列复杂的问题,所以自OGSA框架初步形成以来,还没有一个完整的基于OGSA规范的网格计算过程表示系统及其实现方法。
发明内容
本发明的目的在于结合OGSA规范、Web Service开发技术,对基于OGSA规范的网格过程表示系统进行结构建模,提供一种基于OGSA规范的网格计算过程表示系统;本发明的另外一个目的在于提供一种基于上述系统的实现方法。
为了实现上述目的,所采用的技术方案:一种基于OGSA规范的网格计算过程表示系统,包括通过网络互连的下列部件:
过程服务器PS,管理、收集、协调、存储网格中的过程信息;
过程信息库PIB,储存网络服务树GST数据;
全局时钟GTS,统一整个网格的时间;
网格服务节点GSN,完成特定的服务;
过程服务代理PSA,收集所述网格服务节点GSN的服务过程信息,同时完成和所述过程服务器PS的信息互达;
过程信息管理系统PIMS,提供网格计算过程的存储管理、语义表示、过程监控和可视化界面;
应用代理AA,负责接收用户的应用网格服务请求。
一种基于上述网格计算过程表示系统,按照如下的步骤进行网格计算、并表示网格计算的过程:
(1)应用代理AA向网格PG提交网格服务树GST;
(2)GPS并发地做(3)、(4);
(3)GPS广播GST到所有的LPSi(1≤i≤m);
(4)GPS通知网格PG驱动GST根服务,GST被并发驱动执行;
(5)所有的LPSi(1≤i≤m)并发广播GST到其所属PSA;
(6)所有PSA启动监视其管辖的网格服务节点GSN的进程;
(7)所有网格服务节点GSN并行执行网格计算的三个过程:服务驱动过程DP、服务节点本地服务执行过程CP和服务结果回收过程RP,并把每个过程的起始时间、资源使用、服务时间信息发送给其所对应得PSA;
(8)所有的PSAi(1≤i≤p)并发地收集其所辖网格服务节点的服务过程信息,并把收集到的过程信息发送给其所对应的LPS;
(9)所有的LPSi(1≤i≤m)并发地收集其所辖PSA提供的过程信息,并把收集到的过程信息发送给GPS,把过程信息存放本地数据库PIBi;
(10)GPS收集、监控所有LPSi(1≤i≤m)的过程信息并存放过程信息到数据库PIB,同时监测GST根节点的RP结果,在整个GST被驱动执行过程中,PIMS提取PIB过程信息并显示GST执行过程;当GST根节点的RP结果信息收到后,GPS把服务结果发送给AA,完成GST计算过程。
本发明采用的技术方案具有以下优点和积极效果:本发明为下一代互联网络的核心技术网格计算提供一套可行的计算过程表示系统和实现方法。本发明所述网格计算过程表示系统采用构建在现有的计算机系统之上的应用层来协同工作,属于一种粗粒度并行的网格系统,适合广域网络上的网格计算。本发明采用的多级分布的过程服务器PS、分布的PSA机制以及全局Web时钟体系,使网格计算系统更适合WAN和Internet,具有良好的可扩展性。本发明的网格计算过程表示系统及其方法是基于以上优点,非常适合于基于WAN或Internet的网格系统的监测、计算过程分析和服务性能质量分析等方面,还可以用于互联网络上的Web service的QOS分析、监测等方面。
附图说明
图1网格计算过程表示系统的体系结构示意图;
图2网格计算过程示意图。
具体实施方式
1、网格计算过程表示系统的体系结构描述
下面结合附图,对本发明进一步详细描述:如图1所示,一种基于OGSA规范的网格计算过程表示系统的体系结构包括通过WAN或Internet网络连接的如下主要部件:
(1)过程服务器PS(Process Server)
过程服务器是负责管理、收集、协调、存储网格中的过程信息的计算机。在一个网格上,过程服务器可以采用集中式和分布式两种实现模式。本模型是基于多级分布机制的过程服务器模型。设网格并行环境由n台计算机C1,C2,…,Cn通过m个物理网络N1,N2,…,Nm连接而成,每个物理网络中设置一台计算机为区域过程服务器LPSi(LocalProcess Server)(1≤i≤m),整个网格上有一个全局过程服务器GPS(Grid ProcessServer)。
(2)过程信息库PIB(process information Base)
PIB是过程服务器存放GST的数据库。最初把GST的初始框架存放在PIB中,在GST被执行完毕后,PIB存放的是带有网格计算全过程信息的GST。为了适合网格环境的扩展性,我们对每个LPSi(1≤i≤m)和GPS都配置一个过程信息库,分别记为PIBi(1≤i≤m)、PIB。
(3)全局时钟GTS(global time system)
为了有效支持网格计算过程的表示,需要在网格建立一个全局时钟体系GTS。有关GTS我们可以借鉴时钟同步协议。
(4)网格服务节点GSN(grid service node)
在网格中完成特定服务的计算机或服务资源。
(5)过程服务代理PSA(process service agent)
PSA负责收集各个网格服务节点的服务过程信息,同时完成和LPS的信息互达功能。
(6)过程信息管理系统PIMS(process information management system)提供网格计算过程的过程信息的存储管理、语义表示、过程监控、可视化表示等功能。
(7)应用代理AA,负责接收用户的应用网格服务请求。
2、系统涉及的形式化定义
定义1(网格服务树)一棵网格服务树(Grid Service Tree)是一个三元组GST(GS,GS_SET,R),其中GS为高级网格服务,GS_SET={GS1,GS2,…,GSn}一组低级服务,R为规则集。GS由一组低级服务GS1,GS2,…,GSn按照规则集R实现。我们以GS为根结点,以GS1、GS2、…、GSn为子孙节点,规则集R为连接关系构造网格服务树GST;如果一个低级服务GSi在树种的不同位置出现两次以上,则把它当作两次独立的服务,每次服务在GST中有一个树节点与之对应,第二次以后的服务采用虚拟节点表示。
定义2(网格计算过程)一个网格计算过程GCP(Grid Computing Process)就是按照先根顺序访问网格服务树GST所有节点的并发驱动、实现过程。全过程分三个过程:(1)服务驱动过程,父节点服务驱动子节点服务的过程,我们简记DP(DrivingProcess);(2)节点本地服务执行过程,本节点完成本地服务的逻辑功能,并且承担同步所有子服务工作,我们简记CP(Computing Process)。(3)服务结果回收过程,子节点服务向父节点服务返回服务结果的过程,我们简记RP(Receiving Process)。三个过程DP、RP、CP之间是异步并行进行,并且需要一定的同步机制。
定义3(网格服务树节点)
一棵网格服务树GST的树节点(GST NODE)可以表示一个四元组GSTN(GSTI,DL,RL,CL)。其中GSTI为网格服务树信息(GST Information);DL是本服务节点所驱动的其它子服务的列表(Drive List),即该服务节点的所有子服务有序集合。CL是本服务节点所完成的本地服务的进程列表(Computing List),即该服务节点所有本地服务的有序集合。RL为该服务节点接收其所有子服务的服务结果列表(Receive List)。DL可以表示为DL(SID,DST),其中SID(Service ID)表示服务标志符,DST(Drive StartTime)表示服务SID的驱动起始时间;CL可以表示为CL(CID,CST,CFT,RSL),其中CID(Computing process ID)表示本地计算进程标志符,CST(Computing Start Time)表示CID计算的起始时间;CFT(Computing Finished Time)表示CID计算的结束时间;RSL是资源列表。RL可以表示为RL(SID,RFT,RSL),其中SID(Service ID)表示服务标志符,RFT(Receive Finish Time)表示服务SID的服务结果回收结束时间;RSL是资源列表。RSL的主要属性是:序号、资源类型、资源标志符、资源数量、使用时间;资源类型包括:CPU、Disk I/O、Communication、Memory、Disk。
定义4(网格计算过程表示系统GCPPS)
一个网格计算过程表示系统(grid computing process presentation system)可以表示为一个七元组GCPPS(GPS,LPSS,PIB,PIBS,GTS,PSAS,PIMS),其中GPS为全局过程服务器,LPSS是区域过程服务器集合{LPSi|(1≤i≤m)};PIB是全局过程信息库;PIBS区域过程信息库集合{PIBi|(1≤i≤m)};GTS全局时钟体系;PSAS是过程服务代理集合{PSAi|(1≤i≤p)};PIMS是过程管理系统。一个GCPPS的体系结构图如图1所示。
定义5(过程网格PG)一个过程网格(process grid)可以表示为一个二元组PG(GS,GCPPS),其中GS表示网格PG的所有网格服务节点的集合{GSN1,GSN2,…,GSNk},GCPPS表示网格PG的网格计算过程环境。假设GS中的每个GSNi(1≤i≤k)可以提供多个网格服务。
3、网格计算过程表示系统工作原理
如图2所示,已知一个过程网格PG(S,GCPPS),一个GST在PG上被执行的过程是一个并发、异步驱动的过程。具体执行过程如下:
(1)应用代理AA(applications agent)向网格PG提交网格服务树GST,图2的<1>表示这一过程;
(2)GPS并发地做(3)、(4);
(3)GPS广播GST到所有的LPSi(1≤i≤m),图2的<2>表示这一过程;
(4)GPS通知网格PG驱动GST根服务,GST被并发驱动执行,图2的<4>表示这一过程;
(5)所有的LPSi(1≤i≤m)并发广播GST到其所属PSA,图2的<3>表示这一过程;
(6)所有PSA启动监视其管辖的网格服务节点(GSN)的进程;
(7)所有网格服务节点,并行执行网格计算的三个过程:DP、CP、RP,并把每个过程的起始时间、资源使用、服务时间信息发送给其所对应得PSA,图2的PartC和<5>表示这一过程;
(8)所有的PSAi(1≤i≤p)并发地收集其所辖网格服务节点的服务过程信息,并把收集到的过程信息发送给其所对应的LPS,图2的<6>表示这一过程;
(9)所有的LPSi(1≤i≤m)并发地收集其所辖PSA提供的过程信息,并把收集到的过程信息发送给GPS;把过程信息存放本地数据库PIBi。,图2的<7>表示这一过程;
(10)GPS收集、监控所有LPS的过程信息并存放过程信息到数据库PIB;同时监测GST根节点的RP结果;如果GST根节点的RP信息收到,则把服务结果发送给AA;结束GST计算过程。在整个GST被驱动执行过程中,PIMS提取PIB信息并过程显示GST过程。
4、具体实现方法描述
下面给出实现该系统的四个主要算法:
已知一个过程网格PG(GS,GCPPS),GST_READY_QUEEN是PG的网格服务树就绪队列;GST_STARTING_QUEEN网格服务树启动队列;过程Driving(GSTN)表示驱动一个以GSTN为根节点的网格服务树的计算过程;过程Receiving(GSTN)表示异步接收以GSTN为根节点的网格服务树的服务结果。过程Computing(GSTN)表示计算GST服务。finished(GSTN)表示判别以GSTN为根节点的网格服务树是否完成。Start(p)启动进程p;MSG网格服务过程消息。
算法1(GPS算法)
在GPS上运行的四个并发进程:网格服务接受进程、网格服务驱动进程、网格服务结果接收进程、接收服务过程信息。下面分别给出主要步骤。
a.网格服务接受进程
(1)重复执行(2)~(4)步;
(2)接收应用代理AA提交的一个高级服务;
(3根据服务信息构建网格服务树GST;
(4)把新的GST加入网格服务树就绪队列GST_READY_QUEEN;
b.网格服务驱动进程
(1)重复执行(2)~(5)步;
(2)取GST_READY_QUEEN的一个网格服务树GST;
(3)执行Driving(GST)和Receiving(GST);
(4)把GST加入GST_STARTING_QUEEN对列;
(5)广播GST到所有的LPS;
c.网格服务结果接收进程
(1)对GST_STARTING_QUEEN的每个GST执行(2)步;
(2)如果finished(GST)为真,则执行(3)~(5)步;
(3)发送GST的网格服务结果到AA;
(4)从GST_STARTING_QUEEN中删除GST;
(5)广播“Delete GST”命令到所有的LPS;
d.接收服务过程信息
(1)重复执行(2)~(5)步;
(2)从所有LPS接受MSG;
(3)根据MSG确定GST;
(4)存储GST到PIB;
(5)通知PIMS刷新GST的可视化显示过程;
算法2(LPS算法)
LPS算法在PG的所有LPS上运行。在每个LPSi(1≤i≤m)上都运行的两个并发进程:传播网格服务树进程、接收服务过程信息进程。下面分别给出主要步骤。
a.传播网格服务树进程
(1)重复执行(2)~(10)步;
(2)接收来自GPS的MSG;
(3)If MSG是“NEW GST”Then
(4)存储GST到PIBi
(5)选播GST到LPSi所属的PSP;
(6)End if;
(7)If MSG是“Delete GST”Then
(8)删除本地GST缓冲;
(9)选播“Delete GST”到LPSi所属的PSP;
(10)End if
b.接收服务过程信息进程
(1)重复执行(2)~(5)步;
(2)从LPSi的所有PSA接收MSG;
(3)根据MSG确定GST;
(4)存储GST到PIBi
(5)发送MSG到GPS;
算法3(PSA算法)
PSA算法在PG的所有PSA上运行。
(1)重复执行(2)~(15)步;
(2)接收所有来自其对应的LPSi、GSN的MSG;
(3)If MSG来自GSN Then
(4)根据MSG确定GST;
(5)刷新本地缓冲的GST信息;
(6)发送MSG到该PSA的LPS;
(7)End if;
(8)If MSG来自LPS Then
(9)根据MSG确定GST;
(10)If GST是一个新服务then
(11)本地缓冲GST;
(12)End if;
(11)If MSG是“Delete GST”Then
(13)删除本地GST缓冲;
(14)End if
(15)End if
算法4(GSN算法)
已知网格PG(GS,GCPPS),假设一个GST(GS,GS_SET,R)可以由网格PG提供的网格服务集实现。PG中的GSNi(1≤i≤k)完成GST的GSTN所描述的网格服务,其过程由五个系统进程完成。这五个进程分别是:a.远程子服务驱动进程RSDP(Remote Service DrivingDrocess);b.本地子服务驱动进程LSDP(Local Service Driving Drocess);c.远程子服务监控进程RSMP(Remote Service Monitor Process);d.本地子服务监控进程LSMP(Local service Monitor process);e.同步监控进程SMP(Synchronous Monitorprocess)。
a.远程子服务驱动进程RSDP(Remote Service Driving Drocess)
输入:GSTN的DL和RL列表;
(1)Count=0;/*成功驱动的远程子服务数目*/
(2)DLSet={Dl1,Dl2,…,DLn};/*DLi表示DL的第i个服务*/
(3)While DLSet≠φ do/*驱动所有远程子服务*/
(4)从DLSet取一个服务VDL(SID,DST);
(5)If启动Driving(VDL.SID)成功Then
(6)从GTS获取启动时间StartTime;
(7)VDL.DST=StartTime;/*赋驱动时间*/
(8)启动Receiving(VDL.SID);
(9)count++;
(10)申请一个回收列表节点RLcount
(11)RLcount.SID=VDL.SID;
(12)RLcount.RST=VDL.SID;
(13)根据VDL,RLcount更新GSTN;
(14)MSG=(GSTN,VDL,RLcount);/*构造消息*/
(15)发送MSG到其PSA;
(16)DLSet=DLSet-{VDL};
(17)End if
(18)End while;
b.本地子服务驱动进程LSDP(Local Service Driving Drocess)
输入:GSTN的CL列表;
(1)CLSet={Cl1,Cl2,…,CLn};/*CLi表示CL的第i个服务*/
(2)While CLSet≠φ do/*驱动所有本地子服务*/
(3)从CLSet取一个服务VCL(CID,CST,CFT,RSL)
(4)If启动Computing(VCL.CID)成功Then
(5)从GTS获取启动时间StartTime;
(6)VCL.CST=StartTime;/*赋驱动时间*/
(7)根据VCL更新GSTN;
(8)MSG=(GSTN,VCL);/*构造消息*/
(9)发送MSG到其PSA;
(10)CLSet=CLSet-{VCL};
(11)End if
(12)End while;
c.远程子服务监控进程RSMP(Remote Service Monitor Process)输入:GSTN的RL列表;
(1)RLSet={Rl1,Rl2,…,RLn};/*RLi表示RL的第i个服务*/
(2)While RLSet≠φ do/*监控所有本地子服务*/
(3)从RLSet取一个服务VRL(SID,RFT,RSL);
(4)If进程Receiving(VRL.SID)结束Then
(5)从GTS获取结束时间FinishedTime;
(6)VCL.RFT=FinishedTime;/*赋结束时间*/
(7)把VRL.SID花费的远程资源存储到VRL.RSL;
(8)根据VRL更新GSTN;
(9)MSG=(GSTN,VRL);/*构造消息*/
(10)发送MSG到其PSA;
(11)发送VRL.SID的“服务结果”到进程SMP;
(12)RLSet=RLSet-{VRL};
(13)End if
(14)End while;
d.本地子服务监控进程LSMP(Local service Monitor process)输入;GSTN的CL列表;
(1)CLSet={CL1,CL2,…,CLn};/*CLi表示CL的第i个服务*/
(2)While CLSet≠φ do /*监控所有本地子服务*/
(3)从CLSet取一个服务VCL(CID,CST,CFT,RSL)
(4)If进程Computing(VCL.CID)结束Then
(5)从GTS获取结束时间FinishedTime;
(6)VCL.CFT=FinishedTime;/*赋结束时间*/
(7)计算VCL.CID所需本地资源并记入VCL.RSL;
(8)根据VCL更新GSTN;
(9)MSG=(GSTN,VCL);/*构造消息*/
(10)发送MSG到其PSA;
(11)发送VCL.SID的“服务结果”到进程SMP;
(12)CLSet=CLSet-{VCL};
(13)End if
(14)End while;
e.同步监控进程SMP(Synchronous Monitor process)输入:GSTN的CL列表;
(1)CLSet={CL1,CL2,…,CLn};/*CLi表示CL的第i个服务*/
(2)RLSet={Rl1,Rl2,…,RLn};/*RLi表示RL的第i个服务*/
(3)While CLSet≠φ and RLSet≠φ do /*监控所有本地、远程子服务*/
(4)MSG=ReceiveMassage(LSMP,RSMP);/*接收LSMP、RSMP进程发来的消息*/
(5)把MSG输入同步区,并通知等待该MSG的本地子服务;
(6)If MSG来自LSMP Then
(7)根据MSG确定CLi
(8)CLSet=CLSet-{CLi};
(9)End if
(10)If MSG来自RSMP Then
(11)根据MSG确定RLi
(12)RLSet=RLSet-{RLi};
(13)End if
(14)End while
(15)得到GSTN最终服务结果GSTNResult;
(16)MSG=(GSTN,GSTNResult);/*构造消息*/
(17)If GSTN是GST的根节点Then
(18)发送MSG到GPS;
(19)Else
(20)发送MSG到其GSTN的父网格服务节点;
(21)End if
(22)发送“GSTN执行结束”到其PSA;
(23)GSTN执行结束;
5、实施例
构建由10台PC机和三个物理网络A、B、C构成的广域网络来模拟一个实验网格。A物理网络由4台pc构成,其中一台作GPS,B、C物理网由三台pc构成。A物理网络由固定IP地址的局域网络联入Internet,B、C网络由FTTB拨号联入Internet。A、B、C分别处于城市的三个不同的行政区,也就是说A、B、C由WAN连接构成。WAN的通信数度在128K/s~512K/s范围内变化。每个物理网络上选一台pc当作LPS,所有pc都运行一个PSA。每台pc都是网格服务节点(GSN)。
网格服务示例:设一共有n个基本网格服务{GS1,GS2,…,GSk},对每个服务GSi(1≤i≤k)执行算法如下:
Int GS(int i)
{
Wait_Random(i);表示网络延迟;
Sleep(i);等待i个时间段(秒),代表本地计算时间,;
Return i;返回的服务结果;
}
忽略了服务使用的其它资源,仅仅探讨服务过程的时间因素。模拟由{GS1,GS2,…,GSk}运用加(+)、减(-)、乘(*)、除(/)运算构成的复合算数运算服务。例:一个高级网格服务是:GS=GS1+(GS2+GS3*(GS6/GS8)*7)-GS7。显然可以用GST表示GS。当服务的个数K大于网格服务节点的个数时,我们采用轮转法在网络A、B、C的计算机上分配服务。实验分别对k=3、7、15、31、63、127时进行。实验是针对一个均衡蛇型GST进行的,均衡蛇形GST构造如下:首先构造一个K(k=3、7、15、31、63、127)个节点的均衡二叉树,然后把k个GS1,GS2,…,GSk按先根顺序蛇型分布在二叉树上。
Web Service技术已经成为开发下一代互联网络的主要技术之一,其基于服务的思想恰好与OGSA规范相吻合。因此,Web Service技术在网格系统的建设中将起到重要的作用。我们利用Microsoft.net的C#和Web service框架实现了本文描述的实现方法。同时,我们应用一个免费软件WebTime模拟了GTS,在模拟网格的每个计算机上安装WebTime完成时钟同步软件。试验结果表明本发明所述的网格计算过程表示系统及其实现方法能够胜任网格计算及其过程表示的需要。

Claims (2)

1、一种基于OGSA规范的网格计算过程表示系统,其特征在于:
《1》所述系统包括通过WAN或Internet网络互连的下列部件:
过程服务器PS,其负责管理、收集、协调和存储网格中的过程信息;
过程信息库PIB,其储存网络服务树GST数据;
全局时钟GTS,统一整个网格的时间;
网格服务节点GSN,完成特定的网格服务;
过程服务代理PSA,收集所述网格服务节点GSN的服务过程信息,同时完成和所述过程服务器PS的信息互达;
应用代理AA,负责接收用户的应用网格服务请求;
过程信息管理系统PIMS,提供网格计算过程的存储管理、语义表示、过程监控和可视化界面;
《2》所述的过程服务器是基于多级分布机制的过程服务器模型,在一个由n台计算机C1,C2,…,Cn通过m个物理网络N1,N2,…,Nm连接而成的网格并行环境中,每个物理网络中设置一台计算节点作为为区域过程服务器LPSi,其中1≤i≤m,整个网格上有一台计算装置作为全局过程服务器GPS;
《3》所述的全局过程服务器GPS配置有一个过程信息库PIB;每一个区域过程服务器LPSi都配置有一个过程信息库PIBi,其中1≤i≤m。
2.一种基于权利要求1所述的系统的实现方法,具体如下:
《1》网格计算过程表示系统的实现方法,其特征在于按照如下的步骤进行:
(1)应用代理AA向网格PG提交网格服务树GST;
(2)GPS并发地做本方法的(3)(4);
(3)GPS广播GST到所有的LPSi,其中1≤i≤m;
(4)GPS通知网格PG驱动GST根服务,GST被并发驱动执行;
(5)所有的LPSi并发广播GST到其所属PSA,其中1≤i≤m;
(6)所有PSA启动监视其管辖的网格服务节点GSN的进程;
(7)所有网格服务节点GSN并行执行网格计算的三个过程:服务驱动过程DP、服务节点本地服务执行过程CP和服务结果回收过程RP,并把每个过程的起始时间、资源使用和服务时间信息发送给其所对应的PSA;
(8)所有的PSAi并发地收集其所辖网格服务节点的服务过程信息,并把收集到的过程信息发送给其所对应的LPS,其中1≤i≤p;
(9)所有的LPSi并发地收集其所辖PSA提供的过程信息,并把收集到的过程信息发送给GPS,把过程信息存放本地数据库PIBi,其中1≤i≤m;
(10)GPS收集、监控所有LPSi的过程信息并存放过程信息到数据库PIB,同时监测GST根节点的RP结果,在整个GST被驱动执行过程中,PIMS提取PIB过程信息并显示GST执行过程;当GST根节点的RP结果信息收到后,GPS把服务结果发送给AA,完成GST计算过程,其中1≤i≤m;
《2》所述GPS上运行的并发进程包括网格服务接受、网格服务驱动、网格服务结果接收和接收服务过程信息四个进程,其步骤如下:
GPS1.网格服务接受进程
(1)重复执行本进程的(2)~(4);
(2)接收应用代理AA提交的一个高级服务;
(3)根据服务信息构建网格服务树GST;
(4)把新的GST加入网格服务树就绪队列GST_READY_QUEEN;
GPS2.网格服务驱动进程
(1)重复执行本进程的(2)~(5)步;
(2)取GST_READY_QUEEN的一个网格服务树GST;
(3)执行Driving(GST)和Receiving(GST),其中过程Driving(GST)表示驱动一个以GST为根节点的网格服务树的计算过程,过程Receiving(GST)表示异步接收以GST为根节点的网格服务树的服务结果,以下再次出现将同本意;
(4)把GST加入GST_STARTING_QUEEN对列;
(5)广播GST到所有的LPS;
GPS3.网格服务结果接收进程
(1)对GST_STARTING_QUEEN的每个GST执行本进程的第(2)步;
(2)如果finished(GST)为“真”,则执行本进程的(3)~(5)步,其中finished(GST)表示判别以GST为根节点的网格服务树是否完成,如果完成则返回“真”,以下再次出现将同本意;
(3)发送GST的网格服务结果到AA;
(4)从GST_STARTING_QUEEN中删除GST;
(5)广播“Delete GST”命令到所有的LPS;
GPS4.接收服务过程信息进程
(1)重复执行本进程的(2)~(5);
(2)从所有LPS接受MSG;
(3)根据MSG确定GST;
(4)存储GST到PIB;
(5)通知PIMS刷新GST的可视化显示过程;
《3》所述每个LPSi上运行的并发进程包括:传播网格服务树进程和接收服务过程信息进程,其中1≤i≤m,其步骤如下:
LPS1.传播网格服务树进程
(1)重复执行本进程的(2)~(9);
(2)接收来自GPS的MSG;
(3)如果MSG是“NEW GST”,则执行本进程的(4)(5),否则执行本进程的(6);
(4)存储GST到PIBi
(5)选播GST到LPSi所属的PSP;
(6)如果MSG是“Delete GST”,则执行本进程的(7)(8),否则执行本进程的(9);
(7)删除本地GST缓冲;
(8)选播“Delete GST”到LPSi所属的PSP;
(9)执行本进程的(2);
LPS2.接收服务过程信息进程
(1)重复执行本进程的(2)~(5);
(2)从LPSi的所有PSA接收MSG;
(3)根据MSG确定GST;
(4)存储GST到PIBi
(5)发送MSG到GPS;
《4》所述网格PG的PSA上远行如下的PSA算法:
(1)重复执行本算法的(2)~(11)步;
(2)接收所有来自其对应的LPSi、GSN的MSG;
(3)如果MSG来自GSN,则执行本算法的(4)~(6),否则执行本算法的(7);
(4)根据MSG确定GST;
(5)刷新本地缓冲的GST信息;
(6)发送MSG到该PSA的LPS;
(7)如果MSG来自LPS,则执行本算法的(8)~(10),否则执行本算法的(11);
(8)根据MSG确定GST;
(9)如果GST是一个新服务,则本地缓冲GST;
(10)如果MSG是“Delete GST”,则删除本地GST缓冲;
(11)执行本算法的(2);
《5》所述网格PG中的GSNi完成GST的GSTN所描述的网格服务,其过程包括远程子服务驱动进程RSDP、本地子服务驱动进程LSDP、远程子服务监控进程RSMP、本地子服务监控进程LSMP和同步监控进程SMP五个系统进程,其中i的取值范围为[1,k],其具体步骤如下:
GSN1.远程子服务驱动进程RSDP
输入:GSTN的DL和RL列表;
(1)置Count为0,其中Count为成功驱动的远程子服务数目;
(2)初始化DLSet为{Dl1,Dl2,…,DLn},其中DLi表示DL的第i个服务;
(3)当DLSet不为空时,重复执行本进程的(4)~(16),去驱动所有远程子服务;否则结束本进程;
(4)从DLSet取一个服务VDL(SID,DST);
(5)如果启动Driving(VDL.SID)成功,则执行本进程的(6)~(16),否则执行本进程的(3);
(6)从GTS获取启动时间StartTime;
(7)赋驱动时间VDL.DST为StartTime;
(8)启动Receiving(VDL.SID);
(9)计数器count加1;
(10)申请一个回收列表节点RLcount
(11)置RLcount·SID为VDL.SID;
(12)置RLcount·RST为VDL.SID;
(13)根据VDL,RLcount更新GSTN;
(14)构造消息MSG为(GSTN,VDL,RLcount);
(15)发送MSG到其PSA;
(16)从集合DLSet中减去{VDL};
GSN2.本地子服务驱动进程LSDP
输入:GSTN的CL列表;
(1)置集合CLSet为{Cl1,Cl2,…,CLn},其中CLi表示CL的第i个服务;
(2)当CLSet不为空时,执行本进程的(3)~(10),去驱动所有本地子服务;否则结束本进程;
(3)从CLSet取一个服务VCL(CID,CST,CFT,RSL);
(4)如果启动Computing(VCL.CID)成功,则执行本进程的(5)~(10),否则执行本进程的(2);其中Computing(GST)表示计算GST服务,以下再次出现将同本意;
(5)从GTS获取启动时间StartTime;
(6)赋驱动时间VCL.CST为StartTime;
(7)根据VCL更新GSTN;
(8)构造消息MSG为(GSTN,VCL);
(9)发送MSG到其PSA;
(10)从集合CLSet中减去{VCL};
GSN3.远程子服务监控进程RSMP
输入:GSTN的RL列表;
(1)置集合RLSet为{Rl1,Rl2,…,RLn},其中RLi表示RL的第i个服务;
(2)当RLSet不为空时,执行本进程的(3)~(12),去监控所有本地子服务;否则结束本进程;
(3)从RLSet取一个服务VRL(SID,RFT,RSL);
(4)如果进程Receiving(VRL.SID)结束,则执行本进程的(5)~(12),否则执行本进程的(2);
(5)从GTS获取结束时间FinishedTime;
(6)赋结束时间VCL.RFT为FinishedTime;
(7)把VRL.SID花费的远程资源存储到VRL.RSL;
(8)根据VRL更新GSTN;
(9)构造消息MSG为(GSTN,VRL);
(10)发送MSG到其PSA;
(11)发送VRL.SID的“服务结果”到进程SMP;
(12)从集合RLSet中减去{VRL};
GSN4.本地子服务监控进程LSMP
输入:GSTN的CL列表;
(1)置集合CLSet为{CL1,CL2,…,CLn},其中CLi表示CL的第i个服务;
(2)当CLSet不为空时,执行本进程的(3)~(12),去监控所有本地子服务;否则结束本进程;
(3)从CLSet取一个服务VCL(CID,CST,CFT,RSL);
(4)如果进程Computing(VCL.CID)结束,则执行本进程的(5)~(12),否则执行本进程的(2);
(5)从GTS获取结束时间FinishedTime;
(6)赋结束时间VCL.CFT为FinishedTime;
(7)计算VCL.CID所需本地资源并记入VCL.RSL;
(8)根据VCL更新GSTN;
(9)构造消息MSG为(GSTN,VCL);
(10)发送MSG到其PSA;
(11)发送VCL.SID的“服务结果”到进程SMP;
(12)从集合CLSet中减去{VCL};
GSN5.同步监控进程SMP
输入:GSTN的CL列表;
(1)置集合CLSet为{CL1,CL2,…,CLn},其中CLi表示CL的第i个服务;
(2)置集合RLSet为{Rl1,Rl2,…,RLn},其中RLi表示RL的第i个服务;
(3)当CLSet不为空且RLSet不为空时,执行本进程的(4)~(12),去监控所有本地、远程子服务;否则执行本进程的(13);
(4)执行ReceiveMassage(LSMP,RSMP)过程,接收LSMP和RSMP进程发来的消息MSG;
(5)把MSG输入同步区,并通知等待该MSG的本地子服务;
(6)如果MSG来自LSMP,则执行本进程的(7)(8),否则执行本进程的(9);
(7)根据MSG确定CLi
(8)从CLSet中减去{CLi};
(9)如果MSG来自RSMP,则执行本进程的(10)(11),否则执行本进程的(12);
(10)根据MSG确定RLi
(11)从RLSet中减去{RLi};
(12)执行本进程的(3);
(13)得到GSTN最终服务结果GSTNResult;
(14)构造消息MSG为(GSTN,GSTNResult);
(15)如果GSTN是GST的根节点,则送MSG到GPS,否则发送MSG到其GSTN的父网格服务节点;
(16)发送“GSTN执行结束”到其PSA;
(17)GSTN结束。
CNB2004100255454A 2004-06-28 2004-06-28 一种基于ogsa规范的网格计算过程表示系统及其实现方法 Expired - Fee Related CN100502389C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100255454A CN100502389C (zh) 2004-06-28 2004-06-28 一种基于ogsa规范的网格计算过程表示系统及其实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100255454A CN100502389C (zh) 2004-06-28 2004-06-28 一种基于ogsa规范的网格计算过程表示系统及其实现方法

Publications (2)

Publication Number Publication Date
CN1595932A CN1595932A (zh) 2005-03-16
CN100502389C true CN100502389C (zh) 2009-06-17

Family

ID=34663725

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100255454A Expired - Fee Related CN100502389C (zh) 2004-06-28 2004-06-28 一种基于ogsa规范的网格计算过程表示系统及其实现方法

Country Status (1)

Country Link
CN (1) CN100502389C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102483711A (zh) * 2009-08-11 2012-05-30 国际商业机器公司 对复制顺序访问存储组件进行同步

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1842078B (zh) * 2005-03-28 2010-08-11 北京航空航天大学 网格服务系统
CN100498833C (zh) * 2005-09-30 2009-06-10 中国科学院计算机网络信息中心 科学计算网格的远程可视化方法
CN100377533C (zh) * 2005-12-26 2008-03-26 北京航空航天大学 网格信息服务系统及其信息处理方法
CN101483650B (zh) * 2009-02-25 2011-08-03 南京邮电大学 一种校园网环境下基于数据网格的文件快速传输方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
空间信息格网框架体系和关键技术分析. 夏曙东,李琦,承继成.地球信息科学,第4期. 2002
空间信息格网框架体系和关键技术分析. 夏曙东,李琦,承继成.地球信息科学,第4期. 2002 *
网格计算及其应用研究初探. 吴迪,王青海.微计算机应用,第24卷第5期. 2003
网格计算及其应用研究初探. 吴迪,王青海.微计算机应用,第24卷第5期. 2003 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102483711A (zh) * 2009-08-11 2012-05-30 国际商业机器公司 对复制顺序访问存储组件进行同步
CN102483711B (zh) * 2009-08-11 2015-01-28 国际商业机器公司 对复制顺序访问存储组件进行同步

Also Published As

Publication number Publication date
CN1595932A (zh) 2005-03-16

Similar Documents

Publication Publication Date Title
CN103297507B (zh) 云计算运营系统及向用户提供服务的方法
CN100476819C (zh) 一种基于Web的数据挖掘系统及其控制方法
CN102508709B (zh) 购供售一体化电能量采集与监控系统中基于分布式缓存的采集任务调度方法
CN102194015B (zh) 根据检索信息热度统计实现检索的方法
CN102523247A (zh) 一种基于多属性匹配的云服务推荐方法及装置
CN107341205A (zh) 一种基于大数据平台的智能配用电系统
CN102323957B (zh) 基于垂直划分模式的分布并行Skyline查询方法
CN102164184A (zh) 云计算网络中计算机实体的接入和管理方法及云计算网络
CN110516076B (zh) 一种基于知识图谱的云计算管理方法及系统
CN111160867A (zh) 大范围地域停车场大数据分析系统
CN100502389C (zh) 一种基于ogsa规范的网格计算过程表示系统及其实现方法
Xu et al. Tourism community detection: A space of flows perspective
CN102866424A (zh) 一种基于云计算的地震资料远程处理系统
CN101222522B (zh) 一种考虑网格任务重要性和时间紧迫性的网格任务调度方法
CN104298669A (zh) 一种基于社交网络的人员地理信息挖掘模型
CN102868601B (zh) 一种有关基于图形配置数据库业务网络拓扑的路由系统
CN100454300C (zh) 基于网格机制的网络数据搜索系统及其方法
CN103297861A (zh) 一种基于PeerSim的P2P视频点播仿真系统
CN103577481A (zh) 一种广告数据搜索的方法和装置
Cao Regional Tourism Economic Impact Evaluation Based on Dynamic Input‐Output Model
CN101800735A (zh) 一种具备动态特征的www建立方法
Ernst-Desmulier et al. Adding new features in a peer-to-peer distributed computing framework
Kong et al. Economic evaluation of retrofitting existing buildings from a sustainability perspective: global trends and bibliometric analysis
Xuning et al. Research of campus resource management based on cloud computing
Wu et al. The design of distributed power big data analysis framework and its application in residential electricity analysis

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090617

Termination date: 20120628