收藏 分享(赏)

分布式dwms中移动agent间的协同工作.doc

上传人:cjc2202537 文档编号:222100 上传时间:2018-03-24 格式:DOC 页数:10 大小:100.50KB
下载 相关 举报
分布式dwms中移动agent间的协同工作.doc_第1页
第1页 / 共10页
分布式dwms中移动agent间的协同工作.doc_第2页
第2页 / 共10页
分布式dwms中移动agent间的协同工作.doc_第3页
第3页 / 共10页
分布式dwms中移动agent间的协同工作.doc_第4页
第4页 / 共10页
分布式dwms中移动agent间的协同工作.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、分布式 DWMS 中移动 Agent 间的协同工作分布式 DWMS 中移动 Agent 间的协同工作李燕冯玉强(哈尔滨工业大学管理科学与工程系,哈尔滨 150001)E-mail:摘要分布式工作流管理系统中工作流引擎的分布特性使管理者难以从整体上协调各节点间的工作.对此,文章将移动 Agent 技术应用于分布式工作流管理系统中.移动 Agent 作为一种移动工作流引擎存储整个工作流过程模型并在各节点间自主移动.通过与系统管理者的动态交互可使管理者实时监控整个流程的运行状态.为解决系统中单一移动Agent 任务过于繁重的问题,将移动 Agent 分为协同移动 Agent 和任务移动 Agent两

2、类,通过他们之间的协同工作提升工作流过程的运行效率.关键词分布式工作流管理系统移动 Agent 协同工作文章编号 10028331 一(2005)3202O003 文献标识码 A 中图分类号TP319,F273CooperativeWorkbetweenMobileAgentsinDistributedWorkflowManagementSystemLiYanFengYuqiang(Dept.ofManagementScienceEngineering,HarbinInstituteofTechnology,Harbin150001)Abstract:Thedistributedcharact

3、erofworkflowenginesindistributedworkflowmanagementsystemmakesthemanagerdifficultlyharmonizethedifferentnodesfromthewhole.Thispaperappliesthetechnologyofmobile-agentintothesystem.Mobile-agentisregardedasamobileenginewhichsavesthewholeworkflowprocessmodelsandmovesamongthenodes.Mobileagentcommunicatesw

4、iththemanagerdynamicallySOthatthemanagercanmonitortheworkflowstates.Forsolvingtheheavytasksofthesinglemobile-agent,itisdividedintocooperativemobile-agentandtaskmobile-agentSOthattherunningefficiencyofworkflowwillbeimprovedthroughthecooperationbetweenthem.Keywords:DistributedWorkflowManagementSystem,

5、mobileAgent,cooperativeworkl 引言进入 2O 世纪 90 年代,随着 Interuet 应用的日益普及,现代企业信息系统的分布性,异构性和自制性等特征越来越明显,企业的信息资源也分布在异构的计算机环境中,信息资源之间的连接表现出松散耦合的特点,传统集中式的工作流管理系统也逐渐由分布式工作流管理系统所取代 Il】.分布式工作流管理系统中的工作流引擎分布在多个物理上独立的服务器节点上,每个节点只负责调度整个过程中的一个或几个活动,有效解决集中式工作流管理系统中网络资源瓶颈及单点失败的问题,但工作流引擎的分布特性却导致工作流系统的管理者难以从全局的角度协调各节点间的工作以

6、及把握流程整体的执行状态.对此,本文将移动 Agent(MobileAgent,简称 MA)技术应用于分布式工作流管理系统中,将其作为一种移动工作流引擎存储整个工作流过程模型并能自主运行于各工作节点之间且可实时同管理者进行交互.但是基于单一移动 Agent 的分布式工作流管理系统往往由于 Agent 的任务过于繁重而导致工作流执行等待时间过长,故将移动 Agent 分为协同移动 Agent 和任务移动 Agent 两类,通过他们之间的协同工作提高整个工作流实例的运行效率.2 基于移动 Agent 的分布式工作流管理系统移动 Agent 的可移动性是指 Agent 可以携带数据和指令移动到其他环

