(计算机应用技术专业论文)基于jxta的p2p+web服务的研究与设计.pdf_第1页
(计算机应用技术专业论文)基于jxta的p2p+web服务的研究与设计.pdf_第2页
(计算机应用技术专业论文)基于jxta的p2p+web服务的研究与设计.pdf_第3页
(计算机应用技术专业论文)基于jxta的p2p+web服务的研究与设计.pdf_第4页
(计算机应用技术专业论文)基于jxta的p2p+web服务的研究与设计.pdf_第5页
已阅读5页,还剩58页未读 继续免费阅读

(计算机应用技术专业论文)基于jxta的p2p+web服务的研究与设计.pdf.pdf 免费下载

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

文档简介

华北电力大学硕士学位论文摘要 摘要 w e b 服务是目前互联网的发展热点,正以其开放、简单、跨平台、低代价集 成等优点引起相关研究人员和应用开发人员的重视。但是在传统的w e b 服务体 系中,服务的发布和发现都是以一个服务注册中心为基础的,成为系统中潜在 的瓶颈。如果服务注册中心失效则整个系统瘫痪。本文将p 2 p 网络与w e b 服务 有机结合,提出基于p 2 p 网络的分布式w e b 服务模型,利用p 2 p 的离散化技术 提高网络的灵活性,并在s u n 公司提供的p 2 p 网络平台j x t a 上予以实现。最后, 通过对比实验对模型的性能进行验证,结果表明模型具有明显的自组织特性和 良好的可扩展性,并具有较好的服务查找能力。 关键词:p 2 p 网络,w e b 服务,j x t a a b s t r a c t w e bs e r v i c ei st h en e wh o t s p o to fp r e s e n ti n t e r n e td e v e l o p m e n t r e s e a r c h e r sa n dt h e a p p l i c a t i o nd e v e l o p e r s a t t a c hi m p o r t a n c et oi t sv a l u eo fo p e n i n g ,s i m p l e n e s s ,c r o s s i n g p l a t f o r ma n di n t e g r a t i o n a tl o wc o s t b u ti nt r a d i t i o n a lw e bs e r v i c ea r c h i t e c t u r e ,s e r v i c e p u b l i c a t i o na n dd i s c o v e r ya r es t i l lb a s e do nac e n t r a l i z e ds e r v e r u d d ii sab o t t l e n e c ki nt h e a r c h i t e c t u r e i fu d d ii sd i s a b l e d ,t h ea r c h i t e c t u r ew i l lb ef a i l e d t h i st h e s i s ,w h i c hc o m b i n e s t h ep 2 pn e t w o r ka n dw e bs e r v i c e , p r e s e n t saw e bs e r v i c em o d e lb a s e do np 2 pn e t w o r k , u s i n gt h ed i s c r e t i z a t i o no ft h ep 2 pn e t w o r kt oe n h a n c et h ef l e x i b i l i t yo fw e bs e r v i c e m a i n f u n c t i o n sh a v e b e e na c c o m p l i s h e do nj x t ap l a t f o r mp r o v i d e db ys u n f i n a l l y , t h e c o m p a r i s o ne x p e r i m e n t ss h o wt h a t ,t h i sm o d e li ss c a l a b l ea n dw e l ls e l f - o r g a n i z e d ,w i t hh i 曲 s e r v i c el a c a t i o nq u a l i t y h uy u a n y u a n ( c o m p u t e ra p p l i e dt e c h n o l o g y ) d i r e c t e db yp r o f w a n gz h e n q i k e yw o r d s :p 2 pn e t w o r k ,w e bs e r v i c e ,j x t a 华北电力大学硕士学位论文摘要 摘要 w e b 服务是目前互联网的发展热点,正以其开放、简单、跨平台、低代价集 成等优点引起相关研究人员和应用开发人员的重视。但是在传统的w e b 服务体 系中,服务的发布和发现都是以一个服务注册中心为基础的,成为系统中潜在 的瓶颈。如果服务注册中心失效则整个系统瘫痪。本文将p 2 p 网络与w e b 服务 有机结合,提出基于p 2 p 网络的分布式w e b 服务模型,利用p 2 p 的离散化技术 提高网络的灵活性,并在s u n 公司提供的p 2 p 网络平台j x t a 上予以实现。最后, 通过对比实验对模型的性能进行验证,结果表明模型具有明显的自组织特性和 良好的可扩展性,并具有较好的服务查找能力。 关键词:p 2 p 网络,w e b 服务,j x t a a b s t r a c t w e bs e r v i c ei st h en e wh o t s p o to fp r e s e n ti n t e r n e td e v e l o p m e n t r e s e a r c h e r sa n dt h e a p p l i c a t i o nd e v e l o p e r s a t t a c hi m p o r t a n c et oi t sv a l u eo fo p e n i n g ,s i m p l e n e s s ,c r o s s i n g p l a t f o r ma n di n t e g r a t i o n a tl o wc o s t b u ti nt r a d i t i o n a lw e bs e r v i c ea r c h i t e c t u r e ,s e r v i c e p u b l i c a t i o na n dd i s c o v e r ya r es t i l lb a s e do nac e n t r a l i z e ds e r v e r u d d ii sab o t t l e n e c ki nt h e a r c h i t e c t u r e i fu d d ii sd i s a b l e d ,t h ea r c h i t e c t u r ew i l lb ef a i l e d t h i st h e s i s ,w h i c hc o m b i n e s t h ep 2 pn e t w o r ka n dw e bs e r v i c e , p r e s e n t saw e bs e r v i c em o d e lb a s e do np 2 pn e t w o r k , u s i n gt h ed i s c r e t i z a t i o no ft h ep 2 pn e t w o r kt oe n h a n c et h ef l e x i b i l i t yo fw e bs e r v i c e m a i n f u n c t i o n sh a v e b e e na c c o m p l i s h e do nj x t ap l a t f o r mp r o v i d e db ys u n f i n a l l y , t h e c o m p a r i s o ne x p e r i m e n t ss h o wt h a t ,t h i sm o d e li ss c a l a b l ea n dw e l ls e l f - o r g a n i z e d ,w i t hh i 曲 s e r v i c el a c a t i o nq u a l i t y h uy u a n y u a n ( c o m p u t e ra p p l i e dt e c h n o l o g y ) d i r e c t e db yp r o f w a n gz h e n q i k e yw o r d s :p 2 pn e t w o r k ,w e bs e r v i c e ,j x t a 士= q明明 本人郑重声明:此处所提交的硕士学位论文基于j x t a 的p 2 pw e b 服务的研究与 设计,是本人在华北电力大学攻读硕士学位期间,在导师指导下进行的研究工作和取 得的研究成果。据本人所知,除了文中特别加以标注和致谢之处外,论文中不包含其他 人已经发表或撰写过的研究成果,也不包含为获得华北电力大学或其他教育机构的学位 或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作 了明确的说明并表示了谢意。 学位论文作者签名: 盥遥亟 日期:凇嗜弓,r 口 关于学位论文使用授权的说明 本人完全了解华北电力大学有关保留、使用学位论文的规定,即:学校有权保管、 并向有关部门送交学位论文的原件与复印件;学校可以采用影印、缩印或其它复制手 段复制并保存学位论文;学校可允许学位论文被查阅或借阅;学校可以学术交流为 目的,复制赠送和交换学位论文;同意学校可以用不同方式在不同媒体上发表、传播学 位论文的全部或部分内容。 ( 涉密的学位论文在解密后遵守此规定) 作者签名: 导师签名: 日期:丝够: 日期:丝瞄:垒:! 翌 华北电力大学硕士学位论文 第一章引言 互联网作为上世纪最伟大的一项发明,它把全世界的人们有机的联系在了一 起,从此不再有界限,每个人能够访问的信息不再局限于自己的个人电脑,而是可 以访问整个世界的信息。w e b 服务则使得每一个人使用的个人电脑不再是狭义的个 人电脑,而是与整个i n t e r n e t 融为一体,你的电脑就是i n t e r n e t ,整个i n t e r n e t 提供的服务都是你的个人电脑可随时调用的后台服务。p 2 p 让互联网网民们真正参 与到网络中来,每个人都能为网络的资源和功能扩展作出自己的贡献,在未来的网 络世界里p 2 p 让我们每一个使用者成为了互联网真正的主人。 1 1w e b 服务简介 什么是w e b 服务? 从表面上看,w e b 服务就是一个应用程序,它向外界暴露出 一个能够通过w e b 进行调用的a p i 。这就是说,能够用编程的方法通过w e b 调用来 实现某个功能的应用程序。从深层次上看,w e b 服务是一种新的w e b 应用程序分支, 是建立可互操作的分布式应用程序的新平台,它们是白包含、自描述、模块化的应 用,可以在网络中被描述、发布、查找以及通过w e b 来调用。它执行特定的任务, 遵守具体的技术规范,这些规范使得w e b 服务能与其他兼容的组件进行互操作。它 可以使用标准的互联网协议将功能体现在互联网和企业内部网上。w e b 服务平台是 一套标准,它定义了应用程序如何在w e b 上实现互操作。可以用任何语言,在任何 平台上写w e b 服务。 w e b 服务使用基于x m l 的消息处理作为基本的数据通讯方式,消除了使用不同 组件模型、操作系统和编程语言的系统之间存在的差异,使异类系统能够作为单个 计算网络协同运行。开发人员可以用像过去在创建分布式应用程序时使用组件一样 的方式创建来自各种源的w e b 服务组合在一起的应用程序。 1 2p 2 p 简介 p 2 p ,全称叫做“p e e r - t o - p e e r ”对等互联网络技术( 点对点网络技术) ,它让 用户可以直接连接到其他用户的计算机,进行文件共享与交换,另外p 2 p 在深度搜 索、分布计算、协同工作等方面也大有用途。p 2 p 号称自身等同于网络。在这个网 络中那些存在于传统客户服务器体系结构中的功月= 匕1 - - 和通信在客户和服务器上的分 离特性消失了。新术语s e r v e n t ( s e r v e r + c 1l e n t ) 正伴随着网络计算领域的新的机遇 华北电力大学硕士学位论文 出现。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 3 课题的研究目的及意义 虽然w e b 服务的出现和发展很让人兴奋,可是w e b 服务的架构有其自身的缺陷。 w e b 服务架构中存在着一个服务注册中心,服务提供者把服务的描述信息发布到服 务注册中心,服务请求者在服务注册中心搜索合适的w e b 服务,该架构不可避免的 具有传统集中式系统的缺陷。系统中用户过多的时候,这个服务注册中心就成了系 统的瓶颈,极大地影响了w e b 服务的工作效率及架构的可扩展性。w e b 服务架构的 另一个突出问题是单点失效,当服务注册中心发生故障时,会造成整个w e b 服务系 统的瘫痪。w e b 服务架构的缺陷己经在一定程度上制约了w e b 服务的进一步发展。 引入p 2 p 思想是上述问题的一个有效的解决方法。基于p 2 p 的w e b 服务中,服 务分布在系统的各个节点上,单个节点失效对系统的影响有限。系统中每个节点都 具有寻址能力,提高了系统资源利用率。由于系统中的节点都是对等的,有效地解 决了传统w e b 服务的瓶颈问题,有助于w e b 服务规模的扩大。w e b 服务与p 2 p 集成 则可以增强应用程序的能力,提高网络的灵活性。p 2 p 中的对等节点也可通过使用 基于x m l 的w e b 服务定义来提高和完善其服务的描述。在p 2 p 这种灵活的应用程序 框架上发布w e b 服务将使我们得到这样一个灵活的应用程序:它既可以适应随时动 态变化的网络结构,又可以给我们提供各种服务。 j x t a 是s u n 公司于2 0 0 1 年推出的p 2 p 程序开发的运行平台,它由一系列协议 组成。由于p 2 p 底层通信协议及设施的问题,许多p 2 p 程序着眼于提供不同类型的 服务,因而形成各种相互隔绝的应用社区。j x t a 通过提供一系列协议及接口,使得 通过其开发出来的p 2 p 程序具有平台独立性和语言独立性,从而实现程序社区间的 相互交流。利用j x t a 构建服务网络,可以在复杂的网络环境下有效地实现多平台、 多语言的w e b 服务的共享,从而使服务更加标准,更易于访问,也更容易集成。 1 4 论文的组织情况 本文共分七章。 第一章引言。介绍了w e b 服务和p 2 p 的技术概要,讲述了本文研究的目的和意 华北电力大学硕士学位论文 义,并对文章的组织情况进行了说明。 第二章w e b 服务和p 2 p 技术。全面介绍了w e b 服务和p 2 p 的相关知识。包括w e b 服务的概念、体系架构及相关技术和标准,以及p 2 p 的研究背景、定义,最后介绍 了p 2 p 模型的分类。 第三章j x t a 网络平台。主要介绍了j x t a 技术的概念、基础组件和协议等。 第四章基于j x t a 的p 2 pw e b 服务模型。提出了一种新型的w e b 服务网络模型, 并给出了该模型的服务查找策略。 第五章系统模型的试验。利用j x t a 作为p 2 p 网络的平台,s o a p 作为w e b 服务 模型上的消息传输机制,构建了一个基于p 2 p 网络基础之上的s o a p 应用程序。给 出了部分试验细节。 第六章网络模型性能分析。通过与相关工作进行对比和测试,从延迟、空间负 载和鲁棒性方面对系统进行性能测试。并对j x t a 本身提供的安全设施做了简单介 绍。 第七章总结与展望。对本文的工作进行了总结,并对未来的研究方向作了展望。 华北电力大学硕士学位论文 2 1 w e b 服务概述 第二章w e b 服务与p 2 p 技术 2 1 1w e b 服务的概念 w e b 服务是可供i n t e r n e t 用户在线使用的一系列功能的集合,它利用标准的 x m l 传递消息,独立于平台和编程语言,具有自描述性和可发现性,基于i n t e r n e t 的模块化应用,执行特定的商业任务并遵循特定的技术格式。i b m 将其定义为 “s e l f d e s c r i b i n g ,s e l f c o n t a i n e d ,m o d u l a ra p p l i c a t i o n st h a tc a nb em i x e d a n dm a t c h e dw i t ho t h e rw e bs e r v i c e s 。简单来说w e b 服务有以下几个特性: ( 1 ) 使用x m l 作为消息传输机制; ( 2 ) 能通过一个标准的方法查找到该服务; ( 3 ) 独立于编程语言和操作系统; ( 4 ) 多模块之间松散藕合; ( 5 ) 通过公开的a p i 在网络中消费服务。 2 1 2w e b 服务架构 2 1 2 1w e b 服务的角色 从面向应用的角度来说w e b 服务的基本架构由三种简单的角色和三个基本操作 构成1 。w e b 服务基本架构如图2 1 所示。三个参与者分别是服务提供者、服务请 求者和服务注册中心,而3 个基本操作分别为发布、查找和绑定。 w s 图2 1w e b 服务架构 服务提供者将其服务发布到服务注册中心的一个目录上;当服务请求者需要调 4 华北电力大学硕士学位论文 用该服务时,他首先利用服务注册中心提供的目录去搜索该服务,得到如何调用该 服务的信息:然后根据这些信息去调用服务提供者发布的服务。当服务请求者从服 务注册中心得到调用所需服务的信息之后,通信在服务请求者和提供者之间直接进 行,而无须经过服务注册中心。w e b 服务体系使用一系列标准协议实现相关的功能, 使用w s d l ( w e b 服务描述语言,w e bs e r v i c ed e s c r i p t i o nl a n g u a g e ) 来描述服务, 使用u d d i ( 统一描述、发现和集成,u n i v e r s a ld e s c r i p t i o n ,d i s c o v e r y ,i n t e g r a t i o n ) 来发布、查找服务,而s o a p ( 简单对象访问协议,s i m p l eo b j e c ta c c e s sp r o t o c 0 1 ) 被用来执行服务调用。在w e b 服务架构的各模块间以及模块内部,消息以x m l 格式 传递,其原因在于以x m l 格式表示的消息易于阅读和理解,并且x m l 文档具有跨平 台性和松散耦合的结构特点。 2 1 2 2w e b 服务栈 w e b 服务不同于已有的构件对象模型以及相关的对象模型协议。从技术上看, 一个w e b 服务是一个由内容、应用代码、过程逻辑或者这些部分的任意组合所构成 的x m l 对象,并且可以通过任何t c p i p 网络访问,只要符合以下三个方面即可: 使用s o a p 标准集成,使用w s d l 标准进行自描述,使用u d d i 标准在一个公共的或 者私有的目录中注册和发现。 2 0 0 1 年4 月w 3 c 的w e b 服务工作组提出了w e b 服务的三个服务栈,网络功能栈、 描述功能栈和服务检索栈,这些栈形成了发现和调用一个独立的w e b 服务所提供功 能的标准机制的基础口1 1 。 图2 2w e b 服务网络功能栈 华北电力大学硕士学位论文 网络功能栈代表了一个s o a ( 面向服务架构,s e r v i c e o r i e n t e da r c h i t e c t u r e ) 的三种角色中传输消息所需的功能部件。如图2 2 所示,这些部件是指将数据发送 到传输网络,并确保被发送到数据的目的节点能在网络的另一端安全地接收到这些 数据。这个功能栈的底层是网络协议,诸如h t t p 、s m t p 、f t p 、b e e p 之类的协议, 这些协议增加了和应用程序之间的互操作的可能性。这个功能栈规定用s o a p 作为 消息传输的首选协议。也有其它公司如i b m 将s o a p 单独作为x m l b a s e dm e s s a g e 层,而不是将其作为网络功能栈的扩展层。 图2 - 3w e b 服务描述功能栈 当我们部署一个服务时,必须描述该服务的能力,并且使它能被用户发现和调 用。如图2 3 所示,为实现上述目的描述功能栈用x m l 来描述服务的接口和实现, 当前一般采用w s d l 。 目录 检索功能栈 d i r e c t o r y ( u d d i ) d is c o v e r y 判断服务是否是需要的服务 s t a c k i n s p e c ti o n 图2 - 4w e b 服务检索功能栈 为使用某个服务,必须确定这个服务的位罱,在w e b 服务体系结构中,服务检 索必须解决两个问题。第一是需要一个知名的注册簿以便为检索服务提供一个搜索 机制;第二是如何确定选择的服务是所需要的服务。如图2 4 所示,服务检索功能 6 华北电力大学硕士学位论文 栈指定了服务请求者能确定他们需要使用的服务所在的位置,并判断他们所选择的 服务是否是需要的服务的技术。服务描述采用的是u u d i ,服务判断采用w s i l ( w e b 服务判断语言) ,这种标准也称为w s i n s p e c t i o n 。w s i l 是一种x m l 文档的格式, 以简便并可扩展的样式来简化w e b 服务描述的发现和聚合。它与u d d i 规范在作用 域上类似,但w s i l 是一种补充。 2 1 3w e b 服务支撑技术 w e b 服务涉及的最基本的技术规范包括x m l 、s o a p 、w s d l 和u d d i 。s o a p 是调用 w e b 服务的协议,w s d l 描述w e b 服务的格式,u d d i 则是注册、查找和使用w e b 服务 的中枢组织。而s o a p 、w s d l 和u d d i 都建立在x m l 基础之上,x m l 定义了数据交换 和描述的格式。下面分别介绍这些协议及相关的规范。 2 1 3 1x g l 基于x m l 的w e b 服务消息层包括数据表示、数据格式和消息传输协议。x m l 为 信息交换定义了描述和格式恻。 x m l 使用标记来界定内容,允许用户定义任意复杂度的结构,具有良好的扩展 性;它具有自描述性,适合数据交换和共享:x m l 另一个优点是无关性,独立于具体 的平台和厂商,确保了结构化数据的统一。目前x m l 已成为开放环境下描述数据信 息的标准技术,也是w e bs e r v i c e 中信息描述和交换的标准手段。 x m l 使用x m ls c h e m a 作为建模语言,它具有丰富的数据类型,支持类型继承, 能对x m l 文件进行严格的合法性检查。它使用与x m l 完全一致的文法,统一了分析 和处理方式,并且引入了命名空间的概念,解决了可能的名称重复问题。x m ls c h e m a 是w e bs e r v i c e 中协议制定的标准语言,它和x m l 共同构成w e bs e r v i c e 的基石。 2 1 3 2s o a p s o a p 是目前被广泛接受的消息传输协议,基于x m l 的机制。s o a p 是一个远程 过程调用( r p c ) 协议,使用标准的i n t e r n e t 协议进行传输。s o a p 代表了x m l - r p c 的发展,已经被w 3 c 作为一种i n t e r n e t 标准采纳凹1 。鉴于h t t p 协议的流行,通常 认为:s o a p = h t t p + x m l 。 s o a p 由四个部分组成n 0 。1 2 : ( 1 ) s o a p 封装( e n v e l o p ) ,定义了描述消息所包含信息的框架结构,即消息中 包含什么信息、由谁来处理以及是否是必需的或可选的。e n v e l o p e 元素在消息体中 是最上层的x m l 元素,它必须存在,实际上e n v e l o p e 基本上代表了包含s o a p 消息 的x m l 文档。 ( 2 ) s o a p 编码规则( e n c o d i n g rr u l e s ) ,定义了一个串行化机制,用于交换应 7 华北电力大学硕士学位论文 用定义的数据类型的实例。s o a p 编码的类型使用简单的标准类型和复合类型如结 构和数组。 ( 3 ) s o a pr p c 表示( r p cr e p r e s e n t a t i o n ) ,定义了如何表示远程过程调用和 响应。 ( 4 ) s o a p 绑定( b i n d i n g ) 定义如何使用底层传输协议进行s o a p 消息的交换。 s o a p 消息是用x h l 编码的文档,它由封装( e n v e l o p e ) 、消息头( h e a d e r ) 和 消息体( b o d y ) 三个部分组成如图25 所示: 圜目- 盔| 酋口醯蘸目_ 删 图25s o a p 消息 s o a p 消息示例: ( e n u :e n u e l o p ex l m n s :e n u = ”h t t p u w 们o r g 2 0 0 6 h s o a pe n v e l o p e ” e n u :h e a d e r ( n :p r i o r t t g l ( i n :p r i o r l t 9 ( n :e x p i r e s ) 2 a 帖一0 6 2 2 t 1 4 :0 0 :0 0 盱:0 0 ( n :p ie 5 ( n :a l e r t c o n t r 0 1 ) ( e n u :b o d y ) _ ( m :a l e r tx m l n s :胪“h t t p :l l e x a m p l e o r g a l e r t “ p i c ku ph a t 9a ts c h o o la t2 p m m :咕g ,m :a l e r t ) e n u :b o d u ) s o a p 消息能够与不同的底层协议进行绑定,同时可以在很多种消息传输模式中 在r p c 中使用s o a p s o a p 的个设计日标就是要利用x m l 的可扩展性和可伸缔件米包装和变换r p c 华北电力大学硕士学位论文 调用,在使用h t t p 作为s o a p 协议绑定媒介的情况下,一个r p c 调用可以很自然地 映射到一个h t t p 请求,而r p c 响应则可以映射到h t t p 响应。但是使用s o a p 方式 的r p c 并不限于h t t p 协议绑定,也可以绑定其他传输协议。 一个s o a p 调用的示例: s o a p :e n c o d i n g s t 9 l e = h t t p :i i 洲w 3 o r g 2 0 0 6 0 6 s o a p e n c o d i n g n p p l e s 调用的远程方法的名称为“g e t p r i c e ,参数“i t e m 的值是“a p p l e s 。 2 1 3 3w s d l w e b 服务的目标之一是允许应用程序以标准的方式在两个或多个同等的服务之 间进行选择,因为有时应用可以由作为支持网络的服务而实现的构件构造而成,甚 至可以从这些服务中进行动态选择。服务描述层定义了为程序提供足够信息所需的 描述机制,使程序能够根据一定的准则选择服务,如服务的质量、安全性、可靠性 等。 w e b 服务的接口由基于x m l 的w s d l 定义,它提供了应用访问指定的w e b 服务所 必需的全部信息,描述服务提供了什么功能、服务位于何处以及服务如何调用n 引。 w s d l 以x m l 格式描述网络服务,将服务描述为在包含面向过程或面向文档信息 的消息上进行操作的一组端点。操作和消息是抽象描述的,然后绑定到具体的网络 协议和消息格式以定义一个端点。相关的具体端点被组合成为抽象端点( 服务) 。 w s d l 是可扩展的,允许描述任何端点和消息,而不考虑通信使用的消息格式或网络 协议。 w s d l 文档中允许出现的顶级元素: ( 1 ) 类型( t y p e s ) ,使用某种类型系统的数据类型定义的容器。w s d l 并没有引 入新的类型定义语言,而将x m ls c h e m a 作为自己的标准类型系统,并允许通过可 扩展性使用其它的类型定义语言。 ( 2 ) 消息( m e s s a g e ) ,对要传送的数据的一个抽象定义。 ( 3 ) 操作( o p e r a t i o n ) ,对服务支持的动作的抽象描述。 ( 4 ) 端口类型( p o r tt y p e ) ,一个或多个端点支持的操作的一个抽象集合。 ( 5 ) 绑定( b i n d i n g ) ,特定端口类型的具体协议和数据格式规范的绑定。 ( 6 ) 端口( p o r t ) ,一个单独的端点,由一个绑定和一个网络地址组合定义。 ( 7 ) 服务( s e r v i c e ) ,一组相关的端点的集合。 o 华北电力大学硕士学位论文 一个w e b 服务由一组端口定义,而端口由绑定到一个具体协议和数据格式规范 的一组抽象操作和消息定义。操作和消息的抽象是为了使它们可以复用和绑定到不 同的协议和数据格式,如s o a p 、h t t pg e t p o s t 或m i m e ( 多用途互联网邮件扩展, m u l t i p u r p o s ei n t e r n e tm a i le x t e n s i o n s ) 。 在w s d l 中,端点和消息的抽象定义是和它们的具体网络配置和数据格式绑定 相分离的;另外,w s d l 定义了一个公共的绑定机制,用于将特定的协议、数据格式 或结构连接到抽象的消息、操作或端点,这都允许对抽象定义的复用。 2 1 3 4u d di u d d i 是一个公共的注册表,旨在以一种结构化的方式来保存有关各公司及其服 务的信息。通过u d d i ,人们可以发布和发现有关某个公司及其w e b 服务的信息。这 些数据使用标准的分类法进行分类,因此可以按分类来查询信息。最重要的是,u d d i 包含有关公司服务的技术接口的信息。通过一套基于s o a p 的x m la p i 调用,用户 可以在设计时和运行时与u d d i 进行交互以发现技术数据,从而调用和使用这些服 务。通过这种方法,u d d i 可以用作基于w e b 服务的软件系统的基础结构1 。 u d d i 的核心是u d d i 注册中心( r e g i s t r y ) ,注册中心提供的信息由三个部分组 成: ( 1 ) 白页( w h i t ep a g e s ) :包括企业的地址、联系方法和得到公认的识别符。 ( 2 ) 黄页( y e l l o wp a g e s ) :包括标准的行业分类,当前支持的分类法有北美 行业分类系统( n a i c s ) 、通用标准产品和服务代码( u n s p s c ) 、i s 0 3 1 6 6 、标准行业分 类( s i c ) 和g e o w e b 地理分类。 ( 3 ) 绿页( g r e e np a g e s ) :包括企业所提供服务的技术信息。 u d d i 数据模型 u d d i 第一版定义了4 种核心数据模型:b u s i n e s s e n t i ty 、b u s i n e s s s e r v i c e 、 b i n d i n 酊e m p l a t e 和t m o d e l 。而u d d i 第二版在u d d i 第一版的基础上加入了第5 种 核心数据模型:p u b l i s h e r a s s e r t i o n 。这五种数据模型及其关系如图2 - 6 所示。 ( 1 ) b u s i n e s s e n t i t y :表示一个企业实体,是一个占位符。企业是一个或多个 企业服务的一个服务提供者,b u s i n e s s e n t i t y 存储白页与黄页数据。 ( 2 ) b u s i n e s s s e r v i c e :表示一个企业提供的服务,这个企业服务记录是绿页 的实质,因为它含有该企业即某一特定服务的技术描述。 ( 3 ) b i n d i n g t e m p l a t e :如何调用服务的说明,它是一个用于一组t m o d e l 的容 器,即该服务的实际技术描述。更准确地说,一个绑定模板是一个用于 t m o d e li n s t a n c e i n f o 记录的容器,而这些记录又指向t m o d e l 。 ( 4 ) t m o d e l :表示实现该服务的相关技术模型,t m o d e l 记录含有3 种类型字段: l o 华j 匕电力大学硕士学位论文 该服务的名称、该服务的描述及一组指向该万维网服务的那些实际定义的i j r l 指针。 ( 5 ) p u b l is h e r a s s e r t lo n :两个服务发布者的关系,而这种关系由两方或其中 之一来断言。 图2 - 6 五种数据类型的关系 服务发布和发现 服务的发布和发现也就是w s d l 文档的发布和发现,服务发布可以将w s d l 文档 直接发送给服务请求者,也町以通过注册中心来发布给未知的请求者。同样请求者 也是通过直接获得w s d l 文档和查询获得w s d l 文档来发现服务的。当w s d l 服务描 述文档发布到u d d i 注册中心,对于使用者来说,u d d i 注册中心相当于一个存放和 查拽w s d l 服务描述文件的目录服务器。但是w s d l 和u d d i 的数据结构完全不同, 图27 显示了从w s d l 到u d d i 主要的映射关系。 s e r v i c e si m p le m e n t a t i o n l 眄五忑司 r 嘲豳嚼 、由i 磊i 石 h 芰三三三 j _ _ _ 羞 圈27 从w s d l 到u d d i 主要映射关系罔 使用u d d l u d d i 规范包含了对基tw e b 的u d d i 商业注册巾心可以实施的挂套共享操作。 一般来说,程序或程序员通过u d d i 商业注册中心来获得w e b 服务的位置及其技术 华北电力大学硕士学位论文 信息。其中对于程序员来说,是对自己的系统实现准备,以使自己的系统能和那些 w e b 服务实现访问兼容,或是描述自己的w e b 服务从而能让别人使用。从商业层次 上来说,u d d i 商业注册中心可以被用于核查某个合作伙伴是否拥有特定的w e b 服务 的调用接口,或是找出在某行业中能提供某种类型服务的公司,并确定某合作伙伴 的w e b 服务的技术描述及交互时所需的技术细节。 2 2p 2 p 技术概述 2 2 1p 2 p 的研究背景 当前大多数的网络应用都是基于c s 或b s 结构的。这样结构下的应用必须在 网络中设置一个服务器,信息显示集中上传到服务器保存,然后再分别下载。该结 构的明显特点是:内容中心化,系统必须有一个或若干个服务器来提供服务,大量 客户频繁的访问,服务器将成为系统的瓶颈,固然硬件更新能够一定程度缓解这种 矛盾,但不可能满足日益发展的实际要求。 p 2 p 可以理解为对等网络,其实p 2 p 也不是新概念,互联网基本的协议t c p i p 并没有客户端和服务器的概念,所有的设备都是通讯中平等的一端,只是随后由于 网络规模的扩大以及信息量的增加,为了便于分组管理,“客户端服务器 模型才 逐渐成为因特网上占统治地位的计算模型n 鲥。p 2 p 最大特点是将互联网的存储模式 由现在的“内容位于中心”模式转变为“内容位于边缘”模式。在集中式的应用中 进行控制是相对容易的,这一点在一定程度上抑制了分布式潮流的发展。然而随着 互联网的发展,以及b 2 b 商务交易方式的日益流行,全面地分布式计算也就成为一 种商业需求。 2 2 2p 2 p 的定义 p 2 p ( p e e rt op e e r ) 是不同于c s 等传统模式的新通信技术,它的最大的特点 是抛开了应用服务器的束缚,用户之间可以直接通信、共享资源或协同工作。 i n t e l 给出的p 2 p 定义是:通过在系统之间的直接交换实现计算资源和服务的 共享n 们。在这个定义中,所谓的资源和服务包括文件的信息、处理周期、高速存储 器和磁盘存储。 i b m 则给p 2 p 赋予更广阔的定义7 1 ,把它看成是由若干互联协作的计算机构成 的系统并具备如下若干特性:系统依存于边缘化( 非中央式服务器) 设备的主动协 作,每个成员直接从其他成员而不是从服务器的参与中受益;系统中成员同时扮演 服务器与客户端的角色;系统中的用户能够意识到彼此的存在构成一个虚拟或实际 的群体。 1 2 华北电力大学硕士学位论文 还有这样一种解释n 阳,“p 2 p 除了是一种技术,也是一种思想,有着改变整个互 联网基础的潜能思想。“p 2 p 中的p ,应该解释为p e o p l e ,它是无间隔的人与人之 间的交往。刀 总体来说,p 2 p 计算系统是分布式的,有别于集中式的基于服务器的结构。从 传统的观点来看,p 2 p 计算系统中的实体一半同时扮演两种角色:客户机和服务器。 2 2 3p 2 p 结构的特点 2 2 3 1 去中心化 p 2 p 的概念和内涵关键在于系统内各个实体的对等关系,即没有任何一个节点 在逻辑上处于中心的位置,缺少某个节点对整个系统的影响是微乎其微的。而具有 中心节点的系统( 例如c s 结构) 把大部分的职责都放到中心服务器上,该服务器是 系统的核心,如果服务器遭到破坏,系统就陷于瘫痪。c s 系统的脆弱性由此可见 一斑。为了弥补这种缺陷,必须在服务器上采取更加谨慎的保护措施来维持系统的 正常运作,这往往意味着很多的投资。现有的措施有热备份、磁盘阵列、服务器群 集等,这些措施都有一个共同点:让更多的实体来承担相同的责任。这些方法本质 上与p 2 p 网络是一样的,它们是在另一个层面上的去中心化。与有中心服务器的系 统相比,p 2 p 天生就具有这种去中心性,这正是p 2 p 的巨大优势。在p 2 p 系统中, 所有节点处于平等的位置,既是服务的提供者又是服务的消费者。 图2 8 具有中心节点的结构图2 - 9p 2 p 的网络结构 2 2 3 2 动态性 在c s 结构的系统中,应用参与者的角色是事先确定的,在服务提供的生命周 期它们的行为具有很大的可预测性。在这种情况下,服务接口的位置和结构早己为 客户端所知道,使用服务的方式是简单而直接的。p 2 p 应用中的节点可能会频繁的 进入或者离开网络,所以节点之间的关系就更加具有动态性,处理的方式也要求更 加灵活。节点必须能够动态发现可使用的服务,并且当某个服务不再可获得时能灵 华北电力大学硕士学位论文 活寻找可替代的服务,或者同时利用多个冗余的服务提供者来保证服务的连贯。可 见在p 2 p 环境下q o s 的保证是一个更加复杂的问题,一方面是网络上存在难以计数 的资源提供者,另一方面对于每个提供服务的节点都难以预测它在未来一段时间的 动作:继续提供服务或者离开。 图2 - 1 0p 2 p 网络是动态的,节点行为难以预测 2 2 3 3 可扩展性 对等网络的规模随着节点数量的增长而增长,新节点的加入会给系统增加新的 资源,这种可扩展性几乎是无限的,理论上限是现有的i n t e r n e t 的规模。 2 2 4p 2 p 模型分类 一般来说,p 2 p 系统分为集中式p 2 p 、纯p 2 p 、结构化p 2 p 、混合p 2 p 四种结构, 这些结构具有各自不同的特点。 2 2 4 1 集中式p 2 p 结构 集中式p 2 p 结构有一个中心服务器来负责记录共享信息以及回答对这些信息的 查询n9 1 。这种结构具有中心化的特点,但是它不同于传统意义上的c s 模式。传统 意义上的c s 模式采用的是一种垄断的手段,所有资料都存放在服务器上,客户机 只能被动地从服务器上读取信息,并且客户机之间不具有交互能力。而集中式p 2 p 结构则是,所有网上提供的资料都分别存放在提供该资料的客户机上,服务器上只 保留索引信息,此外服务器与对等实体以及对等实体之间都具有交互能力。 集中式p 2 p 结构如图2 - 1 1 所示,目录服务器保存系统中所有对象的对象名和 指针列表。当用户需要访问该对象时,首先通过对象名查询目录服务器,目录服务 器返回该对象的指针,用户通过该指针定位并访问对象。 集中式的p 2 p 结构的优点是:简单、容易实现。采用这种结构的代表性软件是 n a p s t e r 。不过集中式结构的缺点也很明显:中央目录服务器是潜在的性能瓶颈。 当系统规模增大、对象数量增多时,目录服务器的负载会增大,对象定位操作的性 能会降低。集中式目录服务器的设置阻碍了系统向大规模扩展。 1 4 华北电力大学硕士学位论

温馨提示

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

评论

0/150

提交评论