(计算机软件与理论专业论文)基于mas的对等网xml内容的共享与搜索.pdf_第1页
(计算机软件与理论专业论文)基于mas的对等网xml内容的共享与搜索.pdf_第2页
(计算机软件与理论专业论文)基于mas的对等网xml内容的共享与搜索.pdf_第3页
(计算机软件与理论专业论文)基于mas的对等网xml内容的共享与搜索.pdf_第4页
(计算机软件与理论专业论文)基于mas的对等网xml内容的共享与搜索.pdf_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

摘要 上海大学2 0 0 3 年硕士论文 摘要 p 2 p 计算模型很可能会成为下一个i n t e m e t 技术的新亮点,基于这种模型的 分布式计算已经成为当前研究的热点。目前大部分的研究项目旨在解决p 2 p 的 安全、可靠性及路由等问题。自2 0 0 0 年以来,市场中已经涌现了大量有关p 2 p 方面的应用系统,其中应用最为广泛的领域当属文件共享。 x m l 是w 3 c 协会于1 9 9 8 年提出的一个基于文本的可扩充的标识语言规范。 它是s g m l 的一个简化子集,目前正在迅速成为网络数据交换的标准。x m l 的 出现,可以说给基于i n t e m e t 的应用带来无限生机,也给分布式计算注入了新鲜 活力。 大多数基于p 2 p 的文件共享和交换系统都有一个共同的局限:它们的搜索 对象是文件名或与文件相关的一些元数据。我们在本文中提出将p 2 p 和x m l 两 项技术相结合,设计并实现了一个既能够搜索和共享一般文件又能对x m l 文档 内容进行搜索的x m l p 2 p 系统。 本工作得到了上海市教委发展基金项目“对等网计算平台的研究与开发”的 支持。在设计和实现x m l p 2 p 系统的过程中具体做了如下几个方面的工作: 1 引入基于m u l t i a g e n ts y s t e m 的总体系统框架。 2 提出利用x m l s e h e m a 文件来增强系统的可扩展性。 3 在x m l p 2 p 系统的设计过程中提出了两个用于在p 2 p 网络中远程发布 x m l 文档的算法并对其在性能上加以调整和优化。 4 实现了在p 2 p 环境下x m l 文档分布式存储的同步机制。 5 设计并实现了整个x m l p 2 p 系统。 关键词:对等网,分布式计算,x m l s c h e m a ,m a s ,x m l p 2 p a b s t l t a e t 上海天拳2 0 0 3 年疆论文 a b s t r a c t s o f t w a r ed e v e l o p e r sa n ds p e c i a l i z e dm e d i aa r et o u t i n gt h ep e e r - t o - p e e rc o m p u t i n gm o d e l ( p 2 p ) a st h en e x tb i gt h i n gi ni n t e r n e tt e c h n o l o g y a n di th a s r e c e n t l ya t t r a c t e dt h ea t t e n t i o no f i n d u s t r ya n dm e d i a t h em u l t i t u d eo f p r o j e c t st h a th a v eb e e np r o p o s e db a s e do np 2 pa l la i mt o a d d r e s sc o m m o n p r o b l e m si n c l u d i n gs e c u r i t yr e l i a b i l i t ya n dm u t i n ga n dal o to fa p p l i c a t i o n s , e s p e c i a l l yi nf i l es h a r i n g ,e m e r g e ds i n c e2 0 0 0 e x t e n s i b l em a r k u pl a n g u a g e ( x m l ) i sas i m p l e ,v e r yf l e x i b l et e x tf o r m a td e r i v e df r o m s g m ,i ti sp l a y i n ga ni n c r e a s i n g l yi m p o r t a n tr o l ei nt h ee x c h a n g eo f aw i d ev a r i e t yo f d a t ao nt h e w e ba n de l s e w h e r e a n di ta l s of u m i s h e st h ei n t e m e tw i t hm o r ef u n c t i o n a l i t i e s m o s to ft h ep 2 p - b a s e df i l e s h a r i n g a n d s w a p p i n ga p p l i c a t i o n s e x h i b i tac o m m o n d i s a d v a n t a g e :w h a tc a nb es e a r c h e di nt h e s ea p p l i c a t i o n si sj u s tt h ef i l en a m eo t 撼b eb e t t e r , s o m em e t a d a t aa t t a c h e dt ot h ef i l e w es u g g e s t i nt h i sp a p e r , t h a tb yi n t e g r a t i n gp 2 pw i t l lx m l w ec a r th a r n e s st h e i rp o w e r f u lf e a t u r e i no r d e rt op u r s u et h e s ei d e a s w eh a v eb u i l tx m l p 2 p , a w e l l - f u n c t i o n e ds y s t e mt h a tc a ns e a r c ht h ex m lc o n t e n ta sw e l la st h ef i l en a m ei nt h ep 2 p e n v i r o n m e n t x m l p 2 pi sw r i t t e ni nj a v aa n db a s e do nt h em u l t i a g e n ts y s t e m ( m a s ) p a r a d i g m 。 s p e c i f i c a l l y , w eh a v em a d e t h ef o l l o w i n gc o n t r i b u t i o n s : l ,i n t r o d u c e daf r a m e w o r kw h i c hi sb a s e do nm a s 2 e n h a n c e dt h ee x t e n s i b i l i t yo f t h es y s t e mb y u t i l i z i n g t h ex m l s c h e m af i l e 3 p r o p o s e dt w oa l g o r i t h m sf o rp u b l i s h i n gx m l d o c u m e n t r e m o t e l y 4 ,i m p l e m e n t e d t h e s y n c h r o n i z a t i o n m e c h a n i s mo ft h ed i s t r i b u t e dx m l d o c u m e n t s t o r a g e 5 d e s i g n e d ,i m p l e m e n t e d a n dt e s t e dt h ef u l ls y s t e m k e y w o r d s :p 2 p , d i s t r i b u t e dc o m p u t i n g ,x m l , x m l s c h e m a ,m a s ,x m l p 2 p 第1 章绪论上海大学2 0 0 3 年硕士论文 1 1 p 2 p 概述及其应用 第1 章绪论 引发p 2 p ( p e e rt op e e r ,对等网络) 革命的当推美国的n a p s t e r l ,2 0 0 1 年7 月份的一场官司将n a p s t e r 的声望推到顶点,用户数也在短短一年内激增至4 0 0 0 万,成为互联网史上一大奇迹,连一向保守的摩根斯坦利投资银行的最新研究 报告也推崇n a p s t e r 的出现,特别是贝塔斯曼与n a p s t e r 的合作,因为这将极大 影响在线音乐的发展,改变人们消费音乐的方式。加上i n t e l 等大公司的推波助 澜,p 2 p 技术更是如e t 中天,似乎互联网的一场革命就要来临。 关于p 2 p 的定义,比较认同的观点是:整个网络由许多权力平等、自治 且相互协作的节点组成,网络资源分布于各个节点。( 所谓节点是指包括了所有 具有一定运算功能的设备,如:p c 机,p d a 、甚至是手机等) 。p 2 p 则引导网 络计算模式从集中式向分布式偏移,也就是说网络应用的核心从中央服务器向网 络边缘的终端设备扩散:服务器到服务器、服务器到p c 机、p c 机到p c 机,p c 机到w a p 手机所有网络节点上的设备都可以建立p 2 p 对话。这使人们在 i n t e r n e t 上的共享行为被提到了一个更高的层次,使人们以更主动深刻的方式参 与到网络中去,正如1 2 ( 第二代互联网) 之父d o u g v a nh o u w e l i n g 在几个月 前的中国之行时说到的:“下一代互联网民们将真正参与到网络中来,每个人都 能为网络的资源和功能扩展做出自己的贡献。” p 2 p 给互联网的分布、共享精神带来了无限的遐想,有观点认为至少有1 0 0 种应用能被开发出来,但从目前的应用来看,p 2 p 的威力还主要体现在大范围的 共享、搜索的优势上。在这方面主要引发了,或者是说更好的解决网络上四大类 型的应用:对等计算、协同工作、搜索引擎、文件交换。 1 对等计算 通过众多计算机来完成超级计算机的功能,一直是科学家梦寐以求的事情。 采用p 2 p 技术的对等计算,正是把网络中的众多计算机暂时不用的计算能力连 结起来,使用积累的能力执行超级计算机的任务。任何需要大量数据处理的行业 都可从对等计算中获利,如天气预报、动画制作、基因组的研究等,有了对等计 算之后,就不再需要昂贵的超级计算机了。在硅谷现在有许多公司正在投入对等 计算的开发,如p o p u l a rp o w e r ,c e n t r a t a ,u n i t e dd e v i c e s ,e n t r o p i a 等,并获得 了巨大的风险资金。i n t e l 也利用对等计算技术来设计其c p u ,并为其节省极大 的费用,同时对等计算的发展是以p c 机资源的有效利用为根本出发点的,自然 第1 章绪论上海大学2 0 0 3 年硕士论文 也极力受到i n t e l 的极力推崇。从本质而言,对等计算就是网络上c p u 资源的共 享。 2 协同工作 公司机构的日益分散,给员工和客户提供轻松、方便的消息和协作的工具, 变得日益重要。网络的出现,使协同工作成为可能。但传统的w e b 实现方式, 给服务器带来了极大的负担,造成了昂贵的成本支出。p 2 p 技术的出现,使得互 联网上任意两台p c 都可建立实时的联系,建立了这样一个安全、共享的虚拟空 间,人们可以进行各种各样的活动,这些活动可以是同时进行,也可以交互进行。 p 2 p 技术可以帮助企业和关键客户,以及合作伙伴之间建立起一种安全的网上工 作联系方式,因此基于p 2 p 技术的协同工作也受到了极大的重视,l o t u s 公司的 创始人奥奇更是获得了6 0 0 0 万美元的风险投资,来开发其协同工作产品 g r o o v e 4 。 3 搜索引擎 p 2 p 技术的另一个优势是开发出强大的搜索工具。p 2 p 技术使用户能够深度 搜索文档,而且这种搜索无需通过w e b 服务器,也可以不受信息文档格式和宿 主设备的限制,可达到传统目录式搜索引擎( 只能搜索到2 0 一3 0 的网络资 源) 无可比拟的深度( 理论上将包括网络上的所有开放的信息资源) 。以p 2 p 技 术发展的另一先锋g n u t e l l a s 进行的搜索为例:一台p c 上的g n u t e l l a 软件可将用 户的搜索请求同时发给网络上另外1 0 台p c ,如果搜索请求未得到满足,这1 0 台p c 中的每一台都会把该搜索请求转发给另外1 0 台p c ,这样,搜索范围将在 几秒钟内以几何级数增长,几分钟内就可搜遍几百万台p c 上的信息资源。可以 说,p 2 p 为互联网的信息搜索提供了全新的解决之道。著名的搜索引擎公司 g o o g l e 也宣称要采用p 2 p 技术来改进其搜索引擎,一家名为i r f f r a s e a r c h 的新建 公司也因为开发p 2 p 技术的搜索引擎而获得了一笔巨额风险投资并最终被s u n 公司收购。 4 文件交换: 可以说文件交换的需求直接引发了p 2 p 技术热潮。在传统的w e b 方式中, 要实现文件交换需要服务器的大力参与,通过将文件上传到某个特定的网站,用 户再到某个网站搜索需要的文件,然后下载,这种方式的不便之处不言而喻。电 子邮件是方便了个人间文件传递问题,却没法解决大范围的交换。这也是w e b 的重要缺陷,n a p s t e r 就是在这种情况下诞生的,n a p s t e r 的m p 3 文件交换功能 直接引发了网络的p 2 p 技术革命。在国外类似n a p s t e r 的产品很多,如c u t e m x 、 f r e e n e t 、g n u t e l l a 、i m e s h 、t o a d n o d e 、s c o u re x c h a n g e 等,国内也相继推出p 2 p 产品。 2 第1 章绪论 上海大学2 0 0 3 年硕士论文 文件交换的需求也很轻松地延伸到了信息的交换,在线拍卖也被赋予了新的 形式,大家也不必要到拍卖网站登记要卖的商品了,在自家的硬盘上建个商店就 可以了。由此又可以延伸到,一切中介网站都会被替代。 当然以上四种类型应用决不是p 2 p 仅有的应用,被认为至少还有1 0 0 种应 用等着去开发。与b 2 c 、b 2 b 、c 2 c 、c 2 b 等一些概念不同,p 2 p 是技术,甚至 技术思想的革命。更重要的是,p 2 p 技术将实现互联网的大部分潜力,将互联网 从一个基于文件的网页和电子邮件网络转变成一个动态的、颗粒状网络,在网络 中,特定的信息组件可被有效地放置和分享。网络与计算机将不再有什么差别了, 大家还记得这个口号吧:网络就是计算机。 1 2 p 2 p 的技术要点及其模型 p 2 p 计算并非是一种全新的技术。虽然p 2 p 这个术语是现在才发明的,但 p 2 p 本身的基本技术的存在时间却至少和u s e n e t 这种非常成功的分布式对 等网络技术一样长,甚至更长些。关键在于,在最初的p 2 p 应用出现时,许多 使用该技术的人们甚至不会使用计算机。 在很大程度上,p 2 p 计算与那些分布式计算所面临的问题是重叠的调 整并监控网络中独立节点的动作,并确保鲁棒性、以及节点间的可靠通讯。但并 非所有的分布计算都是p 2 p 计算。比如象s e t i h o m e 6 或d i s t r i b u t e d n e t7 中 不同的项目,这些分布计算几乎没有考虑网络节点中的对等交互,因此并不能认 为是真正意义上的p 2 p 应用。然而由于分布计算和p 2 p 面临很多相同的问题, 这就值得我们了解一些分布计算方面的内容。对于这类不能算是p 2 p 技术的分 布计算,笔者建议用“面向对等体”的应用( p e e r - o r i e n t e d ) 来命名。 图1 1 中显示了一个典型p 2 p 应用的系统框图。为了支持文件共享,这个 p 2 p 系统只负责与抽象的资源进行交互,而具体资源则从r e s o u r c e 接口中获 得。这些具体资源可以是任何可定位的信息,包括文件系统、数据库、词典或是 一个电话本。m e s s a g e s e r v e r 类是这个p 2 p 应用的核心。它能够与其他的对等 网络获得联系,并将消息转发到合适的地方。 r e s o u r c e m e s s a g e s e r v e r 图1 1p 2 p 应用的主体 第1 章绪论 上海大学2 0 0 3 年硕士论文 对等应用程序是一种大规模但又是细粒度的应用程序。每个对等体都可以进 入或退出一一每个对等体都关注于自己的任务。在他们短暂的活动期间,尝试 完成布置给它们的任务。这些任务中的大多数都要涉及与其它对等体交互。 管理体系结构( 对等体在这种体系结构下运作) 必须为构成完整p 2 p 应用 程序的对等体提供许多必要的服务。对等体发现服务使p 2 p 应用程序中的对等 体能够彼此定位以便相互之间可以交互。实现对等体发现服务有以下几种方法。 1 显式点到点配置( 静态模型) 显式点到点配置与其说是一种真正的发现机制,还不如说是一种避免实现发 现的机制。每个存在的对等体都知道“居住”在其p 2 p 世界中的其它对等体。 术语点到点( p o i n t t o p o i n t ) 意味着,在p 2 p 应用程序中的每个对等体都 知道需要不断与之交互的每个对等体,并与之相连。这种连线不必将每个对等体 都连起来因为将每个对等体和其他各个对等体彼此相连,是不太可能的,但是, 不这样做( 无论是有意与否) 将会使某些对等体产生网络盲点。 一般而言,分布式应用程序中节点的显式点到点配置不能很好地扩展到具有 较多节点的大型网络。那就是为什么分布式计算应用程序和技术总是( 也有一些 显著的例外) 包含命名和定位功能。这也解释了为什么域名系统( d l n s ) 最终取 代了用于机器命名的主机文件( h o s t sf i l e ) 机制。维护主机文件是单调乏味、容 易出错的,并且一般来说,很难在大型网络环境下运转。 但是,显式点到点配置并非一无是处。点到点寻址缺乏灵活性的特性也带来 了一定程度的安全性。通过对网络中的每个对等体预先设置它所知道并且将要与 之交互的对等体列表,使得网络在外部攻击面前表现得很稳固。 2 动态发现模型 与显式点到点配置方法的静态特性截然相反,目录服务和网络模型具有动态 特性。这些模型通常能更好地符合p 2 p 应用程序,该模型又包括三种不同的机 制。 1 ) 目录服务模型 在目录服务模型中,一台或多台有特殊用途的服务器为对等体提供目录服 务。为了使可扩展性最大化,对应用程序进行了结构化设计,以便少量的目录就 可以为数量众多的对等体服务。对等体向目录服务注册关于自身的信息( 其名称、 地址、资源和元数据) ,并通过根据目录服务器中信息的查询,使用目录服务来 定位其它对等体。 图1 2 说明了一个使用目录来向对等体提供位置和命名服务的p 2 p 体系 第1 章绪论 上海大学2 0 0 3 年硕士论文 结构。目录本身可以是对等体( 尽管是很庞大的对等体) ,或者可以只担当目录 而不作它用。 图1 2 目录服务模型 如果我们先暂时将p 2 p 放一放,可以发现d n s 是分散式目录的一个优秀 示例。与因特网本身相似,d n s 设计为甚至在部分网络受到严重破坏的情况下 仍能工作。d n s 目录采用层次化结构,根目录代表顶级域( 譬如“c o r n ”) ,它 将子域查询服务( 如“e t c e e c o m ”这样的域) 的任务委派到下一层次的d n s 服 务器。 2 1 网络模型 图1 _ 3 说明了另一种p 2 p 应用程序。它由许多对等体组成,这些对等体在 功能上很类似。没有专门的目录服务器。对等体必须使用它们所在的网络来定位 其它对等体。 图1 3 网络模型 正如名称所暗示的,网络模型p 2 p 应用程序由一些( 通常是动态的) 对等 体组成。没有一个对等体知道整个网络的结构或者组成网络的每个对等体的身 份。相反,对等体只知道直接与它们通信的对等体,它们通过代理参与到大型网 络中。 对等体必须合作完成任务。在许多环境中这种合作包括支持分布式查询、分 5 第1 章绪论上海大学2 0 0 3 年硕士论文 布式消息传递,甚至包括认证和授权行为。因为涉及通信量的多少,像文件传输 这样需要大流量的网络操作通常在对等体间直接发生,而无需通过其它对等体。 在图1 3 中的网络。当对等体a 希望知道网络中另一个对等体的位置时, 它就发出一个查询请求并传递给邻居。这些邻居尝试满足这个请求。如果这些邻 居不能完全满足这个请求,就将请求传递给它们的邻居,以此类推。 要加入网络,一个对等体要找到愿意接受它为邻居的另一个对等体。但是, 当对等体本身还不是网络的一部分时,它如何找到网络中的另一个对等体呢? 一个可能的解决方案是向这个对等体提供一个对等体列表,让其检查。对等 体设法联系列表上的对等体直到一个或多个对等体接受它为邻居。这个解决方案 听起来很像点到点模型,是不是? 正如最初g n u t e l l a 用户所证明的那样,这个 解决方案只是一定程度上有效。因为p 2 p 网络( 尤其是g n u t e l l a ) 动态性很强, 任何静态列表都不太可能长期有效。后来,通过添加对从中央缓存下载活动对等 体的列表的支持8 ,改进了这种模式下的客户机。 3 ) 多播( m u l t i c a s t ) 模型 除了网络中的节点不必协助发现以外,多播模型和网络模型很相似。这种模 型利用网络自身提供的特性来定位和确认对等体和资源。这种技术的实现( s u n m i c r o s y s t e m s 的p r o e c tj x t a 是一个极佳的示例9 ) 使用i p 多播来实现查询。 不像单播( u n i c a s t ) i p 数据报,一台主机,最多只能向一台主机发送数据 报,多播i p 数据报可以同时发往多台主机。更重要的是,发送方不必知道有多 少接收方存在或者究竟有没有接收方存在。发送主机只是封装消息并将它发布到 网络上。所有调整到适当频道( 特殊i p 地址和端口号的组合) 的客户机将接收 到该消息的一个副本。 众多子网( 组成整个网络) 间的路由多播通信是一个非常复杂的课题。这也 是基于i p 多播的发现机制的主要局限。没有路由器的支持,基于i p 多播的发 现被局限在同一子网上的对等体之间。 1 3 当前p 2 p 应用的局限性和x m lp 2 p 系统的功能简介 尽管目前p 2 p 技术在即时讯、分布式存储、分布式计算、搜索与查询、协 同计算和游戏都已经存在相关的应用软件,而应用最为广泛的方面是分布式文件 共享与交换,国外已经存在如下软件:c u t e m x 、f r e e n e t 、g n u t e l l a 、i m e s h 、 t o a d n o d e 、s c o u re x c h a n g e 等,国内最近也出现像w o r k s l i n k 等用于文件交换的 p 2 p 软件,这些软件允许用户互相沟通和搜索并交换信息和文件。所有这些软 件都有一个共同的局限性是:它们的搜索对象是文件名或与文件相关的一些元数 第l 章绪论 上海大学2 0 0 3 年硕士论文 据。 本文提出了一个基于m a s 的分布式p 2 p 系统框架,提出将p 2 p 和x m l 相 结合的方法,设计并实现一个用于搜索x m l 文件的p 2 p 应用系统,并提出了实 现x m l 文件的分布式存储的算法及其同步技术,并对x m l 远程发布算法盼陛 能进行了分析和改进,同时对严重影响网络性能方面的不足之外加以改进。 1 4 本章小结 本章主要涉及一些有关p 2 p 技术的基础知识,在扼要地介绍了p 2 p 的发展 及其应用之后,分析了p 2 p 系统的一些关键技术,并根据对等体的发现服务将 p 2 p 模型分为显式( 静态) 和动态两类,最后指出现有p 2 p 应用的局限,以及新 系统的主要优点。 第2 章m a s 和x m l s c h e m a 介绍 上海大学2 0 0 3 年硕士论文 第2 章m a s 和x m ls c h e m a 介绍 2 1 a g e n t 及m u l t i - a g e n ts y s t e m a g e n t 的理论、技术,特别是多a g e n t 的理论、技术,为分布开放系统的分 析、设计和实现提供了一个崭新的途径,被誉为“软件开发的又一重大突破”。 a g e n t 理论与技术研究最早源于分布式人工智f l , ( d a i ) ,但从8 0 年代末开始, a g e n t 理论、技术研究从d a i 领域中拓展开来,并与许多其他领域相互借鉴和融 合,在许多不同于最初d a i 应用的领域得到了更为广泛的应用。面向a g e n t 技 术作为一门设计和开发软件系统的新方法已经得到了学术界和企业界的广泛关 注。我们认为,对a g e n t 的研究大致可分为智能a g e n t 、多a g e n t 系统( m u l t i - a g e n t s y s t e m 简称m a s ) 和面向a g e n t 的程序设计( a g e n t o r i e n t e d p r o g r a m m i n g 简称a o p ) 这3 个相互关联的方面。 2 1 1 a g e n t 的概念 最经典和广为接受的是w o o l d r i d g e 等人有关a g e n t 的“弱定义”和“强定 义”的讨论”。 1 弱定义:a g e n t 只是对一类具有如下特性软件的说明,它的特性包括: 自主能力( i n d e p e n d e n c e ) :a g e n t 可以对自己的行为和内部状态具有某种控制 能力;社会能力( s o c i a la b i l i t y ) :a g e n t 通过某种a g e n t 通讯语言( a c l ) 进 行交互:反应能力( r e a c t i v i t y ) :a g e n t 观察其生存环境,如物理世界、图形 界面、以及i n t e r n e t 等,并在一定时间内做出反应,以改变环境;预动能力 ( p r e a c t i v e n e s s ) :a g e n t 不仅能够对环境的变化被动地做出反映,还能够预 见到某些事件的发生,而提前做出反应。 2 强定义:以s h o h a m “为代表的a i 界人员认为,a g e n t 不仅具有弱定义的 特性,同时也应具有一些通常人类才具有的概念,如:知识、信念、目的、义务 等。他将a g e n t 定义为一种实体,可以被看成为由许多心智状态,如信念、能力、 选择、和承诺等所组成的。 文献1 2 在分析一些典型的研究报告和应用系统中,在对a g e n t 的描述或定义 的基础上指出,一个a g e n t 的最基本的特性应当包括:反应性、自治性、面向目 标性和针对环境性。每个a g e n t 首先应具备这4 条最基本的特性,然后再根据其 应用情况拥有其他特性。a g e n t 可以拥有的其他特性包括:移动性、自适应性、 通信能力( 包括协商、协作等能力) 、理性、持续性或时间连续性、自启动、自 第2 章m a s 羁x m l s c h e m a 套缮主海夫擎2 0 0 3 年疆论文 利等特性。 2 1 。2 m u l t i - a g e n ts y s t e m 在m a s 环境下,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 瓯过传递消息洙实现,消息怒由一个任意的字符串消 息名和一组任意的消息参数所组成。其语法为: ( p 0 p l ,p n ) 】, 焚孛 是港惠名,宅箍透港感鹃类型帮会义,( p o ,p l ,p n ) 是消 怠参数,它其体说明诧消息的内容。倒妻瑶: ( p a r a m e t e r l , p a r a m e - t e m ) , ( i n f o r m a t i o n ) 等等。消息发送的原语为: s e n d ( p o ,p l ,p n ) 【w a i t m s g - n a m e 】( q l ,q 2 , q m ) 】,其孛, 豁浚律为接狡褰戆a g e n t ; ( p 0 ,p l , p n ) 为所发送的消息;w a i t ( q l ,q 2 ,q m ) 为可遮项,表示所 等待的应答消息。发送消息的处理流程为:( 1 ) 向接收方发消息。( 2 ) 如果存在 w a i t ( q l ,q 2 ,q m ) 顼,粼执行第3 疹,否翼 j 处瑷结束。( 3 ) 黻塞发送清患酶进程,等待 ( q l ,q 2 ,q m ) 事件的映醒。矮寝 方将消息作为攀件来处理,具体的处理流程为:( 1 ) 接收消息。( 2 ) 对此消息进 行所需。 2 2 。n m l 及x m ls c h e m a 技术 2 2 1 x m l 技术 x m l 是w 3 c 按会予1 9 9 8 年提塞熬一个基于文本豹毒扩充豹搽谈浯畜蕊范 ”。它是s o m l 的一个简化予集,目前正在迅速成为网络数据交换的标准。x m l 的出现,可以说给基于i n t e r a c t 的应用带来无限生机,也给分布式计算注入了新 鳞活力。窝h t m l 相比较,x m l 其实殴不再是一静文本标识语言,褥是一静表 遮数据中结构的共同语法麓标识语言。我们知道,h t m l 对文档酌争 在表现形式 进行详尽的标识,告诉测j 茳器( 或其它应用) 应该怎样显示、打印文档;至于文 档本身的内容、含义、结构、特征和关系等信息,它对此则一无所知。这造成 h t m l 文挡牵豹大量瓣寿麓数据蕊息尽繁其骞整港滠嶷懿多 蕊疆式,帮军疑被箕 它应用直接理解和重复使用。x m l 则正好弥补了h t m l 的这一大缺陷,它使用 d t d ( 文档粪溅定义) 规窳套关于标记符号的语法、语义规则,比较准确地描 述文本数据的内容、含义、缝构、特征秘关系等信息( 称为元数据) ,丽把数据 戆钤双表瑗形式交给棒式袭( 如c s s ,x s l ,d s s s l 等) 处理,这样藏把数摄 9 第2 章m a s 和x m l s c h e m a 介绍 上海大学2 0 0 3 年硕士论文 的内容和其表现形式合理地分隔开,从而大大提高x m l 数据的可理解性、可交 换性和重用性。另外,x m l 的优势还在于它的简单性、灵活性和可扩展性。x m l 文档是纯文本,独立于平台和应用。公司和组织可自由定义标签和文档结构,亦 可增添或扩展已有文档结构定义,以满足新的挑战和应用需求,而不致于破坏原 来的应用。一个结构良好的x m l 文档,其生存期可以很长。 2 2 2 x m ls c h e m a 技术 w 3 c ( 万维网联盟) 发布的x m l l 0 中定义有两类相关的x m l 文档:一种 是构造良好的文档,另一种是有效的文档。构造良好的x m l 文档遵守x m l 语 法的一般规则。有效的x m l 文档遵守某个特定的文档类型定义( d t d ) 。浏览 器中只进行x m l 文档结构良好性的检查,而不进行有效性验证,所以要求我们 自己进行有效性验证,这也是d t d 产生的原因。d t d 提供了文档规范定义的一 种方法,它的功用很多,包括定义内容模式、限制范围、属性的数据类型。但它 也有缺陷,它本身不是用x m l 书写的,并且它不支持名域。d t d 中只提供了非 常有限的几种数据类型,而且更重要的是它不能表达元素中字符数据的数据类 型。d t d 有扩展的机制,但这个机制太复杂而且很脆弱。d t d 扩展的机制的最 大毛病在于不能清楚地表达相互之间的关系,两个有着完全相同内容的元素怎么 做也不能互相联系。同样,一组被定义为参数实体( p a r a m e t e re n t i t y ) 的属性 ( a t t r i b u t e ) 之间也不能建立任何联系。而x m l s c h e m a l 4 打破了这些限制,它能 更清晰地表现信息之间的内容。为了验证x m l 文档是否有效,需要使用d t d , 然而有许多常用的限制不能用d t d 来表述,这就促使了s c h e m a 的诞生a s c h e m a 相对于d t d 的明显好处是x m l s e h e m a 文档本身也是x m l 文档,而不是象d t d 样使用特殊格式。 2 3 本章小结 本章进一步介绍了新系统中使用到的一些技术,包括a g e n t 及m u l t i a g e n t s y s t e m ( m a s ) 的概念、x m l 以及x m l s c h e m a 技术,讲述这些技术的优点,本 章未谈及这些技术是如何运用到新系统的。 1 0 第3 章x m l p 2 p 的系统框架及路由算法上海大学2 0 0 3 年硕士论文 第3 章x m l p 2 p 的系统框架及路由算法 3 1 m a s 系统框架 对等网既强调节点的独立性更注重节点间的协作,a g e n t 是分布式计算领 域中研究比较活跃的技术之一,是人工智能领域和分布式计算研究相结合的产 物,对等网为a g e n t 提供了充分发挥其功能的平台。x m l p 2 p 将a g e n t 技术、x m l 技术与p 2 p 相结合,构造出一个基于m a s 的p 2 p 计算框架( 如图3 1 所示) 。 p l 000 p 2 0 【lp e e r h 。iip c c r h o 。l 1 茵k 9 p 4 百 p 5 ip e e r h o m 。i lp c c r h o 。l 注: 代表s t r o l l e r a g e n t 由图可见整个p 2 p 系统是由一些具有一定计算能力和存储能力的节点 ( p e e r s ) 组成的网络,并且该网络没有一个固定的结构,因为每一个节点的加 入和离去都是很随意的。通过把每个节点封装为一个或多个a g e n t ,可以实现 节点间的协作。该框架中的两个主要实体是:p e e r h o m e 和s t r o l l e r a g e n t ,每个 节点都是一个p e e r h o m e 类,它通过产生一个或多个s t r o l l e r a g e n t 来处理来自 其它节点的请求,p e e r h o m e 通过提供一系列的服务( 存储服务、路由服务、 a g e n t 调度服务等) 与本地应用程序交互,比如在一个基于g u i 的分布式文件 共享系统中,文件的定位是由分布式文件索引服务提供的,而s t r o l l e r a g e n t 通 过修改它经过的每个节点的信息来达到与其它节点的交互。每个s t r o l l e r a g e n t 的行走路线是由它所在节点的p e e r h o m e 实体中的路由服务决定的,该路由服 务具体采用的算法是下文即将介绍的改进的r m l 路由算法”。 第3 章x m l p 2 p 的系统框架及路由算法上海大学2 0 0 3 年硕士论文 每个p e e r h o m e 都有一个唯一的p e e r l d ,s t r o l l e r a g e n t 必须预先知道目的 p e e r h o m e 的p e e r i d 才能到达该p e e r h o m e ,这可以通过查询本地p e e r h o m e 得 到,由r m l 路由算法可知每个p e e r h o m e 都维护着一张路由信息表,以下是 p e e r h o m e 接口的j a v a 语言描述: p u b l i ci n t e r f a c ep e e r h o m e v o i dr e q u e s t ( m e s s a g e r e q u e s t ,r e p l y l i s t e n e rl i s t e n e 0 ; v o i da d d s e r v i c e ( a g e n t f a c t o r yf a c t o r y ) ; v o i da d d n e i g h b o r ( p e e r l d p i d ) ; v o i dr e m o v e n e i g h b o r ( p e e r l dp i d ) ; p e e r h o m e 】g e t n e i g h b o r s 0 ; p e e f l d g e t l d 0 该接口包含了可被p 2 p 应用程序调用的主要方法,现说明如下: r e q u e s t 0 方法:它的作用是发出一项任务请求并注册一个回复监听 器( 1 i s t e n e r ) 。 a d d s e r v i e e 0 方法: 同时p e e r h o m e 接口还包括用于管理服务及邻居的方法。 当p e e r h o m e 接收到一个用户请求时它就会产生s t r o l l e r a g e n t 来完成用户的 请求,s t r o l l e r a g e n t 会根据特定路由算法在p e e r h o m e 之间游动,如果在规定的 t t l ( t i m e t o l i v e ) 内它不能完成该任务,则它将终止游动,各s t r o l l e r a g e n t 之间是通过在它所经过的p e e r h o m e 的存储资源里保存特定的信息来达到通信 的目的,它们之间不允许直接通信,s t r o l l e r a g e n t 是一个线程,它所能采取的 动作仅限于s t r o l l e r a c t i o n 接口所定义的方法: p u b t i ci n t e r f a c es t r o l l e r a c t i o n b o o l e a nm o v e ( p e e r h o m e p i d ) ; s t o r a g eg e t s t o r a g e ( s t r i n gn a m e ) ; v o i da d d n e i g h b o r ( p e e r h o m e p i d ) ; p e e r h o m e g e t n e i g h b o r s 0 ; p e e r h o m eg e t p e e r h o m e 0 ; 第3 章x m l p 2 p 的系统框架及路由算法上海大学2 0 0 3 年硕士论文 i n tg e t t t l 0 ; m e s s a g eg e t m s g ( m s g l dm i d ) ; s t r o l l e r a g e n tg e t a g e n t 0 ; ) 主要方法的说明如下: m o v e ( p e e r h o m ep i d ) 表示当一个s t r o l l e r a g e n t 需要被发送到另个 p e e r h o m e 时就调用该方法。 g e t s t o r a g e ( s t r i n gn a m e ) 方n g n - - 4 由n a m e 标识的存储对象。 a d d n e i g h b o r ( p e e r h o m ep i d ) s t r o l l e r a g e n t 调用该方法来添加一个新 的p e e r h o m e 到它的当前所存储的邻居集中。 g e t m s g ( m s g i dm i d ) j 区回该a g e n t 存储的m e s s a g e 对象。 g e t a g e n t 0 返回与之相关的s t r o l l e r a g e n t 对象。 另外几个重要的a g e n t 是s e a r c h a g e n t 、c o n n e c t i o n a g e n t 、a c c e p t a g e n t 、 m e s s a g e a g e n t 和q u e r y a g e n t ,当某个节点用户提交一个搜索任务时,系统就会 产生一个s e a r c h _ a g e n t 主要负责该搜索任务包括搜索路线的选择,搜索任务的监 督及搜索结果的表示:c o r m e c t i o n a g e n t 主要是管理着所有与该节点相连的网络 连接,确保系统维持一定数量的网络连接,当连接过少时,就建立一些新的连接, 或多时就断开一些速度较慢的连接。a e c e p t a g e n t 就像一个守护神,它监听来自 网络的每个消息包,并把消息发送给m e s s a g e a g e n t ,由m e s s a g e a g e n t 负责调度 和分发消息。q u e r y a g e n t 主要执行文档的具体搜索任务。 3 2 消息类型 臣回 据及方法,如成员变量m s g l db ! 鲤l ? 妻量难竺:,h o 。p s

温馨提示

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

评论

0/150

提交评论