7、境中并在那里执行指令 I 圳.移动 Agent 或称为移动对象,具有自身行为,数据,运行状态和运行路线,并且能将其行为,数据,运行状态和路线进行捆绑,作为一个独立的单元对象,通过其派遣/回收机制,实现在网络计算机之间的移动 ,以达到数据,信息的获取和传输等操作的目的51.2.1 系统的体系结构传统分布式工作流管理系统中的每个工作流引擎分别存储了整个过程模型中的一个或几个活动,致使系统管理者在工作流实例运行过程中难以协调各节点间活动和从全局角度掌握工作流状态.因 MA 的特性,我们将其作为一种移动工作流引擎存储整个工作流过程模型,在过程实例化后可由其携带相关数据自主地在各节点间移动,完成任务的分

8、配.而系统管理者只需与该 MA 进行动态交互即可掌握整个工作流的运行状态.本文基于移动 Agent 的协同分布式工作流系统的体系结构是以工作流管理联盟 WFMC 提出的工作流参考模型的基本体系结构为基础61,融人移动 Agent 技术实现协同分布式工作流的管理与监控(如图 1 所示).2.2 系统的运行机制图 1 中的工作流系统的体系结构由两个环境构成:开发环境和运行环境.开发环境主要是由工作流过程定义工具和 Agent 创建工基金项目:黑龙江省信息产业专项基金资助项目(编号 :2003118)作者简介:李燕(1979 一), 女 ,博士研究生,研究方向:工作流管理,业务流程管理,决策支持系统

9、.冯玉强(1961 一),女,教授,博士生导师.2002005I32 计算机工程与应用具组成.通过使用工作流过程定义工具根据目标业务流程通过某一特定的工作流建模方法定义工作流过程模型,该模型被保存在工作流过程库中.每条工作流的属性包括工作流的过程模型(一般包括工作流模型名称,ID 号,版本号,过程启动和终止条件,系统安全,监控和控制信息等一系列基本属性),活动,转换条件,工作流相关数据,角色,需要激活的应用程序,需要协同工作的不同主机的 IP 号及端口号等.移动 Agent 由工作流的发起者(通常是系统管理员. 也可以是具有工作流创建权限的工作流执行人员等)通过使用 MA创建工具进行定义,系统

10、管理员通过 Agent 服务器提供的一个交互界面(可由 Aglet 中的 Tahiti 构建)发出创建请求,在 Agent服务器响应之后创建一个移动 Agent.移动 Agent 根据创建要求从工作流过程定义库中提取相关工作流的基本信息及执行信息作为他的输入参数.系统管理员通过界面激活该移动Agent,并把它派遣到它所要到达的第一个工作流节点.至此移动 Agent 就可开始在整个网络上移动及分配任务.当任务完成之后,Agent 服务器负责收回该移动 Agent,移动 Agent 的整个生命周期就得以完成.运行环境是工作流过程的执行部分.移动 Agent 携带着整个工作流的过程定义.通过对过程定

11、义的解释执行和 Agent 迁移,依次完成对过程中各个活动的调度.在这里移动 Agent 起着工作流移动引擎的作用:根据过程定义和工作流相关数据为过程实例进行导航,迁移到各任务执行节点并同该节点上的应用程序或其他 Agent 交互 (工作能够自动完成的情况 ).或者创建任务保存在当地的工作人员的任务列表中.等待工作人员的执行,此时的移动 Agent 处于等待状态 .当任务执行完毕后通过把结果参数反馈给移动 Agent 使其变为运行状态.继续移动到下一个节点执行任务.过程分析人员图 1 基于移动 Agent 的协同分布式工作流系统的体系结构以上工作流的运行是一种理想状态.在实际的流程运行过程中会

12、出现因 MA 长时间等待而造成流程阻塞的情况.这种情况发生的原因可分为人为因素和非人为因素两种.第一种:人为因素造成的系统等待是由于节点执行者不能及时处理分配的任务,而导致 MA 长时间等待.流程阻塞.第二种:非人为因素造成的流程阻塞则可能是由多种原因造成的,如网络故障,非正常结束失败等.为此,在每次启动工作流实例的过程中.Agent 服务器都为该流程实例创建一个管理 Agent,该管理 Agent 对 MA 的状态进行实时监控和解释.并与系统管理员不断进行交互.对该系统起到总控的作用.MA 和管理 Agent 对意外情况的具体处理机制:(1)MA 根据某一任务节点的最长处理时间设置该节点的延

