




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
移动agen通信协作模型wamen模型
1wagnt通信协作模型近年来,移动恶意软件系统已成为基于互联网公司应用程序的新概念框架。这种框架的优势:节省网络带宽、节约时间、减少延时、提供实时的远程交互、支持离线计算、负载平衡。为了使整个移动Agent系统有效和正确地运行,移动Agent之间需要有效、可靠的通信和相互协作。移动Agent系统的通信研究分为底层的消息可靠传输和高层的基于语义的信息交互。在移动Agent之间透明寻址和可靠的消息传输是移动Agent系统设计中的重要难题。这是由于移动Agent自主迁移的特性带来了Agent迁移和消息传输的异步性,会产生通信失效问题。现有的移动Agent系统(如IBM公司开发的Aglet,Dartmouth学院的D’Agents,Stuttgart大学的Mole系统等)都未给出完善的解决方案。文献[2~5]提出的解决方案都存在各自问题。Murphy等人在文献中提出了网络快照的思想,由于采用了广播方式,此算法代价太高,会导致系统性能的下降。文献在Mogent系统中解决通信失效问题时,要求移动Agent处于静止态才可以发送消息,这一点限制了移动Agent的自主性、移动性。文献提出主动通信机制,这种Agent主动获取发给它的信息算法存在消息延时传递问题。文献采用了局部邮区的方法,但是邮箱的迁移会带来通信效率问题。移动Agent之间的协作模型可归为4类:客户/服务(如Aglets,D’Agents),面向会议(如Ara),基于黑板(如ffMAIN,Ambit),基于Linda模型(如PageSpace、JavaSpace)。这些模型都有各自的缺点。Linda模型是一种建立在共享数据基础上的协作模型,利用元组空间实现这种数据共享。Linda模型主要通过3条指令来访问元组空间。Linda模型不足之处:不能或很难明确表达问题空间的语义,缺乏基于语义的协作。Linda模型中的协作双方要求事先对事物须有共同的理解,这一缺点显然不利于Agent系统的灵活性、扩充性和异构性。针对上述的问题,本文提出Wagent通信协作模型。Wagent模型运用FIPAACL进行基于语义的信息交互的特点解决基于语义的协作问题,参考Linda协作模型协作双方可以在不同时间和不同空间上进行交互的特点运用来解决通信失效问题。2移动设备的联合无线通信模型2.1基于语义的通信移动Agent自主迁移的特性带来了Agent迁移和消息传输的异步性,会产生通信失效问题。基于Linda模型的协作双方通过元组空间,实现了在不同时间和不同空间上进行交互,这种协作方式本质上适合移动性和开放性的应用。Wagen模型参考Linda模型协作双方在不同空间可进行交互的特性,解决Agent自主迁移带来的空间变化问题;参考Linda模型协作双方在不同时间可进行交互的特性,解决消息发送的异步性问题。Wagent模型用数据库仿真Linda模型的元组空间,使得移动Agent通过数据库实现移动Agent通信双方在不同时间和不同空间上进行交互,从而解决移动Agent的通信失效问题。Linda模型中协作的Agent之间并不直接进行通信,这种协作方式要求Agent之间事先对事物须有共同的理解,而这一点在互联网开放和异构的环境下是不现实的。因而Linda模型不能或很难明确表达问题空间的语义,协作双方缺乏基于语义的协作。在基于语义的通信研究中,KQML(KnowledgeQueryandManipulationLanguage)知识查询与操纵语言和FIPAACL是最受关注的通信语言。1999年,智能物理agen基金会(FIPA)开发了FIPAACL(AgentCommunicationLanguage)。FIPAACL是基于言语行为理论的通信语言,移动Agent基于FIPAACL能够进行基于语义的信息交互。Wagent模型将FIPAACL通信消息作为协作双方的共享数据存入元组空间,实现基于语义的协作,从而解决Linda模型缺乏基于语义的通信协作问题。Wagent模型用数据库存储FIPAACL通信消息,数据库中FIPAACL通信消息记录相当于元组空间的元组;Wagent模型中元组由七维变量(消息类型、发送者、接受者、内容、本体、语言、时间)构成,设计数据库中表结构有7个字段,分别对应此七维变量来存储通信消息;移动Agent之间通信的每一条消息(即数据库表中的一条记录)对应元组空间中的一个元组;Linda模型中out命令对元组的操作,对应Wagent模型向数据库写入一条记录;rd命令从元组空间读出匹配的元组,对应Wagent模型从数据库中读取符合条件的记录。KQML和FIPAACL对于语义的强调,使人们忽视了也许是ACL成功更重要的因素:ACL和WWW技术的结合。WWW是一个巨大的信息资源库,Agent总是要和WWW发生作用。但是KQML和FIPAACL发展偏离了Internet技术和标准的主流。Wagent模型把FIPAACL与Internet技术相结合,用XML来描述FIPAACL,它的优点:(1)便于开发和维护分析器,易与WWW软件工程集成。可以根据XML标记直接解析信息,并且已经有许多现成的工具来解析XML;(2)增加本体知识库和其它外部信息的连接能力。因为XML把链接集成到ACL消息中,解决了FIPAACL消息内容中本体论说明和共享问题。此外,XML使移动Agent更好地适应开放和异构的环境。Wagent模型用XML描述FIPAACL通信消息,图1为一条消息应用示例。2.2wagent通信合作模型综合以上分析,本文提出Wagent通信协作模型,如图22.2.1ent的注册及其管理Manager是系统核心部分,负责移动Agent之间的通信协作。Manager共有4个部分构成,它们各自的分工是:Servicehandler负责监听是否有移动Agent要求通信连接;Registryservice进行移动Agent的注册;Identifyservice负责移动Agent的身份认证;Communicationkernel管理移动Agent之间的通信,负责将通信消息写入数据库,以及从数据库中检索通信消息记录等。本体(Ontologyi)提供对某个领域概念及概念之间关系的描述。用户在线表(Onlineusertable)存放在线的移动AgentID和通信的Socket端口号。一般认为域内移动Agent协作需求少,主要是域与域之间移动Agent要求协作。每个移动Agent一旦生成,就分配给一个唯一的永远不变ID,ID依据人们身份证设计原则设计。数据库由注册表和消息表构成。在数据库中,只有发送者才有权读写自己发送的通信消息,接收者只有检索和读取其它Agent发送给自己通信消息的权利。2.2.2控制移动agent的身份和通信此系统共有4个核心算法:通信注册、通信登录、通信、迁移。(1)通信注册(首次使用,需要注册)1)移动Agent通过Socket连接到Manager。2)移动Agent输入ID,密码。3)RegistryService判断此移动Agent是否已经注册,如已经注册则拒绝,否则转4)。4)RegistryService将移动Agent的ID,密码,Socket端口号,时间写入注册表,然后提示此移动Agent注册成功。(2)通信登录1)移动Agent通过Socket连接到Manager。2)移动Agent输入移动Agent的ID和密码,IndentifyService根据移动Agent的ID和密码到注册表中检索,进行身份论证;如不正确,给出错误信息提示;否则提示移动Agent成功登录,转3)。3)CommunicationKernel将此移动Agent的ID和通信的Socket端口号,存入用户在线表。4)CommunicationKernel先将消息表中所有接收者为此移动Agent且时间发生在上一次此移动Agent通信结束之后的消息检索出,然后发送给此移动Agent。5)此移动Agent进入通信状态,执行算法3。(3)通信1)移动Agent启动接收线程,专门监听是否有通信消息到来,如有,接收通信消息,继续监听。2)当移动Agent要发送通信消息时,用XML描述FIPAACL的通信内容,在发送通信消息之前,调用IE浏览器对此通信消息进行语法检查。如语法检查没通过,给出错误提示,移动Agent重新描述消息;否则,转3)。3)CommunicationKernel将此通信消息和时间写入消息表。4)CommunicationKernel检索用户在线表,判断接收的移动Agent是否在线。如在线,立即发送给接收移动Agent;否则不发送。5)转(2)(4)迁移(必须在通信登录成功之后)1)移动Agent发出退出请求,Manager结束与此移动Agent的通信,并将此移动Agent从用户在线表中删除,移动Agent记录下此次通信的结束时间。2)移动Agent到达新的目的地后,立即重新进行通信登录。3agletidv链及互联网信息通信的实现IBM的Aglet平台采用客户/服务通信协作方式,它存在以下问题:移动Agent之间要求有稳定的连接;通信过程中如果Agent发生迁移,通信会失效;没有基于语义的通信协作等。针对Aglet平台的这些问题,本文在IBM公司的Aglet2.0.2版本系统平台基础上,实现了Wagent通信协作原型。由于移动Agent系统要求接收和发送消息同时进行,Wagent模型采用了Java的多线程技术实现并行操作。为了使移动Agent之间的消息可靠传输,Wagent模型用Socket方式进行网络连接。Wagent模型建立Communication数据库仿真Linda模型中的元组空间。其中Communication库有message和id两个表。message表结构如下:(messagevarchar20;sendervarchar20;receivervarchar20;contentvarchar350;ontologyvarchar50;languagevarchar20;timedatetime)。id表结构为(agletidvarchar20;passwordvarchar20;ipvarchar15;socketvarchar80;timedatetime)。用户在线表(agletid,Socket)用Java语言提供的HashMap来实现:agletid作为key值,移动Agent通信的Socket端口号作为对象存入HashMap中。这样利用HashMap快速查询的特性,实现对用户在线表的快速检索。MultiServer类实现Servicehandler的功能,它使用一个ServerSocket不停地监听端口,一旦发现有移动Agent来到,就启动一个线程类处理与此agent的通信,然后继续监听。下面是MultiServer的部分代码片段,如图3。用ServerOneJabber线程类来负责处理与每一个移动Agent通信:(1)它首先是一个线程类,这样保证Manager与其它移动Agent通信互相独立,不会相互干扰。(2)registry专门处理移动Agent注册。(3)login处理移动Agent登录,如登录成功,将其加入用户在线表,然后把message表中接收者为此移动Agent的消息且还未发送的消息发送给它。(4)dealmessage监听通信端口是否有通信消息到来,当通信消息到来时,将通信消息存入message表,再判断接收的Agent是否在线,如果此移动Agent在线则立即发送给它。(5)用户在线表用HashMap实现,并设置其为静态变量,这样多个移动Agent可以同时加入其中,对HashMap的操作时要同步。ServerOneJabber的部分代码如图4。Wagent模型用MobileAgent类表示移动Agent:(1)是IBM开发的Aglet的子类。(2)有一个专门的用于通信的类JabberClientmapcommunicate。它的代码如图5。JabberClientmapcommunicate类处理移动Agent的通信。(1)它继承了JFrame类。(2)专门用一个receiver线程类来监听端口,接收消息。(3)test过程负责进行对通信内容的语法检查。(4)registry输入注册消息。(5)login进行登录。(6)发送通信消息。部分代码如图6。4wagnt通信协作模型的主要特点本文模拟互联网环境,将Wagent通信协作原型应用到网上购买手机。在这一模拟过程中,采用这种通信协作机制的理由是:(1)移动Agent系统适合互联网开放和异构的环境;(2)Agent之间需要通信协作,提高工作的效率;(3)较搜索引擎而言,Agent与网站之间交互是智能的,能准确得到结果。一个典型的工作过程如下:(1)系统首先要设定手机性价比参数的标准,这些参数包括手机的品牌、型号、价格、邮寄费。用户根据自己的喜好为每一个参数设定一个权重,这些权重值之和等于1,手机性价比的值越高越符合用户要求。然后系统将设定的参数值赋给移动Agent。(2)利用搜索引擎,搜索到互联网上卖手机的网站。(3)每一个移动Agent先确定一个未被Agent访问的网站,将此网站标记为正在被访问,广播通知其它移动Agent此网站被访问;移动Agent移动到此网站,搜集网站所有手机的参数,根据用户设定的权重,计算出手机性价比的值,取其中最大的值,然后与当前所知的最大值比,如果大于已知最大值,则广播给其他Agent,否则,放弃此网站信息。重复(3),直至搜索到的网站全部被访问完。(4)最后得到性价比最高的手机就是用户最需要的产品。从这一应用中,可以看到Wagent通信协作模型的特点:(1)通过用户在线表中agletid与其通信的Socket对应和用户在线表的动态更新,适应移动Agent的不断移动引起地址动态变化,解决了移动Agent通
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 太阳能光伏发电项目可行性研究报告
- 行业趋势预测-深度研究
- 风光互补体育馆设计-深度研究
- 虚拟现实在批发中的应用-深度研究
- 地方文化全球化路径探索-深度研究
- 跨网下载技术研究-深度研究
- 释放度动态调整-深度研究
- 跨平台应用开发-第3篇-深度研究
- 猴菇菌片产业标准化发展-深度研究
- 2025年劳动合同范文官方模板
- 2025届上海市(春秋考)高考英语考纲词汇对照表清单
- 2024年江西交通职业技术学院单招职业技能测试题库及答案解析
- 人卫版急诊与灾难医学之呼吸困难教学课件
- word公章模板
- 中西医结合肿瘤学试卷(含答案)
- 开学第一课我们开学啦主题班会PPT课件(带内容)
- 体育训练队队规
- 电梯工程开工报告(直梯)(共1页)
- ANSI B165《钢制管法兰及法兰管件》
- 集团公司财务管理内部交易管理办法,
- 视频会议系统测试方案汇总
评论
0/150
提交评论