(计算机应用技术专业论文)基于移动agent的p2p文件共享系统的研究.pdf_第1页
(计算机应用技术专业论文)基于移动agent的p2p文件共享系统的研究.pdf_第2页
(计算机应用技术专业论文)基于移动agent的p2p文件共享系统的研究.pdf_第3页
(计算机应用技术专业论文)基于移动agent的p2p文件共享系统的研究.pdf_第4页
(计算机应用技术专业论文)基于移动agent的p2p文件共享系统的研究.pdf_第5页
已阅读5页,还剩73页未读 继续免费阅读

(计算机应用技术专业论文)基于移动agent的p2p文件共享系统的研究.pdf.pdf 免费下载

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

文档简介

中文摘要 摘要 近年来随着许多p 2 p 系统的出现,p 2 p 技术逐渐成为人们研究的热点。文件共 享是p 2 p 技术兴起的原因,也是目前p 2 p 技术最广为人知的应用之一。现有的p 2 p 文件共享系统在资源搜索、资源传送等方面还存在许多不足。由于p 2 p 本身具有的 分布式存储特点,使得在资源传送上的不足相对容易解决,所以根本的难点在于 如何发现拥有资源的对等点。尽管p 2 p 网络在资源搜索方面的潜力尤为巨大,但是 目前这种潜力并没有被充分挖掘出来,还需要进一步的研究。 移动a g e n t 能够在异构的网络环境中从一台主机迁移到另一台主机并完成用 户指定的任务,利用其这一特点能使p 2 p 更加具有活力。基于移动a g e n t 技术的搜 索具有多样性、灵活性、可扩展性和全面性等众多优点。 为了改善现有文件共享系统中在资源搜索上存在的大量冗余消息,占用大量 的网络带宽以及不支持复杂查询的现状,本文提出了一种改进的文件共享系统模 型。主要做了以下几个方面的工作: 详细分析了几种典型的p 2 p 文件共享系统模型,并总结了各自的优缺点。 夺通过将对等点按其在网络中角色的不同分成了三类:普通对等点、集合点、 超级对等点,从而在逻辑上形成了分层的虚拟网络结构,提高了网络的稳 定性,同时较好地解决了集合点的负载平衡问题。 在分层的网络结构基础上构建一种改进的文件共享系统模型。针对改进的 模型,引入了移动a g e n t 技术并充分结合了蚁群算法的思想,并且对集合 点所维护的r p v 表进行了优化,提出了一种新的资源搜索策略,从而更好 地实现了资源的搜索。 在该模型的基础上具体实现了一个p 2 p 文件共享系统m a p p 并对其进行 了测试。测试结果表明,尽管本系统采用的是一种无保障的搜索机制,但 其搜索性能、搜索的准确性和搜索效率等方面与g n u t c l l a 相比也具有了一 定的改善和提高。 关键词:p 2 p t 移动a g e n t l 文件共享;b a p p 英文摘要 r e s e a r c ho fp 2 p f i l e - s h a r i n gs y s t e mb a s e do nm o b i l ea g e n t a b s t r a c t i nr e c e n ty e a r s ,p 2 pt e c h n o l o g yb e c o m e sah o ts p o to fr e s e a r c h f i l e s h a r i n gi st h e r e a s o nf o rt h er i s eo fp 2 pt e c h n o l o g y ,a n di sa l s oo n eo ft h em o s te x t e n s i v ea p p l i c a t i o n s w i t ht h ee m e r g e n c eo fm a n yp 2 ps y s t e m s t h ee x i s t i n gp 2 pf i l e s h a r i n gs y s t e m sh a v e m a n yd e f i c i e n c i e si nr e s o u r c es o a r c h ,t r a n s m i s s i o ne t e b e c a u s ep 2 ph a sd i s t r i b u t e d s t o r a g ec h a r a c t e r i s t i c sw h i c hm a k ei tr e l a t i v e l ye a s yt os o l v et h ed e f i c i e n c yo nr e s o u r c e t r a n s m i s s i o n , i ti sd i f f i c u l tt of r e dp e e r sw h i c hh a v er e s o u r c e s p 2 pn e t w o r ke m b o d y e n o r m o u sp o t e n t i a l i t yi nr e s o u l c es e a r c h , b u tt h i sk i n do fp o t e n t i a l i t yh a sn o tb e e nf u l l y e x c a v a t e do u t a n dn e e df r r t h e rs t u d y i n g m o b i l ea g e n tc a nc o m p l e t et h ea s s i g n m e n ts u c c e s s f u l l yb ym i g r a t i n gf r o mo n e c o m p u t e rt oa n o t h e ro nt h eh e t e r o g e n e o u sn e t w o r k i tc a nm a k ep 2 ph a v ev i g o rf u r t h e r b a s e do nm o b i l ea g e n t ,r e s o u r c es e a r c hh a sn u m e r o u sa d v a n t a g e s ,s u c ha sv a r i e t y , f l e x i b i l i t y ,e x p a n s i b i l i t y ,c o m p r e h e n s i v ee t c n o wt h e r ei sal o to fr e d u n d a n ti n f o r m a t i o ni ne x i s t i n gf i l e - s h a r i n gs y s t e m sw h e n s e a r c h i n gr e s o u r c e s ,a n dr e s o u r c es e a r c ho c c u p i e sal o to fn e t w o r kb a n d w i d t ha n dc a n n o ts u p p o r tc o m p l e xq u e r y i no r d e rt oi m p r o v et h ee x i s t i n gc i r c u m s t a n c e s ,t h i sp a p e r p u t sf o r w a r dt oa ni m p r o v e df i l e s h a r i n gs y s t e mm o d e l t h ek e y sa r ea sf o l l o w s : 夺i ta n a l y s e ss e v e r a le x i s t i n gp 2 pf i l e s h a r i n gs y s t e mm o d e l si nd e t a i la n d s u m m a r i z e sr e s p e c t i v ea d v a n t a g e sa n dd i s a d v a n t a g e s i tf o r m sav i r t u a lh y b r i dn e t w o r kb ys o r t i n gp e e r sb a s e do nd i f f e r e n tr o l e si n t h en e t w o r k :g e n e r a lp e e r ,r e n d e z v o u sa n ds u p e r - p e e r s oi tc a ni m p r o v et h e s t a b i l i t yo ft h en e t w o r ka n ds o l v et h el o a db a l a n c eo fr e n d e z v o u sb e t t e r b a s e do nh y b r i dn e t w o r k , i tp u t sf o r w a r dt oa ni m p r o v e df i l e s h a r i n gs y s t e m m o d e la n dm e a n t i m ep u t sf o r w a r dt oar e l e v a n tr e s o u r c es e a r c hs t r a t e g yb y i m p o r t i n gm o b i l ea g e n ta n da n t n e s ta l g o r i t h ma n do p t i m i z i n gr e n d e z v o u s r p v t h e r e f o r ei ti m p l e m e n t sr e s o u r c es e a r c hb e t t e r b a s e do nt h i sm o d e l ,i ti m p l e m e n t sa n dt e s t sap 2 pf i l e s h a r i n gs y s t e mw h i c h i sn a m e dm a p p t h er e s u l ti n d i c a t e st h a ta l t h o u g ht h i ss y s t e ma d o p t sak i n d o fn o n - s a f e g u a r ds e a r c hm e c h a n i s m , c o m p a r i n gw i t hg n u t e l l a ,i th a sc e r t a i n 英文摘要 i m p r o v e m e n ta n de n h a n c e m e n to ns e a r c hp e r f o r m a n c e ,s e a r c ha e e t t r a e y , s e a r c he f f i c i e n c ye t e k e yw o r d s :p 2 p ;m o b i l ea g e n t lf i l e - s h a r i n g :m a p p 大连海事大学学位论文原创性声明和使用授权说明 原创性声明 本人郑重声明:本论文是在导师的指导下,独立进行研究工作所取得的成果, 撰写成博士硕士学位论文二基王整动g 曼匹的2 塞仕基皇丕统的硒究_ = :。除论 文中已经注明引用的内容外,对论文的研究做出重要贡献的个人和集体,均已在 文中以明确方式标明。本论文中不包含任何未加明确注明的其他个人或集体已经 公开发表或未公开发表的成果。 本声明的法律责任由本人承担。 论文作者签名:各桦。扩年弓月2 矿日 学位论文版权使用授权书 本学位论文作者及指导教师完全了解“大连海事大学研究生学位论文提交、 版权使用管理办法”,同意大连海事大学保留并向国家有关部门或机构送交学位论 文的复印件和电子版,允许论文被查阅和借阅。本人授权大连海事大学可以将本 学位论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或扫 描等复制手段保存和汇编学位论文。 保密口,在年解密后适用本授权书。 本学位论文属于:保密口 不保密固7 ( 请在以上方框内打“”) l 论文储繇舌晔导师虢劾卅 日期:姒谚年;月硌日 基于移动a g e n t 的p 2 p 文件共享系统的研究 第1 章绪论 1 1 论文的研究背景 网络带宽的迅速扩大和成本的急剧下降使得互联网的应用更加广泛和深入人 们的生活,人们希望通过网络可以获得尽可能多的共享资源。但是当前网络中占 主导地位的客户机服务器模式,数据集中存储在各种服务器上,用户通过连接服 务器获取所需的数据,服务器端传输到客户端的数据量很大。但是反向的数据量 却非常小,这造成了服务器端不堪重负,一旦用户数量增加,整个系统的性能将 明显下降,一旦服务器发生故障,整个系统将陷于瘫痪。另一个最主要的问题就 是资源无法得到充分利用。统计资料表明,全球的服务器所提供的资源加在一起 还不到互联网资源总量的l 。 p 2 p ( p e e rt op e e r ) 被称为对等连接或对等网络。它打破了传统的客户机朋艮务器 模式,在网络中的每个节点的地位都是对等的。每个节点既是客户机,享用其它 节点提供的服务,同时又充当服务器,为其它节点提供服务。p 2 p 中的节点都是对 等点,节点之间进行直接的连接与共享,大大地提高了网络资源的利用率。对等 文件共享系统是现代对等网络技术的最主要应用之一,它是利用对等网络技术来 实现文件资源的发布和共享。相对于传统的f t p 和h t t p 发布的方式来说,它一方面 对于资源的下载者有搜索和速度的优势,另一方面对资源的发布者降低了系统的 要求。目前基于p 2 p 的文件共享系统比较成功的有n a p s t e r ,c m u t e l l a 湘k a z a a 等。一 个共享系统需要解决的两个重要问题是资源搜索和资源传送。而资源搜索则是重 中之重。但是,现有的基于p 2 p 的文件共享系统在资源搜索、资源传送、资源类型 等方面还存在许多不足。n a p s t e r 虽然打破了只能从服务器下载的模式,但是它的 拓扑结构不是纯非集中式的。在n a p s t e r q b ,使用中心服务器来保存文件的目录, 用户仍然需要通过查询服务器上的文件目录才能得到相应文件数据的网络地址。 g n u t e l l a 是完全的p 2 p 系统,纯粹的非集中式结构。g n u t e l l a 所采用的搜索方式使得 被多次请求的文件在网络中广泛存在,便于其在网络中的使用,文件的大量复制 也使得冗余性提高。但是由于没有有效的管理,容易造成大量重复消息在网上传 第1 章绪论 播,造成有效资源的浪费。k a z a a 结合y n a p s t e r 和g n u t e l l a 共同的优点。从结构上 来说,它使用了c m u t o l l a 的全分布式的结构,这样可使系统具有良好的可扩展性, 因为它无需巾央索引服务器存储文件名,它是自动的把性能好的机器变成为 s u p e r n o d e ,它存储着离它最近的叶子节点的文件信息,这些s u p e r n o d e ,再连通 起来形成一个o v e r l a yn e t w o r k 。由于s u p e r n o d e 的索引功能,使搜索效率大大提高。 但是其不支持复杂的查询,提供的资源也非常有限。 与此同时,移动a g e n t 作为项新兴的分布式计算技术已成为人们研究的热点 之一。它的蠹主性、交互性、移动性、协作性等特点,使褥它在电子商务、分布 式信息检索、移动设备计算、信息发布、监视和通告等领域得到应用,虽然它的 一些特点可以用传统豹方式实现,但移动a g e n t 技术萄班提供一个更为全蚕的解决 方案。有理由相信,它和p 2 p 的结合能带来i n t e m e t 范围资源搜索的新纪元。 1 2 研究现状 p 2 p 技术是一个多学科综合性研究课题,覆盖了网络通讯、网络安全、网络搜 索、数据挖掘以及赛瑟设计等多方面的技术。 目前移动a g e n t 在网络管理中的应用还处于研究阶段,离大规模的商务应用还 有一定豹距离。国内外的许多大学、研究橇构赛企业纷纷投入大量的人力、财力 研究基于移动a g e n t 的网络管理系统。目前开发的移动a g e n t 系统大部分基于j a v a 语言或在凇框架下嚣发的。在国内关予移动a g e n t 黼) f 究还处在初步阶段,磷究 成果也很多。不少研究机构和大学己经开发出简单的移动a g e n t 系统,例如中科院 计算所的j m a t 、北京航空航天大学i 憨j m s a s 等。攒:外一些硕博毕业论文也对移动 a g e n t 在分布式系统中的应用作了一些研究和探讨,提出了可行的平台框架。 1 3 论文的研究内容和组织结构 1 。3 1 论文的薏开究内容 本文在对现有的p 2 p 文件共享系统模型的优缺点进行分析的基础上,针对现有 文件共享系统中在资源搜索上存在的大量冗余消息,占用大量的网络带宽以及不 支持复杂查询的现状,将对等点按照其在潮络中角色的不同进行分类,从而在逻 2 基于移动a g e n t 熬p 2 p 文终共搴系统的研究 辑上形成了分层的虚拟网络结构。在该隧络结构基础上,建立一种改进i 戆p 2 p 文件 共享模型。针对提出的改进模型,引入了移动a g e n t 技术并充分结合了蚁群算法的 思想,并且对集合点所维护的砸v 表进行了优化,提出了新的搜索策略。 最后在该模型的基础上设计并实现了一个p 2 p 文件共享系统m a p p ,并对其进 行了测试。 1 3 2 论文的组织结构 第1 章介绍了论文课题靛研究背景,研究现状,研究内容及缝织结构; 第2 章简要介绍了本文所要用到的技术及关键概念,首先对p 2 p 技术进行了简单 的介绍,随后介绍了爱前比较流行鲍j x t a 平台,最后对移动a g e n t l 鬟j 樱关概念进行 了阐述。 第3 章分析了现有的各种p 2 p 文件共享系统模型的优势和不足,提鹚了一种改进 的p 2 p 文件共享系统模型。 第4 章主要介绍了改进的p 2 p 文件共享系统模型所采用的对等点闻的发现机制以 及所采用的搜索策略; 第5 章给出了文件共享系统m a p p 的具体实现,包括总的功能分析、总体架构和 主要类等,并对其进行了测试; 第6 章总结与展望。对本文所研究的内容进行了总结,并对进一步需要研究的内 容作了展望。 第2 章p 2 p 技术及移动a g e n t 技术 第2 章p 2 p 技术及移动a g e n t 技术 2 1p 2 p 技术简介 2 1 1p 2 p 定义 p 2 p 可以定义为:网络的参与者共享他们所拥有的部分硬件资源( 处理能力、 存储能力、网络连接能力、打印机等) 及软件资源,这些共享资源通过网络提供服 务和内容,能被其它对等体( p e e r ) 直接访问而无需经过中间实体。在此网络中的参 与者既是资源( 服务和内容) 提供者( s e r v e r ) ,又是资源获取者( c l i e n t ) 【l 】。 2 1 2p 2 p 技术特点 p 2 p 技术的特点体现在以下几个方面1 2 1 : 非中心化( a c e n t r i e ) :网络中的资源和服务分散在所有节点上,信息的传 输和服务的实现都直接在节点之间进行,可以无需中间环节和服务器的介 入,避免了可能的瓶颈。p 2 p 的非中心化基本特点,带来了其在可扩展性、 健壮性等方面的优势。 可扩展性( s e a l a b i l i t y ) :在p 2 p 网络中,随着用户的加入,不仅服务的需求 增加了,系统整体的资源和服务能力也在同步地扩充,始终能比较容易地 满足用户的需要。理论上其可扩展性几乎可以认为是无限的。例如,在传 统的通过f t p 的文件下载方式中,当下载用户增加之后,下载速度会变得 越来越慢,然而p 2 p 网络正好相反,加入的用户越多,p 2 p 网络中提供的 资源就越多,下载的速度反而越快。 健壮性( r o b u s t n e s s ) :p 2 p 架构天生具有抗攻击、高容错的优点。由于服务 是分散在各个节点之间进行的,部分节点或网络遭到破坏对其它部分的影 响很小。p 2 p 网络一般在部分节点失效时能够自动调整整体拓扑,保持其 它节点的连通性。p 2 p 网络通常都是以自组织的方式建立起来的,并允许 节点自由地加入和离开。 高性价比( h i g hc o s t p e r f o r m a n c e ) :性能优势是p 2 p 被广泛关注的一个重要 原因。随着硬件技术的发展,个人计算机的计算和存储能力以及网络带宽 4 基于移动a g e n t 的p 2 p 文件共享系统的研究 等性能依照摩尔定律高速增长。采用p 2 p 架构可以有效地利用互联网中散 布的大量普通节点,将计算任务或存储资料分布到所有节点上。利用其中 闲置的计算能力或存储空间,达到高性能计算和海量存储的目的。目前, p 2 p 在这方面的应用多在学术研究方面,一旦技术成熟,能够在工业领域 推广,则可以为许多企业节省购买大型服务器的成本。 隐私保护( p r i v a t ep r o t e c t ) :在p 2 p 网络中,由于信息的传输分散在各节点 之间进行而无需经过某个集中环节,用户的隐私信息被窃听和泄漏的可能 性大大缩小。此外,目前解决i n t e r n e t 隐私问题主要采用中继转发的技术方 法,从而将通信的参与者隐藏在众多的网络实体之中。在传统的一些匿名 通信系统中,实现这一机制依赖于某些中继服务器节点。而在p 2 p 中,所 有参与者都可以提供中继转发的功能,因而大大提高了匿名通信的灵活性 和可靠性,能够为用户提供更好的隐私保护。 负载均衡( b a l a n c e dl 0 a d ) :p 2 p 网络环境下由于每个节点既是服务器又是 客户机,减少了对传统c s 结构服务器计算能力、存储能力的要求,同时 因为资源分布在多个节点,更好的实现了整个网络的负载均衡。 与传统的分布式系统相比,p 2 p 技术具有无可比拟的优势。同时,p 2 p 技术具 有广阔的应用前景。目前,i n t e m e t 上各种p 2 p 应用软件层出不穷,用户数量急剧增 加。据统计,f 1 2 0 0 1 年以来,p 2 p 软件的用户使用数量从几十万、几百万到上千万 急剧增加,给i n t e m e t 带宽带来巨大冲击。在全球最大的开源网站s o u r c ef o r g e 的下 载排名中,前十名中有七个项目是基于p 2 p 技术。其d o e m u l e 的下载量超过2 亿次, a z u r e u s 的下载量超过1 亿次。令人瞩目的是,微软公司在新一代操作系统w i n d o w s v i s t a 中也加入t p 2 p 技术以加强协作和应用程序之间的通信。 2 1 3p 2 p 技术应用领域 随着p 2 p 技术的发展,人们尝试着使用p 2 p 的方法解决各种问题,越来越多的 p 2 p 应用系统被提出并得到实践的检验,其中主要的包括: l 、文件共享 p 2 p 技术使得在i n t e m e t 上的任意两台计算机之间直接共享文档、多媒体和其它 第2 章p 2 p 技术及移动a g e n t 技术 文件成为了可能。而传统的w c b 方式中,要实现文件交换需要服务器的全程参与, 发布者将文件上传到某个特定的网站,接收者再到该网站搜索需要的文件,然后 下载,这种方式对用户而言非常不方便。电子邮件虽然方便地解决了个人间文件 传递问题,却没法解决大范围的交换,这就是w e b 的重要缺附3 1 。利用p 2 p 技术, 网上计算机之间可以进行直接交互,而不需要使用任何一台中央服务器。可以说, 对文件交换的需求直接引发t p 2 p 技术热潮。 2 、p 2 p 分布式存储 分布式存储系统一直是分布式系统的一个重要领域,传统的局域网范围内的 分布式文件系统、分布式对象存储系统、分布式数据库都有着良好的研究基础。 p 2 p 技术出现后,人们试图把这些分布式存储系统向更大范围拓展,提出了在广域 网中构建的分布式文件系统、对象存储系统和数据库系统。p 2 p 分布式存储系统是 一个用于对等网络的数据存储系统,它可以提供高效率的、鲁棒的和负载平衡的 文件存取功能【4 1 。 3 、计算能力的共享 加入对等网络的节点除了可以共享存储能力之外,还可以共享c p u 处理能力。 目前已经有了一些基于对等网络的计算能力共享系统。比如s e t i h o m e 。目前 s e t i h o m e 采用的仍然是类似于n a p s t e r 的集中式目录策略。x e l l o s 6 t v e r s 台j 真正的 对等应用又迈进了一步。这种计算能力共享系统可以用于进行基因数据库检索和 密码破解等需要大规模计算能力的应用【5 1 。 4 、视频组播系统【6 1 视频组播的带宽要求很高,因此传统的c s 结构的组播系统往往由于服务器出 口带宽的限制而导致系统的可扩展性很差。在基于p 2 p 结构的视频组播系统中,只 有少数节点从服务器直接获取数据,更多的节点一方面从其它节点处获得数据, 一方面也向其它节点提供数据。整个系统的体系结构为树状结构或者网状结构f 7 1 。 这种以对等方式构建的视频组播系统充分利用了节点之间的可用带宽而使系统的 可扩展性大为提高。 5 、p 2 p 协同工作环境 基于移动a g e n t 的p 2 p 文件共享系统的研究 协同工作是指多用户之间利用网络中的协同计算平台互相协同来共同完成计 算任务,共享信息资源等。通过采用p 2 p 技术,个人和组织可以随时采用多种方式 建立在线、非在线的协同应用环境。协同应用一般包括实时通信、聊天室、文件 共享、语音通信等基本功能,除了这些基本功能,用户之间还可以共享白板、协 同写作、视频会议等。另外,协同有时候还包括工程人员的协作开发软件。例如, j b u i l d e r 2 0 0 6 1 a v a 集成开发环境就增加了p 2 p 协同开发的属性。采用p 2 p 技术使协同 工作不再需要中心服务器,参与协同工作的计算机可以点对点建立连接。g r o o v e 就是基于p 2 p 的协同软件平台,已经被微软公司收购。 6 、p 2 p 搜索技术 p 2 p 搜索技术使用户能够深度搜索文档,而且这种搜索无需通过w c b 服务器, 也可以不受信息文档格式和宿主设备的限制,可达到传统目录式搜索引擎无可比 拟的深度。目前,集中式搜索引擎g o o g l e 、y a h o o 和百度是人们在网络中检索信息 资源的主要工具,但这种集中式的搜索引擎远远无法涵盖所有互联网内的共享内 容,而p 2 p 搜索技术正好是集中式检索的一种良性互补。 2 2p 2 p 网络架构- j x t a 架构分析 随着网络参与用户的急剧增加,p 2 p 技术正变得越来越流行,各种各样的p 2 p 应用软件纷纷涌现。按照传统的做法,这些应用都是从底层协议开始开发,各自 拥有一套发现、检索及数据传输机制,因而互不兼容。从用户的角度看,一个用 户若要加入不同p 2 p 社区,必须同时支持相应的p 2 p 系统,这既造成了资源的浪费, 又对用户提出了过高的技能要求。从开发者的角度看,考虑到这些p 2 p 系统底层架 构的相似性,开发人员要做许多重复劳动,系统的开发效率是很低的。 针对这种情况,s u n 公司在2 0 0 1 年4 月推出了t a o u x t a p o s e 的缩写,指并行) 技术,该技术的主要目的是帮助开发面向各种i n t e r a c t 平台和网络的应用程序。 2 2 1j x t a 概述 , p x t a 提供了一个构建跨平台、跨操作系统和跨编程语言的p 2 p 网络应用程序 的通用平台,用它构建的p 2 p 应用程序,与其它p 2 p 系统相比,具有以下三大优点 【8 】: 第2 章p 2 p 技术及移动a g e n t 技术 l 、互操作性 j r a 能使提供各种p 2 p 服务的对等体之间相互定位和交流。许多现存的p 2 p 系 统是自治的、封闭的,其后果是既限制了用户的交流,又浪费了系统及资源。而j x t a 的出现改变了一切,它使各种p 2 p 系统能轻易互联,无缝地提供服务。 2 、平台无关性 采用j x t a 技术创建的p 2 p 系统具有语言独立性、通信协议独立性和平台无关 性。现在许多p 2 p 系统通过在一定的系统平台和网络平台上发布a p i 来提供服务, 由于在不同的平台间没有互操作的可能,p 2 p 的开发者必须为在不同的p 2 p 平台上 实现相同的服务进行二次开发,或在两个系统间架桥,而这是不切实际的。在这 一点上,j x t a 的平台无关性适应了开发者的需要。 3 、广泛性 采用j x t a 技术可以使p 2 p 程序运行在任何具有数字芯片的设备上,包括传感 器、家用电器、p d a 、个人电脑、路由器、中心服务器和存储系统等。当前许多 p 2 p 系统基于利润考虑倾向使用w i n d o w s 平台,这种选择造成了对操作系统的依赖, 而基于任何特定硬件和软件之上的应用都是经不起考验的。j x t a 技术可以使p 2 p 应用程序具有真正意义上的普遍性。 j x t a 是一个针对p 2 p 计算的合作研究项目,它的目标是为在p 2 p 对等组中开发 出创造性的应用程序提供基本的构建模块和服务。目前j x t a 已经推出了基于j a v a 语言和c 语言的参考实现,提供了支持其协议的a p i 函到2 1 。其次,j x t a 定义了一 组实现p 2 p 计算的公共协议,每一种协议都易于实现并集成到现有的系统中。 这里特别指出的是j x t a 不是a p i 。j x t a 协议没有规定标准的绑定语言,应用 程序开发者和硬件供应商可以提供各自的语言绑定,并可运行在各种平台上,j x t a 是与语言及平台无关的。 更进一步说,j x t a 是与网络无关的,j x t a 协议能利用t c p i p ,h t t p ,b l u e t o o t h 等协议进行传送,位于不同网络的对等体可以容易地采用标准的j x t a 协议进行通 信。 腓由三层组成【7 1 ,如图2 1 所示。最底层是核心层,它处理对等体的初始化、 基予移动a g e n t 的p 2 p 文件共享系统的研究 消息路由等底层机制;中间一层是服务层,它提供了访问t a 协议的接口;最顶 层是应用层,它通过开发应用程序来访问j x t a 网络及其提供的服务。此外,还有 一些诸如安全方颓的因素在这三层都有体现,由于其所在层次的不同,其表现形 式也相应有所改变。 j x t ac o m m u n i t ya p p l i c a t i o nl s u nj x t aa p p l i c a t i o n 图2 1j x t a 的层次机构 f i g 2 1h i e r a r c h i c a la r c h i t e c t u r eo fj x t a 各层次的说明如下: 1 、核心层 该层封装了一般p 2 p 网络所共有的最小也是最基本的原语,它不仅包括了构建 p 2 p 应用的关键机制所需的模块,还包括p e e r 、对等组、p e e r 发现、p e e r 通信、p e e r 监视和相关的安全原语。在理想的情况下,该层由所有p 2 p 设备共享,使之具有协 同工作的能力。 2 、服务层 该层包含了一些对予p 2 p 网络来说不是必需的,但又是通用的网络服务,有了 这些服务,p 2 p 戳j 络的运转将会变得更好。网络服务的实例包括搜索和索弓| 、嚣录 管理、存储系统、文件共享、分布式文件系统、资源聚合和租借、协议转换、身 份验证和p 服务。 9 一 如 ,l _ u a l r k t e _ 特盯 x h k n 婺一 第2 章p 2 p 技术及移动a g e n t 技术 3 、应用层 该层包含了t a 开发出的许多完整的p 2 p 应用实现,女i p 2 p i o 时通信、资源共 享、p 2 p 电子邮件系统、分布式拍卖系统等等。显然,服务层和应用层之间的界限 并不严格,一个客户的应用程序在另一客户看来可能就是服务。 2 2 2j x t a 核心概念 j x t a 技术是为开发各种应用提供底层服务的一个开发平台,体系结构简单清 晰,在这之上可以建立各种功能强大的应用和服务程序,给各类开发人员开发各 种p 2 p 系统提供了很大创新空剐9 】【l o 】。j x t a 体系结构的基本组件包括对等点、对等 组、网络服务、模块、管道、消息和广告等。下面具体描述各个基本组件。 i 、p e e r ( 对等体) p e e r 是一个虚拟的通信点。在一台计算机或者设备上可以有很多个p e e r ,一个 p e e r 并不是一个用户,因为一个用户可以有多个p e e r ,同一个设备上也可以有多个 p e e r 。因为p e e r 不等同于用户,所以需要将用户和p e e r 抽象出来并分离开。 p e e r 与特定的网络服务联系得很紧,在j x t a 的参考实现中,p e e r 可以使用网络 提供的基本服务,例女i r e n d e z v o u s ( 集合点服务) ,r o u t e r ( 路由服务) ,g a t e w a y ( 1 网关 服务) 等,这些基本服务又可以提供搜索和通信服务,一般来说,并不是所有的p e e r 都使用这些服务,它们只使用这些服务的一部分。 一般的对等体具有以下一些特征: 对等体是自治的,并且以一种独立的、异步的方式运行。 对等体可被配置成自发地在网络中相互发现对方,形成暂时或持久的连 接。 对等体可以向其它对等体发布网络资源和服务。 提供相同服务的对等体趋向于可互换的,因此对等体一般只与少量其它对 等体进行交互。 任何时候对等体都可以加入或离开网络。 对等体可以同时拥有多个网络接口,称之为端点,它用于在两个对等体间 建立直接的、点对点的通信。 1 0 基于移动a g e n t 的p 2 p 文件共享系统的研究 2 、对等组 对等体自动地在网络中相互发现,形成短暂或持久的关系,这种关系称之为 对等组。对等组通常是由一些具有共同兴趣的对等体集合而成,也可以被静态地 预先定义。从另一个角度看,对等组是一个实现了对等组协议的虚拟实体,此协 议并不规定何时、何地或为何创建对等组,而只描述对等体如何发布、发现、加 入和监视对等组。 i x t a 平台定义了四种对等组: n u l l 表示为空。 w o d d p e e r g r o u p :系统起始对等组,任何其它对等组( n u l l 除外) 均是其后 代。 n e t p e e x g r o u p :用户级缺省对等组,其父对等组是w o r l d p e e 硒r o u p 。 u s e r p e e r g r o u p :用户自定义组,它是n e t p e e r g r o u p 的子集。 对等体在登录j x t a 网络之后,加入的默认对等组为w o r l d p e e r g r o u p 。 n e t p e e r g r o u p - - 般由负责对等体所在网段上的管理员进行配置,它定义了对等体的 初始作用域和服务。一般来说,对等体自动成为n e t p e e r g r o u p 的一员,并且它们不 能离开这个组。用户可通过克隆或扩展n e t p e e 硒r o u p 的服务或创建新的服务以形成 u s e r p e e r g r o u p 。 3 、通告 通告,又称广告,它是j x t a 规范用来描述和发布对等点、对等组、管道、服 务等资源的元数据文档,对等体可以通过搜索特定的通告来发现相应的资源,并 能在本地进行调用。为了维护其语言的中立性并保证与其它类型的对等点进行交 互,通告采用了x m l 格式。 j x t a 协议定义了下面一些核心通告,更多的子通告可根据需要由这些基本类 型生成。 对等体通告( p e e r a d v e r t i s e m e n t ) 对等组通告( p e e r g r o u p a d v e r t i s e m e n t ) 管道通告( p i p e a d v e r t i s e m e n t ) 第2 章p 2 p 技术及移动a g e n t 技术 模块类通告( m o d u l ec l a s s a d v e r t i s e m e n t ) 模块规范通告( m o d u l es p e c i f i c a t i o n a d v e r t i s e m e n t ) 模块实现通告( m o d u l ei m p l e m e n t a d v e r t i s e m e n t ) 汇聚通告( r e n d e z v o u s a d v e r t i s e m e n t ) 对等体信息通告( p e e ri n f o r m a t i o n a d v e r t i s e m e n t ) 端点通告( e n d p o i n t a d v e r t i s e m e n t ) 传输通告( t r a n s p o r t a d v e r t i s e m e n t ) 通告由一系列元素组成,这些元素按任意顺序出现在通告中。每个元素都包 括数据或附加元素。元素也可以有属性,这些属性由一些成对的名称值字符串组 成。下面是一个管道通告的例子 u m :j x t a :j x t a - n e t g r o u p u r n j x t a :u u i d - d e a d b e e f d e a f b a b a f e e d b a b e 0 0 0 0 0 0 0 010 2 0 6 t 钥s i d n e t p e e r g r o u p n e t p e e r g r o u pb yd e f a u l t 每个通告在发布时都有表明其关联资源可用性的生存期,生存期是通告保持 有效的时间长度,可以使本地设备在没有中央控制的情况下自动清除到期的资源 通告。 通告有三种获取方式:第一种,对等体为自己想提供的服务创建通告;第二 种,对等体发现了某些通告,例如发现了由其它对等体广播而来的通告;第三种 对等体可以搜索具有特定属性的通告。 l 、管道 管道的概念源于u n i x ,是不同线程间直接传输数据的基本手段。管道类一般 包括输入流、输出流和管道。输入流负责获取数据,输出流负责消费数据,而管 基予移动a g e n t 的p 2 p 文件共享系统的研究 道则负责连接它们。管道把管理数据缓冲区的任务交给了自己,输入流和输出流 均围绕这个缓冲区来启动停止线程,这就是管道的本质。 在j x t a 中,管道是服务或应用程序信息交流的通信信道。它是异步的和单向 的,因此有输入管道和输逝管道之分,同时它又是虚拟的,因为它能同时绑定多 个对等体。 管道通过管道绑定协议( p e e rb i n d i n gp r o t o c o l ,简称p b p 协议) 在运行时与对等 体进行动态绑定,这意味着管道可以在不同的时间绑定不同的对等体。例如,当 菜一服务失败时,能以一种完全透明的方式将其绑定到同一服务的不同实例上。 实现这种特性还在于使用了管道通告来标识管道,而不需像在集中式环境下将输 入管道和输出管道放在一起成对使焉。这样,对等傣只需要发布其管道通告和获 得其它对等体的管道通告,使用核心的管道服务去解析这些通告所代表的底层网 络连接。因此,对等体只需关心通信的内容,而不用关心逶信瓣形式。 管道提供两种通信模式,如图2 2 所示。 一输入管道 口输出管道 接收 发送 点对点管道广播管道 图2 。2 管道的嚣种逶信形式 f i g 2 2t w oc o m m u n i c a t i o nf o r m so f p i p e l i n e 点对点管道 点对点管道精确地将两个管道的终端连接在一起,输入管道的终端接收从输 出管道终端发送来的消息。 1 3 第2 章p 2 p 技术及移动a g e n t 技术 广播管道 广播管道将一个输出管道的终端连接到多个输入管道的终端,传播的范围只 限于同一个对等组。此外,在单向、异步的基础上,还可以开发出同步请求响应、 流传送、双向等各种形式的管道。 j x t a 管道提供了一种非局限性通信的抽象概念。应用程序和服务创建了管道 端点,使通信能独立于管道端点所在的物理位置而进行。由于p 2 p 网络中对等体的 不可靠性和可互换性,管道为创建容错性应用程序提供了一种强有力的机制。管 道允许对等体动态地将管道端点与最好的或最适合的服务实例进行绑定。 2 、消息 在j x t a 中,有两种方式来处理消息。一种是使用x i v i l 格式,数据都遵循x m l 标准被包装到消息里;另外一种是使用二进制格式。在有大量的消息需要传送并 且在程序之间传送的,使用x m l 格式的消息会导致效率较低,所以可以使用二进 制的格式,对于其它的仍然采用7 d v i l 格式。j x t a 消息格式如图2 3 所示。 版本 目的地址 源地址 消息摘要( 类型、长度、主体) l 封装 l 主题报头标签l 主题长度 消息主体( 文本、x m l 、二进制数据) p a y l o a d 主题报头标签i 主题长度 标记 消息主体( 文本、) 口v i l 、二进制数据) 消息的可选报尾 图2 3j ) c l r a 消息格式 f i g 2 3i n f o r m a t i o nf o r m a to f x t a 当消息进入协议栈,每一层协议将添加一个或多个指定的元素到此消息中; 1 4 基于移动a g e n t 的p 2 p 文件共享系统的研究 当消息从栈中取出时,协议句柄将从消息中去除这些元素。因此消息是一个元素 的有序序列,最近被添加的元素出现在消息的最末端。 一个消息元素包括名字空间、元素名、元素类型和内容四部分,其中元素名、 元素类型和内容是可选的。 3 、端点 在j x t a 应用中,端点是最基本的通信方法。一个端点就是实现了特定通信协 议的p e e r 的地址。一个p e e r 可以有多个端点,这样可以通过不同的协议来与其它p e e r 通信。

温馨提示

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

评论

0/150

提交评论