13、迟等待警报时间.(2)当 MA 在第 i 个节点的等待时间 t 超过 n,即 t)=T/,则MA 向该任务节点执行者发出警报信息:如执行者在规定期限内完成任务则流程继续推进;如仍未得到执行者的反馈信息,则 MA 将此时节点信息和网络系统状态信息传递给管理 Agent.管理 Agent 通过状态信息的分析以及与系统管理者的交互,确定系统阻塞的原因,如果是由于人为因素造成的系统阻塞则进入(3),否则进入(4).(3)若人为因素造成的流程阻塞.MA 将自动搜索与该执行者具有同等权限的节点.并将任务交于该节点执行.如果不存在这样的节点,则流程非正常终止,进入(5),并通知管理Agent 和系统管理员

14、.(4)若非人为因素造成的流程阻塞,管理 Agent 和系统管理员则根据各方面的系统状态信息进行故障分析.若故障可解决,则由管理 Agent 通知 MA,延长其等待时间:若故障短期内不可排除,则由管理 Agent 通知 MA 结束该流程.进入(5).(5)流程结束, 给该流程实例状态设为终止.3 系统中移动 Agent 间协同工作机制的实现基于单一移动 Agent 的分布式工作流管理系统往往由于Agent 的任务过于繁重而导致工作流执行的等待时间较长,影响整个工作流过程实例的执行效率.为了能够更好的实现分布式工作流系统中各节点间的协同工作以及提高工作流的执行效率.将移动 Agent 分协同移动

15、 Agent(CooperativeMobileAgent,简称 CMA)和任务移动 Agent(TaskMobileAgent,简称TMA).协同移动 Agent(CMA)一方面具有与其它 Agent 或用户进行交互的能力.另一方面又具有移动的能力.它的交互性体现在它对消息的发送,接收和解释上.而它的移动性体现在它的状态是可以保存,传输和恢复的.对 CMA 来说.它的知识推理(如它具有在什么时间与什么样的节点需要交互共同完成任务的知识)与能力是至关重要的.而它的执行状态却是次要的.协同移动 Agent 可被定义为 :CMA:=Nanle.Resouces.CMAContext.Autonom

16、ousManager其中 Name 是 CMA 的唯一符号名;Resouces:=fResource1 即当前 CMA 所能使用的资源;CMAContext 是 CMA 运行上下文.为 CMA 提供运行时间环境;AutonomousManager 是计算机工程与应用 2005.32201CMA 的自治管理器.它包括管理 CMA 全部资源对象的资源管理器.管理远程数据文件下载的远程文件拷贝器等.任务移动 Agent(TMA)可携带分布任务规划在网络节点上移动并且在相应的网络结点上完成指定任务分布.它可表示为:TMA:=tmaID,dtpm其中 tmaID 是 TMA 的口 f#一标识:dtpm

17、是任务移动 Agent的分布任务规划.TMA 并不需要与用户交互,而是根据指派的分布任务规划自治地完成任务分配.如果该任务需要与其它节点进行协同工作.则它通过与当前运行平台上的 CMA 通讯.将需要协同的任务信息交付于它.由 CMA 进行与其它节点进行通讯与协同工作.不同功能的移动 Agent 能够各司其职 ,使得工作流的运行更加流畅.有效提高工作流管理系统的运行效率.基于移动Agent 和任务 Agent 的协同分布式工作流管理系统的工作流的运行过程可如图 2 所示.4 结语移动 Agent 技术在分布式工作流管理系统中的应用能够有效解决管理者难以从全局角度协调各节点间工作的问题.由于基于单

