




已阅读5页,还剩63页未读, 继续免费阅读
(计算机应用技术专业论文)p2p网络平台jxta的应用分析研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
北京邮电大学颂士论文 p 2 p 网络平台j x t a 的应用分析研究 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均己在论文中作了明确的说明并表示了谢意。 申请学位论 本人签名: 处,本人承担一切相关责任。 同肌,邀:王:兰竺 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即: 研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保 留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借 阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印或其它 复制手段保存、汇编学位论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在一年解密后适用本授权书。非保密论 文注释:本学位论文不属于保密范围, 本人签名:盎盘盘 导师签名:彳巧习参旁r 适用本授权书。 日期:翘五:主:之窆 日期:哆芳继一 北京邮电大学硕士论文 p 2 p 网络平台j x t a 的应用分析研究 p 2 p 网络平台j x t a 的应用分析研究 摘要 2 0 0 0 年,随着i n t e r n e t 泡沫的破灭,对等网络( p e e r t o p e e r n e t w o r k ,简称p 2 p ) 迅速成为计算机界关注的热门话题之一,财富 杂志更将p 2 p 列为影响i n t e r n e t 未来的四项科技之一。 以文件共享为初始目的p e e r t o p e e r 应用,允许用户对等体 ( p e e r ) 间通过i n t e r n e t 完成文件交换。顾名思义,p 2 p 网络打破 了传统的c 1 i e n t s e r v e r 模式,网络中的每个节点的地位都是对等 的。每个节点既充当服务器,为其他节点提供服务,同时也享用其他 节点提供的服务。 在2 0 0 1 年2 月,s u n 公司宣布了j a v a 网络技术中的一种创新性 的典范:j x t a 。5 x t a 提供了建立p 2 p 网络应用的核心技术,旨在为 p 2 p 应用建立一个通用的开发平台。 本论文通过对p 2 p 平台j x t a 的三层体系结构、网络架构和协议 的分析研究,掌握基于j x t a 平台开发p 2 p 应用的核心技术和过程, 从而运用j x t a 提供的一套数量少,概念简单的协议构建p 2 p 应用系 统。最后,本文提出基于j x t a 平台,集成j m s 和j 2 m e 技术构建一无 线消息平台系统的分析、设计和实现。 论文首先阐述了p 2 p 网络计算的历史与发展现状以及p 2 p 典型应 用;然后详细分析研究新的对等网络计算平台一j x t a ,包括j x t a 的 体系结构、网络架构、核心协议和标准协议;最后给出开发实例一一 个建立在j x t a 平台上的无线消息平台。 关键词p 2 p7 x t aj m s 对等网络计算 j ! 室业皇查兰堡主丝兰 ! ! ! 堕塑兰鱼坚坠堕竺里坌堑堡壅 r e s e a r c ho fj x t at e c h n o l o g y b a s e do np e e r - t o p e e r n e t w o r k a b s t r a c t i n2 0 0 0 ,w h i l et h eb u r s t i n go ft h ei n t e m e tb u b b l e ,t h ep e e r - t o p e e r n e t w o r k i n g i sah o tb u z z w o r dt h a th a sb e e n s w e e p i n gt h r o u g h t h e c o m p u t i n gi n d u s t r yo v e rp a s ty e a ro rs o f o r t u n ec r o w n e dp 2 p a so n eo f t h ef o u r t e c h n o l o g i e st h a tw i l ls h a p e t h ei n t e m e t sf u t u r e a l l o w i n gf i l ee x c h a n g ea m o n g t h ee n dc l i e n tp e e r st h r o u g hi n t e r n e t i st h ei n i t i a lp u r p o s eo fp e e r - t o - p e e r i nt h es h o r to fp 2 pa p p l i c a t i o n ,i t h a sb e c o m eo n eo ft h em a i na p p l i c a t i o nt y p e st h a tc o n s u i n ea l a r g e f r a c t i o no fi n t e r n e tt r a f f i c p 2 pa r c h i t e c t u r eh a s b e g u n t os h o wi t s c a p a b i l i t yt os u p p o r tm a s s i v eu s e r s ,a n dt h i sc a p a b i l i t ym a k e s i ts u i t a b l e f o rr a p i d l yd e p l o yp o w e r f u la n dl a r g e s c a l ed i s t r i b u t e da p p l i c a t i o n sw i t h l o wc a s t o n f e b r u a r y , 2 0 0l ,s u nm i c r o s y s t e m s ,i n co f f e r e dj x t ap l a t f o r m a n dt h r e wo p e ns o u r c ec o d e sf o rd e s i g n i n gp 2 ps e r v i c ea n d a p p l i c a t i o n f r o m s p e c i f i c a t i o no fp 2 ps y s t e m a n dj - x t a t e c h n o l o g i e s ,t h ed i s s e r t a t i o n a n a l y s e sa r c h i t e c t u r e ,c o r ep r o t o c o l sa n ds e r v i c e s ,a n dt h ec a s eo f j x t a a p p l i c a t i o n ,a n df u t u r ea p p l i c a t i o nd i r e c t i o n s c h a p t e r2p r o v i d e saq u i c kv i e wo ft h ep e e r - t o p e e rc o m p u t i n g c h a p t e r3 i n t r o d u c e st h ej x t a c o n c e p t s ,t h ea r c h i t e c t u r eo ft h ej x t a c h a p t e r4d e s c r i b e st h ej x t a n e t w o r ka r c h i t e c t u r e c h a p t e r5 a n a l y s e s t h ec o r ep r o t o c o l sa n dt h es t a n d a r d p r o t o c o l so fj x t a c h a p t e r 6i s s u e sa p 2 p a p p l i c a t i o n ,aw i r e l e s sm e s s a g i n gp l a t f o r m ,b a s e d 0 1 1j x t a c h a p t e r 7c o v e r si m p l e m e n t a t i o ns t a t u sa n df u t u r ed i r e c t i o n s k e y w o r d s :p 2 pj x t aj m sp e e r - t o - p e e rc o m p u t i n g 北京邮电大学硕士论文 p 2 p 网络平台j x t a 的应用分析研究 1 1 研究背景 第一章绪论 计算机系统的计算模式经历了集中模式( 1 9 4 6 1 9 8 3 ) 到分布式计算模式 ( 1 9 8 4 1 9 9 3 ) 的发展,而自从1 9 9 3 年i n t e m e t ,w w w 推出以来,计算机计算 模式进入了以网络为中心的计算时代,即网络计算模式,通过网络把全世界的计 算机联在一起,组成一个巨大的计算机网络。对网络的不用运用会形成不同的网 络计算模式。目前主要的网络计算模式有网格计算( g r i dc o m p u t i n g ) 、对等网络 汁算( p e e r - t o p e e rc o m p u t i n g ) 、a dh o c 网络、传感器网络( s e n s o rn e t w o r k ) 等。 最初的计算机网络是p 2 p 的,网络上的计算机都是平等的,信息的分布式均 衡的;而随着w 曲的出现,许多信息集中到服务器上,形成c l i e n t s e r v e r 的网 络应用模式,但同时也带来了一些问题,例如服务器的负担加重、网络维护等, 致使热点网站越来越热,冷门网站无人问津。 随着对网络计算模式下的信息技术的研究与发展,如何有效地运用网络计 算,越来越受到人们的关注,尤其最近p 2 p 应用的普及( 如即时消息软件,文件 共享) 。如何在网络计算模式下实现资源共享、交互通信、协作研究,w e b 服务 ( w e bs e r v i c e s ) 是理想的架构。但传统的分布式计算往往难以充分利用资源( 计 算资源、信息资源、通信资源、软件资源等) ,j x t a 技术则是解决这一难题的良 好途径之,一。 1 2 研究的目的及内容 从上面的论述中,我们可以看到,p 2 p 技术的应用有许多的优势,增强了系 统的灵活性,扩展性和简单性。 本文目的是通过对p 2 p 平台j x t a 的分析研究,掌握开发p 2 p 应用核心技术, 运用j x t a 技术更好的构建p 2 p 应用,扭转p 2 p 应用系统越来越复杂的倾向。并 运用j x t a 提供的一套数量少,概念简单的协议构建p 2 p 应用系统。主要工作如 下: l 、综述p 2 p 技术,介绍p 2 p 技术历史和演变,以及p 2 p 系统的优势和面临 的挑战。( 第二章) 2 、分析j x t a 体系结构,阐述j x t a 的概念,如,对等体、对等组、端点、 管道、公告、消息和集合点。( 第三章) 3 、分析j x t a 的网络架构,介绍j x t a 的网络组织,共享资源分布式索引 北京邮电犬学硕士论文p 2 p 网络平台j x t a 的应用分析研究 和j x t a 网络如何解决穿透防火墙和n a t 。( 第四章) 4 、详细分析j x t a 的核心协议和标准协议,阐述j x t a 的六个协议模块。( 第 血章) 5 、基于j x t a 平台构建p 2 p 应用,利用以上的分析研究结果,构建无线消 息平台。( 第六章) 6 、工作总结,并提出需要进一步研究的问题。( 第七章) 1 3 本章小结 本章力求读者对丢等网络和j x t a 有一个概念性的了解,并阐述了本文的研 究内容。后续章节将就各个问题展开分析与研究。 北京邮电大学硕士论文 p 2 p 网络平台j x t a 的应用分析研究 2 1p 2 p 的演变 第二章p e e r - t o - p e e r 介绍 2 0 0 0 年,随着i n t e r a c t 泡沫的破灭,对等网络( p e e r - t o p e e r n e t w o r k ,简称 p 2 p ) 迅速成为计算机界关注的热门话题之一。财富杂志更将p 2 p 列为影响 i n t e r n e t 未来的四项科技之一。顾名思义,对等网络打破了传统的c l i e n t s e r v e r 模 式,对等网络中的每个节点的地位都是对等的。每个节点既充当服务器,为其他 节点提供服务,同时也享用其他节点提供的服务。p 2 p 最为人们所熟知的应用在 于文件共享,例如著名的n a p s t e r 就是利用p 2 p 为音乐爱好者提供相互共享音 乐文件的一种服务,并取得了巨大的成功。p 2 p 的概念并不局限于文件的共享, 它在对等节点之间共享资源和服务,可以共享的计算机资源包括处理器的计算能 力、存储器和磁盘等。 根据p e e r - t o p e e rw o r k i n gg r o u pc o m m i t t e e 的定义,p 2 p 在商业上的应用主 要有文件共享、边界服务、分布式计算,p 2 p 提供了一种新的计算模式,将p 2 p 和现有的网络技术结合起来将会带来一些突破。 p 2 p 技术不仅是为了通过网络促进人与人之间的交流,还是推动连接在网络 上的设备相互通信的技术。它是一项重要的网络计算技术,对于目前占绝对主流 的c s ,b s 计算方式以及基于w e b 的架构都是很好的补充。 p 2 p 软件从世界范围来看,正处在一个刚刚探索起步阶段,存在许多不同的 协议、不同的体系结构和不同的实现方法,没有统一的标准。s u n 、m i c r o s o f t 、i n t e l 等世界著名i t 公司都称己投入开发并已经应用。 目前比较著名的p 2 p 应用程序有:n a p s t e r ,g n u t e l l a ,s e t i h o m e 。f r e e n e t j a b b e r ,m i x m a s t e rr e m a i l e r s ,r e dr o v e r ,f r e eh a v e n 等。 目前p 2 p 的主用应用领域有: _ 即时消息,即通常所说的聊天应用程序聊天应用程序的实现方式有多 种多样,这和具体产品的业务模型相关。最流行的产品包括:a o li n s t a n t m e s s e n g e r 、y a h o o ! m e s s e n g e r 、m s nm e s s e n g e r 和i c q 等: 协n t 作,协同工作是由许多本质上是p 2 p 的应用程序组成。在工作组 中,协n - r 作涉及通过交互通信共享想法和资源。j x t a 技术已经在协作 应用程序中得到证明,它已经被用来实现协作i d e ,在i d e 中,同一时 北京邮电大学硕士论文 p 2 p 网络平台j x t a 的应用分析研究 间可以有多个开发者对同一个文件进行操作; 一游戏,游戏被认为是一个对p 2 p 具有诱惑力的领域,交互式国际象棋是 使用j x t a 来交换两个游戏者之间移动的游戏: 文件共享,文件共享应用程序依然是p 2 p 技术中最有争议的应用程序。 诸如:n a p s t e r ,g n u t e l l a 程序被广泛用来共享各种文件,尤其是媒体文 件,它们在某些情况下与现有的版权有冲突,但是却不能忽视p 2 p 在文 件共享方面的威力; 内容发布,p 2 p 的优势在于:只要获得一份拷贝,此后只要在点与点之 间复制,( r e d h a tl i n u x 9 0 利用b t 发布就是一个有力证明) : 同步,包括各种文件,信息的同步,例如:配置文件,目历和地址薄等。 2 2p 2 p 系统 2 2 1 n a p s t e r 系统 n a p s t e r 作为p e e r - t o p e e r 的第一个系统开始于1 9 9 9 年,它允许用户“共享” m p 3 音乐文件。在n a p s t e r 系统内,每个端用户,称为p e e r ,在各自的本地磁盘 上存储m p 3 文件,而n a p s t e r 服务器只存储文件的索引。为了下载需要的音乐文 件,用户向n a p s t e r 服务器发出基于关键字的查询并获取拥有该m p 3 文件的p e e r 的i p 地址。用户可以从获得的p e e r 中选择其中一个,并直接下载该文件。如图 2 1 所示。 北京邮电大学硕士论文 p 2 p 网络平台j x t a 的成用分析研究 土一一, 一, , - 一二。 t 、 n a p s t e r j 报务器 2 图2 - 1n a p s t e r 示意图 n a p s t e r 的基本思想是相当简单的:端用户文件的非集中式存储;利用集中 式索引服务器进行文件定位。这一简单的思想已经取得了巨大的成功。在一年内, 有五千万用户下载了n a p s t e r 软件,使其成为迄今为止成长最快的i n t e r n e t 应用。 随着n a p s t e r 的巨大成功,类似系统,如g n u t e l l a ,f r e e n e t ,e d o n k e y s 等,也相 继出现并取得迅速成功。这些系统保留了原来n a p s t e r 的非集中式存储的模式, 但在用于文件定位的搜索机制上各有不同。并不是采用n a p s t e r 的集中式搜索机 制,新系统使用了分布式搜索技术,即一个用户的查询在p e e r 问传播并且拥有 同查询匹配的文件的任何p e e r 直接向该用户发送查询结果。 从文件搜索和存储两方面来看,薪一代的文件共享系统已经成为完全的分布 式系统。 2 2 2 完全分布式p 2 p 系统 从一定程度上说,推动p 2 p 系统转向完全分布式的主要力量更多的来自法律 的问题而不是技术上的原因。在新系统开发的初始阶段,美国音乐工业协会 ( r i a a ) 发起- j x 寸n a p s t e r 的起诉,称它在非法共享m p 3 音乐文件方面起了推 波助澜的作用,因此违反了版权法。由于索引服务器对文件共享具有决定性作用, 露多 北京邮电大学硕士论文 p 2 p 网络平台j x t a 的应用分析研究 n a p s t e r 服务器的运营商( 诸如n a p s t e r 公司) 成为了起诉的主要目标:关闭中央 索引服务器从而关闭整个系统。 为了避免同样情况的发生,像g n u t e l l a 这样的完全分布式的系统产生了,在 其中不存在某一个不可或缺的集中式系统组件,因此使得整个系统更难受到控 制。 2 0 0 1 年3 月,r i a a 赢得起诉,n a p s t e r 宣布关闭,但n a p s t e r 的结束并不意 味着p 2 p 文件共享的结束。相反,以g n u t e l l a 为主力的分布式p 2 p 系统仍然在 继续发展并不断繁荣壮大。新系统如k a z a a 不断出现,p 2 p 用户数量持续快熟 增加。在2 0 0 2 夏,k a z a a 软件己被超过l 亿用户下载,同时在线用户估计超过 1 5 0 万。此外,系统在可共享内容的种类上不断进步,不仅可以共享音频、视频 还能共享软件及其他格式文件。由此可见,p 2 p 系统已经成长为一个主要的 i n t e m e t 应用。 尽管p 2 p 系统的使用已经引起了包括法律、社会及网络政策方面的问题,但 从技术角度看,p 2 p 文件共享系统能够在全球i n t e m e t 范围内以如此高速得到应 用是值得关注的。在促使p 2 p 取得成功的因素中,被共享的文件内容是一个原因。 但是,流行音乐文件的免费共享吸引了大量用户,p 2 p 系统具有的支持大量用户 的能力在此显示了其技术优势。 2 2 3p 2 p 系统优势 p 2 p 系统架构与w e b 系统架构具有很大的不同。在p 2 p 系统中,端用户( 即 对等体) 既作为客户机又作为服务器:对等体间相互获取、保存并提供内容。同 w e b 服务器不同,对等体以很短的时间间隔加入和离开p 2 p 系统( 常可按分钟 计) 。最后,不像w e b 使用的u r l ,p 2 p 没有单一的命名机制以唯一标识内容, 用户可以任意命名保存在本地机器上的文件。下面是p 2 p 相对w e b 在内容传播 上的优势。 _ 内容发布的快捷性同w e b 相比,p 2 p 架构允许内容更快速便捷的发布, 因此扩展了各个端用户发布内容的能力。在p 2 p 系统中,发布者只需要 将内容拷贝到本地机器的制定共享目录下即可。 _ 内容搜索的及时性p 2 p 系统中,新发布的内容可以快速的被基于关键字 的搜索方法发现。 特定系统平台的低依赖性与w 曲不同,p 2 p 系统仅依赖于端用户系统 及其的参与,而不依赖于某个特定系统基础设施。在p 2 p 系统中,不需 北京邮电大学硕士论文 p 2 p 网络平台j x t a 的心用分析研究 要特定系统平台用户的可用资源是自己本地机器资源的总和。这就允 许p 2 p 系统利用潜在的大量资源,而不要求对硬件和带宽做集中的计划 和投资。 通过以上三点分析,我们认为p 2 p 架构的独特吸引力就在于它能够以较低成 本快速地部署强大的、大规模分布式应用。 2 2 本章小结 p 2 p 并不是一个新的概念,i n t e m e t 上的许多核心协议本身就是p 2 p 的应用 程序,i n t e m e t 的发展过程也说明了这一点。由于不太容易准确地定义p 2 p 的概 念,我们可以通过下述特性来描述p 2 p 。 p e e r 知道其它p e e r 的存在 - p e e r 在一个虚拟的网络中运行 p e e r 同时具有c l i e m 和s e r v e r 的特点 - 多个p e e r 可以组成一个p e e r 组。 从i n t e r n e t 的发展来看,目前已经完全可能构建新的p 2 p 应用程序来补充和 取代现有的集中式应用程序,文件共享程序和聊天程序的成功已经吸引了许多程 序员加入p 2 p 程序的开发。而且随着技术的发展,p 2 p 系统可以提供如下功能: 一p e e r 的独立控制能力一用户将变得非常强大可以创建自己的组和虚拟 网络,而且可以非常容易地发布自己的资源。 - 可靠性_ p 2 p 系统是任何人都可以获得的可靠系统。 一扩展性一p 2 p 系统的用户数量可以急剧膨胀可以与最大的集中式系统 媲美。 性能一各种资源之间可以协同工作来有效地解决问题。 北京邮电大学硕十论文 p 2 p 向络平台j x t a 的应用分析研究 3 1jx _ 队简介 第三章j x t a 体系结构 在2 0 0 1 年2 月,s u n 公司宣布了j a v a 网络技术中的一种创新性的典范:j x t a , j x t a 取自英文单词“j u x t a p o s e ”,字面意思是并列放置。j x t a 提供了建立p 2 p 网 络应用的核心技术,旨在为p 2 p 应用建立个通用的开发平台。j x t a 技术主 要包括一个独立于编程语言、系统平台和网络平台的协议栈。该协议栈描述了 p 2 p 应用的最基本的需求。可以说,j x t a 是位于操作系统或虚拟机之上、p 2 p 网 络服务或应用之下的一个p 2 p 堆栈,它提供了p 2 p 应用所需的核心功能。 j x t aa h = 层组成,如图3 1 所示。第一层是j x t a 核心层,它包括了服务 所需要的核心功能;第二层是服务层,它提供了访问j x t a 协议的接口;第三层 是应用层,它是用服务来访问j x t a 网络和j x t a 提供的功能。这样的设计和操 作系统相类似,标准的操作系统包括:核心操作系统、服务和应用程序。 a p p i i c a “o n s p e e r so l lt h ee 犟d e dw e b 图3 - 1 j x t a 的层次结构 各层的说明如下。 核心层( j x t a c o r e ) :这一层封装了最根本的东西,包括对等体、对等组、 北京邮电大学硕士论文 p 2 p 网络平台j x t a 的应用分析研究 对等体发现、对等体通信、对等体监视和相关的安全原语。 服务层( j x t as e r v i c e s ) :这一层包括对于j x t a 网络不是必需的、但很通 用的功能,如查找、共事、代码缓存和内容缓存的机制。 应用层( j x t a a p p l i c a t i o n s ) :这一层包括了应用j x t a 服务开发出来的完整 的p 2 p 应用程序,例如m y y x t a 、j x t a c a d 等程序。 服务和应用之间的界限并不是明显、确定的。对一个用户来说是一个应用, 而对另外一个用户来说可能却是一个服务。f x t a 分层的好处在于能使开发者按 照自身需求挑选、组合不同的应用和服务来构建其应用。 3 2j x t a 概念 念。 j x t a 力求成为核心概念数量有限的小型系统。本节将介绍j x t a 的核心概 3 2 1 对等体( p e e r ) 对等体是对等网络上的一个节点,是任何对等网络计算的基本处理单元。 对等体可以是任何实现了j x t a 协议族中一个或者多个协议的网络互连设 备。网络互连设备可以是p c 、服务器超级计算机、也可以小到传感器( s e n s o r ) 、 移动电话( m o b i l ep h o n e ) 或者掌上电脑( p d a ) 。 但对等体不仅仅指单个网络互连设备。首先单个设备可以作为多个对等体。 在一个设备上运行的多个应用程序,每个应用程序都可以看作是一个对等体,所 以对等体可以是一个已联网( 如接入i n t e m e t ) 设备上的一个应用程序。其次, 一个应用程序可以分布在多个设备上,但只作为一个对等体。 为了包含所有这些定义,这里我们将对等体定义为: 对等体是任何一个实体,它支持j x t a 协议族中一个或者多个协议,能够执 行一些有用的任务,并就操作的结果与网络上其他实体直接或间接地通信。 对等体标识符唯一地标识一个对等体。 3 2 2 对等组( p e e r g r o u p ) 对等组是一个虚拟的实体,是具有一组共同兴趣的对等体的集合,这些对等 体支持一组共同的服务。对等组可以为它们的成员提供服务,但非成员对等体却 不能访问这些服务。对等组实际是对网络空间的一种划分,每个对等组都由一个 对等组i d 唯一标识。 北京邮电大学颅士论文p 2 p 网络平台j x t a 的应用分析研究 j x t a 协议不规定何时、何地或为何创建对等组。j x t a 协议只描述对等体 如何发布、发现、加入和监视对等组。y x t a 认可三种创建对等组的共同动机: 一创建安全的环境 一个对等组可以使用某种安全策略,以限制谁能加入这个对等组,访问 由这个组提供的服务。安全策略可以是简单的用户名密码机制,电可以 采用非对称密钥密码机制。 一创建作用域环境 把为实现某特定服务对等体划分到一个对等组里,从而实现一个特定的 服务环境。铡如,几个对等体可以组成一个专门用于相互提供文档共享 的对等组。 创建监视环境 为某种原因,组中的成员需要相互监视,以获得成员的状态信息。该信 息可以用于维护对等组应用的底层服务。 值得注意的是,对等体可以同时属于几个不同的对等组。对等组之间也存在 父子关系,形成树形结构,其中每个对等组有一个唯一的父结点。j x t a 协议定 义所有的对等体都属于一默认组,n e tp e e rg r o u p 。 对等组提供的服务称为对等组服务( p e e rg r o u ps e r v i c e s ) 。j x t a 定义了一 系列的核心对等组服务,这些服务包括: 发现服务( d i s c o v e r ys e r v i c e ) 发现服务是提供给对等体用来发现资源。这些资源包括:对等体、对等 组、管道和服务等。 一成员服务( m e m b e r s h i p s e r v i c e ) 成员服务是提供给当前对等组里的成员使用的。该组里的成员通过该服 务来决定是否接受拒绝新成员加入该组的请求。 一存取服务( a c c e s ss e r v i c e ) 存取服务用来验证对等体相互之间的存取权限。 管道服务( p i p e s e r v i c e ) 管道服务用来创建、管理对等体之间的管道链接。 _ 解析服务( r e s o l v e rs e r v i c e ) 解析服务是用来对等体之间发送查询请求。 监视服务( m o n i t o r i n g s e r v i c e ) 北京邮电大学颤士论文 p 2 p 喇络平台 x t a 的应用分折研究 监视服务是用来对等组成员之间的相互监视。 3 2 3 端点( e n d p o i n t ) 在j x t a 应用中,端点是最基本的通信方法。一个端点就是实现了特定 通信协议的对等体的地址。一个对等体可以有多个端点,这样可以通过不同的协 议来与其它对等体通信。 端点不一定要是物理地址,端点可以允许物理地址发生变化。端点的一个 简单例子就是一个i p 地址加上一个端口。通过使用这些值,可以打开一个流并 且与目标对等体通信。然而,j x t a 在流的基础之上又放置了一层,称之为p i p e ( 管 道) 。这样,不是将一个流连接到一个地址,而是把一个管道连接到端点上。端 点和管道的好处在于,不用去关心对等体所使用的真正的地址和协议是什么。使 用抽象出来的端点和管道,可以为创建p 2 p 应用提供强大的功能并降低复杂性。 由于管道使用通信协议来连接,端点描述了协议和连接的所需要的信息。因此端 点可以描述h t t p 、t c p 、b e e p 以及其他可以支持的通信协议。 一个对等体可以支持一个或者多个端点。通过使用多种协议,对等体可以 提供更有效率的方法。也就是说,如果两个对等体都在防火墙的后面,可以直接 通过它们的t c p 端点来通信:如果两个对等体要穿过防火墙去通信,则需要使 用h t t p 的端点。 3 2 4 管道( p i p e ) 对等体使用管道向其他对等体发送消息。管道是异步、单方向的消息传输机 割。管道是无限制的,它支持任何对象的传输,包括二进铡代码、字符串、或者 j a v a 对象。 管道端( p i p ee n d p o i n t s ) 有用于接收数据的输入管道( i n p u tp i p e ) 和用于 输出数据的管道( o u t p u tp i p e ) 。 管道是对等体之间建立的虚拟通信通道。管道提供两种通信方式,点对点方 式和传播方式,如图3 - 2 所示。 _ 点对点式管道( p o i n t t o p o i n tp i p e s ) :点对点管道只连接两个管道端一输 入管道接收另一个对等体输出管道发来的数据。 _ 传播式管道( p r o p a g a t ep i p e s ) :传播式管道将一个输出管道与多个输入 管道连接。消息从输出管道传送到输入管道。所有的传播只在同一对等 北京邮电大学顺士论文p 2 p 网络平台j x t a 的成用分析研究 组范围内进行。也就是说输出管道和所有的输入管道必须属于同一对等 组。 安全单播管道( s e c u r eu n i c a s tp i p e s ) :也是一种点对点式管道,只是提 供了安全的通信信道。 一输出管道 输入管道穗豢 ( a ) 点对式管道 3 2 5 公告( a d v e r t i s e m e n t ) c o ) 传播式管道 所有j x t a 网络中的资源都用公告来表示。这些资源可以使对等体、对等组、 管道、服务等。公告是语言无关的元数据结构,在j x t a 中,它是x m l 文档。 j x t a 协议是用公告来描述、发布对等体上可用的资源。每个公告在发布时 都有一个生命周期( l i f e t i m e ) 。生命周期是的对过期资源的删除不需要任何中心 服务器的支持。 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 ) :用于描述一个管道通信信道。它被管道 北京邮电大学硕士论文 p 2 p 网络平台j x t a 的应用分析研究 服务用来创建相应的输入、输出管道。每个管道公告包含一个可选的名 字、管道类型和一个唯一的标识符。 模块类型公告( m o d u l ec l a s sa d v e r t i s e m e n t ) :它描述一个模块类型,说 明该模块类型的存在。它包含名字,描述信息和一个唯一的标识符 ( m o d u l e c l a s s i d ) 。 _ 模块规范公告( m o d u l es p e ca d v e r t i s e m e n t ) :定义一个模块规范。主要 目的是提供必需文档的应用,这些文档用与创建与此规范兼容的实现。 第二个目的是通过发布信息( 如管道公告) ,是正在运行的实例远程可使 用。它包含名字、描述性信息、唯一的标识符( m o d u l e s p e c l d ) 、管道公 告和一些它的实现所要用到的参数。 模块实现公告( m o d u l ei m p la d v e r t i s e m e n t ) :定义一个指定模块规范的 实现。它包括名字、相关模块规范标识符( m o d u l e s p e c l d ) 、代码、包 ( p a c k a g e ) 以及参数信息。 _ 基点公告:描述为某个对等组充当基点的对等体的信息。 每个公告都是以x m l 文档表示。公告包含一系列分级的元素,每个元素包 含它的数据或者更多的元素。元素也可以有属性,它是名字字符串值对。各公 告的定义在后续章节给出。 3 2 6 消息( m e s s a g e ) 消息是在对等体之间传送的对象。它是对等体之间数据交换的基本单元。管 道服务和端点服务负责消息的发送和接收。通常,应用程序使用管道服务来创建、 发送和接收消息,而不直接使用端点服务。 消息由一组有序的消息节点组成,小细节点具有名字并包含有类型的内容。 因此消息本质是一组名字值对。消息的内容可以是任何类型的。 j x t a 就是用一组在对等体问的消息交换来规范其协议的。所有j x t a 参考 实现都描述了消息是怎样转化到本地数据类型( 如j a v a 类或者c 结构) ,以及怎 样把本地数据类型转化为消息。 在j x t a 中,消息由两种表示方法:x m l 和二进制。j a v a 参考实现使用二 进制格式,以减少网络负荷。服务可以使用最适合的格式来表示消息。例如要求 消息紧凑表示的,可以使用二进制格式,而其它的服务可以使用x m l 。 使用x m l 格式的消息来定义协议,可以使各种不同的对等体使用这个协议。 北京邮电大学硕士论文 p 2 p 网络平台j x t a 的应用分析研究 如果一个对等体只需要使用消息的一部分,x m l 的标记使得对等体可以只识别 它感兴趣的消息部分就可以了。例如,一个对等体本身具有很大的局限性,没有 足够的能力处理整个消息,它就可以利用标记取出一部分数据进行处理,而忽略 其余部分。这样对等体就能够根据自己的处理能力和担当的角色,以一种最佳的 方式自由地实现这个协议。 3 2 7 集合点( r e n d e z v o u sp e e r ) 一个集合点首先是一个对等体,而且是一个能够处理来自其他对等体请求的 对等体。集合点电可以将请求委托给其他对等体,当然那些对等体也必须是集合 点。使用集合点的一个主要目的就是为了方便在本地网络之外搜索公告。集合点 通常拥有更多资源,并且可以存储大量的有关它周围对等体的信息。 集合点也可以作为搜索的传递者。集合点可以转发发现请求到其他的集合点 ( 原集合点通过与其他对等体的公告交互而得到了被转发集合点的信息) 。每一 个集合点如果本身没有被请求的信息它都会转发该请求。 只有集合点允许进行超出局域网的搜索。一个对等体可以选择成为一个集合 点,但这不是必须的,作为集合点好的一面是集合点可以阻缓存的形式保留从其 他集合点得到的查询结果的副本:不好的一面是,该对等体将占用很多的内存和 带宽。由于请求数量可能很多并且大量的公告数据会消耗很多的计算机资源,在 这种情况下我们可以选择将计算机作为专用的集合点。集合点同时可以作为企业 内部网的网关和路由器,其效果和使用传统的路由器是一致的。在每一个子网内 也需要使用一个集合点,是否选择使用专用的集合点对等体取决于安全性的要求 和使用的p 2 p 应用的范围。 当一个对等体在搜索公告时或者是其他服务使用集合点机制来路由消息时, 集合点才被使用,因此一个对等体对集合点的需要不是持续的;为了能够更好地 发挥作用,一个连接到i n t e m e t 的集合点最好尽可能地暴露给网络上的多个对等 体。 3 3 本章小结 本章介绍了j x t a 的三层结构, 念:对等体、对等组、端点、管道、 核心层、服务层和应用层和j x t a 的基本概 公告和集合点。 北京邮电丈学硕士论文 p 2 p 网络平台j x t a 的胞用分析研究 第四章j x t a 网络架构 4 1j x r a 网络组织 基于j x t a 的p 2 p 网络是一个a dh o c 、普及型且多跃点网络计算平台。对等 体可以任何时候自由的加入退出网络,而且每一次的路由都不尽相同。 任何一对等体,它都支持j x t a 协议的一个或者多个,不同的对等体处于网 络的不同位置,就可能在p 2 p 网络中具有不同的角色。在j x t a 网络中有四种类 型的对等体。 最简单对等体( m i n i m a le d g e p e e r ) 最简单对等体能够接收和发送消息,但不能缓存公告和为其它对等体路 由消息。在资源受限设备( 如手机,p d a ) 上的对等体,很有可能就是最简 单对等体。 _ 完全功能型对等体( f u l l - f e a t u r e de d g ep e e r ) 完全功能型对等体能够接收和发送消息,并能缓存公告。当它接收到发 现请求时,能从缓存中取出信息来响应请求,但不会再将消息转发给其它对 等体。大部分对等体属于这种类型。 _ 集合点型对等体( r e n d e z v o u s p e e r ) 在j x t a 网络中,集合点对等体( 简称集合点) 为其它对等体提供了一 个网络位置,通过它可以发现其它对等体和资源。如对等体向集合点发送发 现请求,集合点提供它所知道的对等体的信息。 集合点可通过对对等体信息缓存以便将来使用,或者转发发现请求到其 它集合点,而增强它自身的能力。这涉及到提高请求响应能力、降低网络通 信量、为其它对等体提供更好的服务。 集合点通常位于私有网的防火墙之外,当然它也可能在防火墙之内,但 这必须使用防火墙允许的协议、或使用在防火墙之外的中继型对等体,穿透 防火墙。 _ 中继型对等体( r e l a yp e e r ) ( 注:早期j x t a 文档里也称为“路由型对 等体”) 中继型对等体维护着如何路由到其它对等体的路由信息。对等体首先查 北京邮电大学硕士论文 p 2 p 网络平台j x l a 的应用分析研究 找本地路由信息,如果没有发现可用的路由信息,就向中继型对等体转发路 由查询消息。中继型对等体还可以作为因为网络阻碍( 如,n a t ,防火墙) 而不能直接通信的对等体之间的通信代理。 4 2 共享资源分布式索引( s h a r e dr e s o u r c ed i s t r i b u t e d i n d e x ,s r d i ) 1 - a 支持共享资源分布式索引( s r d i ) 服务,从而提供在j x t a 网络中更 有效的散播查询机制。下面我们详细描述s r d i 机制的实现方式。 当对等体要发布一个新的公告时,它使用s r d i 服务,将该公告的索引发布 到该对等体所在的集合点。通常集合点对等体维护着所有对等体发布的公告的索 引。因此散播查询就只在集合点中发生,和直接在对等体之间查找相比大大降低 了查询对等体的数目。 每个集合点对等体都维护着一张它邻近的其它集合点对等体表。集合点对等 体之间会周期性( 或随机) 的相互访问,以便及时更新集合点表,对于没有响应 的集合点,将从表中删除。 对等体通过s r d i 向集合点发布它们的新公告服务,s r d i 一般用该公告的 名字或者i d 作为索引的关键字。在集合点对等体上只保存公告的索引而不是公 告本身,从而降低了对集合点存储要求。另外,集合点还把它所拥有的s r d i 转 发给其它的集合点,从而提高了查询效率。( p p1 6n o t e3 ) 4 3j x t a 网络查询 下面以图4 1 为例子
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 基于主题意义探究的高中英语阅读教学现状研究
- MoO2助催化剂材料的改性及其在光催化析氢中的研究
- 基于数据挖掘的补肾益肺方治疗慢阻肺稳定期肺肾气虚证的临床疗效研究
- 湖南美术出版社二年级下册色彩运用教学计划
- 2025年企业自我评估报告范文
- 2025年柠檬水果C果冻项目市场调查研究报告
- TC4钛合金在苛刻腐蚀环境中耐蚀机理的分子动力学研究
- 柴油-生物柴油掺混不同醇类三元燃料的喷雾与燃烧特性研究
- 矿山开采安全管理及施工措施
- 交互叙事视域下湘西苗族银饰品创新设计
- 2025年江苏南京市河西新城区国有资产经营控股集团招聘笔试参考题库附带答案详解
- 医院药房培训课件
- 《牵引变电所》课件
- 江苏有限空间作业安全操作规范DB32∕T-3848-2020
- 《中医美容》课件
- 10.2事件的相互独立性 说课课件高一下学期数学人教A版(2019)必修第二册
- 民办学校档案管理制度
- 工业固体废弃物的资源化处理
- DB11 637-2015 房屋结构综合安全性鉴定标准
- 教学评一体化含义
- 24秋国家开放大学《马克思主义基本原理》专题测试参考答案
评论
0/150
提交评论