(计算机软件与理论专业论文)基于jxta的p2p程序设计的研究.pdf_第1页
(计算机软件与理论专业论文)基于jxta的p2p程序设计的研究.pdf_第2页
(计算机软件与理论专业论文)基于jxta的p2p程序设计的研究.pdf_第3页
(计算机软件与理论专业论文)基于jxta的p2p程序设计的研究.pdf_第4页
(计算机软件与理论专业论文)基于jxta的p2p程序设计的研究.pdf_第5页
已阅读5页,还剩77页未读 继续免费阅读

(计算机软件与理论专业论文)基于jxta的p2p程序设计的研究.pdf.pdf 免费下载

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

文档简介

四川大学硕+ 学位论文 基于j x 1 1 a 的p 2 p 程序设计的研究 计算机软件与理论 研究生沈洪敏指导教师唐宁九 摘要 j x t a 技术是网络编程和计算的平台,是用以解决现代分布计算尤其是点 对点( p 2 p ) 计算中出现的问题的一种技术规范。 j x t a 技术提供了基础性的机制解决当前分布计算应用中面临的问题,实 现新一代统一、安全、互操作以及异构的应用。目前的实现只支持基于j a v a 技 术的平台和系统。而将来j x t a 技术将不受到编程语言的限制而支持更多的设 备平台。j x t a 使用x m l 数据表达,提供了强大的功能使得各种平台得以交 互,并且可以克服目前p 2 p 软件中的各种限制。同时,通过小型、简单、便于 开发的构造模块,j x t a 将使开发者从建立各自框架的复杂工作得以解放,可 以潜心关注于建设各类新颖、创造性的、分布式计算应用。 本文主要阐述了本人对p 2 p 程序设计与j x t a 技术规范理论的研究,这些理 论研究包括p 2 p 的定义,分类,结构,现状未来以及3 x t a 的设计目标,虚拟网, 分层结构,安全性,协议等等。同时阐述了本人基于这些理论基础和j x t a 开源 项目而研究的p 2 p 计算平台j x t a n e tf r a m e w o r k 参考实现的设计与部分代码 实现,其中设计包括逻辑架构,点,点发现协议,安全服务等。在代码实现的 工作上主要针对j x t a n e tf r a m e w o r k 参考实现的安全服务。 关键词:j x t a ,p 2 p ,点对点,网络计算,n e tf r a m e w o r k 四川大学硕士学位论文 a s t u d yo fp 2 pp r o g r a m m i n gb a s e d o nj x t a g r a d u a t es t u d e n t :h o n g m i ns h c na d v i s o r s :n i n g j i ut a n g a b s t r a c t y x t at e c h n o l o g yi st h en e t w o r kp r o g r a m m i n ga n dc o m p u t i n gp l a t f o r ma n d c r i t e r i o nt oa d d r e s sm o d e md i s t r i b u t i o n c o m p u t i n ge s p e c i a l l y p e e r - t o p e e r c o m p u t i n gp r o b l e m s j x t at e c h n o l o g yp r o v i d e st h eb a s i cm e c h a n i s mt os o l v et h ec u r r e n tp r o b l e m s 缸e db yd i s t r i b u t e dc o m p u t i n g a p p l i c a t i o n sa n da c h i e v ean e wg e n e r a t i o no fu n i t y , s e c u r i t y , m u t u a lo p e r a t i o na n ds u m m a r i z a t i o na p p l i c a t i o nc u r r e n t l yj x t aj n s t s u p p o r t sj a v at e c h n o l o g y - b a s e dp l a t f o r m s a n ds y s t e m s i nt h ef u t u r e ,j x t a t e c h n o l o g yw i l ln o tb ea f f e c t e db yt h er e s t r i c t i o n so ft h ec o m p u t e rl a n g u a g e s t o s u p p o r tm o r ep l a t f o r m sa n ds y s t e m s b yt h ex m l d a t ae x p r e s s i n g , j x t ap r o v i d e da p o w e r f u lf u n c t i o nt ob u i l du pa p p l i c a t i o n s ,a n d c a no v e r c o m et h ec u r r e n tp 2 p s o f t w a r ec o n s t r a i n t s a tt h es a m et i m e ,t h r o u g hs m a l l ,s i m p l e ,e a s yd e v e l o p m e n to f m o d u l a rc o n s t r u c t i o n , j x t aw i l le n a b l ed e v e l o p e r sf r e ef r o mt h ec o m p l e xw o r ko f b u i l d i n gt h e i ro w nn e t w o r kf r a m e w o r k t h e nt h e y c a l ld e v o t ea t t e n t i o nt ot h e b u i l d i n go f i n n o v a t i v e ,c r e a t i v e ,d i s t r i b u t e dc o m p u t i n ga p p l i c a t i o n s t h ep a p e re x p o u n d e do nt h et h e o r e t i c a ls t u d y0 np 2 pp r o g r a m m i n ga n d t h e j x t at e c h n o l o g y , i n c l u d i n gp 2 p sd e f i n i t i o n s ,c l a s s i f i c a t i o n s , s t r u c t u r e ,f u t u r e a n dj x t a sd e s i g no b j e c t i v e s , v i r t u a ln e t w o r k , h i e r a r c h y , s e c u r i t y , p r o t o c o l ,a p ba n d n 四川大学硕士学位论文 s oo i lia 1 9 0e x p l a i n e dt h ed e s i g na n ds o m ec o d e so fj x t a n e tf r a m e w o r k r e a l i z a t i o nb a s e d0 1 1t h e s et h e o r e t i e sa n dj ) ( t ao p e ns o u r c 圮p r o j e c t t h ed e s i g ni s m a i n l ya b o u t t h el o g i c a l f r a m e w o r k , p e e r & p e e rg r o u pc l a s s e s ,p e e rd i s c o v e r y a p i s ,s e c u r i t ys e r v i c ea n d 8 0o n , a n d m y c o d e si sm a i n l ya b o u tt h es e c u r i t ys e r v i c e o f j x t a k e y w o r d s :j ) ( t a ,p 2 p , p e e r - t o p e e r , n e t w o r kc o m p u t i n g ,n e tf r a m e w o r k i 玎 四川大学硕士学位论文 第一章绪论 1 1 研究背景 p 2 p 被许多人视为2 1 世纪的技术热点之一,但它并不是一个新概念。早在 3 0 年前,就有公司推出了一些具有典型p 2 p 特征的产品。事实上,因特网最初 的设计目标就是让网络上的计算机互相之间可以直接通信而不需要中介,只是 随后由于网络规模的扩大,。客户服务器”模型才逐渐成为因特网上占统治地位 的计算模型。从这个意义上看,最近两年才开始成为热点的p 2 p 计算实际上是 一种。向传统的回归”。 虽然p 2 p 的概念早已有之,但其快速发展却源于因特网的快速崛起。 第一代因特网通过全局共享的通信媒介来动态地访问远程信息。通过在文 本档案中建立指向其他信息源的链接,构成一个信息网络,通过h t t p 、f t p 、 w a i s 等标准协议,使人们可以访问动态信息。但在这种模型中,信息网络是 分片结构的,存在着许多信息孤岛。 随着第一个网络浏览器m o s a i c 的诞生,因特网进入了第二个发展阶段。 m o s a i c 首次提供了一个综合的图形化浏览器,通过h t m l 和h t t p 的结合,屏 蔽了信息获取的具体过程和细节,促进了w w w 的形成。w w w 是一个包括了 网络服务器、网络门户和入口以及搜索引擎的信息基础架构。 在第二代模型中,内容驻存在服务器上,而不是在创建它们的设备上,这 使得可用信息源的覆盖范围无论是在质量还是数量上都下降了,与此形成对比 的却是w e b 上信息量的指数增长。 。资源在哪里创建,就到哪里访问”的愿望促进了因特网进入第三个发展阶 段分布式计算。比如,1 0 0 万人要同时访问一个站点,是不是意味着必须 构建一个高配置的服务器来满足所有人的需求? w w w 模型会给一个肯定的回 答,而分布式计算模型的答案是可以将此站点分解到1 0 0 万台p c 上,通过 i n t e r n e t 上的协作来进行。这一答案隐含着两个显著的改变:搜索分布在网络上 四川大学硕士学位论文 进行,内容驻留在边缘( 而非中心服务器) 。 正是因为因特网的演变导致了p 2 p 计算的流行。 1 2p 2 p 的发展历史 p 2 p 计算并非一种全新的技术。虽然p 2 p 这个术语是现在才发明的,但 p 2 p 本身的基本技术的存在时间却至少和u s e n e t 、f i d o n e t 这两种非常成功 的分布式对等网络技术一样长,甚至更长些( 因此笔者建议读者朋友去尝试这 样一个挑战寻造最早的p 2 p 应用,尤其是那些现今仍在使用的应用) 。关 键在于,在最初的p 2 p 应用出现时,许多使用该技术的人们甚至不会使用计算 机。 u s e n e t 产生于1 9 7 9 年,是一种分布式系统,能够为各个地方提供新闻 组( 笔者最喜欢的是l e e a r t s i n t - f i c t i o n 和r e c g a m e s i n t - f i e t i o n ) 。u s e n e t 最早 的雏形由是两名研究生t o mt r u s e o t t 和j i me l l i s 实现的。当时并没有任何类 似于互联网上“随选”信息的概念,文件只能通过电话线批量传送,且常常选在 长途费用比较低的夜间进行。因此,当时的u s e n e t 若采用集中式的控制管 理方法将效率低下,自然而然地就提出了一种分散、分布式的管理方法。这种 分布的结构一直沿用到今天。 , 早期p 2 p 应用另一个杰出的代表则是f i d o n e t 。它和u s e n e t 类似,也 是一个分散、分布的信息交换系统。t o mj e r m i n g s 于1 9 8 4 年创建了f i d o n c t 系统,来让不同b b s 系统中的用户们互相交换信息。这种符合人们需要的技 术,迅速成长起来,并一直沿用到今天。 u s e n e t 和f i d o n e t 都是值得探究的系统,因为它们在多年前就遇到并解 决了许多当今p 2 p 技术所面临的同样问题,同时也还存在着安全性以及其他一 些问题。为了开发成功的p 2 p 计算系统,首先必须了解这些p 2 p 技术的发展 历史 p 2 p 应用最初出现时和现在并不相同。事实上可以认为它是若干不同技术 以及流行趋势的产物。下面是两个导致p 2 p 技术发展最重要的趋势: 2 四川大学硕士学位论文 首先是某些新技术与软件工程结合,形成了一种将工作分散的趋势。p 2 p 计算 正是这种分散工作趋势的自然结果。 其次,从工程的角度看来,在企业应用集成等因素的驱动下,过去十年渐渐 形成一种从集中的单机系统转向分布式系统的趋势。在集中式的应用中进行控 制是相对容易的,这一点在一定程度上抑制了分布式潮流的发展。然而随着互 联网的发展,以及b 2 b 商务交易方式的日益流行,全面的分布式计算也就成 为一种商业需求。 对功能强大的网络计算机的需求以及昂贵的带宽开销,是对这种趋势影响最大 的两个因素。为了提高效率,p 2 p 计算由许多互相连接的同位体( p e e r ) 组成。 这两种趋势导致了p 2 p 应用技术研究的迅速发展。 除了技术方面之外的社会因素也是一个重要原因。毫无疑问,人们现在对 p 2 p 计算技术的热切关注起源于n a p s t c r , s c o u r , g n u t e l l a , b i tt o r r e n t 以及这些 家族的其他成员产品。这些产品提供了所谓的”k i l l e ra p p s ”功能,能够将p 2 p 技术中的一部分下放到客户端用户的手中。正是这种第一手的体验,使得人们 越来越关注p 2 p 技术的强大功能。 然而必须指出的是,最初的p 2 p 应用大约产生于2 0 年前,并且其中的许多 至今仍然被使用。尽管这些早期应用的核心就是p 2 p ,但由于大多数的使用者 并未感觉或接触到,因此通常并不认为它们是p 2 p 技术。 1 3 论文的工作 首先,p 2 p 技术是一种很新,目前最流行的技术之一。而j x t a 是p 2 p 计算的一种开源的技术平台与技术规范,这两者都有很高的理论研究价值, 本人的工作一部分就是对这两者理论的研究。 其次,在理论研究的基础之上,本人提出了了一个基于j x t a 和n e t f r a m e w o r k 技术的p 2 p 计算平台j x t a n e tf r a m e w o r k 参考实现的设计构想。 包括该参考实现的设计目标,逻辑架构,点和点组的设计。 最后,本人针对j x t a 的安全性。提出了j x t a n e tf r a m e w o r k 安全服务 的u m l 设计图,同时在数字签名,数字信封技术上给出了基于n e tf r a m e v o r k 的代码实现。 文章主要包括一下几个方面的内容 四川大学硕士学位论文 p 2 p 的基本概念 j x t a 技术总览 j x t a 平台与协议的介绍 j x t a 的安全性 j x t a n e tf r a m e w o r k 参考实现的设计与部分代码实现 4 四川大学硕士学位论文 第二章p 2 p 基本概念 2 1p 2 p 定义 i n t e l 将p 2 p 计算定义为。通过系统间的直接交换所达成的计算机资源与信 息的共享”,这些资源与服务包括信息交换、处理器时钟、缓存和磁盘空问等。 r o k ut e c h n o l o g i e s 公司将p 2 p 定义成“使个人与个人之间直接通信成为可能且 更便捷的网络结构”。i b m 则给p 2 p 赋予更广阔的定义,把它看成是由若干互联 协作的计算机构成的系统并具备若干特性。 i b m 为p 2 p 下了如下定义:p 2 p 系统由若干互联协作的计算机构成,且至 少具有如下特征之一:系统依存于边缘化( 非中央式服务器) 设备的主动协作, 每个成员直接从其他成员而不是从服务器的参与中受益;系统中成员同时扮演 服务器与客户机的角色;系统应用的用户能够意识到彼此的存在,构成一个虚 拟或实际的群体。 总体来讲,p 2 p 计算系统是分布式的,有别于集中式的结构,也有别于基 于服务器的结构。纯粹的p 2 p 计算系统不存在不可或缺的服务器( 某些混杂系 统存在中央服务器,比如n a p s t e r ) ,在p 2 p 计算系统中的实体一般同时扮演 两种角色:客户和服务器。 2 2p 2 p 的分类 典型的p 2 p 计算应用系统的目标主要有以下几类: 1 资源、信息、服务的共享与管理 作为网络系统,。共享。永远是最基本的目标,包括文件、c p u 时钟、应用 服务等,以文件共享最为常见。文件共享有两种基本方式:基于目录服务的文 四川大学硕士学位论文 件共享和对等式文件共享。前者典型的例子为n a p s t e r ,用户在一个目录服务器 中注册文件条目,搜索通过查询该服务器进行以寻找一个匹配的文件拷贝。文 件的操作在成员之间直接进行,这种混杂式p 2 p 计算系统结构如图1 1 所示。 图1 1 混杂式p 2 p 计算系统结构 而在对等式文件共享系统中,用户通过系统网络邻居来注册文件,通过网 络来搜索文件拷贝,不需要一个集中式的目录服务器,典型例子是f r e e n e t 。 以c p u 时钟共享为目标的p 2 p 系统也不少,如s e t i h o m e 、 d i s t r i b u t e d n e t 等。大致的实现方式是:系统某个成员要运行一个计算任务,就 将它在系统中公告出来,其他成员在认为自身c p u 足够空闲的情况下,与该成 员联系,下载计算代码在自身上运行,计算结果返回给该成员。在这一过程中, 执行任务的成员可根据自身负载变化而主动中止或迁移计算任务。 2 协作 p 2 p 计算系统中的协作分为两个层次:底层为应用程序之间的协作,高层为 用户行为的协作。对于特定应用,共享c p u 时钟就可实现应用程序之间的协作: 但高层用户行为之间的协作一般需借助即时通信来实现。比如时下风行的i c q 和用i b ml o t u s 软件开发的g r o o v en e t w o r k s 等。以协作为目标的p 2 p 计算系 统对传统的群件是一个挑战,就应用范围来说,前者足以覆盖后者的功能。除 即时通信外,协作型对等计算系统也适用于工业系统中,用于控制生产流水线 之间的协调与决策过程,如o c u l u st e c h 、2 4 l i n k 、e n g e n i a 、i k i m b o 等。 6 四川大学硕士学位论文 3 构建充当基层架构的互联系统 这一目标下的计算系统以共享和协作为基础,不少公司已推出了一些试验 性的产品。例如,用于连接不同技术平台或者把分布的设备连接成一个整体的 c y t y q s 和p r o k s i m = 通过可复用组件编程的o p e n d e s i g n = 能在不可信的网络 上安全地传输数据的w a r e o n e a r t h s ;为下一代因特网计算模型提供基层架构 的x d e g r e e s 等。 2 3p 2 p 与网络计算 目前,网络计算正处于发展阶段,人们对它的定义还没有形成共识,但一 个相对可以接受的理解是:。网络计算”是把网络连接起来的各种自治资源和系统 组合起来,以实现资源共享、协同工作和联合计算,为各种用户提供基于网络 的各类综合性服务。基于此,人们把对等( p 2 p ) 计算、企业计算、网格计算、和 普及计算归类为网络计算。 2 3 1 对等计算:倡导“平等”共享 对等计算( p e e r - t o - p e e r ,简称p 2 p ) 是在i n t e m e t 上实施网络计算的新模 式。在这种模式下,服务器与客户端的界限消失了,网络上的所有节点都可以。平 等”共享其他节点的计算资源。 根据p 2 p 的定义,不难看出,p 2 p 把网络计算模式从集中式引向分布式, 也就是说,网络应用的核心从中央服务器向网络边缘的终端设备扩散:服务器 到服务器、服务器到p c 机、p c 机到p c 机,p c 机到v v a p 手机,所有网络 节点上的设备都可以建立p 2 p 对话。 p 2 p 给i n t e m e t 的分布、共享精神带来了无限的遐想。有观点认为,至少 能开发出几百种应用。但从目前的应用看,p 2 p 的威力还主要体现在大范围的 共享和搜索的优势上,诸如对等计算、协同工作、搜索引擎、文件交换等。 7 四川大学硕士学位论文 2 3 2 企业计算:以中间件为核心 企业计算是。以实现大型组织内部和组织之间的信息共享和协同工作为主 要需求而形成的网络计算技术。,其核心是c l i e n t s e r v e r 计算模型和相关的中间 件技术。 早在2 0 世纪8 0 年代,人们就提出在互连的计算机硬件上部署新型的分布 式操作系统,全面彻底地管理整个系统,给用户单一的系统视图。尽管这一努 力产生了许多技术成果和实验系统,但一直没有形成可用的产品,人们直觉地 感到在不断扩展的局部自治异构系统上实现资源的集中管理几乎是不可能的, 于是开始采用中间件平台技术,以屏蔽系统的异构性,支持局部自治系统的信 息交互和协同。经过十几年的发展,中间件取得了令人瞩目的发展,出现了远 程数据库访问、远程过程调用、消息传递、交易管理等各类中阃件。 2 0 世纪9 0 年代末,面向对象的中间件技术成为中间件平台的主流技术, 出现了以s u n 公司的e j b j 2 e e 、m i c r o s o f t 的c o m + d n a 和o m g 的 c o r b a o m a 为代表的三个技术分支。其研究热点是建立标准化的对象请求代 理,屏蔽网络环境下计算平台、操作系统,编程语言、网络协议的异构性和复 杂性,使分布在网络上的应用系统能够协同工作,为网络应用提供通用的高级 网络管理服务以及与应用领域相关的增值服务。 进入新世纪,随着电子商务需求的发展,企业计算面临企业间的信息共享 和协同工作问题,面向w e b 的企业计算解决方案成为热点,为此w 3 c 提出了 w 曲s e r v i c e 技术体系,m i c r o s o f t 推出了n e t 技术,s u n 推出s u no n e 架构, 企业计算技术全面进入i n t e m e t 时代。 2 3 3 网格计算:让计算能力“公用化” 网格计算( g r i dc o m p u t i n g ) 是网络计算的另一个具有重要创新思想和巨大 发展潜力的分支。最初,网格计算研究的目标是希望将超级计算机连接成为一 l 四川大学硕士学位论文 个可远程控制的元计算机系统( m e t a c o m p u t e r s ) ;现在,这一目标已经深化 为建立大规模计算和数据处理的通用基础支撑结构,将网络上的各种高性能计 算机、服务器、p c 、信息系统、海量数据存储和处理系统、应用模拟系统、虚 拟现实系统、仪器设备和信息获取设备( 如传感器) 集成在一起,为各种应用 开发提供底层技术支撑,将i n t e m e t 变为一个功能强大、无处不在的计算设施。 网格计算可以从三个方面来理解。 首先,从概念上,网格计算的目标是资源共享和分布协同工作。网格的这 种概念可以清晰地指导行业和企业对各部门的资源进行基于行业或企业的统一 规划、部署、整合和共享,而不仅仅是行业或大企业中的各个部门自己规划、 占有和使用资源。这种思想的沟通和认同对行业和企业是至关重要的,将提升 或改变整个行业或企业信息系统的规划部署、运行和管理机制。 其次,网格是一种技术。为了达到多种类型的分布资源共享和协作,网格 计算技术必须解决多个层次的资源共享和合作技术,制定网格的标准,将 i n t e m e t 从通信和信息交互的平台提升到一个资源共享的平台。 最后,网格是基础设施,是各种网络来综合计算机、数据、设备、服务等 资源的基础设施。随着网格技术逐步成熟,建立地理分布的遍布全国或全球的 大型资源节点,集成网络上的多个资源,联合向全社会按需提供全方位的信息 服务。这种设施的建立,将使用户如同今天我们按需使用电力一样,无需在用 户端配全套计算机系统和复杂软件,就可以简便地得到网格提供的各种服务 如同电力系统一样,把网格设施作为一个国家战略信息基础设施来规划、 建设和运行管理,其复杂度和难度是相当大的,这里面有思想和观念上的变化, 技术上的难点,以及国家法律和政策上的问题等,需要经过多年的艰苦努力。 但是,大型企业、行业、国防等部门完全可以从现在就开始实施网格基础设施 战略。 2 3 4 普及计算:计算无所不在 普及计算( u b i q u i t o u sc o m p u t i n go rp e r v a s i v ec o m p u t i n g ) 强调人与计算 环境的紧密联系,使计算机和网络更有效地融入人们的生活,让人们在任何时间、 任何地点都能方便快捷地获得网络计算提供的各种服务。 r i l l 大学硕士学位论文 普及计算研究的内容主要包括两个方面:自然的人机交互和网络计算。美 国排名前1 0 位的大学无一例外地投巨资设立了以“普及计算。为主要方向的研究 计划。目前有4 个研究计划最具影响力,这些计划的目标是提出全新的体系结 构、应用模式、编程模型等基础理论模型和方法。 m i t 的o x y g e n 研究计划该计划的研究人员认为,未来世界将是一个到 处充斥着嵌入式计算机的环境,它们已经融入了人们的日常生活中。o x y g e n 希 望充分利用这些计算资源,达到。做得更少,完成更多( t od om o r eb yd o i n g l e s s ) ”的目的。 c m u 的a u r a 研究计划它致力于研究在普及计算时代,在用户和计算环 境之间增加一层软件层( 称为a u r a ) ,由a u r a 代理用户去管理、维护分布式 计算环境中频繁变化、松散耦合的多个计算设备,以完成用户的目标任务。a u r a 推崇的理念是:“人的精力( u s e ra t t e n t i o n ) 是最宝贵的资源,应该让它集中 在用户要完成的任务上,而不是管理、配置硬件和软件资源上。 u cb e r k e l e y 的e n d e a v o u r 计划这是u cb e r k e l e y 进行的旨在通过运用 信息技术,提供全新的、全球规模的信息基础设施,从根本上方便人们与信息、 设备和他人进行交互的计划。这些信息设施应该能够动态实时地协调世界上任 何可用的资源来满足用户计算的需要,其创新点之一是“流体软件”( f l u i d s o f t w a r e ) ,这种软件能够自适应地选择在何处执行、在何处存储,它通过协 议获得可用资源并向其他实体提供服务。 华盛顿大学的p o r t o l a n o 计划该计划提出了。数据为中心的网络”以适应 让计算本身变成不可见的( i n v i s i b l ec o m p u t i n g ) 的要求。该计划认为目前计算 机技术的发展仍然是技术驱动而非用户需求驱动。为了改变这一现状,该计划 致力于研究根据用户的位置变化而自适应地改变软件用户界面的机制,以数据 为中心的网络以及新型的分布式服务模型。 2 3 5 各类网络计算之间的异同 以上四类网络计算虽然侧重点不同,但最终的目标是一致的:广泛共享、 有效聚合、充分释放。 1 0 四川大学硕士学位论文 所谓广泛共享,是指通过各种方法、技术和策略将网络上的各种资源提供 给网络上众多用户共享、使用;所谓有效聚合,是指将网络上的巨大资源通过 协同工作连接集成起来,产生巨大的综合效能,联合完成应用任务;所谓充分 释放,是指为用户提供良好的开发手段和使用环境,将网络上多种资源的聚合 效能按照需求传递给用户,为用户提供个性化的信息服务、计算服务和决策支 持服务。 但是面对众多的网络计算技术和应用,人们有时很难区分它们之间的技术 差异,不知道谁将成为未来网络计算的主导。事实上,虽然最终目标一致,但 各种网络计算技术的应用范围和研究对象的规模、层次却各有不同。 面向对象的分布式计算技术强调的是分布系统的集成能力,以两层或多层 c l i e n t s e r v e r 为主要计算模式,关心的是简化用户端的工作,强化多层服务器 的功能,注重分布系统之间的协同工作和快速的应用开发和实现,强调应用服 务之间的可交互、可操作性和代码的可移植性,通常关注一个组织内的资源共 享。 p 2 p 技术弱化了集中服务器的功能,重视网络中所有个体的作用,强调的 是个体之间、系统之间、计算机之间的直接通信和联系,每一个参与者既是客 户又是服务方,这使人们在i n t e r n e t 上的共享行为被提升到了一个更广泛的层 次,使人们以更主动的方式参与到网络中去。它与现行以中间件为主的分布式 计算技术所采用的c l i e n t s e r v e r 模式有本质区别。 网格计算在i n t e r n e t 基础上强调对计算、数据、设备等网络基本资源进行 整合,力图将i n t e m e t 作为一个社会化的计算基础设施。在计算模型、技术路 径和研究目标上,网格计算和目前分布计算中间件领域面向应用级别的交互、 互操作和开发有很大的不同。它强调多机构之间大规模的资源共享和合作使用, 提供了资源共享的基本方法,而分布计算技术没有提供多组织之间的资源共享 通用框架。显然,网格计算正在建立一种新的i n t e r n e t 基础支撑结构( 如同 t c p i p 、m 协议和相应的软件系统奠定了现行i n t e m e t 的基础) ,是2 1 世纪t e r a s c a l e 设施的信息处理基础设施的先期实践。 普及计算模式则是要颠覆。人使用计算机”的传统方式,将人与计算机的关系 改变为“计算机为人服务。,从某种意义上说,是让人与计算环境更好地融合在一 四川大学硕士学位论文 起。 尽管各种网络计算技术有差异,但是它们之间并不是冲突的关系,而是一 种正交关系,有时甚至是融合的,因此,各种网络计算技术可以共存。例如网 格计算和c o r b a 、s o a p 、x m l 等技术结合可以访问多个机构组成的虚拟组 织的资源。 信息技术的多变性使我们不能肯定1 0 年之后的网络计算将会发展到何等 程度,但是多种网络计算形式共存、相互结合和融合是肯定的。无论如何,从 当今基于i n t e r n e t 的各种网络计算实践和研究来看,实现网络资源的共享,提 供大规模协同计算能力和对资源的有效访问,是网络计算未来发展的趋势,是 下一代i n t e m e t 的技术基础。 2 4p 2 p 的结构 i n t e l 提出了一个通用的对等计算系统栈结构( 图1 2 ) : 图1 2 通用的对等计算系统栈 按系统中是否存在集中式服务器,p 2 p 系统可分为纯粹的p 2 p 系统和混杂 式p 2 p 系统( h y b r i dp 2 p 或s e r v e r - m e d l a t e dp 2 p ) 前者不存在任何功能的 集中式服务器:后者的系统中存在特定功能的集中式服务器,但该服务器并不充 当整个系统的核心。 1 2 一一一一一 四川大学硕士学位论文 按系统中用户的行为方式,p 2 p 系统可以分为多对多结构、少对少结构和 少对多结构三类。在第一类结构中,系统操作的双方用户人数基本相当,基于 因特网的开放式文件共享系统多数属于此类,如g n u t e l l a 、f r e e n e t 、n a p s t e r 等;在第二类结构中,系统是封闭的,即系统的发起者构建一个系统,不允许 他人加入,在系统运行期间,所有参与者的地位均等;第三类系统属于典型的 开放式分布计算系统,系统中存在少量的中央服务器,为多数用户所使用。 按成员标识管理方式,p 2 p 计算系统可分为集中式和局部式。前者是最直 接又比较普通的方式,它创建一个全局的名字空间,保证所有实体的名字都是 惟一的;后者既不需要集中式授权机制,也无需求助于分层结构,于是也很自 然地采用了公共密钥加密机制。 7 按实体发现( d i s c o v e r y ) 方式的不同,对等计算系统可分为客户服务器模 型、直接模型和中介模型。在第一种模型中,可访问实体的发现需要求助于特 定的集中式服务器;在第二种模型中,系统中每个实体负责自身的标识功能, 以保证能被其他实体所发现;第三种模型是最常见的方式,核心实现方法是请 求转发。 2 5p 2 p 的组织与标准 目前,正式的p 2 p 组织尚未成立,2 0 0 0 年8 月间成立的p 2 p 工作组,成员 包括i n t e l 、i b m 、h p 等大企业,目标集中在p 2 p 技术的标准、安全性及可靠性 等等。但由于p 2 p 技术本身发展迅速,p 2 p 技术涵盖的范围尚未确定,目前尚未 有统一的规范。 四川大学硕士学位论文 2 6p 2 p 的商机与挑战 三类p 2 p 计算系统孕育着巨大的商业机会,这也是为什么绝大多数p 2 p 系 统产生于商业公司而不是大学等研究机构的主要原因。据i d c 估计,2 0 0 2 年将 有2 3 6 的大型公司会安装即时通信系统。g a r t n e r 认为,2 0 0 2 年年底前,半 数以上的因特网用户会经常登录至少两个基于因特网的p 2 p 应用。f o r r e s t e r 宣称:2 0 0 2 年年底前,3 0 0 万个家庭会使用p 2 p 程序来和亲友共享数码照片: 2 0 0 4 年前3 3 的在线用户会使用p 2 p 服务来存取数据;2 0 0 5 年前p 2 p 服务 会被集成到a d o b e 、p a l m 、a o l 等公司提供宽带接入服务和个人信息共享的程 序中去。另据估计,到2 0 0 4 年,在b 2 b 领域,由于通过p 2 p 系统构造可信的 支付机制简化了网上交易过程,会产生5 7 万亿美元的收入。 在迄今的p 2 p 计算系统实现过程中,除一般的技术课题之外,还需要解决 以下问题: 制定标准通信协议这类协议都位于应用层,g n u t e l l a 的协议在带宽利 用、实体标识、安全等方面还存在严重的限制。 匿名机制 对等计算系统中一般都有匿名的需求。例如在文件共享应用中,共享文件 的创建者不希望他人知道是谁共享了该文件,也不希望暴露这个文件的实际存 放位置:下载该文件的用户也不希望他人知道是谁在下载文件:或者,某个用户可 能将一个文件存放在他处,此时他不希望提供存储空间的节点知道该文件来自 何处。然而,真正的匿名是不可能实现的,因为对等计算系统都定义了不同的 名字空问,系统里的所有实体( 节点、用户、文件、进程、消息等) 都有一个 全局或局部惟一的标识符,因此,所谓的匿名机制就是在名字空间之上对使用 者屏蔽掉系统或用户要求的身份信息。 系统必须是安全的安全是所有计算机系统的基本需求,尤其是基于因特 网的系统,包括资源( 软硬件) 安全、数据安全和通信安全。针对不同的安全 1 4 四川大学硕士学位论文 机制,需要实现不同的加密、授权、认证等机制。同时,p 2 p 计算系统有一些 不同于传统“客户服务器”模型的安全需求。 防火墙与n a t 出于安全的考虑,防火墙和n a t ( n e t w o r ka d d r e s s t r a n s l a t i o n ) 的存在严重地降低了因特网的透明性,如果不进行处理,许多p 2 p 系统传输的数据包就不能通过这些设备。 智能代理现代计算机系统对智能性的专注与需求越来越强烈,在对等计 算系统中,代理( a g e n t ) 的主要工作是提供任务执行、流控、病毒与恶意攻击 的防范以及自我恢复等功能。 2 7p 2 p 的现状与未来 目前已经有相当多的商品化p 2 p 产品。 在共享c p u 时钟方面,有a p p l l e dm e t a c o m p u t i n g 、c e n t r a t a 、d a t a s y n a p s e 、 d i s t r i b u t e d n e t 、m i t h r a l 、p a r a b o n 等产品。需要注意的是,这一类产品 与网格计算在理念、技术与功能上有许多的重合之处: 在文件共享方面,有f r e eh a v e n 、f r e e n e t 、g n u t e l l a 、k a z a a 、m o j on a t i o n 、 n a p s t e r 、o h a h a 、o p e n n a p 、m a n g o 等: 在文件搜索方面,有i n f r a s e a r c h 、o p e n c o l a 、p l e b i o 、t h i n k s t r e a m 等产 品: 在协同工作方面,有2 4 l i n k 、e n g i n i a 、e z 、g r o o v e 、i n t e r b i n d 等产品。 另外,在即时通信、商业营销、p 2 p 式服务器、设备代理和应用平台,甚至 多媒体游戏方面,都有许多产品出现。 这些产品都是针对于某个特定应用设计的特有模型,s u n 公司提出的j x f a 则致力于创建一个通用的平台,以简单而有效的方式构建特定的对等式和分布 式服务与应用,使得开发者不需要过多考虑如何解决对等计算的技术问题,而 可以专注于如何实现与完善可扩展、互操作性强且具有高可用性的高层应用。 可以说,j x t a 是p 2 p 发展史上一个里程碑式的标志。 从技术角度看,p 2 p 计算并未激发出任何重大的创新,而更多的是改变了 人们对因特网的理解与认识。正是由于这个原因,i b m 宣称p 2 p 不是一个技术 四川大学硕士学位论文 概念,而是一个社会和经济现象。可以说,p 2 p 的出现与第一个浏览器m o s a i c 的产生很类似,同样的原因,使得p 2 p 在产业界受到注视的程度远远高于学术 界。 从未来看,p 2 p 很可能成为目前基于。客户朋艮务器”模型的w e b 的取代者。 现在已经有1 2 0 多家以p 2 p 为主要产品的公司开始起步,这其中还不包括i b m 、 微软、i n t e l 、s u n 等大公司。 1 6 四川大学硕士学位论文 第三耄j x t a 总览 j x t a 工程要创建一种核心网络计算技术,提供支持跨越平台,时间,空间 p 2 p 计算的一组简单,小型,灵活的机制。工程首先才对p 2 p 的功能进行总结 抽象,然后创建能够坚决目前p 2 p 计算主要限制的核心技术。工程主要致力于 创建基本的机制将策略的选择权保留给应用的开发者。 3 1j x t a 的发展历史 美国s u n 公司自从1 9 9 5 年向世界推出了j a v a 语言以来,每年都会在j a v a 领域里推出新的技术,从j a v a c a r d 、j 2 m e 到j z e e 、j i n i 、j a v a t v ,推动了j a v a 技术的发展和应用。在最近几次的旧金山的j a v a o n e 会议中,j x t a 是该公司向 业界推出的较新技术。该技术的目的是为p 2 p 的网络应用开发提供一个统一的 平台,而且为了鼓励和支持该技术的发展,j x t a 项目采用了开放源码的方式, 因此吸引了大量业界人士参与到j x t a 技术的研究与应用当中,j x t a c o m u n i t y ( m m j x t a o r g ) 就是人气很旺的一个j a v a 技术研究开发的网站。 j x t a 最早起源于2 0 0 0 年的夏天,现在大家把j x t a 看成是p 2 p 的平台,j x t a 的目标是要解决几个技术与商业上的难题。第一是解决众多p 2 p 系统互不相通 的问题。2 0 0 0 年,是p 2 p 突飞猛进的高潮年,但高潮背后却是许多小公司用自 己的封闭系统试图在i n t e r n e t 上圈一块地。s u n 认为,只有互通才能真正发挥 出p 2 p 的优势,就好像i m ( i n s t a n tm e s s a g i n g ) ,能互连的人越多,越有价值。 所以s u n 决定出面发布一个平台,使所有p 2 p 系统都能连接起来,只有s u n 这 样位置中立、但在技术上有雄存实力被大家认可的公司才有希望做成这一平台。 j x t a 的另外一个目的就是找寻一套数量最少、概念最简单的系统构成的 “积木”如果成功,这几块积木就会是今后大家构架信息系统的基本模块, 从而帮助人们摆脱像w i n d o w s 或t c p i p 这样的传统软件带来的包袱。j a v a 、j i m 和j x t a 像是j 的三部曲,j a v a 取自著名咖啡产地名,j i n i 是g e n i e ( 精灵) 的 谐音,而j x t 则是j u x t a p o s e 的缩写当时b i l l j o y 用g r e p 把所有j 打头的 1 7 四川大学硕士学位论文 英文词找出来,j u x t a p o s e 跃然纸上,很是巧妙。既表现了p 2 p 或肩并肩的意义, 又说明j x t a 不局限于p 2 p 但j x t 与众不同,它是由一系列网络协议构成的, 用任何语言都可以实现,并不只限于j a v a ,只有彻底独立于操作系统、网络传 输技术以及程序设计语言,才真正达到了跨平台,而这样的技术,最容易受到 业界的认同。 3 2j x t a 的设计目标 首先,j x t a 是为了构建p 2 p 网络而制订的一组协议,是处理构建p 2 p 网 络所碰到的问

温馨提示

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

评论

0/150

提交评论