(计算机软件与理论专业论文)移动agent和集群系统的融合研究.pdf_第1页
(计算机软件与理论专业论文)移动agent和集群系统的融合研究.pdf_第2页
(计算机软件与理论专业论文)移动agent和集群系统的融合研究.pdf_第3页
(计算机软件与理论专业论文)移动agent和集群系统的融合研究.pdf_第4页
(计算机软件与理论专业论文)移动agent和集群系统的融合研究.pdf_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 计算机智能化和网络化进程促成了a g e n t 技术的迅速崛起和广泛应用,移动 a g e n t 技术是为解决复杂、动态、分布式智能应用而提出的一种全新的计算手段, 是计算机软件技术的又一次深刻变革。移动a g e n t 技术作为一种新的计算模式, 近几年来已成为网络计算领域中的大热点i l l 。 a g e n t 技术的研究领域非常广泛,包括了m o b i l ec o d e ( 移动代码) 、i n t e l l i g e n t r o u t e r s ( 智能路由器) 、w e bs e a r c ht o o l s ( n 络搜索工具) 、r o b o t s ( 机器人) 、i n t e r f a c e ( 接 口技术) 等计算机科学的各个领域。 孤儿检测在分布式系统中已经有非常深入的研究,但由于a g e n t 系统与分布 式系统的差异,分布式系统中的相关技术并不能直接应用于a g e n t 系统中。在基 于对当前a g e n t 系统中两种孤儿检测和终止技术的研究后,本文对一种更好的技 术手段影子法作了深入研究分析。 集群是一种并行或者分布式处理系统,由一组互连的计算机节点组成。这些 计算机节点可以是一个具有存储器、i o 设备和操作系统的个人计算机,也可以是 工作站或者多处理器系统。这样的系统能够廉价地获得原来只有昂贵的私有共享 存储系统刁具有的特征和优势瞄j 。 本文在充分研究移动a g e n t 基本理论的基础上,对移动a g e n t 与传统的集群技 术的融合研究作了初步的尝试,并以f i r 滤波器的并行计算为列,研究了基于移 动a g e n t 的集群系统在并行计算上的优势。 关键词:移动a g e n t ,集群系统,并行计算,孤儿检测 a b s l r a c t a b s t r a c t m o b i l ea g e n t sa r ea u t o n o m o u so b j e c t st h a tc a nt r a n s f e rf r o mn o d et on o d eo fa c o m p u t e rn e t w o r k m o b i l ea g e n tt e c h n o l o g yh a sb e e np r o p o s e df o rv a r i o u sa p p l i c a t i o n a r e a s ,i n c l u d i n ge l e c t r o n i cc o m m e r c e ,s y s t e m sm a n a g e m e n ta n da c t i v em e s s a g i n g o r p h a nd e t e c t i o na n dt e r m i n a t i o ni sw e l lr e s e a r c h e di nd i s t a i b u t e ds y s t e m s ,b u t n o ti nm o b i l ea g e n ts y s t e m s c u r r e n t l y ,t w oc o n t e n t sa r ei n t r o d u c e di nm o b i l ea g e n t s y s t e m ,t h ee n e r g yc o n c e p ta n dt h ep a t hc o n c e p t b o t ha p p r o a c h e sh a v ed i s a d v a n t a g e s b ym e r g i n gt h e mo nd i f f e r e n tl e v e l san e wp r o t o c o lc a l l e ds h a d o wc o n t e n ti sc r e a t e d t h mc o m b i n e st h ea d v a n t a g e so fb o t ha p p r o a c h e s ,a n da tt h es a m et i m em i n i m i z e st h e d i s a d v a n t a g e s t h et a s kp a t t e r no fm a s t e f f s l a v ei sa d o p t e di na p p l i c a t i o no fm o b i l ea g e n ti n c l u s t e rs y s t e m t h es l a v ea g e n tr u n so nap o o lo f p r o c e s s o r s m a s t e ra g e n tc r e a t e ss l a v e a g e n t ,a l l o w si tm o v e st od e s i g n a t e dp u r p o s ea n di m p l e m e n t e di t a n dr e t u l t l sr e s u l t s m a s t e ra g e n tc a nd e c o m p o s e sd i f f i r e n tn u m b e ro fs l a v ea g e n tt oh o s t sb a s e do nt h e i r c a p a b i l i t y t a k i n gp a r a l l e lc o m p u t i n go ff i n i t ei m p u l s er e s p o n s ed i g i t a lf i l t e ra sa l l e x a m p l e ,t h em o b i l ea g e n tb a s e dc l u s t e rs h o wm o r ee f f i c i e n tt h a nn o r m a lc l u s t e rm o d e l w h i c hi ss i m p l et a s k b a s e dm o d e l k e yw o r d s :m o b i l ea g e n t ,c l u s t e r ,p a r a l l e lp r o c e s s i n g ,o r p h a nd e t e c t i o n l l 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示谢意。 签名:一! 毒疆 一 日期:彦卵石年月船日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:址 导师签名: 当h 纠 日期汐6 年月船日 第一章引言 第一章引言 计算机智能化和网络化进程促成了a g e n t 技术的迅速崛起和广泛应用。a g e n t 技术是为解决复杂、动态、分布式智能应用而提出的一种全新的计算手段,是计 算机软件技术的又一次深刻变革。 a g e n t 并不是一个新的概念。1 9 7 7 年h e w i t t 在研究c o n c u r r e n ta c t o rm o d e l 时 就首次提出了具有自组织性、反应机制和同步执行能力的软件模型,这就是最初 的a g e n t 思想,是a g e n t 的雏形。经过二十几年的发展,a g e n t 逐步成为a i ( 人工 智能) 及其他计算机领域内的一个重要研究课题。 目前a g e n t 技术的研究的领域非常广泛,包括了m o b i l ec o d e ( 移动代码) 、 i n t e l l i g e n tr o u t e r s ( 智能路由器) 、w e bs e a r c h t o o l s ( 网络搜索工具) 、r o b o t s ( 机器人1 、 i n t e r f a c e ( 接口技术谗 计算机科学的各个领域,因此a g e n t 的概念也有很多的版本。 w o o l d r i d g e 和j e n n i n g s 在1 9 9 5 年提出了目前较权威的a g e n t 定义,获得了计算机 领域专家的普遍认同。此定义包括了两个子定义: 弱定义a g e n t 是一个基于软件( 在较多的情况下) 或硬件的计算机系统,它拥有 以下特性:自治性、社会能力、反应性和能动性。 强定义a g e n t 在弱定义的特性基础上,还要包括情感人类的特性。 随着i n t e r n e t 应用的逐步深入,特别是信息搜索、分布式计算以及电子商务的 蓬勃发展,人们越来越希望在整个i n t e m e t 范围内获得最佳的服务,渴望将整个网 络虚拟成为一个整体,使a g e n t 能够在整个网络中自由移动,移动a g e n t ( m o b i l e a g e n t ) 的概念随即孕育而生。 2 0 世纪9 0 年代初,g e n e r a lm a g i c 公司在推出其商业系统t e l e s c r i p t 时第一次 提出了移动a g e n t 的概念,即一个能在异构网络环境中自主地从一台主机迁移到 另台主机,并可与其它a g e n t 或资源交互的软件实体。移动a g e n t 是一类特殊的 a g e n t ,它除了具有a g e n t 的基本特性一自治性、向应性、主动性和推理性外,还 具有移动性,即它可以在网络上从一台主机自主地移动到另一台主机,代表用户 完成指定的任务。由于移动a g e n t 可以在异构的软、硬件网络环境中自由移动。 因此这种新的计算模式能有效地降低分布式计算中的网络负载、提高通信效率、 动态适应变化的网络环境,并具有很好的安全性和容错能力。 移动a g e n t 可以看成是a g e n t 技术与分布式计算技术相结合的产物,它与传统 1 电子科技大学硕士学位论文 网络计算模式有着本质上的区别。移动a g e n t 不同于远程过程调用( r p c ) ,这是因 为移动a g e n t 能够不断地从网络中的一个节点移动到另个节点,而且这种移动 是可以根据自身需要进行选择的。移动a g e n t 也不同于一般的进程迁移,因为一 般来说进程迁移系统不允许进程自己选择什么时候迁移以及迁移到哪里,而移动 a g e n t 却可以在任意时刻进行移动,并且可以移动到它想去的任何地方。移动a g e n t 更不同于j a v a 语言中的a p p l e t ,因为a p p l e t 只能从服务器向客户机做单方向的移 动,而移动a g e n t 却可以在客户机和服务器之间进行双向移动。 移动a g e n t 天生就具有并行计算的特点,一个基于移动a g e n t 的应用由一组移 动a g e n t 构成,每一个a g e n t 根据自身的目标和环境的状况移动到拥有计算所需资 源的节点上进行计算。在进行计算时可能需要与其它a g e n t 进行通信协作,而整 个计算过程则可能会分成多个步骤进行,每一步完成之后,移动a g e n t 都将自主 地决定下一步的动作,直至其任务全部完成后才自动消亡。 移动a g e n t 的应用是当前的研究热点,但同时,移动a g e n t 基础技术平台的研 究也一样具有重要的意义。本文在深入研究移动a g e n t 技术特点、传输协议、编 程环境的基础上,首先研究了移动a g e n t 系统中的孤儿检测与终止问题,并给出 了更优的解决方案,然后,基于移动a g e n t 天生的并行特性,对移动a g e n t 和集群 系统的融合作了初步的研究尝试,并以f i r 滤波器的并行计算为例,研究了基于 移动a g e n t 的集群系统在并行计算上的优势。希望通过此研究,减小国内和国外 在该技术领域的基础技术研究和应用研究上的差距。 本论文主要由以下几章组成: 第一章引言 第二章集群系统概述 第三章移动a g e n t 技术 第四章a g e n t 传输协议 第五章v o y a g e r 编程环境 第六章移动a g e n t 控制机制研究 第七章移动a g e n t 在集群系统中的应用 2 第二章集群系统概述 第二章集群系统概述 2 1 并行计算机体系结构 现代并行处理技术经历了从单指令流多数据流的阵列机( s i m d ) 、单处理机多 流水线的向量机及向量并行机( v p ) 、共享存储的对称多处理器系统( s m p ) 、分布存 储的大规模并行处理系统( m p p ) n 分布共享存储结构( d s m ) 的并行机系统和计算 机集群系统( c l u s t e r ) 的演变过程。 根据内存和外部存储的不同分布,并行计算机可以大致地分为以下四种类型: ( 1 ) s m p :s m p 称为共享存储多处理机( s h a r e dm e m o r ym u l f i p r o c e s s o r s ) ,也称 为对称多处理机( s y m m e t r ym u l t i p r o c e s s o r s ) 。s m p 系统是并行技术发展初期最常见 的多处理计算机体系,在这种计算机中,每个处理器的地位都是一样的,它们 连接在一起,共享同一个存储器系统。由于存储系统共享,每一个处理器均能直 接访问内存中的所有数据,因而这类体系的计算机编程与一般的单处理系统相差 不大( 基本上相当于传统的多线程编程) 。s m p 属于紧密耦合的共享存储系统。但是, 在这类计算机中有一个无法突破的瓶颈即处理器与存储器系统间的瓶颈。因 此,s m p 计算机很少能突破1 0 0 个c p u ,目前国际上流行的s m p 一般都是4 8 个 c p u ,有少数是】6 个c p u 的。目前,s m p 计算机在网络服务器中应用较为广泛, 但对于一些超大规模的应用和科学计算来说,s m p 计算机就往往无能为力了。 f 2 ) m p p :大规模并行( m a s s i v e l yp a r a l l e lp r o c e s s i n g ,简称m p p ) 系统,是最常 见的并行系统。m p p 体系的出发点在于突破s m p 系统中处理器与内存系统间的瓶 颈。为了解决此问题,m p p 提出了分布式存储系统,即每个c p u 拥有单独的内存 系统,构成一个单独的节点,节点间通过高速的网络连接。c p u 可以直接访问自 己节点内部的内存,对于其他节点则不能直接访问,而要通过消息传递的方式来 进行。m p p 系统因为没有了c p u 与内存间的瓶颈,其最大的优点是可阻最大限度 地增加处理器的数量。国际上出现的一批速度上千亿、上万亿次的计算机大多是 采用m p p 系统,最多的可以达到几千个c p u 甚至上万个。与此同时,m p p 系统 也有它较大的缺点,即由于每个节点机无法直接访问全部内存,需要依赖消息传 递来相互通信。而消息传递对编程者来说是不透明的,因而大大增加了编程的复 3 电子科技大学硕士学位论文 杂度。同时,由于m p p 体系的特殊性,目前流行的m p p 计算机往往都是专有的 结构。m p p 系统的代表性机型有a s c io p t i o nr e d 和i n t e r 公司的p a r a g o n 。我国自 行研制的曙光1 0 0 0 计算机和神州i i 巨型机也属于典型的m p p 计算机系统。 ( 3 ) c l u s t e r :集群( c l u s t e r ,也称为机群,簇集) ,是利用高速通用网络将一组 高性能工作站或高档p c 机,按某种结构连结起来,并在并行程序设计以及可视化 人机交互继承开发环境支持下,统调度,协调处理,实现高效并行处理的系统。 典型的c l u s t e r 系统有i b m 公司的s p 一2 和d e c 的t r u c l u s t e r 。我国自行研制的曙 光1 0 0 0 a 也属于这类体系结构。 c l u s t e r 体系具有以下特点:1 ) c l u s t e r 体系的每一个节点都是一个完整的计算 机,都有自己独立的存储系统;2 ) 节点机间通过消息传递的机制来开发并行应用; 3 1 可以最大限度地增加节点机的个数,突破s m p 体系的瓶颈问题;4 ) 节点机往 往依赖于现有的、成熟的技术;5 ) 典型的c l u s t e r 体系常常依赖于通用的网络体系, 通信效率低于专用的m p p 体系,因此比较适用于粗、中粒度的并行。 c l u s t e r 体系具有以下优点:1 ) 系统开发周期短。c l u s t e r 体系往往是依赖于现 有的成熟技术,既不用重新研制计算节点,又不用重新设计操作系统和编译系统, 而把开发的重点放在通信和并行编程环境上,这就节省了大量的研制时间;2 ) 用 户投资风险小。因为c l u s t e r 体系的每一个节点机同时也是一台独立的工作站,即 使整个系统对某些应用问题并行效率不高,它的节点仍然可以作为单个工作站使 用。3 ) 系统价格低。由于c l u s t e r 的节点机可以批量生产,因而价格比传统巨型机 或m p p 机要便宜得多;4 ) 节约系统资源。群集系统结构灵活,可以将不同体系结 构、不同性能的工作站连在一起,充分利用现有设备;5 ) 系统可扩展性好。从规 模上,群集系统大多使用通用网络,系统扩展容易,从性能上,对大多数中、粗 粒度的并行应用都有较高的效率;6 ) 系统容错性好。由于采用了失效切换技术, 失效节点上的任务可以透明地转移到其他节点上继续运行;7 ) 应用面较广。c l u s t e r 建立在成熟的技术基础之上,且有了失效切换技术,更适合于作超级服务器。 ( 4 ) n u m a ( n o n u n i f o r mm e m o r y a c c e s s ) :还有一类有发展前途的并行机叫分 布式共享存储多处理机( d s m ) 或称为具有高速缓存一致性的分布式存储系统 ( c c n u m a ) ,也有的公司称之为s p 或s c a l a b l es m p 。其代表机型是s g i 的o r i g i n a l 2 0 0 0 和s u n 公司的e n t e r p r i s e6 5 0 0 。这种机器扩展性比s m p 好,编程也较方便, 适于科学工程计算,虽然其通用性不如群集系统,但更受到学术界的亲睐。 在这四种结构中,c l u s t e r 和n u m a 更具有生命力,是当前及今后并行计算机 系统结构发展的重要方向。 4 第章集群系统概述 2 2 集群系统分析 如前所述,集群是一组相互独克的,通过高速嘲络互联的计算机,它们构成 了个本地系统,并以单一系统模式加以管理。系统中所有计算机节点都能完成 独立操作和配置。当个用户与集群相互作用时,集群像是一个单一的计算机。 集群系统既包含网络技术,又包含计算机体系结构技术,丰要是并行技术。它是 这两种技术的融合。在硬件连接和数据通信上,采用网络技术;在资源管理和任 务分配上,采用处理器结构中的并行技术“1 。 2 2 1 集群的组成 集群系统是由软件和硬件构成的复杂系统。 l 、硬件组成 硬件包括执行具体操作的c l u s t e r 节点和提供数据通信的互连网络。 c i u s t c r 节点提供计算和数据存储能力。由市场上普通的d e s k t o p 或s c y v e r s v s l e n a 充当。c l u s t e r 节点包括几个关键的子系统: 处理器 m e m o r y 外存:高容量和非易失性存储。硬盘是主要形式,而且很有价格优势。另 外的形式有c d r o m 、c d r w 、可写磁盘等。 外部接r :提供本节点到外部设备和网络的连接。如p c i 、n i c s 等。 c l u s t e r 网络硬件为各个节点的通信提供种平台。一个网络运行时的属性主 要包括两点:带宽( b a i l d w i d m ) 和延迟( 1 a t e n c y ) 。前者是指单位时间内传输的信息数 量,后者是指将一个数据包从一个物理逻辑元素传送到另外一个地方所需的时间。 随着光纤网络和高速交换机的使用,集群系统追求高带宽和低延迟成为u j 能。 2 、软件组成 硬件性能的提高已经推动了集群技术的快速发展,与此同时,支持软件和工 具的性能提高和成熟也变得尤为重要。 集群环境中的软件成员主要分为两类:编程工具和资源管理软件。编程上具 提供语言、库以及正确性调试器来构造著行应用程序。资源管理软件相应于初始 化安装、管理、用户负载所申请的硬件和软件元素的调度和分配a 在编程工具和资源管理软件方面,用于提高它们的可席用性、有效性、可伸 缩性和可用性的研究和进一步的发展,都是很有前途的。 缩性和可崩性的研究和进一步的发展,都是很有前途的。 5 电子科技大学硕士学位论文 2 2 2 集群技术的优点 1 、具有很高的性价比 采用集群技术最大的优势是能够提高系统的性能,而付出的代价要远远小于 超级计算机。特别是对于一些计算密集型应用,如天气预报、核模拟实验等,需 要计算机有很强的运算处理能力。传统的方法是使用超级计算机来完成这些工作, 但是超级计算机的价格比较昂贵。这时,人们一般都采用集群技术,集中几十台 甚至上百台计算机的运算能力来满足要求。提高处理性能一直是集群技术研究的 重要目标之一。 2 、负载平衡 负载平衡的基本思想是把本来施加于一台机器上的任务,根据某种算法,尽 可能地把任务平均地分配到多台机器上,使任务在尽可能短的时间内完成,以达 到提高系统性能的目的。负载平衡的原则是“能者多劳,各尽所能”。 在集群系统中,有一个部件充当的是集群管理者( c l u s t e rm a n a g e r ) 的角色。它 最先接收到需要处理的任务,根据集群中每个节点的负载情况,按照一定的分配 原则,最终将任务分配给某个节点处理。 可以把负载平衡看作是一个优化问题。其优化的目标就是采用一定的策略来 降低系统大量的任务的平均响应时间。目前许多著名的产品中已经包含了一定的 负载平衡功能,如n c s a 的s c a b l ew e bs e r v e rc l u s t e r 按照轮转法分配h t t p 请求, c i s c o 的l o c a ld i r e c t o r 把请求分配到实测最快的服务器,而i b m 的n e t w o r k d i s p a t c h e r 则选择当前连接数量最少的服务器作为请求分配的目标。 在任务量比较小的情况下,这种负载平衡表现得不是很明显,而一旦任务量 增大后,这种优势就会有十分显著的体现。 3 、具有良好的容错性,可靠性高 有许多应用程序必须一天二十四小时不停地运转,例如所有的w e b 服务器、 工业控制器、a t m 以及股票处理机等。对于这些应用程序来说,暂时的停机都会 导致数据的丢失,经济的损失,甚至灾难性的后果。据统计由于系统停运,美国 每年要损失约4 0 亿美元。 传统的双机热机备份技术是将一个节点作为主机,其它节点作为备份机。主 机失效时,备份机接管。这种工作模式存在两个主要的问题:主机发生故障时, 备份机不能实现平滑接管,即应用系统会中断;备份机平时不做任何工作,造成 资源浪费。 6 第二章集群系统概述 与双机热机备份技术相比,基于集群技术的系统具有良好的容错性。容错主 要包括故障诊断和功能转移两部分内容。故障诊断是指通过一定的方法测试系统 中的设备是否正常工作;功能转移则是指诊断出系统中某一部分不能正常工作后, 立即将该部分的功能转移到其部分上面去。 对于集群系统来说,高可用软件在后台不断监控系统,故障发生后,在数秒 内即被监测到,同时及时做出处理,停止向这个节点发送新的任务,保证整个系 统正常运行。因此,与未采用集群技术的系统相比,系统的可用性明显提高。 4 、具有良好的可扩展性 一个健壮的系统应该具有良好的扩展性,以适应处理问题规模的需要。 由于采用了一种松散耦合的模式,集群系统中的各个节点使用t c p i p 或其它 网络协议通过标准的网络设备连接在一起,因此整个系统具有良好的伸缩性和可 用性。这样可以很方便地向系统中添加或者更换节点,从而能够在价格相对低廉 的平台上享用过去只有高端系统才具备的高可伸缩性和高可用性,既提高了系统 的性能,同时也降低了成本,实现了“更多的节点等于更快的响应速度”的目标。 集群系统能有效地支持不同位置的用户对信息和资源( 硬件和软件) 的共享,提 高资源利用率。另外,集群系统还具有开发周期短,用户投资风险小,编程方便 等优势。 7 电子科技大学硕士学位论文 第三章移动a g e n t 技术 在计算机和人工智能领域中,a g e m 可以看成是一个实体。它通过传感器感知 环境,通过效应器作用于环境。a g e n t 为了达到一定的目标,有着自成规律地执行 任务的工作模式。著名a g e n t 理论研究者、英国的w o o l d r i d g e 博士和j e n n i n g s 教 授认为:a g e m 是一个具有自主性、社会能力、反应性和能动性等性质的基于硬件 或( 更经常的) 基于软件的计算机系统。 3 1a g e n t 技术发展 在i n t e m e t 这一目前最庞大的互联网络环境中,计算机软件体系结构和组织结 构的复杂性不断增加,传统的软件设计方法已经无法满足实际需要,分布式、智 能化才是今后软件发展的基本方向。软件分布式的目标是要将问题进行分解,由 多个实现了知识共享的软件模块或网络节点来共同完成问题求解,而智能化的目 标是要在智能主机之间实现智能行为的协调,两者的结合就促进了a g e n t 发展。 从7 0 年代末到9 0 年代初,科学家都将精力集中于对a g e n t 理论的研究,并 从系统的角度提出了一些基本概念。a g e m 的具体实践开始于9 0 年代,期间人们 进行了一些非常成功的尝试( 如p l e i a d e s ,a r c h o n 计划等) ,并对a g e n t 有了进一 步的认识,例如m i c r o s o f t 就认为:“a g e m 是受人委托代表或代替用户行为,其智 能性显示或表现在其优良的判断力或合理的思想。” 目前a g e m 在研究领域中尚没有一个理想的定义,但人们普遍认为: a g e m 是运行于动态环境的、具有高度自治能力的实体,它能够接受其它实体的委托并 为之服务。显然, a g e n t 首先具有智能特性,它对环境有响应性、自主性和主动 性;同时,a g e n t 还具有社会特性,包括通信、台作、协调等。 a g e n t 属于人工智能的范畴,它在一定程序上模拟了人类社会的行为和关系, 具有一定的智能并能够自主运行,向其它软件实体提供相应的服务。a g e n t 具有极 大的灵活性和适应性,更加适合于开放、动态的网络环境,也更能体现人类的社 会职责。 对a g e n t 的完整描述如图3 1 所示; 笙三雯鳖垫垒壁竺垫查 图3 1 a g e n t 特征 1 ) 自治。性( a u t o n o m y ) a g e n t 在运行过程中不直接由人或其它主体控制,它能在没有与环境相互作用 的情况下自主执行任务,对自己的行为和内部状态有一定的控制权。自治性是 a g e n t 区别于普通软件程序的基本特征。 2 ) 响应。 生( r e a c t i v i t y l a g e n t 能对来自环境的信息做出适当的响应,它能感知所处的环境,并能通过 自己的行为改变环境。 3 ) 主动性( p r o a c t i v i t y ) 传统应用程序接受用户指令被动执行,而a g e n t 不仅能对环境变化做出反应, 更为重要的是能在特定情况下采取主动行为。 4 】推理一n ! ( r e a s o n i n g ) a g e n t 可根据己有的知识和经验,以理性的方式进行推理。a g e n t 的智能由三 个主要部件来完成,即内部知识库、自适应能力以及基于知识库的推理能力。 5 ) 角色( c h a r a c t e r ) a g e n t 在社会活动中需要对安全、风险、诚信等因素进行考虑。 6 ) 通信合作协调( c o m m u n i c a l i o “c o o p e r a t i o n c o o r d i n a t i o n l 这是在a g e n t 群体中具有的社会属性。 3 2 移动a g e n t 技术 随着i n t e m e t 应用的逐步深入,特别是信息搜索、分布式计算以及电子商务的 蓬勃发展,人们越来越希望在整个i n t e m e t 范围内获得最佳的服务,渴望将整个网 络虚拟成为一个整体,使a g e n t 能够在整个网络中自由移动,移动a g e n _ f 的概念随 9 电子科技大学硕士学位论文 即孕育而生。 2 0 世纪9 0 年代初,g e n e r a lm a g i c 公司在推出其商业系统t e l e s c r i p t 时第一次 提出了移动a g e n t 的概念:一个能在异构网络环境中自主地从一台主机迁移到另 一台主机,并可与其它a g e n t 或资源交互的软件实体。移动a g e n t 是一类特殊的 a g e n t ,它除了具有a g e n t 的基本特性一自治性、响应性、主动性和推理性外,还 具有移动性,即它可以在网络上从一台主机自主地移动到另一台主机,代表用户 完成指定的任务。由于移动a g e n t 可以在异构的软、硬件网络环境中自由移动, 这种新的计算模式能有效地降低分布式计算中的网络负载、提高通信效率、动态 适应变化了的网络环境,并具有很好的安全性和容错能力【3 】。 移动a g e n t 具有如下一些基本特征: 身份唯一性 移动a g e n t 必须具有特定的身份,能够代表用户的意愿。 移动自主性 移动a g e n t 必须可以自主地从一个节点移动到另一个节点,这是移动 a g e n t 最基本的特征,也是它区别于其他a g e n t 的标志。 运行连续性 移动a g e n t 必须能够在不同的地址空间中连续运行,即保持运行的连续 性。具体说来就是当移动a g e n t 转移到另一节点上运行时,其状态必须是 在上一节点挂起时那一刻的状态。 根据移动a g e n t 的上述特征,我们可以将m o b i l e a g e n t 定义为:“具有跨平台 持续运行、自我控制移动能力,模拟人类行为关系,并能够提供一定人类智能服 务的程序”。其突出的特征就是a g e n t 实体的运行不是固定在一台机器上,而是可 以动态地在网络中的多台主机上运行。 3 3 移动a g e n t 系统结构 虽然目前不同移动a g e n t 系统的体系结构各不相同,但几乎所有的移动a g e n t 系统都包含移动a g e n t ( 简称m a ) 和移动a g e n t 服务设施( 简称m a e ) 两个部分。 m a e 为m a 提供安全、正确的运行环境,实现m a 的移动、m a 执行状态的 建立、m a 的启动、实施m a 的约束机制、容错策略、安全控制、通信机制,并 提供基本服务模块,如:事件服务( e v e n ts e r v i c e ) 、黄叶服务( y e l l o wp a g es e r v i c e ) 、 事物服务( t r a n s a c t i o ns e r v i c e ) 和域名服务( d n s ) 等。m a 的移动性和问题求解能力 很大程度上取取于m a e 所提供的服务,一般来讲,m a e 至少应包括以下基本服 1 0 第三章移动a g e n t 技术 务: 生命周期管理:即为m o b i l ea g e n t 的创建、发送、传输、接收和执行等提 供必要的条件; 事件服务:为a g e n t 提供一种通讯机制,使得能够和其它a g e n t 或应用系 统进行交互,为a g e n t 之间的相互协作提供必要的条件; 持续性服务:通过相应的机制确保a g e n t 执行的持续性。使得a g e n t 在到 达目的地之后或者出现系统、网络崩溃等意外时,能够准确地重新启动; 安全保障:利用多种途径保障整个系统的安全,包括a g e n t 的安全、服务 器的安全等。事务服务实现移动a g e n t 的创建、移动、持久化和执行环境 分配: 目录服务:提供移动a g e n t 的定位信息,形成路由选择; 应用服务:提供面向特定任务的服务接口。 通常情况下,一个m a e 只位于网络中的一台主机上,但如果主机间是以高速 网络进行互联的话,一个m a e 也可以跨越多台主机而不影响整个系统的运行效 率。m a e 利用a g e n t 传输协议( a g e n tt r a n s f e rp r o t o c o l ,a t p ) 实现m a 在主机间的 移动,并为其分配执行环境和服务接口。 如图3 2 所示,m a e 一般由如下五个逻辑层组成: 图3 2 m a e 结构模型 i ) 网络传送层( n t p ) :与现有网络通信协议的接口,a g e n th o s t 通过n t p 与 同服务器资源或其他服务器的a g e n th o s t 进行通信。a g e n t 的传递和接收 也是在n t p 层完成的。 2 1 服务层:为a g e n t 建立运行环境和安全保护机制,协调和监视各a g e n t 的 运行。 3 1 接口层:为a g e n t 同宿主机、其他a g e n t 之间的通信提供了底层的界面。 4 1 语言解释层:m o b i l ea g e n t 一般都是由跨平台语言( 如j a v a 、t e l e s c r i p t 等) 实现的,a g e n th o s t 接收到一个新a g e n t 后,建立相应的a g e n t 语言解释 型 葺一 电子科技大学硕士学位论文 器,a g e n t 在解释器的支撑下工作。在a g e n th o s t 中可以存在多个语言解 释器,用以解释由不同语言实现的a g e n t 。 5 ) a g e n t 应用层:a g e n t 在以上各层的支持下完成各自的任务。这一层可以包 含多个a g e n t ,既可以有其他主机传送来的动态a g e n t ,也可以有a g e n t h o s t 本身的静态服务a g e n t 。 m a 在m a e 中执行,通过a g e n t 通信语言( a g e n tc o m m u n i c a t i o nl a n g u a g e , a c l ) 相互通信并访问m a e 提供的各种服务。m a 可以细分为用户a g e n t ( u s e r a g e n t ,u a ) 和服务a g e n t ( s e r v e r a g e n t ,s a ) 。u a 可以从一个m a e 移动到另一个 m a e ,主要作用是完成用户委托的任务,它需要实现移动语义、安全控制、与外 界的通信等功能。s a 不具有移动能力,其主要功能是向本地的m a 或来访的m a 提供服务,一个m a e 上通常驻有多个s a ,分别提供不同的服务。由于s a 是不 能移动的,并且只能由它所在m a e 的管理员启动和管理,这就保证了s a 不会是 “恶意的”。u a 不能直接访问系统资源,只能通过s a 提供的接口访问受控的资源, 从而避免恶意a g e n t 对主机的攻击,这是移动a g e n t 系统经常采用的安全策略。 移动a g e n t 是用户任务的完成体,它在m a e 所提供的运行环境中执行,通过 a c l ( a g e n tc o m m u n i c m i o nl a n g u a g e ) 相互通信或访问主机提供的服务,其结构如 图3 - 3 所示。 图3 3 移动a g e n t 结构模型 1 1 接口层:a g e n t 与外部环境通信的中介。 2 1 安全策略层:提供对a g e n t 自身的保护,防止外部环境对a g e n t 的非法访 问。 3 1 任务求解层:a g e n t 的功能实现与控制层,完成任务的求解和a g e n t 初始 化、事件处理、转移等控制工作。 4 )内部数据模块:保存a g e n t 运行所需的数据和由a g e n t 采集处理并将发送 回用户的数据。 5 1 状态模块:保存a g e n t 状态参数和历史记录。 2 墨三兰堑垫垒g ! 堕垫查 6 ) 知识库:为求解任务而构造的外部或自身模型。 7 ) 约束条件:用户为保证a g e n t 的性能和正常运行而设置的约束参数。 8 ) 路由策略:a g e n t 根据路由策略和系统背景状态、用户需求来决定下一步 的行为。 3 4 移动a g e n t 的技术特点与优势 将分布式移动计算的思想引入a g e n t 技术中,使得a g e n t 技术具有了许多新特 点,能够更好地处理传统的c l i e n t s e r v e r 模式无法解决的问题: 动态执行方式:通过将服务请求a g e n t 动态地移动到服务器端执行,使得 a g e n t 不经过网络传输这一中间环节而直接访问服务器资源,从而避免了 大量数据的网络传送,降低了系统对网络带宽的依赖,并能将多个应用程 序间的冲突降低到最低限。 异步计算:移动a g e n t 不需要统一的调度,也不需要系统保持与网络的长 时间稳定连接,由用户创建的a g e n t 可以异步地在不同节点上运行,待任 务完成后再将结果传送给用户,所以移动a g e n t 系统在低带宽、非稳定连 接的网络环境中依然能够保持稳定的工作,比较适用于移动用户。 并行求解:为完成某项任务,用户可以创建多个a g e n t ,同时在相同或不 同的节点上运行。移动a g e n t 的并行性可将单一节点的负荷分散到网络的 多个节点上,这将使小系统拥有处理大规模、复杂问题的能力。 智能化路由:移动a g e n t 具有根据任务目标、网络通信能力和服务器负载 等因素动态规划下步操作的能力。智能化路由能够很好地优化网络和计算 资源,实现负载均衡,提高问题的求解速度,避免对资源的盲目访问。 移动a g e n t 的技术特点使移动a g e n t 技术在许多领域都显示出强大的优势。以 移动a g e n t 技术在i n t e r n e t 领域中的优势为例: 节约网络带宽、克服网络延迟 移动a g e n t 的本质是将计算移动到数据端,直接在数据端进行本地处理,只 返回最终结果,从而避免了大量中间数据在通信两端的传输。移动a g e n t 一次可 以携带多个服务请求到服务器端进行本地调用,避免了多次远程调用,从而节省 了每次远程调用的网络延迟。因此在处理数据量大、通信两端交互频繁、带宽不 足的情况下,使用移动a g e n t 技术可以有效的节省网络负载。 支持实时远程交互 1 3 电子科技大学硕士学位论文 在一些远程控制系统中,如工业控制、海底探测器控制、外太空探测器控制、 有毒环境中的监控,实时性非常重要,但是网络的延迟使远程实时控制变的不太 可能。将移动a g e n t 发送到远端系统,代替人在远端完成各种控制活动,可以从 根本上解决网络延迟问题。 封装网络协议 任何网络程序都是建立在特定的协议之上,网络程序的开发要求程序设计者 深刻的理解低层的网络协议;随着i n t e m e t 的发展,新的协议和数据格式不断的产 生,随着网络协议的升级,程序需要重新编写、编译,这些都给网络应用的开发 和维护带来困难。移动a g e n t 系统是一种中间件,位于操作系统和应用程序之间, 封装了低层网络协议,提供移动、通信、容错、安全等基本功能,开发人员无须 了解低层实现即可开发网络应用。当网络协议升级时,只需修改移动a g e n t 系统 中相关的功能实现而无须修改移动a g e n t 应用程序。 支持异步自主执行 传统分布式系统中异步通信机制可以异步地处理多个请求,但要求提出请求 的客户端必须始终在线等待并响应请求的回答,这对移动客户而言是不可行的。 使用移动a g e n t 技术,用户可以将整个任务而不是单个请求提交给多个a g e n t 去执 行,这些a g e n t 被发送到网上之后,可以独立于发送它们的程序,异步地、自主 地、协作地完成任务。 支持离线计算( 断连操作) 由于带宽是一种昂贵的资源,要求移动设备( 笔记本电脑、p d a 、手机等) 始终 保持网络连接在经济上是不可行的;无线通信的特性要求系统具有离线计算的能 力,由于移动设备同网络的连接是通过低速、不可靠、高延迟的无线网络,要求 移动设备始终保持网络连接在技术上也是不可行的。移动a g e n t 技术可以解决这 个问题。用户派出a g e n t 之后,可以断开网络连接,a g e n t 在网络上自主的运行, 当a g e n t 完成任务之后,通过转接机制( d o c “n g ) 监视用户是否在线,当它发现用 户在线时,就返回计算结果。 支持平台无关性 网络环境( 尤其是i n t e m e t ) 无论从硬件或软件的角度讲都是异构的,要求网络

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论