您好,欢迎访问三七文档
移动AgentMA随着Internet应用的逐步深入,特别是信息搜索、分布式计算以及电子商务的蓬勃发展,人们越来越希望在整个Internet范围内获得最佳的信息,渴望将整个网络虚拟成为一个整体,使软件代理(Agent)能够在整个网络中自由移动,移动代理(MA)的概念随即孕育而生。MAMA的定义MA的特点MA的工作原理MA的关键技术MA的发展前景MA的定义MAMA的最初构想:将整个网络虚拟成为一个整体,让移动Agent在Internet上自主移动并执行,来完成用户指定的任务。简单的说,MA是一个能够在运行过程中自主地从一台主机迁移到另一台主机,并可与其它agent和资源交互的程序移动的目的是使程序的执行尽可能的靠近数据源,降低网络的通信开销,平衡负载,提高完成任务的时效。MAMA的定义MA的特点MA的原理MA的关键技术MA的发展前景MA的特点传统的分布式计算主要采用远程过程调用、C/S结构等计算模型,它要求所有参与计算的节点在进行交互时,都必须同时在网络中存在,如果某些需要的资源暂时无法访问到,则整个计算过程将失败;另一方面,分布式系统通常过多地依赖于网络通信协议,这些协议在完成任务的过程中需要进行多次交互,从而很容易导致网络拥塞。移动Agent是一种特殊的Agent,它除了具有Agent的基本属性以外,移动性是其最重要的特点,它可以从一台机器通过网络移动到另外一台机器运行,并根据需要克隆或生成子Agent,子Agent具有同父Agent相同的性质。MA的特点MA的特点智能性协作性自主性移动性MA的特点移动性这是它和Agent的区别所在。MA的移动一般是在不同主机上持续移动,由于MA会在运行状态下挂起、移动,然后继续执行,因此移动的对象除了Agent外,还必须有Agent的当前运行状态信息和相应的数据。MA的特点自主性MA能在没有人或其他Agent直接干涉和指导的情况下持续运行,并能控制其内部状态和动作。Agent的移动一般是由Agent自主决定进行的。MA的特点协作性若干个MA可以在网络中相互通信合作,共同协作完成某一任务。例如,一个用户的Agent可以从具有相同兴趣需求的Agent那里获得很多有用的信息。MA的特点智能性指Agent具有一定的自适应能力,可对环境的变化做出适当的反应,并且具有一定的智力,因为它有一定的智能算法。MA技术的重要特性之一是它对网络环境的适应能力,如它可以减少网络负载和支持间断计算。MAMA的定义MA的特点MA的工作原理MA的关键技术MA的发展前景MA的工作原理——MA体系结构MA的体系结构MA系统由MA和MA服务器两部分组成。MA服务器基于MA传输协议ATP实现在主机间的转移,并为其分配执行环境和服务接口。MA在服务器中执行,通过MA通信语言ACL互相通信并访问服务器提供的服务。MA的工作原理——MA体系结构MA的体系结构MA的工作原理——检索模型基于MA信息检索系统的模型此模型是根据分布式检索信息系统的要求和移动Agent的特点所提出,采用移动Agent取代C/S方式的远程数据查询,降低了对网络的依赖性,同时具有资源的自动注册和发现功能,使系统更加灵活且易于扩充。MA的工作原理——检索模型用户管理Agent注册查询Agent查询Agent用户查询服务Agent注册服务Agent服务管理Agent注册Agent服务AgentDock管理Agent监控Agent提出查询要求根据要求创建生成路由表客户端注册服务器ARAgentDock服务器(AD)数据服务器DS启动时创建查询AR,获取URL地址列表提供目录服务,保存了所有信息源的地址和信息种类。根据查询Agent要求在本地数据库中查询本地URL及信息资源种类资源注册交互移动Agent提供了暂存功能MAMA的定义MA的特点MA的工作原理MA的关键技术MA的发展前景MA的关键技术MAE是MA系统实现的关键,它利用Agent传输协议实现agent在主机间的迁移,并为其分配执行环境和服务接口。它还要实现容错策略、安全控制策略、通信机制、基本服务设施等功能。MA的关键技术迁移技术通信机制安全性容错性管理MA的关键技术MA的迁移技术语句级迁移将MA的迁移路线、迁移条件和迁移动作嵌入到MA中。迁移机制过程级迁移将其从MA中分离出来,用所谓的“旅行计划”表示。MA的迁移技术迁移策略MA的迁移策略是指在动态变化的网络环境下,如何规划MA的迁移路线,使之更快更好地完成任务,迁移策略的优劣直接影响MA的性能。MA的迁移技术迁移策略静态路由策略MA创建者在MAE中事先给出目标主机和访问控制列表。动态路由策略MA根据网络动态变化情况和任务完成情况来选择目标主机。MA的迁移技术在执行分步式计算任务时,MA一般要根据网络的当前状况动态确定迁移路线,即采取动态路由策略。在搜索开始时计算的最佳路由,在搜索过程中可能会因为环境条件而发生变化,因为各个站点的网络延时不同,随着时间和网络流量的变化而变化。MA的迁移技术建立初始检索种群设网络中的站点为V=(M1,M2,M3,…,Mn),E=(Mi-Mj)(1=i,j=n)是移动Agent路线的集合,T=(Mi-Mj)(1=i,j=n)是从一个主机到另一个主机所需的时间,移动Agent在站点之间移动,来完成某项任务,Agent在移动的过程中记录站点被访问的次数Count,以及信息的使用率在初始化种群的时候,根据用户Agent记录的每个站点的检索频率进行构建,这样就提高了查找所需信息的效率。MA的迁移技术具体做法如下:用户Agent在信息检索之前,对创建的Agent进行状态,知识库,约束条件,以及对信息使用率的规则等进行初始化。在检索过程中它一方面将用户兴趣模型,分类信息库等写入知识库中另一方面可以记录站点的检索次数,以及根据信息使用率的规则记录站点信息的使用率L(0=L=1)。MA的迁移技术根据用户Agent记录的站点搜索次数Count以及信息的使用率L,计算网站的利用率P。IfLis高orCis多ThenVis使用率高(P)根据P的大小建立初始种群,如果P的值相同,则根据个体的适应度高低来选择。MA的迁移技术动态路由规划定义一个访问路径Itinerary的描述类,里面封装用于动态路径规划的方法:publicclassItineraryimplementsjava.io.Serializable{privateTouringMapmap;TaskSemanticget_taskSemantic();//获得任务语义NetTSget_netTS();//获得网络传输资源状况HostSget_hostS();//获得主机资源状况TouringExperienceget_touringExperience();//归纳已往的旅行经验…//下面的方法根据获得的任务语义、网络传输资源状况、主机资源状况、旅行经验(理想情况下应包括这几方面参数)规划路径:publicabstractStringgetNextHost(TaskSemantictaskSemantic,NetTSnetTS,HostShostS,TouringExperiencetouringExperience);publicabstractintinitialize();//参数省略//accessmethods……}MA的迁移技术迁移路径算法说明一般情况下,为了高效完成用户给定的任务,移动Agent分成多个子Agent迁移到其它节点上执行,这样,各个子Agent形成一定的前驱关系。但是由于网络的延迟性、不可靠性以及缺乏足够的安全性,网络经常发生通信故障,这就需要移动Agent根据网络条件动态予以调整。MA的迁移技术迁移路径算法说明如果一个客户Agent需要查询一个数据库,而这个数据库需要另外一个数据库中的数据,则客户Agent可以动态地分成几个子Agent。其中一个子Agent先迁移到第二个数据库中执行查询,得到查询结果,再携带结果迁移到第一个数据库中继续执行第一个查询。如果还需要第三个数据库,子Agent还可以继续迁移。怎样寻找移动Agent的最佳迁移路径?MA的迁移技术SzaxabayabcbbzaMA需访问的节点为M={a,b,c}MA访问顺序为:a-c-b-aMA可迁移的节点为N={x,b,y,z}假设这里最短的迁移路径是:S-ya-bc-bb-za(1)由于图中的有向图是分层的,因此,从n-1层计算其中1个节点与结束节点的最短路径;计算完后,标记为已访问过。如果Agent可以与2个以上的节点进行交互,则执行过程(3)。(2)上移一层,重复(1),直到开始节点为止(对于N集合则为空)。(3)采用复制方法即复制一个移动Agent,表示为Agent*,使得Agent*能与其它节点交互。图1中,当移动Agent迁移到b节点时,既可以与c节点交互又可以与b节点交互,这时可以克隆一个Agent*,使它与b节点交互。MA的通信机制通信机制由于信息的交流是多级别、多层次的,因此,MA系统也应该能够支持MA展开不同层次的通信,大致可以体现为两个层次:基于知识交换的高层通信机制,如agent通信语言ACL基于基本通信方式的低层通信机制,如MP、RPC、RMLMA的通信机制高层通信机制ACL是实现MA与MAE以及MA与MA之问的高层通信方式。目前常用的ACL有KQML/KIF和FIPAACL。MA的通信机制低层通信机制C/S模式消息传递机制面向对象的方法调用支持组通信(匿名通信)MA的安全性MA系统的安全问题涉及四个方面:MA之间通信的安全保护;MAE(主机)的安全保护;MA自身的安全保护;网络的安全保护。MA的安全性MA之间通信的安全保护MA通信的安全问题主要包括为MA双方提供可靠的通讯认证,保证信息不被窃取、修改、重发,杜绝不安全的委派等,常用的方法是在底层用加密、认证技术建立一条安全通道,一切通信信息都在安全通道中进行。MA的安全性MAE(主机)的安全保护A存在许多潜在的表现形式,如Trojan木马、计算机病毒、网络蠕虫。恶意的或有错误MA很容易利用主机的缺陷和不足对主机进行破坏。MA的安全性目前可采用的技术认证•用来提供对MA创建者身份进行认证,判断其是否来自于可信的一方。授权、访问控制•是一种加强授权的方法,它根据授权的信息对MA进行实时监控,判断其是否有越权的操作。砂箱模型•限制MA的访问权限,使之好像运行在一个特定的箱子里MA的安全性目前可采用的技术代码检验•要用于检查MA的代码,看它是否会执行某些非法指令。有偿服务•有效地抵御拒绝服务攻击,避免资源不合理的占有和交易。限制技术•制技术包括时间限制、空间限制、复制限制,它对控制具有持久性功能的MA行为很有效。MA的安全性MA自身的安全保护MA的安全保护主要有两方面:迁移中MA的安全保护和运行中MA的安全保护。解决方案•基于检测的保护措施•基于预防的保护措施网络的安全保护MA的容错性在MA系统中有两个主要的故障环节站点故障通信故障容错机制的目标就是要针对这些潜在的、不可避免的威胁,在MA迁移和执行的各个环节上进行异常的检测、防范和异常后的恢复。非阻塞性“只执行一次”MA的容错性基于复制基于事务基于检查点分布式容错:将容错责任分配到网络中多个非固定的站点进行。创建相同任务的多个备份:它们在网络中独立运行,任务结束后比较结果。.集中式容错:特定的服务器保留MA的原始备份并实施跟踪,通过重发原始备份恢复失效的MA。MA的管理MA商业成功应用的重要因素之一就是能够对其进行有效地跟踪和管理,这意味着MA在具有高度自主性的同时,还需一定程度的约束。这种管理可以来自于源主机,也可以来自于目标主机,支持的操作包括:源主机可以随时了解MA的运行情况,跟踪MA当前的位置,协调MA的工作,同时视具体情况延迟、重启或中止MA的执行。目标主机也要对外来MA进
本文标题:移动Agent
链接地址:https://www.777doc.com/doc-5649169 .html