(计算机应用技术专业论文)p2p网络peer访问webservice的研究和实现.pdf_第1页
(计算机应用技术专业论文)p2p网络peer访问webservice的研究和实现.pdf_第2页
(计算机应用技术专业论文)p2p网络peer访问webservice的研究和实现.pdf_第3页
(计算机应用技术专业论文)p2p网络peer访问webservice的研究和实现.pdf_第4页
(计算机应用技术专业论文)p2p网络peer访问webservice的研究和实现.pdf_第5页
已阅读5页,还剩62页未读, 继续免费阅读

(计算机应用技术专业论文)p2p网络peer访问webservice的研究和实现.pdf.pdf 免费下载

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

文档简介

学位论文独创性声明 本人所置交的学位论文是我在导师的指导卜进行的研究:作及取得的研究成果。据我所 知,除文中已经注明引用的内容外,本论文不包含其他个人已经发表或撰写过的研究成果。 对本论文的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示感谢。 名:麴 学位论文使用授权声明 日期:竺坚主兰咿 本人完全了解华东师范大学有关保留和使用学位论文的规定学校有权保留学位论文并 向国家主管部门或其指定机构送交论文的电子版和纸质版。有权将学位论文用于非赢利目的 的少量复制并允许论文进入学校图书馆被查阅。有权将学位论文的内容编入有关数据库进行 检索。有权将学位论文的标题和摘要汇编出版。保密的学位论文在解密后适用本规定。 学位论文作者签名:赳导师签名:龃 日期:趔旦竺:! :y t k日期:2 塑竺:! 咐 牛东师范大学硕上学位论摘要 摘要 p 2 p 是人们针对c s 结构提出的一种网络结构,这种网络结构中所有的网络结点是互相 对等的,它们既是c l i e n t 又是s e r v e r 。p 2 p 通过这些对等体之间的直接交换实现计算资源和 服务的共享。w e b s e r v i c e 是人们针对开发分布式应用程序的义一新技术。它是建立可互操 作的分布式应用程序的新平台,同时它也为应用程序通信提供了一种独立于平台、组建模型 和编程语言的标准。 p 2 p 和w e b s e r v i c e 两种技术都有着非常,“阔的应用前景,也必然存在相互之间的且操 作应用,特别是由于人量的w e b s e r v i c e 资源已经存在,p 2 p 网络中p e e r 必然需要对这些w e b s e r v i c e 进行访问和调用,使用w e b 服务的p 2 p 应用程序也会更加标准、更易于访问、更易 于理解并更容易集成。本课题就此提出将w e b s e r v i e e 这个概念融入p 2 p 阿络,使得p 2 p 网 络p e e r 可以访问现有的w e b s e r v i c e 资源,解决现有p 2 p 应用程序中的许多常见问题。 本文实现p 2 p 与w e b s e r v i c e 的集成主要着眼点在丁二: 透明性。p 2 p 网络中p e e r 发现w e b s e r v i e e 的过程对其是透明的,就像p e e r 发 现p 2 p 网络内部提供的服务一样,以及p e e r 可以透明的调用年u 访问w e b s e r v i e e , 就象p e e r 访问p 2 p 网络内部的服务一样。 易丁扩展。实现希望在w e b s e r v i c e 的协议出现变化时,所需的修改工作是针对 p 2 p 恻络中部分p e e r ,而不是全体。 为此本文提出了w e b s e r v i c e b r o k e r 的概念,w e b s e r v i c e b r o k e r 是p e e r 访问w e b s e r v i c e 的代 理,实际l 也是4 个p e e r 或者一个p e e r 组,向p 2 p 网络中所有p e e r 提供接受并处理 w e b s e r v i c e 请求的服务,然后负责发现和调用w e b s e r v i e e 的任务。继而,本文给出了p e e r 利用w e b s e r v i c e b r o k e r 完成w e b s e r v i e e 访问的框架和基本实现方法。基本框架可阐述为: p e e r 利用j x t a 发现机制发现w e b s e r v i c e b r o k e r ,接着向其发出w e b s e r v i e e 杏询请求,然后 由w e b s e r v i c e b r o k e r 进行w e b s e r v i c e 服务注册中心的查询,并将结果返同给p e e r ,p e e r 利 用返同结果调用w e b s e r v i c e b r o k e r 服务( w e b s e r v i c e b r o k e r 向所有p e e r 提供的服务被视为 普通的j x t a 服务,文章称其为w e b s e r v i e e b r o k e r 服务) ,最后由w e b s e r v i e e b r o k e r 完成真 正的w e b s e r v i c e 服务调h j 。 最后本文自行编写并发布了一个w e b s e r v i e e ,进行对基本实现方法的验证,测试证明 p e e r 能够通过w e b s e r v i c e b r o k e r 访问到已开发并发布的w e b s e r v i c e 。 关键字: p 2 p ( p e e r t o p e e r ) 、j x t a 、同位体、p r p 协议、p d p 协议、w e b s e r v i c e 、s o a p 西议、 w s d l 、u d d i 、x m l 、w e b s e r v i c e b r o k e r ( w s b ) 、u d d i 注册中心 4 毕东师范大学硕士学位论文 a b s t r a c c a b s t r a c t p 2 pi sak i n do f n e t w o r ka r c h i t e c t u r ea g a i n s tc l i e n t s e r v e ra r c h i t e c t u r e i nt h i sa r c h i t e c t u r e ,a l l o f t h en e t w o r kn o d e sa r cp e e rt op e e r , t h e ya r eb o t hc l i e n t sa n ds e r v e r s p 2 pi m p l e m e n t st h es h a r i n g o f c o m p u t i n gr e s o u r c e sa n ds e r v i c e st h r o u g ht h ed i r e c tc o m m u n i c a t i o no f t h ep e e r s w e b s e r v i c ei s an e wt e c h n o l o g yu s e dt o d e v e l o p ed i s t m b u t e da p p l i c a t i o n i t i san e wp l a t f o r mt ob u i l d d i s t r u b u t e da p p l i c a t i o nw h i c ha r ei n t e r o p e r a b l e i nt h em e a n t i m e ,i tp r o v i d e sas t a n d a r dw h i c hi s i n d e p e n d e n to np l a t f o r m 、b u i l d i n gm o d e la n dp r o g r a ml a n g u a g ef o rt h ec o m m u n i c a t i o nb e t w e e n t h ea p p l i c a t i o n s p 2 pa n dw e b s e r v i c ew i l lb ea p p l i e dw i d e l yi nt h ef u t u r e i ti sc e r t a i nt h a tt h e r ea r e i n t e r o p e r a b l ea p p l i c a t i o n sb e t w e e nt h et w ot e c h n o l e 。g i e s e s p e c i a l l y an u m b e ro fw e b s e r v i c e r e s o u r c e sh a v ee x i s t e d ,t h ep 2 pn e t w o r kp e e r sn e e dt oa c c e s sa n di n v o k et h e s ew e b s e r v i c e s i n e v i t a b l y a l s op 2 pa p p l i c t i o n su s i n gw e bs e r v i c e sw i l lb em o r es t a n d a r d ,e a s i e rt oa c c e s s 、 u n d e r s t a n da n di n t e g r a t e t h u st h et h e s i sp u t sf o r w a r dt h ei d e a o fi n t e g r a t i n gt h ew e b s e r v i c e c o n c e p ti n t op 2 pn e t w o r k ,m a k et h ep e e r sc a na c c e s se x i s t i n gw e b s e r v i c er e s o u r c e sa n ds o l v e m o s to ft h ec u r r e n tc o n n n o np r o b l e m si nt h ep 2 pa p p l i c a t i o n s t h ei m p l e m e n t a t i o no f i n t e g r a t i n gt h ew e b s e r v i c em t op 2 pi nt h et h e s i sp l a c e se m p h a s e so n : t r a n s p a r e n c y t h ep r o c e d u r eo ff i n d i n gt h ew e b s e r v i c ei st r a n s p a r e n tt ot h ep e e r , a s i fi tf i n d st h ei n n e rs e r v i c e si nt h ep 2 pn e t w o r k t h ep e e rc a ni n v o k ea n da c c e s st h e w e bs e r v i c et r a n s p a r e n t l y , a si f i ta c c e s s e st h ei n n e rs e r v i c e si nt h ep 2 pn e t w o r k e x t e n s i b i l i t y t h ei m p l e m e n t a t i o nh o p e s t h a tw h e nt h ew e b s c r v i c ep r o t o c o l s c h a n g e ,o n l yap a r to f p e e r sn o ta l lp e e r sn e e dm o d i f i c a t i o n s f o rt h e s ep u r p o s e s ,t h et h e s i sb r i n g sf o r w a r dt h ec o n c e p to f w e b s e r v i c e b r o k e r i ti sab r o k e ru s e d f o rt h ep e e r st oa c c e s sw e b s e r v i c e i nf a c ti ti sap e e ro rap e e rg r o u pt op r o v i d et h es e r v i c eo f a c c e p t i n ga n dd e a l i n gw i t ht h ew e b s e r v i c eq u e r y , a n df u l f i l lt h et a s ko fs e a r c h i n ga n di n v o k i n g t h ew e b s e r v i c e f o u o w i n gt h a t ,t h et h e s i sp r o v i d e saf r a m e w o r ka n de l e m e n t a r yi m p l e m e n t a t i o n s o fh o wt h ep e e r sa c c e s sw e b s e r v i c et h r o u 出w e b s c r v i c e b r o k e r t h ef r a m e w o r ki st h a tt h ep e e r m a k e su s eo ft h ej x t as e a r c h i n gm e c h a n i s mt of i n daw e b s e r v i c e b r o k e r , t h e ns e n d sa w e b s e r v i c eq u e r yt oi t t h ew e b s e r v i c e b r o k e rr e c e i v e si ta n dq u e r i e st h ew e b s e r v i c es e r v i c e r e g i s t r y , t h e nr e t u r n st h eq u e r yr e s u l t t ot h ep e e r t h ep e e ru s e st h er e s u l tt oi n v o k et h e w e b s e r v i c e b r o k e rs e r v i c e ( t h et h e s i sl o o k so nt h es e r v i c ep r o v i d e db yt h ew e b s e r v i c e b r o k e rt o a l lp e e r sa saj x t as e r v i c e ,c a l l si tw e b s e r v i c e b r o k e rs e r v i c e ) ,a tl a s tt h ew e b s e r v i c e b r o k e r a c c o m p l i s h e st h et r u ew e b s e r v i c ei n v o k i n g f i n a l l y t h et h e s i sw r i t e sa n d p u b l i s h e s a s i m p l e w e b s e r v i c eu s e dt o t e s tt h e i m p l e m e n t a i o n t h er e s u l to ft h et e s t i n gp r o v e st h a tt h ep e e rc a na c c e s sa n di n v o k et h ew e b s e r v i c ed e v e l o p e da n dp u b l i s h e db yt h et h e s i st h r o u g ht h ew e b s e r v i c e b r o k e r 5 华东师范大学硕士学位论文 a b s 订a c l k e y w o r d s : p 2 p 伊e e rt op e e r ) 、j x t a 、p e e r 、p r p 、p d p 、色b s e r v i c e 、s o a p 、w s d l 、u d d i 、x 匝、 w e b s e r v i c e b r o k e r ( w s b ) 、u d d ir e g i s t r y 6 华东师范大学硕士学位论文 第1 章引言 第1 章引言 1 1背景 1 1 1p 2 p 技术 p 2 p 即p e e rt op e e r , 称为对等连接或对等网络。p 2 p 起源于最初的联网通信方式,其 中建立在t c p i p 协议之上的通信模式构成了夸日互联网的基础,所咀从基础技术角度 看,p 2 p 不是新技术,而是新的应用技术模式。今天p 2 p 技术再一扶成为学术界的热 点,是因为p 2 p 技术能够很好的解决c s 和b t s 所存在的问题更有效的促进i n t e m e t 的发展。 p 2 p 网络中的p e e r ( 对等机) 是彼此直接通信的。这种通信无需依赖集中式服务器或 资源就可完成。在p 2 p 网络中,通过p e e r 之间的交互操作就可以完成工作共享信息。 通过创建具有高可用性和容错能力的计算资漏网络,p 2 p 体系结构使真正的分布式计算 成为可能。其基本的模式如图1 2 。 图1 2 首先,p 2 p 网络中任何一个p e e r 既是c l i e n t ,同时也是s e r v e r ,所咀任何信息的发 布只要在本机上发布就可以,无需通过中央服务器太大增强了数据发布的实时性,而 且通过p 2 p 网络中内在的发现机制,能够迅速的找到新发布的数据。 其次,p 2 p 网络的通信方式将导致信息数量、成本资摄都向互联网各站点均匀分布, 从而避免了某些热点站点或主机带宽资源严重不足而同时在另外一些站点或主机带宽 资源严重浪费的问题。 再次,p 2 p 网络具有高度的自适应性和扩展性,任何一个p e e r 的退出都不会影 响其它的p e e r 和其他p e e r 提供的服务。 华东师范大学顾士学位论文 第1 章引言 最后,p 2 p 的网络可以满足分布在世界上不同地区的主机之间进行协同计算和资源 共享。 目前流行的p 2 p 软件包括h j1 - _ i n t e m e t 上文件共享的n a p s t e r ,分布式计算的s e t i h o m e ,即时消息传递的i c q 等。但它们都是封闭的,并不是开放式的应用平台,而 且都仅专注于某一具体的领域,造成了基础设施的重复开发。 1 1 2w e b s e r v i c e 技术 剑目前为 ,分布式计算的发展已有较长时间。分布式计算指的是在彼此连接着的 多台计算机上分别执行不同的功能,而这些功能共同构成一个完整的程序总体。当前比 较流行的分布式对象系统有m i c r o s o f t 的c o m 家族和o m g 的c o r b a 标准,但由于它 们都是对分布式环境进行规范化的早期产物,所以都存在一些共同的不足z 处: 未能解决采用不同字节存储顺序的体系结构之间的通信问题; 有些功能在不同平台上不能正常工作; 不能对网络输出流进行处理: 服务器或者客户在程序执行的过挥中可能会“消失”( 比如出现故障或f 网) 。 另外,这些分布式解决方案采用的都是独有的协议,都没有选择利用现有的协 义; 而且,组件对象模型技术需要花费相当| 圭的时间才能掌握。 面对如此之多的不足,人们提出了w e b s e r v i c e 技术。w e b s e r v j c e 的确是一个崭新 的概念,但它的系统架构、实现技术却是完完全全继承已有技术的,绝对没有使现有应 用推倒重米,而是现有应用,即对象组件技术面向i n t e m e t 的延伸。从表面上看,w e b s e r v i c e 就是一个应用程序,它向外部暴露一个能够通过w e b 调用的a p i ,也就是说, 调用者能够用编程的方法通过w e b 调用该应用程序。而对w e b s e r v i c e 更精确的解释是: w e b s e r v i c e 是建立可且操作的分布式应用程序的新平台。 从外部使用者的角度而言,它具备以下特征: 完好的封装性,w e b s e r v i c e 是对象组件在i n t e m e t 中的延伸,换而言之,它 就是w e b 上的对象组件,自然具备对象的良好封装性,对于使用者而言,他 能且仪能看到对象提供的功能列表。 松散耦合,这一特征也源于对象组件技术,当一个w e b s e r v i c e 的实现发生变 更的时候,调用者是不会感到这一点的,对于调用者来说,只要w e b s e r v i c e 的调用界面不变,w e b s e r v i c e 的实现任何变更对他们都是透明的。甚至服务 的实现平台发生变化。 使用标准协议规范,作为w e b 服务,其所有公共的协约完全需要使用开放的 标准协议进行描述、传输和交换,这些标准协议具有完全免费的规范,以便 由任意方实现。 高度可集成能力,由于w e b s e r v i c e 采取简单、易理解的标准w e b 协议作为组 件界面描述和协同描述规范,完全屏蔽了不同软件平台的差异,c o r b a 、 华东师范人学硕上学位论文 第1 章引言 d c o m 都可以通过这一标准的协议进行互操作,实现当前环境下最高的可集 成性。从这个角度而言,w e b s e r v i c e 为应用程序通信提供了一种独立于平台、 组建模型和编程语言的标准。 1 2p 2 p 与w e b s e r v i c e 技术的集成 由丁p 2 p 是一个高层次的技术,实际的底层网络对这个概念并不重要。尽管实际上, 网络常常是t c p ,i p 网络,并利用i n t e m e t 来从一个p e e r 到达另一个p e e r ,如同i p 地址中的 节点那样。p 2 p 网络的应削程序导致了若干种类型的应用程序。从即时消息到文件共享以及 分布式计算的每一样应用都用到了p 2 p 概念和技术。和p 2 p 应用程序一样,它们会遇到各 种问题,而w e b s e r v i c e 技术可以解决这些问题。p 2 p 的一个主要问题就是定位p 2 p 服务以 及理解底层通信协议。一般的p ”途径在i n t e r n e t 上搜索适当的p 2 p 赢片j 程序并安装定制应 用群序。在集成度更高的环境下,常常用客户a p i 或者工具包提供了封装,也就是隐藏了 应用程序协议的细节。w e b s e r v i c e 为定位应用群序提供了注册服务。每一个注册到数据库的 应用程序都包含了一组关于这个服务的信息,包括对协议的描述。 简而言之,w e b s e t r i c e 技术可以解决设计、建立和配置p 2 p 应用程序中的许多常见问 题。联合使用x m l 、s o a p 、w s d l 、h 丌p 和u d d i ,使用w e b s e r v i c e 的p 2 p 应用程序将 会更加标准、更易于访问、更易于理解并更容易集成。 p 2 p 和w e b s e r v i c e 两种技术都有着非常广阔的应用前景,也必然存在相互之间的互操 作应用,特别是由于大量的w e b s e r v i c e 资源已经存在,p 2 p 网络中p e e r 必然需要对这些w e b s e r v i c e 进行访问和调用。但是由于底层协议的不同以及传输报文格式的不同等等,目前p 2 p 网络中的p e e r 无法访问w e b s e r v i c e 。本文针对这样的问题,提出p 2 p 网络和w e b s e r v i c e 的 集成,从原理着手,探讨实现的呵行性,并给出具体的实现机制和方法。 1 3p 2 p 与w e b s e r v i c e 集成研究现状 关于这方面的研究目前为数不多,并且也不是很深入。有些研究者提出了p 2 p 与 w e b s e r v i c e 协议体系中的某一个协议的结合,并给出了实现方法。比如,p 2 p 与s o a p 协议 结合,使得p 2 p 网络的p e e r 可以访问基于s o a p 的w e b s e r v i c e ,这些w e b s e r v i e e 由其他某 个p e e r 或p e e r 组提供。也有人提出将网络服务的概念融入到p 2 p 网络,但未给出具体做法。 本文在研究进展中曾想到在他人已实现的部分协议结合的基础上进行扩展,但考虑这样的做 法需要p e e r 理解更多的w e b s e r v i c e 协议,所以寻找另外的解决途径。 1 4小结 p 2 p 与w e b s e r v i c e 都是较新的技术概念,多种技术结合在一起往往能够产生新的技术。 本课题旨在将w e b s e r v i c e 这个概念融入p 2 p 网络,使得p 2 p 网络p e e r 可以访问现有的 w e b s e r v i c e 资源,解决现有p 2 p 应_ 蚪j 程序中的许多常见问题。本章简单介绍了p 2 p 与 w e b s e r v i c e 的概念,并阐述了两者集成的原因。 华东师范大学硕士学位论文 第2 章实现p 2 p 的嘲络平台之j ) ( t a 第2 章实现p 2 p 的网络平台之一j x t a j x t a 是j u x t a p o s e 的缩写,是为p 2 p 网络所设计的,具有p 2 p 网络中所必需功能 的开放平台。j x t a 能够避免基础设施的重复开发,为p 2 p 网络的应用软件开发者提供 一致的底层平台,从而简化p 2 p 网络应用软件的开发。其具有互操作性、平台无关性 和普适性特点,j x t a 实现了p 2 p 网络所必需的功能,包括: p e e r 的互相发现:j x t a 使p e e r 能动态的发现其它p e e r ,包括处于防火墙后, 经过n a t 转换的p e e r 。 p e e r 组的自我组织:使p e e r 能够动态的组建新组,进入新组,退出组等,并根 据安全的设置,实现组内的资源共享。 广告和发现p 2 p 网络中的服务:使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 2 p 平台。 2 1j x t a 的体系结构 典型的p 2 p 软件栈大致可分为三层,如下图: j 砌? a a p p l l c a t l o n j x t a s o t v i c e s j ) f r a c o r 0 图2 1 最底层为核心层,这一层封装了最根本的东西,包括p e e r 、p e e r 组的建立,p e e r 的通信 管理,p e e r 的监视和相关的安全原语。 1 0 华东师范大学硕十学位论文 第2 章实现p 2 p 的网络平台之一j x t a 中间层为服务层,该层的功能对于p 2 p 不是必需的,但很通崩,如查找、索引、文件 共享、缓存代码和内容。 最高层为应用层,包括各种已实现的应用程序,如m a i l 系统、拍卖系统、存储系统等。 j x t a 的技术目标旨在提供一个核心层,在该层之上可建立服务和应用,该层设计得尽 量小,但仍要提供服务层和应用层所需的原语。 2 2j x t a 的基本术语 j x t a 技术从最高的抽象层上看,是一整套协议。每个协议定义了协议所交换的若 干个消息,j x t a 义为每个消息定义了格式,分别包含不同的字段。从这个角度看,它 类似于t c p i p 。t c p i p 协议将i n t e r n e t 上的结点连接在一起,而j x t a 连接了p e e r 结 点。j x t a 利用它的协议实现了平台无关性,同时它与传输协议也无关,比如t c p i p 或者其他传输协议都能成为j x t a 的传输标准。为说明j x t a 的协议,首先必须说明几 个基本术语,包括p e e r ( 同位体) ,p e e rg r o u p ( 同位体组) ,a d v e r t i s e m e n t ( 广告) , m e s s a g e ( 消息) ,p i p e ( 管道) 等。 2 2 1 鉴别符( i n d e n t i f i e r ) j x t a 使用u u i d ( u n i v e r s a lu n i q u ei d e n t i f i e r ) ,一个1 2 8 位的数据来识别一实体,比 如一一个p e e r 、一个a d v e r t i s e m e n t 、一个服务。本地运行环境中每个实体的u u i d 是唯一的, 但在全球范围内很难实现这一点。u u i d 是一内部的鉴别符,所以只有在安全的与其他信息, 如名字、网络地址,绑定后才具有意义。 2 2 2 广告( a d v e r t i s e m e n t ) 广告是一个x m l 结构的文档,用来命名、描述并发布y x t a 中的资源,如p e e r 、p e e r 组、管道或一个服务,发现协议通过搜寻相席的广告来寻找资源,任何p e e r 也可以缓存其 找到的资源。每一。个广告都会发布一个时间指明相应资源的生命周期。生命周期使无用的资 源可以被自动的删除,无需任何中央的控制。广告在生命周期结束前可以被重新发布,以扩 展其生命周期。j x t a 定义了广告类型的基本集合,其他类型的广告使用x m l 机制由基本 类型组成。基本的广。告类型包括: p e e r r 告,p e e rj 1 告包含了可唯一鉴别网络上某一p e e r 的具体信息,包括p e e r i d 、 p e e r 名、p e e r 中可以得到的端点等。 p e e r 组广告,描述p e e r 组的基本属性,包括p e e r l d 、p e e r 组的组名以及服务参 数等。 p i p e 广告,描述使用p i p e 服务建立的一组相关的输入管道和输出管道,包括可选 的符号d 、管道类型和唯一一的管道i d 。 m o d u l ei m p l 广告,定义了模块规范的具体实现,包括相关的模块规范i d 、代码 和数据等。 m o d u l ec l a s s 广告,描述一个模块的类的存在,而不是它的实现,包括类d 、名 1 1 华东师范大学硕士学位论文第2 章实现p 2 p 的嘲络半台之一0 x t a 字和描述。 m o d u l es r ) e c 广告,定义了模块的完整规范,包括i d 、名字、模块规范的创建者、 规范的描述、该规范定义的参数和用于向该模块发送数据的管道的广告等。 r e n d e z v o u s 广告,描述p e e r 成为某个组的聚集p e e r 的广告。 e n d p o i n t 广告,定义了端点服务的广告,每个e n d p o i n t 广告用来代表每个p e e r 平台上的端点,一个端点对应于。个网络接口或者一个协议( h t t p 、r p ) 。包括名字、 关键字、e n d p o i n t 地址等。 c o n t e n t 广告,描述了可以在组内共享的内容。内容可以是文件、代码、b y t e 型数 组等。 p e e ri n f o 广告,描述,p e e r 的当前的状态,如内存状态、c p u 状态、接口输入 输出流量、当前最后接收和发送消息的时间等。 2 2 3 同位体( p e e r ) p e e r 是实现j x t a 协议的结点,它是p 2 p 网络匕处理p 2 p 协议的基本处理单元。p e e r 可以是运行于网络中某个计算机上的应用,也可是分布在若干个机器上的应用,或者是更小 的设备,如连接到网络上的p d a 、手机等。同时,一台机器上可能存在多个p e e r 的实例。 每个p e e r 有一个p e e r i d 。 任何p 2 p 网络按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 2 p 为其定义了不同的 任务。 普通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 :顾名思义,聚集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 可缓存所得p e e r 信息, 也可将发现请求转发给其他聚集p e e r 。 路由p e e r :路由p e e r 为p e e r 与被防火墙或n a t 设备所隔离的p e e r 间通信提供机 制。 2 2 4 同位体组( p e e rg r o u p ) p e e r g r o u p 是一个提供通用服务的同位体的集合。p e e r 白发组成p e e r g r o u p ,p e e r 可以 随时新建组、加入组、退出组。p e e rg r o u p 为组内成员提供服务网络上其他p e e r 不可共 享该服务,同时,组内成员也可共享其他成员提供的服务。例如,由于安全以及隐私等方面 的原因可以组成一个p e e r g r o u p ,这个p e e r g r o u p 实现了安全和加密等,类似于一个v p n 。 2 华东师范大学硕十学位论文 第2 章实现p 2 p 的网络平台之一1 a 每一个p e e rg r o u p 有一个p e e rg r o u pi d 。 j x t a 中存在两个特殊的p e e rg r o u p :n e tp e e rg r o u p 和w o r l dp e e rg r o u p 。w o r l dp e e r g r o u p 是j x t a 平台启动时首先需要的,由一个特殊的p e e rg r o u pi d 来识别。w o r l dp e e r g r o u p 定义了p e e r 的基本能力,如服务,端点协议( e n d p o i mp r o t o c 0 1 ) 的实现。一个p e e r 创建时属于n e t p e e rg r o u p ,这就是说所有的p e e r 都属于n e t p e e rg r o u p 。 2 2 5 端点( e n d p o i n t s ) 为了交换数据,p e e r 必须利用某种类型的机制来处理网络上数据的传输。网络传输层即 负责这项任务,包括将数据分片,给每个数据包添加适当的报头以控制数据报的目的地。网 络传输可能是低层的传输,例如u d p 、t c p ,也可能是离层的传输,例如h t t p 、s m t p 等。 端点( e n d t ) o i n t s ) 是网络传输用来寻址的基本形式, 个端点是某个同位体实现了某种协议 的地址,一个同位体可以实现多种协议,所以一个同位体可以拥有多个端点。最简单的端点 例子就是i 口地址和p o r t 。 2 2 6 管道( p i p e s ) 管道( p i p e s ) 是p e e r 问发送和接收消息的通讯通道。管道传输采用单向、异步的机制, 因此管道分输入和输出管道,发送端的管道端点( p i p ee n d p o i n t ) 称为输出管道( i n p u tp i p e ) , 接收端的管道端点称为输入管道。同时管道也是虚拟的,冈为管道的一端点可以绑定到一个 或若干个p e e r 的端点( e n d p o i n t s ) 。通常,管道在运行时通过管道绑定协议与某个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 端点,该管道对发送方即输出 管道,对接收方即输入管道,管道传输为单向。 安全单播方式:它姓单一的点对点方式的扩展,即安全的点对点模式,这种模式 下,进行通信的两个p e e r 端点建立j 虚拟的t l s 连接,以保护传输数据。 广播方式:广播方式下的管道连接多个p e e r 端点,即从一个输出管道到多个输入 管道,输出管道和所有的输入管道必须属于同一个p e e r g r o u p 。 管道提供的通信是单向的,其他类型的管道可以由这些基本模式构成,比如基于j 2 s e 的平 台提供了双向管道和可靠敏向管道。 2 2 7 消息( m e s s a g e s ) 消息( m e s s a g e s ) 是p e e r 之间传递的基本对象,信息交换的基本单元。p e e r 间耍进行 数据交换,首先将数据打包成m e s s a g e ,然后通过管道服务来发送、接收。通常,m e s s a g e 包含一个e n v e l o p e 和带有协议栈头部的主体部分。其中,e n v e l o p e 部分包括了头部、消息摘 13 华东师范人学硕上学位论文 第2 章实现p 2 p 的网络平台之一1 a 要以及源端点( e n d p o i n t ) 和月的地端点( e n d p o i n t ) 。m e s s a g e 由元素( e l e m e n t ) 组成,每 一个元素是一对名字和值,值可以为任何类型。因此从本质上说m e s s a g e 就是由多个名字及 其对应的值所组成的有序序列,在m e s s a g e 的传递过程中,协议栈的任何一层都允许在该序 列中增加元素。 j x t a 有两种形式的消息,分别是x m l 格式和二进制格式。之所以存在二进制格式的 消息形式,是因为这种格式速度比较快,虽然m e s s a g e 是二进制的。但是传送消息的协议仍 然是x m l 格式的。这可以满足j x t a 中p e e r 形式的多样性的需求,使得多种形式的p e e r 采剧统一的格式进行数据交换。 2 2 8 服务( s e r v i c e s ) p e e r 之间相互通信和协作来发布、发现和调用n e ts e r v i c e s 。p e e r 可以发布多个服务, 通过p e e r 发现协议( p e e r d i s c o v e r y p r o t o c 0 1 ) 来发现网络服务。 j x t a 中的服务分为两种: 同位体服务( p e e rs e r v i c e s ) :p e e r 服务是网络上某个具体p e e r 提供的服务。服务 只有在该p e e r 处于网络连接状态并发布了该服务才可访问。一1 5 1 p e e r 从网络上断开, 服务不可获得。 同位体组服务( p e e r g r o u ps e r v i c e s ) :p e e r g r o u p 服务是由某个p e e r 组对组内成 员提供的服务。该服务可由组内若干个成员共同提供,冈此只要其中一个成员处丁 网络连接并提供该服务,组内成员即可以访问该服务。 服务既可以预先实现在p e e r 上,也可以从p 2 p 网络中动态的装载。从p 2 p 网络中动态 装载服务的过程等同于在i n t e m e t 中打开w e b 网页的过程。 2 2 9 模块( m o d u l e s ) 模块( m o d u l e ) 代表j x t a 中某一具体服务行为的代码块,它定义了一个同位体或一个 同位体组提供的服务。该代码块可由一个同位体初始化、启动和停止。除了普通模块,j x t a 还提供了另外的模块类型,分别是服务模块( s e r v i c em o d u l e s ) 和应用模块( a p p l i c a t i o n m o d u l e s ) 。p e e r 使用服务模块米运行某个服务,使用应用模块运行某个应用。若干个服务模 块和应崩模块组成了j x t a 某个可调1 e | j 的应用。j x t a 平台使用m o d u l e 广告描述模块。 整个模块框架包括三部分,分别是模块类( m o d u l ec l a s s ) 、模块规范( m o d u l e s p e c i f i c a t i o n ) 和模块执行( m o d u l ei m p l e m e n t a t i o n ) 。 模块类( m o d u l ec l a s s ) ,模块类是模块框架的基础,崩来表示具体的行为和支持 该行为的其他模块。每一个模块类用m o d u l e c l a s s l d 唯一标识。 模块规范( m o d u l es p e

温馨提示

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

评论

0/150

提交评论