CN101715001A - 一种控制网格任务执行的方法 - Google Patents
一种控制网格任务执行的方法 Download PDFInfo
- Publication number
- CN101715001A CN101715001A CN200910184931A CN200910184931A CN101715001A CN 101715001 A CN101715001 A CN 101715001A CN 200910184931 A CN200910184931 A CN 200910184931A CN 200910184931 A CN200910184931 A CN 200910184931A CN 101715001 A CN101715001 A CN 101715001A
- Authority
- CN
- China
- Prior art keywords
- task
- grid
- resource
- user
- node
- 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.)
- Pending
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
控制网格任务执行的方法是一种在网格计算环境中,任务正确、高效执行的解决方案,主要用于解决网格任务的安全调度问题。本方法在对网格资源进行审核时,提出资源必须是在线的、空闲的、可信的网格资源。这里对资源可信度的审核所用的信任机制是一种主观信任模型。在任务的执行过程中创建了两种移动代理:工作代理和控制代理。工作代理负责任务的执行,而控制代理负责对网格系统进行控制,实现任务监控。结合网格任务分配算法本方法实现了对网格中可用资源的安全动态性查找和任务执行的自适应性。降低了网格的通信量,提高网络的利用率,形成任务的并行求解,从而提高网格资源的利用效率和网格计算的执行效率。
Description
技术领域
本发明是一种在网格计算环境中,任务正确、高效执行的解决方案。主要用于解决网格任务的安全调度问题,属于网格计算和分布式计算交叉技术应用领域。
背景技术
网格计算是近年来国际信息技术领域的研究热点,是以互联网和高性能计算为基础的一门新兴技术。网格计算是指通过高速网络将地理上广泛分布、系统异构的各种硬件、软件、信息资源(如高性能计算机、大型数据库、传感器、远程设备等)连结成一个巨大的整体,使得人们能够利用这些资源完成各种大规模的、复杂的计算和数据处理的任务,从而实现高性能资源的共享和协同工作。作为未来计算的新模式,越来越多的人员和机构开发和研究网格计算。
任务方式是使用网格资源的一种形式,它根据用户确定的流程,为用户提供使用资源的功能。网格任务执行是网格的最主要的功能之一,主要涉及到网格计算环境下任务的提交、调度和分配,资源的审核,任务的执行等问题。网格任务一般都在远端节点上运行,任务提交者对远端设备的控制能力是非常有限的,为了有效控制任务的运行,需要网格任务控制机制,控制整个任务的执行过程。研究并实现有效的资源与任务控制模型以及任务调度机制,保证合理的资源共享和非平凡的服务质量已成为一个急待解决的研究热点和技术难点。
代理或智能代理是指模拟人类行为与关系、具有一定智能并能够自主运行和提供相应服务的程序。与其他软件实体相比,代理的粒度即实体的大小更大、智能化程度更高。广义上它是指具有智能的任何实体,包括人类、智能硬件(如机器人、智能嵌入式设备和计算机等)和智能软件。它的典型的定义为代理是驻留于环境中的实体,它可以解释从环境中获得的、反映环境中所发生事件的数据,并执行对环境产生影响的行为。代理被看作是一种在环境中“生存”的实体,它既可以是硬件(如机器人),也可以是软件。随着网络的发展,特别是信息搜索、分布式计算以及电子商务的蓬勃发展,人们不满足于仅仅在本地计算机上找到所需的服务,而希望在整个网络范围内找到最佳的服务,希望将整个网络虚拟成为一个整体,使代理在整个网络中自由的移动,这便产生了移动代理。移动代理的提出,进一步扩展了代理处理的功能。移动代理,简单的说就是具有移动性的智能代理。它指的是能够自行决定在网络的各个节点之间移动,代表其它实体(人或其他代理)进行工作的一种软件实体。它能自行选择运行地点和时机,根据具体情况,中断当前自身的执行,移动至另一设备上恢复运行,并及时将有关的结果返回。移动的目的是使程序的执行尽可能靠近数据源,降低网络通信开销,节省带宽,平衡负载,加快任务的执行,从而提高分布式系统的处理效率。基于移动代理的系统具有生存、计算、安全、通信、迁移机制。生存机制指的是移动代理的产生、销毁、启动、挂起、停止等服务;计算机制指的是移动代理及其运行环境所具备的计算推理能力,包括数据操作和线程控制原语;安全机制描述移动代理访问其它移动代理和网络资源的方式;通信机制定义移动代理间及其和其它实体间的通讯方式;而迁移机制负责组织移动代理代码及其执行时的中间状态,以让它在不同位置间移动。
在网格计算中引用移动代理技术将会有以下优点:
1.在地域上分布的异构网格计算环境中能自主地将计算任务从一计节点迁移到另一节点,并可与其它代理或资源交互以实现任务和资源的控制和自适应。
2.移动代理可以迁移到网格计算环境的各级客户服务器或中央服务器上,与之进行本地高速通信,它不再占用网络资源,从而大大降低了网格的通讯量,并提高了网络资源的利用效率。
3.移动代理通过在局域网服务器之间双向移动来传递对应的资源信息、负载信息、通讯量和任务执行序列等信息。这些信息作为资源控制、负载平衡、通讯调整、任务调度等的参考依据,移动代理根据这些数据智能的判断控制的情况并做出相应处理。这将大大改善系统的性能和智能化水平,提高网格计算的可靠性和执行效率。
4.移动代理通过将服务器请求代理动态迁移到其它服务端执行,使得此代理较小依赖网络传输环节而直接面对要访问的服务器资源,从而避免了大量数据间的网络传送,降低了系统对网络带宽的依赖。
5.在网格计算中,移动代理不需要统一的调度。由用户创建的代理可以异步在不同计算节点运行,等任务完成再将结果传送给用户。同一用户或同一计算节点可创建多种代理,同时在一个或多个节点运行,形成并行求解的能力。
6.移动代理由于具有协作性和可移动性,并且具有面向对象的特征,在考虑实现安全措施的时候就会有更多的弹性。
信任是对一个实体身份和行为的可信度的评估,与这个实体的可靠性、诚信和性能有关,信任是一个主观概念,取决于经验,通常用信任值来表示信任等级的高低,信任值随实体的行为而动态变化。感性信任某个实体是指相信它不会有恶意的行为,理性信任某个实体是指相信它能抵抗任意恶意的攻击。将信任引入到网格任务执行过程中,可以提高网格任务执行的效率和正确性。
发明内容
技术问题:本发明的目的是提供一种运用移动代理和信任机制,控制网格任务执行的方法,实现对网格中可用资源的安全动态性查找和任务执行的自适应性。降低网格的通信量,提高网络的利用率,形成任务的并行求解,从而提高网格资源的利用效率和网格计算的执行效率。
技术方案:本发明是一种策略性控制方案。通过网格任务的分配算法,安全、高效的完成网格任务。首先介绍几个相关的网格计算概念。
1.虚拟组织(Virtual Organization)
所谓虚拟组织,它是由遵守资源共享规则的一组个体、机构组成,虚拟组织的典型例子有:应用服务提供商、存储服务提供商、企业及企业所采用的应用所构成的系统等。虚拟组织的动态性是指组织结构、对外交互、控制模式及业务模式等是随时间变化的;虚拟组织的异构性是指各组织在目标、结构、规模、控制、运行模式等方面是不同的。
2.自治域(Autonomy Domain)
加入网格环境的内部具有一致安全体系的个体、组织、部门和团体等。
3.资源(Resource)
在网格中的资源包括各类计算设备、存储设备、I/O设备、通信系统、文件、数据库、程序、信息、知识、仪器等,并具有面向用户和透明性的特点,用户可以在不考虑资源物理位置的情况下,方便的使用资源。此外,资源也具有动态变化的特性。资源节点是指在网格服务提供域中的能够对外提供资源服务的最小单位成员。
网格计算体系模型如图1所示,以服务为中心是网格的核心,不同的虚拟组织/自治域组成整个网格计算环境,而每个虚拟组织/自治域中的资源节点则能够协作完成不同的服务。网格向用户提供一个接口,通过该接口接收来自用户的请求,发送来自网格的信息。用户可以将所使用的网格看作是一个黑盒子,不必知道其内部如何实现用户请求的服务。若网格用户所提交的任务在一个虚拟组织/自治域内不能完成时,则该虚拟组织/自治域的网格服务器就请求其他的虚拟组织/自治域的资源节点协作完成。网格为用户提供计算能力,但用户并不关心计算所需的资源是哪个虚拟组织提供的。通过具体的安全和通信技术,构成信任联盟的虚拟组织之间可以共享资源。网格体系结构中不再考虑互联网完成的功能。以网格数据为例,网格需要考虑到是数据表示形式、数据的传输方式、数据存储和副本控制,但对具体的数据传输格式和传输过程则不再考虑,因为这些是互联网解决的问题。
我们将移动代理引入网格计算体系中,利用移动代理提供服务来实现网格构造。网格任务执行得到基于移动代理的网格计算体系支持,关于任务控制的逻辑视图如图2所示,自下而上包括三层:基于移动代理的网格基础设施、虚拟组织/自治域控制层、网格应用层。
其中网格应用层提供给网格用户服务,网格用户通过用户界面实现与网格之间的信息交互,实现诸如用户任务提交、结果返回等输入输出功能;虚拟组织/自治域控制层主要实现网格体系的控制、协调功能,此体系主要用来实现网格计算的任务控制;底层为使用移动代理平台的网格基础设施,提供移动代理的运行环境,该运行环境已经包括了必要的安全、通讯、注册、目录等功能,上层服务可以调用移动代理平台的功能并扩展这些功能来实现。
控制网格任务执行的方法是运用移动代理和信任机制实现控制过程的,具体如下:
一、移动代理的创建方案:
系统中移动代理根据功能的不同分为两种:工作代理和控制代理。工作代理负责任务的执行,而控制代理负责对网格系统进行控制,通过控制代理实现任务监控。驻留控制代理的叫控制机,驻留工作代理的叫工作机,提交任务的计算机叫客户机;在虚拟组织/自治域内部,通过移动代理来实现任务分解,并携带子任务迁移到各个资源节点执行任务;资源运行任务失败时,通过移动代理实现本域或者跨域的协同任务求解;
二、具体执行流程:
1).网格应用层首先提供给用户一个使用平台,用户首先要经过注册成为该网格的用户;
2).如果用户身份合法,网格确定用户对资源的访问控制权限,网格用户即可随时提交任务请求,网格用户填写要提交的任务,网格用户在提交网格任务时,需给出提交的任务描述,网格虚拟组织控制机构会对网格用户提交的任务的合法性、用户访问控制权限等级进行检验,如果该任务请求合法,不存在语义冲突问题,网格虚拟组织服务器将接受该请求,将该网格用户任务放入任务等待对列,并将请求状态设置为:提交状态,等待调度执行;
3).网格虚拟组织中心的任务控制机构为任务进行任务调度,如果有需要执行的任务就继续步骤4;否则任务控制机构等待直至有用户提交任务;
4).任务控制机构获取任务的描述信息,如提交者的用户信息、任务内容;
5).在网格任务控制机构根据信任机制对资源进行信任审核,筛选出可用的计算资源,根据资源处理能力信息包括中央处理器性能,带宽性能,内存性能等进行综合评定,计算出各资源可以分配到的子任务模块大小;
6).将任务根据需分解的各模块大小比例分解成子任务;
7).任务的迁移:网格任务控制机构启动移动代理平台为分解后的子任务生成若干个任务执行代理和任务监控代理,任务执行代理分别携带各子任务迁移到资源节点上;任务监控代理跟随相应的任务执行代理同样迁移至各个资源节点上随时监听任务的执行情况;
8).如果任务迁移成功,进入步骤9,否则,任务状态被设置为出错状态进入步骤11。
9).子任务被迁移至各资源节点进行并行执行;
10).任务监控代理随时监听任务的执行情况和资源节点的情况,等待子任务执行完毕,若所有子任务都成功执行完毕,执行代理就携带子任务结果返回,网格任务控制机构服务器综合这些结果从而得到任务的完整执行结果,并将任务状态设置为完成状态,供用户查询任务结果时使用,否则进入步骤11;
11).若该过程中出现了某个资源节点运行失败,这时任务监控代理就返回失败信息,网格任务控制机构服务端就需要将分配给该资源节点的子任务重新进行分配,可以在本虚拟组织域中按照任务的执行过程重新选择资源节点进行迁移执行;若这时本域中无可用的资源节点,域服务端则需要请求其他虚拟组织域服务端来协助完成该段任务;如果本域或者跨域协助不成功,则任务监控代理返回整个任务的失败信息给域服务端,将任务状态置为失败,用户查询时提醒用户重新提交网格任务;
12).配合信任控制中心对资源节点进行信任记录更新,在资源节点运行完任务后就需要对资源节点进行信任度更新,对各资源节点的信任评判是根据在各节点上子任务的运行时间来进行评判,由于系统是根据节点的性能来安排子任务的规模,原则上每个节点上子任务的执行时间应该相差不大,因此根据子任务规模和节点执行时间的规模时间比可以测算出一个信任估值,显然这个比值越大信任度就越高,一般稳定在0.6到1之间;如果有节点出现异常而无法返回正常结果,也不能武断的将其信任度置为0,而是置为小于0.6的某一值,一般置为0.2。然后再和以前的信任度值综合计算,将信任值递交回信任控制中心完成对资源节点信任度的更新,这样就建立起对资源节点的主观信任机制。
有益效果:使用该方案有如下优点:
1.实现负载的平衡
负载平衡是用户获得良好服务质量和资源充分共享的前提,在任务运行阶段,采用资源迁移机制,使重载节点执行较小规模的子任务,使系统内各资源的负载大致平衡。
2.处理任务故障和资源离开请求
当资源由于故障或能力限制不能再继续运行其上已经运行的任务时,可以把这些任务迁移到其他资源上,继续任务的运行。当资源提出退出网格请求时,把其上正在运行的网格任务迁移到其他资源上,准许资源退出网格,尊重资源拥有者的意愿。
3.充分利用网格资源,降低任务的整体开销
移动代理决定任务的自由迁移,它是根据迁移对象的不同分为代码迁移和数据迁移。为了降低网格任务执行时间和网络通信负载,移动代理尽可能地将我们的网格任务迁移至本域资源节点上,只有在本域中很难找到符合网格任务描述的资源的情况下,移动代理将其任务的信息迁移至其他域服务器,让其为该任务寻求合适的资源继续执行。
4.利用信任机制进行资源审核,优化资源的查找
网格资源审核就是要帅选出可用的网格资源完成网格任务。符合条件的资源必须是在线的、空闲的(即没有任务需要执行的)、可信的网格资源。资源的信任度表示就不仅仅是安全问题,更多的体现为资源节点服务质量的高低。
5.子任务并行求解
在网格计算中,移动代理不需要统一的调度。由用户创建的代理可以异步在不同计算节点运行,等任务完成再将结果传送给用户。同一用户或同一计算节点可创建多种代理,同时在一个或多个节点运行,形成并行求解的能力。
附图说明
图1是网格计算体系模型图。
图2是网格计算体系关于任务控制的逻辑视图。
图3是运用移动代理和信任机制的网格任务控制体系结构图。
图4是任务分解树行分支结构图。
图5是任务调度模式图。
图6是运用移动代理和信任机制的网格任务控制执行流程图。
具体实施方式
一、体系结构
图3给出了一种运用移动代理和信任机制的网格任务控制体系结构。客户端控制中心:在合法用户在网格客户端输入任务请求描述,客户端控制中心根据该任务请求描述信息生成网格任务并提交至网格虚拟组织任务控制中心;数据控制:控制任务信息,即控制所存储的各种状态队列下的网格任务,以及网格任务的执行信息,如任务的执行状态、任务的执行数据等;任务调度:对多个网格任务进行任务调度;资源审核:根据信任机制对资源进行审核,匹配调度;任务分解:根据网格虚拟组织控制中心中的资源控制信息动态得将任务进行分解;任务执行:将子任务迁移至相匹配的资源并执行子任务;任务监控:监控任务的执行过程,进行出错处理;服务端代理:服务端代理根据任务分配模块与宿主机中的移动代理进行通信;宿主机代理:宿主机代表了网格资源,一旦开启移动代理,在区域region中注册,就意味着该网格资源在虚拟组织中有效。
二、网格资源审核机制
网格资源审核就是要帅选出可用的网格资源完成网格任务。符合条件的资源必须是在线的、空闲的(即没有任务需要执行的)、可信的网格资源。任务控制资源审核中用到了信任控制中心提供的网格资源信任评估结果,网格任务执行完成后任务控制中心会配合信任控制中心进行网格资源的信任度更新。这里所指的信任都是一种感性的主观信任。审核后任务控制中心会根据资源的处理计算能力高低对网格资源进行一个排序,供任务选择使用。下面重点介绍网格资源可信度的评估审核过程。
当网格中不同的实体要进行交易时,需要知道他们之间的信任关系,根据实体所处自治域的不同,把实体之间的信任关系分为域内实体之间的信任关系和域间实体之间的信任关系。
此信任模型仅简单的运用到了一种域内的信任模型来计算实体之间的信任值,其设计思路是以网格各资源节点与用户之间的直接或间接信任关系为出发点进行建模的。从用户对每个资源的信任评估出发,首先得到和该用户有直接信任关系的资源节点的信任度,然后从这些资源节点出发,根据这些资源节点和其他有直接信任关系的资源节点的信任度进行合成,得到对其他资源节点的推荐信任度,依此类推,最终完成对所有资源节点的信任度评判。如果信任度值在可信值范围内,则此资源节点为可信节点。
三、网格任务分解与迁移机制
网格任务控制中心需要对网格用户提交的任务进行分解,这里对任务的分解采用了树行分支结构如图4所示。值得注意的是网格任务的分解应该考虑到网格环境中的静态负载问题,即每一个任务的分配都要求资源节点的计算能力满足任务节点的计算需求,以避免计算量较大的任务被分配到计算能力差的资源上,或者计算量较小的任务被分配到计算能力强的资源上,实现静态的负载平衡。
对于网格环境下的负载问题,由于网格计算环境中计算资源的组成结构十分复杂,它可以是上万台单个PC机、多个集群,甚至多个局域网。由于计算负载的差异、处理机体系结构的差异、高速缓存使用效率的差异等原因,都会造成各个资源节点之间计算负载的不均衡,导致出现有的计算资源节点空闲等待,有的计算资源节点负载过大的现象。
这里要求能对资源的计算能力和并行任务的计算量都进行较为准确的定量描述,使得每一次任务的分配都要求资源节点的计算能力满足任务节点的计算需求,以避免计算量较大的任务被分配到计算能力差的资源上或者计算量较小的任务被分配到计算能力强的资源上。所以若计算资源的计算能力参数和并行任务的计算需求量能够比较准确地反映真实的情况,那么系统中计算能力强的资源会得到更多的任务,这符合网格环境的负载平衡的需求,将任务分解之后,网格接下来的工作便是将分解后的网格任务利用移动代理在当前时间迁移至合适的资源宿主机中继续执行。
四、网格任务分配算法
此分配算法的任务调度模式如图5所示:
在这个任务调度模式中,用户将任务提交给网格服务器,网格服务器将任务排成队列形式,采取先来先服务原则。将先来的任务即优先级最高的任务分解并分配给多个可用资源执行,如果出错将在该资源上执行的子任务再分配给本域或跨域的其他可用资源执行。执行完整个任务后再执行下一个任务,具体的调度算法见下文。
网格的任务状态在不断发生着变化,我们将任务状态定义如下:
创建状态created:网格用户通过网格任务控制模块提供的平台编辑网格任务,描述任务信息等。
提交状态submitted:网格任务一旦提交,用户便会获得该任务的唯一标识号。网格任务控制中心将网格任务放入处理队列中,等待调度。
就绪状态ready:网格任务通过网格任务控制中心的调度分解转移至本域中合适的资源节点上,等待执行。
运行状态running:网格任务被本域资源并行执行。
阻塞状态block:网格任务由于某种原因无法继续运行下去,需要网格任务控制中心提供某些特定信息与服务,以便执行下一个任务。
出错状态error:网格任务在其生命周期出现异常情况,无法进入下一个正常状态,等待出错处理。经过出错处理之后,网格任务才能进入其他状态。
完成状态finished:完成态是网格任务生命周期的最后一个状态,网格任务一旦完成,其生命周期便结束。网格任务控制中心会显示任务执行完成,为网格用户提供任务执行结果。
在网格中,我们假设该网格由n个可用资源节点和m个任务组成,定义如下集合:
R={Ri|i=1,2,…n}
E={ei|i=1.2.…n}
T={Tj|j=1,2,…m}
D={dj|j=1,2,…m}
ψ={ψi|i=1,2,…k}
其中ei为资源Ri的计算能力值,dj为任务Tj的截止时间,ψi为Tj的各子任务模块量。
将需要调度的任务组成一个任务集合每次网格任务调度中心都会从该任务集合中选择队列中最前面的那个任务Ti(Ti∈T),将其分解后分配到具有最好期望执行时间的资源节点Ri中执行,整个任务执行完成后从该任务集合中删除这个任务。然后开始新的调度,重复此过程直到任务集合为空。该算法的伪代码描述如下:
for所有网格节点Ri
ei=Ri资源的计算能力值;
while(所有状态为submitted任务队列Q){
找到排在任务队列Q队首的任务Tj;
标记Tj为ready;
计算各ψi;
根据ψi分解Tj:{Tj1、Tj2…Tjk};
for所有Tjk:子任务
{
迁移子任务Tjk至资源节点Ri执行;
if(子任务Tjk状态为error){
进行出错处理;
if(出错处理执行不成功){
标记Tj为block;
}
}
if(任务Tj标记为ready)
标志子任务Tjk为finished;
}
if(任务Tj标记为ready)
标志任务Tj为finished;
将Tj从Q队列中移除;
}
任务调度时,任务在队列中等待的时间越长,它的优先级也会加大,以免它被饿死。另外在对执行阶段失败的任务进行重新调度时,也应考虑将其优先级加大,以符合实际需求,这是此调度模式需要改进的地方。队首任务完成以后再开始新的调度,重复此过程直到任务队列为空。
一、移动代理的创建方案:
系统中移动代理根据功能的不同分为两种:工作代理和控制代理。工作代理负责任务的执行,而控制代理负责对网格系统进行控制,通过控制代理实现任务监控。驻留控制代理的叫控制机,驻留工作代理的叫工作机,提交任务的计算机叫客户机。在虚拟组织/自治域内部,通过移动代理来实现任务分解,并携带子任务迁移到各个资源节点执行任务;资源运行任务失败时,通过移动代理实现本域或者跨域的协同任务求解。
二、执行流程:
一个完整的运用移动代理和信任机制的网格任务控制的执行流程如图6所示。
1.网格应用层首先提供给用户一个使用平台,用户首先要经过注册成为该网格的用户。
2.如果用户身份合法,网格确定用户对资源的访问控制权限,网格用户即可随时提交任务请求。网格用户填写要提交的任务,网格用户在提交网格任务时,需给出提交的任务描述。网格虚拟组织控制机构会对网格用户提交的任务的合法性、用户访问控制权限等级进行检验,如果该任务请求合法,不存在语义冲突问题,网格虚拟组织服务器将接受该请求。将该网格用户任务放入任务等待对列,并将请求状态设置为:提交状态,等待调度执行。
3.网格虚拟组织中心的任务控制机构为任务进行任务调度,如果有需要执行的任务就继续步骤4;否则任务控制机构等待直至有用户提交任务。
4.任务控制机构获取任务的描述信息,如提交者的用户信息、任务内容等。
5.在网格任务控制机构根据信任机制对资源进行信任审核,筛选出可用的计算资源。根据资源处理能力信息包括CPU性能,带宽性能,内存性能等进行综合评定,计算出各资源可以分配到的子任务模块大小。
6.将任务根据需分解的各模块大小比例分解成子任务。
7.任务的迁移。网格任务控制机构启动移动代理平台为分解后的子任务生成若干个任务执行代理和任务监控代理,任务执行代理分别携带各子任务迁移到资源节点上。任务监控代理跟随相应的任务执行代理同样迁移至各个资源节点上随时监听任务的执行情况。
8.如果任务迁移成功进入步骤9,否则,任务状态被设置为出错状态进入步骤11。
9.子任务被迁移至各资源节点进行并行执行。
10.任务监控代理随时监听任务的执行情况和资源节点的情况,等待子任务执行完毕。若所有子任务都成功执行完毕,执行代理就携带子任务结果返回,网格任务控制机构服务器综合这些结果从而得到任务的完整执行结果,并将任务状态设置为完成状态,供用户查询任务结果时使用,否则进入步骤11。
11.若该过程中出现了某个资源节点运行失败(如该资源节点掉线或因某种原因瘫痪等),这时任务监控代理就返回失败信息,网格任务控制机构服务端就需要将分配给该资源节点的子任务重新进行分配,可以在本虚拟组织域中按照任务的执行过程重新选择资源节点进行迁移执行。若这时本域中无可用的资源节点,域服务端则需要请求其他虚拟组织域服务端来协助完成该段任务。如果本域或者跨域协助不成功,则任务监控代理返回整个任务的失败信息给域服务端,将任务状态置为失败。用户查询时提醒用户重新提交网格任务。
12.配合信任控制中心对资源节点进行信任记录更新。在资源节点运行完任务后就需要对资源节点进行信任度更新,本系统中对各资源节点的信任评判是根据在各节点上子任务的运行时间来进行评判。由于系统是根据节点的性能来安排子任务的规模,原则上每个节点上子任务的执行时间应该相差不大,因此根据子任务规模和节点执行时间的规模时间比可以测算出一个信任估值,显然这个比值越大信任度就越高,一般稳定在0.6到1之间(可见这里的信任度表示就不仅仅是安全问题,更多的体现为节点服务质量的高低)。如果有节点出现异常而无法返回正常结果,也不能武断的将其信任度置为0,而是置为小于0.6的某一值,一般置为0.2。然后再和以前的信任度值综合计算,将信任值递交回信任控制中心完成对资源节点信任度的更新,这样就建立起对资源节点的主观信任机制。
Claims (1)
1.一种控制网格任务执行的方法,其特征在于该方法是运用移动代理和信任机制实现控制过程的,具体如下:
一、移动代理的创建方案:
系统中移动代理根据功能的不同分为两种:工作代理和控制代理。工作代理负责任务的执行,而控制代理负责对网格系统进行控制,通过控制代理实现任务监控。驻留控制代理的叫控制机,驻留工作代理的叫工作机,提交任务的计算机叫客户机;在虚拟组织/自治域内部,通过移动代理来实现任务分解,并携带子任务迁移到各个资源节点执行任务;资源运行任务失败时,通过移动代理实现本域或者跨域的协同任务求解;
二、具体执行流程:
1).网格应用层首先提供给用户一个使用平台,用户首先要经过注册成为该网格的用户;
2).如果用户身份合法,网格确定用户对资源的访问控制权限,网格用户即可随时提交任务请求,网格用户填写要提交的任务,网格用户在提交网格任务时,需给出提交的任务描述,网格虚拟组织控制机构会对网格用户提交的任务的合法性、用户访问控制权限等级进行检验,如果该任务请求合法,不存在语义冲突问题,网格虚拟组织服务器将接受该请求,将该网格用户任务放入任务等待对列,并将请求状态设置为:提交状态,等待调度执行;
3).网格虚拟组织中心的任务控制机构为任务进行任务调度,如果有需要执行的任务就继续步骤4;否则任务控制机构等待直至有用户提交任务;
4).任务控制机构获取任务的描述信息,如提交者的用户信息、任务内容;
5).在网格任务控制机构根据信任机制对资源进行信任审核,筛选出可用的计算资源,根据资源处理能力信息包括中央处理器性能,带宽性能,内存性能等进行综合评定,计算出各资源可以分配到的子任务模块大小;
6).将任务根据需分解的各模块大小比例分解成子任务;
7).任务的迁移:网格任务控制机构启动移动代理平台为分解后的子任务生成若干个任务执行代理和任务监控代理,任务执行代理分别携带各子任务迁移到资源节点上;任务监控代理跟随相应的任务执行代理同样迁移至各个资源节点上随时监听任务的执行情况;
8).如果任务迁移成功,进入步骤9,否则,任务状态被设置为出错状态进入步骤11。
9).子任务被迁移至各资源节点进行并行执行;
10).任务监控代理随时监听任务的执行情况和资源节点的情况,等待子任务执行完毕,若所有子任务都成功执行完毕,执行代理就携带子任务结果返回,网格任务控制机构服务器综合这些结果从而得到任务的完整执行结果,并将任务状态设置为完成状态,供用户查询任务结果时使用,否则进入步骤11;
11).若该过程中出现了某个资源节点运行失败,这时任务监控代理就返回失败信息,网格任务控制机构服务端就需要将分配给该资源节点的子任务重新进行分配,可以在本虚拟组织域中按照任务的执行过程重新选择资源节点进行迁移执行;若这时本域中无可用的资源节点,域服务端则需要请求其他虚拟组织域服务端来协助完成该段任务;如果本域或者跨域协助不成功,则任务监控代理返回整个任务的失败信息给域服务端,将任务状态置为失败,用户查询时提醒用户重新提交网格任务;
12).配合信任控制中心对资源节点进行信任记录更新,在资源节点运行完任务后就需要对资源节点进行信任度更新,对各资源节点的信任评判是根据在各节点上子任务的运行时间来进行评判,由于系统是根据节点的性能来安排子任务的规模,原则上每个节点上子任务的执行时间应该相差不大,因此根据子任务规模和节点执行时间的规模时间比可以测算出一个信任估值,显然这个比值越大信任度就越高,一般稳定在0.6到1之间;如果有节点出现异常而无法返回正常结果,也不能武断的将其信任度置为0,而是置为小于0.6的某一值,一般置为0.2。然后再和以前的信任度值综合计算,将信任值递交回信任控制中心完成对资源节点信任度的更新,这样就建立起对资源节点的主观信任机制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910184931A CN101715001A (zh) | 2009-10-21 | 2009-10-21 | 一种控制网格任务执行的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910184931A CN101715001A (zh) | 2009-10-21 | 2009-10-21 | 一种控制网格任务执行的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101715001A true CN101715001A (zh) | 2010-05-26 |
Family
ID=42418277
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910184931A Pending CN101715001A (zh) | 2009-10-21 | 2009-10-21 | 一种控制网格任务执行的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101715001A (zh) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102385541A (zh) * | 2010-09-10 | 2012-03-21 | 微软公司 | 受控的数据中心服务的自动复原 |
CN102495978A (zh) * | 2011-11-09 | 2012-06-13 | 南京邮电大学 | 开放计算环境下任务执行体与执行点可信指数计算方法 |
CN102546759A (zh) * | 2011-12-14 | 2012-07-04 | Tcl集团股份有限公司 | 一种智能电视实现网格计算的方法、系统及智能电视 |
CN103336709A (zh) * | 2013-06-01 | 2013-10-02 | 北京华胜天成科技股份有限公司 | 一种在集群中实现虚拟化分布式统一管理的方法及系统 |
CN104123184A (zh) * | 2013-04-28 | 2014-10-29 | 国际商业机器公司 | 一种用于为构建过程中的任务分配资源的方法和系统 |
CN104346214A (zh) * | 2013-07-30 | 2015-02-11 | 中国银联股份有限公司 | 用于分布式环境的异步任务管理装置及方法 |
CN104468174A (zh) * | 2013-09-25 | 2015-03-25 | 北京新媒传信科技有限公司 | 一种集群服务器执行任务的方法和装置 |
CN104933520A (zh) * | 2015-06-05 | 2015-09-23 | 上海斐讯数据通信技术有限公司 | 一种审批事项处理方法 |
CN104978232A (zh) * | 2014-04-09 | 2015-10-14 | 阿里巴巴集团控股有限公司 | 用于实时流式计算的计算资源扩容、释放方法及其装置 |
CN105653250A (zh) * | 2014-11-14 | 2016-06-08 | 中国科学院沈阳计算技术研究所有限公司 | 一种用于三维模拟系统的任务控制系统 |
CN106991002A (zh) * | 2017-02-08 | 2017-07-28 | 网易无尾熊(杭州)科技有限公司 | 用于实现任务调度管理的方法及设备 |
CN107146067A (zh) * | 2017-04-14 | 2017-09-08 | 太原钢铁(集团)有限公司 | 一种集群式力学拉伸试验机数据交互方法 |
CN107870822A (zh) * | 2016-09-26 | 2018-04-03 | 平安科技(深圳)有限公司 | 基于分布式系统的异步任务控制方法及系统 |
CN107977257A (zh) * | 2016-10-25 | 2018-05-01 | 杭州海康威视数字技术股份有限公司 | 一种任务调度方法及装置 |
CN109240810A (zh) * | 2018-08-03 | 2019-01-18 | 腾讯科技(深圳)有限公司 | 任务处理方法、装置及存储介质 |
CN109298897A (zh) * | 2018-06-29 | 2019-02-01 | 杭州数澜科技有限公司 | 一种采用资源组的任务分发的系统和方法 |
CN110083504A (zh) * | 2019-03-29 | 2019-08-02 | 北京奇安信科技有限公司 | 分布式任务的运行状态监控方法及装置 |
CN110298549A (zh) * | 2019-05-30 | 2019-10-01 | 广东民航机场建设有限公司 | 机场建设工程的项目任务处理方法、装置、设备和介质 |
CN111586586A (zh) * | 2020-05-14 | 2020-08-25 | 深圳力维智联技术有限公司 | 一种追踪方法和系统 |
CN114462900A (zh) * | 2022-04-13 | 2022-05-10 | 云智慧(北京)科技有限公司 | 一种业务活动节点的拆分方法、装置及设备 |
-
2009
- 2009-10-21 CN CN200910184931A patent/CN101715001A/zh active Pending
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102385541B (zh) * | 2010-09-10 | 2016-08-03 | 微软技术许可有限责任公司 | 受控的数据中心服务的自动复原 |
CN102385541A (zh) * | 2010-09-10 | 2012-03-21 | 微软公司 | 受控的数据中心服务的自动复原 |
CN102495978A (zh) * | 2011-11-09 | 2012-06-13 | 南京邮电大学 | 开放计算环境下任务执行体与执行点可信指数计算方法 |
CN102495978B (zh) * | 2011-11-09 | 2015-03-04 | 南京邮电大学 | 开放计算环境下任务执行体与执行点可信指数计算方法 |
CN102546759A (zh) * | 2011-12-14 | 2012-07-04 | Tcl集团股份有限公司 | 一种智能电视实现网格计算的方法、系统及智能电视 |
CN102546759B (zh) * | 2011-12-14 | 2014-07-09 | Tcl集团股份有限公司 | 一种智能电视实现网格计算的方法、系统及智能电视 |
CN104123184A (zh) * | 2013-04-28 | 2014-10-29 | 国际商业机器公司 | 一种用于为构建过程中的任务分配资源的方法和系统 |
CN104123184B (zh) * | 2013-04-28 | 2017-12-22 | 国际商业机器公司 | 一种用于为构建过程中的任务分配资源的方法和系统 |
CN103336709A (zh) * | 2013-06-01 | 2013-10-02 | 北京华胜天成科技股份有限公司 | 一种在集群中实现虚拟化分布式统一管理的方法及系统 |
CN103336709B (zh) * | 2013-06-01 | 2017-03-15 | 北京华胜天成科技股份有限公司 | 一种在集群中实现虚拟化分布式统一管理的方法及系统 |
CN104346214A (zh) * | 2013-07-30 | 2015-02-11 | 中国银联股份有限公司 | 用于分布式环境的异步任务管理装置及方法 |
CN104346214B (zh) * | 2013-07-30 | 2018-09-04 | 中国银联股份有限公司 | 用于分布式环境的异步任务管理装置及方法 |
CN104468174B (zh) * | 2013-09-25 | 2017-10-13 | 北京新媒传信科技有限公司 | 一种集群服务器执行任务的方法和装置 |
CN104468174A (zh) * | 2013-09-25 | 2015-03-25 | 北京新媒传信科技有限公司 | 一种集群服务器执行任务的方法和装置 |
CN104978232A (zh) * | 2014-04-09 | 2015-10-14 | 阿里巴巴集团控股有限公司 | 用于实时流式计算的计算资源扩容、释放方法及其装置 |
CN105653250A (zh) * | 2014-11-14 | 2016-06-08 | 中国科学院沈阳计算技术研究所有限公司 | 一种用于三维模拟系统的任务控制系统 |
CN104933520A (zh) * | 2015-06-05 | 2015-09-23 | 上海斐讯数据通信技术有限公司 | 一种审批事项处理方法 |
CN107870822B (zh) * | 2016-09-26 | 2020-11-24 | 平安科技(深圳)有限公司 | 基于分布式系统的异步任务控制方法及系统 |
CN107870822A (zh) * | 2016-09-26 | 2018-04-03 | 平安科技(深圳)有限公司 | 基于分布式系统的异步任务控制方法及系统 |
CN107977257A (zh) * | 2016-10-25 | 2018-05-01 | 杭州海康威视数字技术股份有限公司 | 一种任务调度方法及装置 |
CN106991002A (zh) * | 2017-02-08 | 2017-07-28 | 网易无尾熊(杭州)科技有限公司 | 用于实现任务调度管理的方法及设备 |
CN106991002B (zh) * | 2017-02-08 | 2021-01-29 | 阿里巴巴(中国)有限公司 | 用于实现任务调度管理的方法及设备 |
CN107146067A (zh) * | 2017-04-14 | 2017-09-08 | 太原钢铁(集团)有限公司 | 一种集群式力学拉伸试验机数据交互方法 |
CN109298897A (zh) * | 2018-06-29 | 2019-02-01 | 杭州数澜科技有限公司 | 一种采用资源组的任务分发的系统和方法 |
CN109240810B (zh) * | 2018-08-03 | 2021-02-23 | 腾讯科技(深圳)有限公司 | 任务处理方法、装置及存储介质 |
CN109240810A (zh) * | 2018-08-03 | 2019-01-18 | 腾讯科技(深圳)有限公司 | 任务处理方法、装置及存储介质 |
CN110083504A (zh) * | 2019-03-29 | 2019-08-02 | 北京奇安信科技有限公司 | 分布式任务的运行状态监控方法及装置 |
CN110298549A (zh) * | 2019-05-30 | 2019-10-01 | 广东民航机场建设有限公司 | 机场建设工程的项目任务处理方法、装置、设备和介质 |
CN110298549B (zh) * | 2019-05-30 | 2022-05-06 | 广东省机场管理集团有限公司工程建设指挥部 | 机场建设工程的项目任务处理方法、装置、设备和介质 |
CN111586586A (zh) * | 2020-05-14 | 2020-08-25 | 深圳力维智联技术有限公司 | 一种追踪方法和系统 |
CN111586586B (zh) * | 2020-05-14 | 2022-05-20 | 深圳力维智联技术有限公司 | 一种追踪方法和系统 |
CN114462900A (zh) * | 2022-04-13 | 2022-05-10 | 云智慧(北京)科技有限公司 | 一种业务活动节点的拆分方法、装置及设备 |
CN114462900B (zh) * | 2022-04-13 | 2022-07-29 | 云智慧(北京)科技有限公司 | 一种业务活动节点的拆分方法、装置及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101715001A (zh) | 一种控制网格任务执行的方法 | |
Gu et al. | Liquid: Intelligent resource estimation and network-efficient scheduling for deep learning jobs on distributed GPU clusters | |
US8230070B2 (en) | System and method for grid and cloud computing | |
CN100570569C (zh) | 网格计算环境下的作业跨域控制方法 | |
Liu et al. | Resource preprocessing and optimal task scheduling in cloud computing environments | |
Mahato et al. | On scheduling transaction in grid computing using cuckoo search-ant colony optimization considering load | |
Ding et al. | Kubernetes-oriented microservice placement with dynamic resource allocation | |
Mahato et al. | On scheduling transactions in a grid processing system considering load through ant colony optimization | |
Pirozmand et al. | GSAGA: A hybrid algorithm for task scheduling in cloud infrastructure | |
Sreenivasulu et al. | Hybrid optimization algorithm for task scheduling and virtual machine allocation in cloud computing | |
Rathore et al. | Job migration policies for grid environment | |
Choudhary et al. | An approach to improve task scheduling in a decentralized cloud computing environment | |
Stavrinides et al. | Security, cost and energy aware scheduling of real-time IoT workflows in a mist computing environment | |
Liu et al. | KubFBS: A fine‐grained and balance‐aware scheduling system for deep learning tasks based on kubernetes | |
Long et al. | A novel fault-tolerant scheduling approach for collaborative workflows in an edge-IoT environment | |
In et al. | Sphinx: A scheduling middleware for data intensive applications on a grid | |
Liu et al. | A Fast and Efficient Task Offloading Approach in Edge-Cloud Collaboration Environment | |
Malathy et al. | Performance improvement in cloud computing using resource clustering | |
Asan Baker Kanbar | Modern load balancing techniques and their effects on cloud computing | |
Ben Hafaiedh et al. | A model-based approach for formal verification and performance analysis of dynamic load-balancing protocols in cloud environment | |
Wei | System Reliability Modeling and Analysis of Distributed Networks | |
Ala’anzy et al. | Mapping and Consolidation of VMs Using Locust-Inspired Algorithms for Green Cloud Computing | |
Zhang et al. | An on-the-fly scheduling strategy for distributed stream processing platform | |
Liu | A Programming Model for the Cloud Platform | |
Fan et al. | Formally modeling and analyzing cost‐aware job scheduling for cloud data center |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20100526 |