18、一 MA 的分布式工作流管理系统中 Agent 的任务过于繁重而导致工作流实例的等待时间过长,故采用协同移动Agent 和任务移动 Agent 替代传统的单一移动 Agent.通过他们之间的协同交互提升整个工作流实例的运行效率.(收稿日期:2005 年 4 月)参考文献1.吴旭东.基于可移动软件 Agent 的工作流管理J1.计算机工程与应用,1999;35(增刊):44492.范玉顺.工作流管理技术基础M】.北京:清华大学出版社,施普林格出版社.2001:198200系统管理员MA 服务器及创建工作流参与者 1/本地 Agentl/工具过程库节点 1 应用程序参与者,-用Ag 程 en 序

19、tr.r1r(9)启动某一工作实例根据要求某几个节点TMA 与当地节点创建 TMA 和 CMA 通过 CMA 进行协同工作交互詈姬MA 与节点 I 进行任TMA,CMA 自动移至回其工作状态务交互执行下一个任务节点图 2 基于 TMA 和 CMA 的分布式工作流管理系统的流程图3.ManueldeJesusMendes.FldvioMdeAssisSilva.MobileAgentsinAutonomousDecentralizedSystemsJ.TheFourthIntemationalSympo-slumonAutonomousDecentralizedSystem.1999:(3):2

20、0234.范玉顺.曹军威.多代理系统理论,方法和应用M】 .北京:清华大学出版社.施普林格出版社.2002:1-45.HuangGQ.HuangJ.MakKL.Agent-basedworkflowmanagementincollaborativeproductdevelopmentontheIntemetJ】.ComputerAidedDesign.2000(32):1331446.WorkflowManagementCoalition.Theworkflowmanagementreferencemode1.DocumentnumberWFMCTC 一 10037.史忠植.智能主体及其应用M

21、1.科学出版社,2001:110126(上接 144 页)将该文介绍的 RADIUSServer 应用于动态口令系统中.其典型的应用方案是和防火墙,VPN 相结合进行动态口令认证 .其中,动态口令认证系统作为 RADIUSServer 的认证模块,防火墙或 VPN 作为 NAS 与 RADIUSServer 进行交互.从而使动态口令系统和原有系统无缝结合.图 2 是 RADIUSServer 与动态口令系统结合的典型应用部署图.7 应用及性能分析采用了该文所述的简化 RADIUSServer 以后.动态口令认证系统可以真正做到不做二次开发.就能和原有系统实现无缝结合.并且简化的 RADIUSS

22、erver 实现了用户名+ 密码的快速提取,对原有系统速率几乎没有任何影响.测试结果:直接用动态口令测试程序向动态口令认证服务器提请认证.认证速率 150 次/s:加入简化的 RADIUSServer以后.整个认证系统速率也达到 150 次/s.和没有插入简化RADIUSServer 时几乎没有差别 .并且测试中简化的 RADIUSServer 稳定性非常好.实际商业应用中的效果和测试结果一致:在加入简化 RADIUSServer 后.系统整体认证速度和没有2022005.32 计算机工程与应用加入简化 RADIUSServer 前几乎没有差别.并且简化 RADIUSServer 的稳定性也得

23、到了检验,运行稳定可靠.8 结束语该文对 RADIUS 协议作了基本的介绍,并结合动态口令认证系统的特点,对 RADIUS 协议的实现进行了简化.实现了一个简单而高效的 RADIUSServer,从而使动态口令认证系统可以真正做到不做二次开发,就能和用户原有系统实现无缝结合.同时简化的 RADIUSServer 还可以和标准 RADIUS 客户端兼容.目前,越来越多的应用倾向于使用这种不用二次开发的RAIUS 协议.该文提出的简化 RADIUSServer 以其实现的简单性,良好的嵌入性,应用的高效和稳定性,必将应用得越来越广泛.(收稿日期:2005 年 1 月)参考文献1.CRigney.RFC2865$1.http:/www.ieff.org/rfc.html2.CRigney.RFC2866$1.http:/www.ieff.org/rfc.html3.CRigney.RFC2869$1.http:/www.ietf.org/rfc.html4.WilliamStallings.CryptographyandNetworkSecurity:PrinciplesandPracticesM.ThirdEdition,PearsonEducation,2003

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

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

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


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

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

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