




已阅读5页,还剩54页未读, 继续免费阅读
(计算机软件与理论专业论文)基于p2p的分布式工作流的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浙江大学硕上学位论文y ? , 0 0 3 3 7 摘要 p 2 p 即p e e r t op e e r ,p e e f 在英语里有“( 地位、能力等) 同等者”、“同事” 和“伙伴”等意义,因此,p 2 p 也就可以称为对等联网。p 2 p 引导网络计算模式 从集中式向分布式偏移,也就是说网络应用的核心从中央服务器向网络边缘的终 端设备扩散:服务器到服务器、服务器到p c 机、p c 机到p c 机所有网络节 点上的设备都可以建立p 2 p 对话。这使人们在i n t e r n e t 上的共享行为被提高到 了一个更高的层次,使人们以更主动深刻的方式参与剑网络中去。 工作流管理系统是用来描述、建模、执行、监控和协作由多人参与的结构化 或半结构化的工作流程,它协调组织机构内群体和业务流程之间的通信、交互、 理解和同步。进入2 0 世纪9 0 年代,随着计算机与网络技术的迅速发展,现代企 业信息系统的分布式、异构性和自治性的特征越来越显著,相应的企业信息资源 也分布在异构的计算机环境中,信息源之间的连接表现出松散耦合的特点,这就 使得工作流技术必然要走向一个新的发展阶段分布式处理阶段。存这样的环 境下,本文的作者设计了一种基于p 2 p 的分布式工作流平台,简称p d w p 。 本文主要讨论了p d w p 的设计与实现,全文共分为五章。第一章介绍了论文 的提出和主要研究内容以及全文的组织结构;第二章介绍了几种现有的分布式工 作流平台,对其中几种信息交换技术作了较为详细的分析,并介绍了p 2 p 领域 比较成功的技术平台( j x t a ) ;第三章介绍了对等网络平台的不同模式,构架了 p d w p 的网络架构和体系结构,完成了工作流平台的功能设计;第四章介绍了 p d w p 的实现,包括基于j x t a 的p 2 p 网络实现和基于消息通信机制的中间层实 现;第五章对全文所做的工作做一个总结,分析了p d w p 的优劣,并提出进一步 的展望。 关键词:对等网络分布式工作流消息j x r a 浙江大学硕士学位论义 a b s t r a c t p e e rt op e e rn e t w o r kd i r e c t st h en e t w o r kc o m p u t i n gf r o mc e n t r a l i z e dm o d e lt o d i s t r i b u t e dm o d e l ,i no t h e rw o r d s ,t h ek e r n e lo fn e t w o r ka p p l i c a t i o ni sd i s t r i b u t e dt o t h et e m a i n a le q u i p m e n tf r o mt h ec e n t r a ls e r v e r :f ? o ms e r v e rt os e r v e r 、f r o ms e r v e rt o p c 、f r o mp ct op c ,a l lt h en o d e sc a ns e tu pp e e rt op e e rc o m m u n i c a t i o n t h i s m a k e st h eb e h a v i o ro f s h a r i n g b ed e v e l o p e dt oa h i g h e rl e v e l ,m a k e sp e o p l ej o i ni nt h e n e t w o r km o r e a c t i v e l y w o r k f l o wm a n a g es y s t e mi su s e dt od e s c r i b e ,c o n s t r u c t ,e x e c u t e ,m o n i t o ra n d c o l l a b o r a t es t r u c t u r e do rh a l f - s t r u c t u r e dw o r kf l o w s 、i th a r m o n i z e sc o m m u n i c a t i o n , c o m p r e h e n s i o na n ds y n c h r o n i z a t i o nb e t w e e nd i f f e r e n to r g a n i z a t i o n sa n do p e r a t i o n s w i t ht h e d e v e l o p m e n to fc o m p u t e ra n dn e t w o r k s i n c e19 9 0 s ,m o d e me n t e r p r i s e i n f o r m a t i o ns y s t e mb e c o m e sm o r ea n dm o r ed i s t r i b u t e da n ds e l f - r u l e d c o r r e l a t i v e e n t e r p r i s e r e s o u r c ee x i s t si nm o r ed i s t r i b u t e d c i r c u m s t a n c e ,t h e l i n kb e t w e e n i n f o r m a t i o n sb e c o m e sl o o s e na c c o r d i n gt ot h i s ,t h ed i s t r i b u t e dw o r k f l o wb e c o m e sa r e s e a r c hf o c u s u n d e rt h i sc i r c u m s t a n c e ,t h ea u t h o ro ft h i sp a p e rd e s i g n sap 2 p b a s e d d i s t r i b u t e dw o r k f l o wp l a t f o r m ,f o rs h o r tp d w r t h i sp a p e rd i s c u s s e st h ed e s i g na n di m p l e m e n t a t i o no fp d w e i tc o n c l u d e sf i v e c h a p t e r s c h a p t e ro n ei sw h yt h i sp a p e rs h o u l db ew r i t t e n a n dt h ec o n t e n ta n d o r g a n i z a t i o no ft h ew h o l ep a p e r c h a p t e rt w oi n t r o d u c e st h r e ee x i s t i n gd i s t r i b u t e d w o r k f l o wp l a t f o r m sa n da n a l y s e st h ed i f f e r e n ti n f o r m a t i o ne x c h a n g et e c h n o l o g i e s , t h e nj x t a ,as u c c e s s f u lp l a t f o r mi np 2 pa r e a ,i si n t r o d u c e d c h a p t e rt h r e ec o m p a r e s s e v e r a lp 2 pm o d e l s ,t h e nd e s i g n st h en e t w o r ka n ds y s t e ma r c h i t e c t u r e so f p d w p , t h e d e s i g no f f u n c t i o n a lm o d u l e so fw o r k f l o wi sa l s os h o w e d c h a p t e rf o u ri n t r o d u c e st h e i m p l e m e n t a t i o no fp d w p , m a i n l yi n c l u d i n gt h ep 2 p n e t w o r kb a s e do nj x t aa n dt h e m i d d l ec o m m u n i c a t i o ni n t e r f a c eb a s e do nm e s s a g em e c h a n i s m c h a p t e rf i v e ,n a m e l y t h el a s tc h a p t e r , s u m m a r i z e st h ew h o l e p a p e r a n d p r o s p e c t st h ef u t u r es t u d y k e y w o r d s :p 2 pn e t w o r k ,d i s t r i b u t e d ,w o r k f l o w , m e s s a g e ,j x t a 2 浙江大学l 面士学位论文 第一章绪论 日前的网络大多数是以b ( b r o w e r ) s ( s e r v e r ) 或c ( c l i e n t ) s ( s e r v e r ) 结构的应用模式为主的,采用的是集中式架构,这样的应用必须在网络内设置一 个中央服务器,信息只有通过服务器才可以传递。信息或是先集中卜传到服务器 保存,然后再分别下载,或是信息按服务器上专有规则处理后才呵在网络二传递 流动。此方式要在互联网上设置拥有强大处理能力和大带宽的高性能计算机,配 合高档的服务器软件,再将大量的数据集中存放在上面,并且要安装多样化的服 务软件,在集中处理数据的同时可以对互联网上其他p c 进行服务,提供或接收 数据,提供处理能力及其他应用。 p 2 p 即p e e r t op e e r ,称为点对点连接或列等网络,是一种独特的互联网络技 术,它弱化了服务器和客户机的概念,在p 2 p 网络中,每台节点计算机都拥有 同等的能力,负有相同的责任,节点之间可以直接交换资源和服务。 s c 方式造成互联网络上的集中,无论信息资源还是成本资源均向同方向 集中,这样的模式符合一对多、强对弱的社会关系形式,如政府对个人、对企业, 大企业对小企业,学校对学生,企业对职二 等等关系。所以s c 方式是符合市场 需求的。p 2 p 方式将导致信息数量、成本资源都向互联网各点均匀分布,也就是 所谓“边缘化”的趋势。此模式符合“一对”的特点,以及彼此相当的社会关 系形式,如个人对个人,规模相当的企业之间,等等,这也是符合市场需求的。 这两种方式会长期| 共存,各有优劣。 1 1p 2 p 网络的历史和发展现状 p 2 p 起源于最初的联网通信方式,如在建筑物内p c 通过局域网互联,不同 建筑物间通过m o d e m 远程拨号互联等。p 2 p 的发展进程大致可以分为三个阶段: 局部个人应用阶段、全球个人应用阶段和企业级应用阶段。 早期的p 2 p 主要是局部个人应用。出现于上世纪7 0 年代末8 0 年代初的 u s e n e t 和f i d o n e t 是早期的p 2 p 系统。u s e n e t 产生于1 9 7 9 年,是种分 布式系统,能够为各个地方提供新闻组。u s e n e t 最早的雏形由是两名研究生 t o mt r u s c o t t 和j i me l l i s 实现的,主要用于在艮途费用比较低的夜间通过电话 线批量传送文件。早期p 2 p 应用另一个杰出代表是f i d o n e t 。它是t o mj e n n i n g s 在1 9 8 4 年创建的,也是一个分散、分布的信息交换系统,主要用来让不同b b s 系统中的用户们互相交换信息。这种符合人们需要的技术,迅速成长起来,并一 直沿用到今天。 浙江大学硕士学位论文 p 2 p 首次被全球范围内广泛的关注主要是由于n a p s t e r 以及i c q 类软件的出 现。拥有n a p s t e r 及i c q 类软件的p c 可以选择同样拥有此类软件的另一p c 形 成互联,双力共享资源,协同完成某种行动。而拥有同p 2 p 软件的设备和用 户,还可以形成个为其自己所有的在互联网上的p 2 p 专用网。这阶段的代 表性研发产品和技术有: ( 1 ) i c q 类的即时通信软件。两个或多个用户互相使用文字、语音或文件进 行交流,快速、直接,易于同非p c 网络设备( 如p d a 、手机) 通信,而且它不 依赖设备即可辨别用户。由于利用p 2 p 技术可以弱化甚至摆脱对中央服务器的 依赖,这样的通信更接近非互联网通信模式。 ( 2 ) f a r s i t e ( m i c r o s o f t ) ,o c e a ns t o r e 类数据存储软件。用于在网络上将存储 对象分散化存放,而不像现在放于专用服务器。这样减轻了服务器负担,增a n t 数据的可靠性和传输速度。 ( 3 ) n a p s t e r 类软件。实现数据共享,使用者可以直接从任意一台安装同类软 件的p c 上下载及上载文件,而不是从服务器。用户可以检索、复制共享的文件。 软件自动发现最新的文件列表,发布者无需担心发布的问题。 ( 4 ) n f r a s e a r c h 、p o i n t e r a 类数据搜索及查询软件。用来在p 2 p 网中完成信息 检索。一旦形成p 2 p 专用网,其上的数据搜索与现在互联网中数据存在中央服 务器的情况有所不同,必须要考虑动态地将当前p 2 p 网络中各个p e e r 的内容进 行收集,并且要有效地向用户传递。p 2 p 网用户中相当数量在联网方式上不同, 专线、拨号、宽带、窄带都会碰到;联网的时间可以一个是2 4 小时在线,而另 一个完全可能仅联机几十分钟;使用的操作系统也不一定相同。 p 2 p 软件使用户的计算机在互联网上由单纯的w e b 信息的被动消费者变成 积极的资源,而将网络上通常闲置或拥有巨大空白磁盘空间的众多强大计算机连 接起来。这些技术特性促使p 2 p 应用迈向企业级。利用企业p c 机的空闲的磁盘 空间和c p u 周期,可确保使其i t 投资更灵活并带来更多的回报。企业p 2 p 应用 主要侧重于这几个方面: ( 1 ) 企业协同 企业协同包括两大方面,一是企业内部的员工与员工、部门与部门、员工与 部门之间的协同,无论部门及员工处在何种地理位置,只要拥有网络,双方存在 信息沟通的要求,就可以利用p 2 p 软件协调双方的行为。信息的种类及行为目 的可以是多种多样的,如日程安排、通知发布、单据的审批、文件传阅和分发、 方案的评比( 表决) 、计划协调等等这些可以通过电子文件表达的信息均可以通 过软件来表达,并以此将使用者联系在一起。p 2 p 应用更适用这当中更多需要用 户交互的部分,如计划协调、日程安排等。= 是企业与企业之间的行为协同,这 种协同的互动的多样性和复杂性要高于企业内部的协同。从简单的会议日程安 浙江人学硕士学位论文 排、公文往来,到报价、询价订货系统、订单跟踪、电子化交易。 ( 2 ) 企业门户 新型企业门户不再简单地以一个网站来实现,它不但综合了为企、啦内部员工 或部门的服务,还可以为企业伙伴及用户服务,同时也是企业管理者了解企业运 行状念,调控企业运行的管理工具。企业各个部分的运行情况均可以通过它传递 给允许接触到相关信息的使用者。管理者可以通过门户掌握企业的动态,调控企 业的运行,真达下级领导建立沟通。而企业内部的员工与企业外部的伙伴或客户 均可通过这一平台找到相关的人( 工作人员) ,建立起这样那样的信息交流通道, 实现不同的协作目标。这将综合s c 技术和p 2 p 技术,p 2 p 部分将实现信息定向 推送,实时沟通和数据互动。 ( 3 ) p 2 p 群集和v p n 构建于互联网之上的p 2 p 应用不再简单地限于两个点,完全可以扩展到多 点的群集,形成互联网中的一个虚拟的子网,构成一个精简的v p n 。这样一来, 通过相对简单的,仅仅是对p 2 p 用户端软件的操作,用户就可以主动地选择不 同的v p n 并加入,同时也就使得了不同的v p n 同时存在于互联网之中。个性化、 专业化同时又是开放( 基于互联网) 的v p n 的出现,使信息的集中和流动更接 近现实社会的信息流动方式,更易于为人们所接受。l v , 女n 喜爱音乐的人们建立了 自己的音乐v p n ,擅长编程的设计师可以建立自己的程序员v p n ,而对于企业, 行业化、渠道化的组织终于有了一个在互联网上安家的便捷途径。可以预计,行 业化的目录服务、信息服务将通过此方式迅速涌现,为企业电子商务打下一个良 好基础。 f 4 1 人机远程互动和机机互动 远程监控和调试已经运用在许多工业场合,甚至也出现了些通过网站方式 运行的方案,但网站方式在速度和交互性方面的缺陷使得用户无法接受。p 2 p 方 案为这方面的应用开辟了新的天地,利用它,一个锅炉厂商可以通过互联网帮助 其客户调控其锅炉的运行状态,而我们也可以在回家的路上用手机将家中的空调 提前打开。 ( 5 ) 宽带网及无线移动网应用 当带宽达到数据流要求的容量,如实时音频、实时视频,人们期待已久的多 种网络应用就会呈现在面前。而特别能满足交互需要的p 2 p 技术更有一块施展 的天地,电话会议、视频会议、远程教育、培训、安装调试等等都将为企业带来 p 2 p 技术的新应用。实际七i c q 作为p 2 p 技术已经开始应用在手机短信上。 浙江大学硕十学位论文 1 2 分布式工作流的发展现状 当今社会,商业竞争日趋激烈,许多公司和组织机构为了适应迅速变化的商 业环境,它们不得不利用信息技术以支持实际的业务流程处理,这样就诞生了工 作流管理系统。工作流管理系统起源于七f - 年代,中问经过了起起落落的发展过 程,进入九十年代,由于i n t e m e t 的迅速发展,各个企业纷纷建立自己的分布式 计算环境以使日常的业务流程实现自动化,工作流技术引起了研究和开发人员的 广泛重视。另一方面,工作流技术和计算机支持的洳同工作c s c w ( c o m p u t e r s u p p o r t e dc o o p e r a t i v ew o r k ) 、业务流程重组b p r ( b u s i n e s s p r o c e s sr e e n g i n e e r i n g1 以及其他技术如面向对象、计算机网络和分布式处理技术密切结合在一起。经过 了多年的研究开发,许多具有工作流管理功能的产品和原型系统业已问世,如 a c t i o n 技术公司的a c t i o n w o r k f l o w 系统,i b m 的f l o w m a r k ,l o t u s 公司的l o m s n o t e s ,x e r o x 公司的i n c o n c e r t 等等。 工作流管理系统是用来描述、建模、执行、监控和协作由多人参与的结构化 或半结构化的工作流程,它协调组织机构内群体和业务流程之间的通信、交互、 理解和同步。一个工作流管理系统由两个基本模块组成:业务流程建模模块和工 作流执行模块,它也对应着先后两个不同阶段。在业务流程建模阶段,工作流管 理人员对现实中的业务处理流程进行分析、建模、仿真,然后用一种形式化的、 计算机可处理的数据结构表示,这神表示称为过程定义或过程模型。在工作流执 行阶段,工作流执行服务创建工作流引擎来管理、控制和调度工作流各个活动步 骤的执行。 在工作流领域,早期的目标是研究和开发功能强大的一1 :作流管理系统,然而, 随着越来越多的公司开发出不同类型的工作流产品,实现这些工作流产品之间互 连和互操作的要求逐渐强烈。因此,研究的重点逐渐转移到采用某种标准以使工 作流管理系统具有良好的可靠性、可扩展性、互操作性和可重用性。1 9 9 4 年工 作流管理联盟w f m c ( w o r k f l o wm a n a g e m e n tc o a l i t i o n ) 颁布了:【作流参考模型, 这个参考模型给出了工作流系统的功能模型和不同部件的接口。 进入2 0 世纪9 0 年代,随着计算机与网络技术的迅速发展,特别是在i n t e m e t 应用日益普及的情况下,现代企业信息系统的分布式、异构性和自治性的特征越 来越显著,相应的企业信息资源也分布在异构的计算机环境中,信息源之间的连 接表现出松散耦合的特点。在这样的环境下要完成不同应用系统的集成、不同组 织人员的协作并最终达到实现经营过程运作的自动化与高效率,工作流技术必然 要走向一个新的发展阶段分布式处理阶段。 从技术复杂性与实现的先后顺序上,工作流管理系统的分布可以分为以下兰 个层次: 浙江大学硕士学位论文 ( 1 )工作流系统体系结构的分布 所谓j 【:作流管理系统体系结构的分布是指从系统的层次上将工作流管理 系统看成是一组相互协作的部分构成的。这些组成部分按照其完成的不同功 能独立自成一体,不同的部分之间通过标准的互操作接口进行连接。w f m c 在规范文档中提出了标准的工作流管理系统体系结构,这一体系结构充分体 现了这种分布性,它将工作流管理系统划分为由过程定义工具、工作流管理 工具、工作流机、客户端应用和其他应用等几部分组成,这些不同的组成部 分之间通过w f m c 定义的五类互操作接口进行连接。这些接口用来实现同一 个工作流管理系统的不同组成部分之间以及不同工作流管理系统之问的互操 作与集成。尽管不同的模块可以采用不同的组织方法、在不同的软硬件平台 上执行,但这种整体结构上的分布性是相似的,这也正体现了工作流系统对 客观环境的适应性。软件模块间的分布协作的本质是实现人的分布与协作。 ( 2 )工作流机的分布式执行 工作流机是工作流管理系统提供执行服务的核心模块,它的分布是在系统 体系结构分布的基础上所实现的更高层次的分布。由于工作流机直接负责过 程实例的解释和执行,它的性能将直接影响到整个系统的运转效率。在集中 式工作流机的情况下,是由一个工作流机来控制所有计算机上活动的执行, 这种集中式的工作流机处理方式在系统的可靠性、可扩展性、实用性以及吞 吐量等方面都不能满足企业执行大规模复杂应用的需求。分布式工作流机是 指采用一组分布在不同节点上的工作流机来共同协作完成对整个工作流实例 的执行,每个工作流机完成其中一部分实例的执行,不同的工作流机之间通 过可靠的通信机制实现协作。通过分布在不同网络节点上的多个工作流机协 作来运行工作流过程可以明显改善集中式工作流机的性能瓶颈问题。 ( 3 )工作流模型的分布式定义与柔性执行 工作流模型的分布是指在一个分布的环境下由参与人员协作完成工作流 模型的定义。这完全是相对于集中式的工作流定义而言的。在集中式工作流 定义方式中,工作流模型的建立一般采用由顶向下的递阶建模方法,工作流 模型由工作流定义人员采用一个:亡作流定义工作,按照逐步分解、逐步细化 的方法完成。完成这项定义工作的前提条件是这个人员熟悉全部的企业业务 过程,并且这些业务过程对它们都是开放的;在组织机构上。所有这些业务 过程都在一个统一的组织结构管理下。这些前提条件对于一个企业而言足完 全能够成立的。但是如果所建立的工作流模型描述的不是一个组织结构下的 流程,比如描述一个虚拟企业结构下的涉及多个合作伙伴企业的产品设计制 造时,上述前提条件就不一定成立。首先,要将这些伙伴企业的相关业务过 程全面了解清楚是一件费时又费力的工作,而且一般来说,一个企业的业务 浙江大学硕士学位论文 流程在很大程度上是属于一个企业的商业秘密,它不会因为加入了一个战略 的动态联盟而全部对外丌放,另外由于不在同一个组织结构的管理下,各个 伙伴单位处于一种协作的对等关系,所以建立一个全局的工作流模型也不十 分必要,因为没有任何一个组织能够对整个流程进行管理。在这种情况下, 比较可能的实现方法就是由不同的伙伴企业各自完成其内部流程模型的建 立,这些内部模型对外公开其交互接口,以便实现不同企业工作流模型之间 的连接。这些所建立的工作流模型就不完全是一个自顶向下的分解过程,而 是由底向上和自顼向下分解两种方法的组合。自顶向下的分解过程完成整个 跨企业流程的分解,在各个伙伴企业完成了其内部流程模型建模后,采用由 底向上的综合方法进行模型的匹配和连接,从而形成整个的工作流模型。这 些形成的工作流模型就是一个典型的分布式模型,因为大家共同了解的,或 者共同承诺的是模型之间的交互接口,不同部分的模型细节属于企业的商业 秘密,由各个企业分别进行维护。 工作流模型的柔性执行是与工作流模型分布密切相关的另外一个问题。 在目前的系统中,工作流建模工具是用户建立工作流模型的唯一工具,工作 流要想运行,必须先由建模人员通过专用的建模工具来定义工作流模型,即 由用户完成集中式的工作流模型定义。这种定义专提交专运行的方式大大限 制了工作流系统在企业中的实际应用,因为企业中存在着大量临时决定的、 非结构化的经营过程,他们往往需要尽可能迅速地付诸实施,这样执行前的 集中式定义就成为一种低效的过程。另外,在集中式的模型定义方式下,如 果用户想对某一已经提交的工作流实例中的活动做出及时的修改,也是一件 很困难的事情。这导致:【作流系统运行时的柔性大大降低,其根源就在于模 型定义的集中化、模型定义与实例运行这两个阶段的严格分离。工作流定义 的分布就是把一部分的工作流定义功能加入到运行时的客户端应用中,以使 处于执行阶段的用户可以自己定义后续的活动,实现“边定义一边执行”的 工作流运行方式。这样,工作流执行服务就可以被每一个有定义权限的用户 随时使用,最大限度地提高了系统的柔性与效率。 1 3 本文的研究内容 本人在攻读硕士研究生期间参与了多个科研项目的设计与开发,在研发企业 电子商务平台过程时,在工作流引擎的设计和开发时提出了一种基于p 2 p 的分 布式工作流平台( p 2 p b a s e dd i s t r i b u t e dw o r k f l o wp l a t f o r m ) ,简称p d w p 。本文 的目标是:面向仓业工作流的未来应用,应用p 2 p 网络技术,构建分布式工作 流平台,从而更好的适应企业信息的松散耦合的特点。 浙江大学碗上学位论文 本文主要包括以f 内容: 一综述了p 2 p 技术和分布式平台的历史和发展现状; - 介绍了几种现有的分布式】:作流平台,并对其中儿种信息交换技术作了 较为详细的分析,并介绍了p 2 p 领域比较成功的技术平台( j x t a ) ; 构架了基于p 2 p 的分布式工作流平台的网络架构和体系结构,并应用消 息通信机制,实现了中间层信息交换; _ 总结了基于p 2 p 的分布式工作流平台的优劣,并展望了它的发展前景。 浙江火学硕士学位论文 第二章技术背景 2 1 j x t a ( p 2 p 的应用技术) p 2 p 技术不仅是为了通过网络促进人与人之问的交流,还是推动连接在网络 上的设备相互通信的技术。它是一项重要的网络计算技术,对于目前占绝对主流 的c s 计算方式以及基于w e b 的架构都是很好的补充。 如今,w e bs e r v i c e 成为了软件发展的共同模式,从m i c r o s o f t 、i b m 、h p 、 s u n 等老将到o r a c l e 、b e a 等新贵,都轰轰烈烈的踏上了征程,从n e t 、e s e r v i c e 、 d y n a m i c e c o l t l l i l e r c e 到o n e ,“八仙过海,各显神通”。眼下微软磨刀霍霍,带 着护照( p a s s p o r t ) 和信差( m e s s e n g e r ) 进入了p 2 p 领域,并且积极拓展为新的服务 渠道。i n t e l 也成立的专门的p 2 p 研究部门,准备更大程度的投入这个领域。s u n 当然看到了其中的技术趋势和商业机会,j x t a 就是它继j a v a 、j i n i 之后的又一 重要举措。 不久前,s u n 微系统公司公开了旨在建立p 2 p ( p e e rt op e e r ) 通用技术基础的 j x f a 计划。j x t a 是单词j u x t a p o s e 的缩写,它是项目创始人、s u n 首席科学家 b i l lj o y 二十多年酝酿的结晶,j x t a 技术是网络编程和计算的平台,用以解决现 代分布计算尤其是点对点( p 2 p ) 计算中出现的问题。j x t a 研究项目,将提供使用 户更便捷地访问连接在互联网上的个人电脑资源的新框架,从而进一步拓展互联 网的空间。 对等( p 2 p ) 网络与传统的客户机服务器或多层服务器网络不同,对等网络 中的对等枫是彼此直接通信的。这种通信无需依赖集中式服务器或资源就可完 成。在p 2 p 网络中,通过对等机之间的交瓦操作就可以完成 :作,共享信息。 通过创建有潜力展示非常高的可用性和容错能力的计算资源网络,p 2 p 体系结构 使真正的分布式计算成为可能。传统的客户机n 务器和多层次体系结构已经是 、界的识途老马,而采用p 2 p 体系结构的系统则还只是初生牛犊。j x t a 工程 是s u n 为了向构建跨平台、跨操作系统( o s ) 和跨编程语言的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 d a 、手机和其他连接的设备。 2 1 1j x t a 的设计理念 j x t aj := 程的组件是认真的设计分工的产物。它们为泛型p 2 p 网络提供最 小需求,去除了所有特定于策略的逻辑和组件。这样,就仅剩下几乎所有的应用 程序都能使用的构件要素,不考虑目标用户和特定实现。j x t a 核心的一个主要 任务就是确保这种普遍适用性仍然是真实的。换句话说,j x t a 组件没有强加一 些不必要的策略,也没有硬性规定特定的应用操作模型,使得简单地构造p 2 p 应 用成为可能,也更方便。 j x t a 架构可以分为三个层面:j x t a 核心层、j x t a 业务层和j x t a 应用层。 j x t a 核心层提供了p 2 p 业务和应用的核心支持。在多平台、安全的运行环 境中,提供了对等组( p e e rg r o u p s ) 、对等管道( p e e rp i p e s ) 和对等监视( p e e r m o n i t o r i n g ) 等机制。 j x t a 业务层扩展了核心层的功能,是应用的开发工具。在该层提供的机制 包括搜索、索引、代码缓存等。 j x t a 应用层建立在前面两个层次之上,建立对等( p e e r ) 的业务和应用。通过 核心和对等业务层建立的对等应用包括直接连接买卖方的p 2 p 拍卖等。例如 s e t i h o m e 等资源共享的应用也可以更快更方便的建立。及时消息、电子邮件、 日历等服务都可以在对等组内实现。 j x t a 具备如下突出特性: ( 1 ) j x t a 工程对j a v a 平台的独立性 虽然s u n 已经为j x t a 提供了初步的j a v a 语言实现,但令人惊讶的是, j x t a 工程既不特定于j a v a 编程语言,也不特定于j a v a 平台。换句话说,任 何人都可以在任何硬件平台上,用任何操作系统、任何编程语言实现基于j x t a 的网络。添加了这种j x t a 的传输不可知特性,使用者就有了一个准备着交互 操作的p 2 p 基础构造。 ( 2 ) 互操作性作为一个设计选项 有些人或许会怀疑像j x t a 那样普遍适应的规范的生存能力。j x t a 系统 可以设计成具有互操作性的,但没有硬性的规则说它们必须以任何有用的形式具 备互操作性。换句话说,一个仅仅表面上满足最小指定的互操作性需求的、不以 任何有意义的方式与他人进行交互操作的j x t a 应用程序仍然是符合j x t a 规范的。然而,可阻预见,p 2 p 应用和服务病毒蔓延般的增长速度将迫使厂商把 互操作性作为他们产品的一个主要特性。这一设计决策的结果就交由开放市场的 风雨去检验吧。 浙江大学碗士学位论文 ( 3 ) 在其核心处使用x m l j x t a 目前使用x m 。作为消息和广告的格式,这对于使j x t a 具有竹一操 作性很有帮助。因为x m l 技术的简单性和普遍町访问性,软件几乎可以创建 在任何平台上以生成并解析j x t a 消息。 2 1 2j x t a 核心构件 构成j x t a 系统的组件与能在很多p 2 p 网络实现中识别出来的组件完全一一 样主要包括: 对等机和对等组 服务 管道 消息 广告 对等机和对等组 毫无疑问,对等网络是由彼此相互通信的对等机组成的。从根本e 说,整个 连结着的宇宙就是一个大型p 2 p 系统。但由于目前连通性和可用带宽的限制, 把整个因特网当作一个巨型p 2 p 网络来使用是不切实际的。相反,一些划分是 必要的。 物理网络的逻辑划分产生了对等机的工作组,p 2 p 行话称之为对等组。对等 组成员资格的交迭没有任何约束;换句话说,任何对等机有必要属于几个对等组, 就可以属于几个对等组。j x t a 规范并没有规定或推荐组织对等组的合适方式。 在j x t a 网络中,对等组就是共享资源和服务的对等机的集合。如果这个规范 把对等组限制为例如局域网或者甚至是广域网的一个子集,那么很多要求组成员 资格超出这些物理限制的新应用程序的可能性将一概被排除。与j x t a 的设计 理念一致,对等组被规定为尽可能不受限制、尽可能普遍适应。 对等组的存在也要求一些维护成员资格的手段。j x t a 规范又次只规定了 维护组成员资格的最小需求,而没有指示该怎样维护。这种组成员资格服务只是 核心j x t a 服务的一部分,但它可以接受很多种形式,例如,它可以是数据库 或目录服务,还可以是基于集中式或分布式实现的。 服务 对等组内的对等机可以共享使用j x t a 服务。事实上,对等机加入一个组 可能主要是为了使用该组内可用的服务。称为核心服务的一组服务对j x t a 网 络的基本运转是必不可少的。表2 1 展示了j x t a 规范中包含的核心服务。 浙江丈学硕士学位论文 服务名称描述 管道对等机之问通信的主要方式;为信息传输提供单向、异步的管道的抽象。 成员资格判断哪个对等机属于哪个对等组;处埋对镣组内对等机的加入和退出。 一种安全性服务,用于控制对对等组内服务和资源的访问:对等组的一种 访问 安全性管理器。 发现对等机能用来发现对方、其它对等组的存在、管道、服务等等的一种方式。 解析器允许对等机通过引用( j x l a 行话称之为广告) 间接地引用对方,对等组、 ( r e s o l v e r )管道或服务;在运行期间,解析器把引用捆绑到实现上。 表2 1 j x t a 工程最初的参考实现不提供上面列出的五项之外的任何服务。甚至核 心服务中的一些服务,例如处理安全性的访问服务,也只是实现了非常基础的方 面。现行的j x t a 社区正在为这些服务中的大多数充实细节,同时也在定义和 实现对对等组或许有益的新服务( 一般地或特定地) 。例如,该社区慝前正在进 行的新服务包括: 监视和计量服务 - 匿名的、安全的金融交易付款服务 - w e b 内容和服务的分布式搜索服务 在j x t a1 0 规范中,一个运行中的服务实例总是和一个对等机联系在一起 ( 您可以把它想象成是由一个对等“服务器”主管的) 。在一个对等组内,只能 有一个服务实例和指定的对等机联系在一起。这种类型的服务被视为对等服务; 如果主管该对等服务的对等机当机了,那么将无法获得该服务。另一方面,同一 服务的多个实例被冗余地安装在一个对等组内的多个对等机上,这被称为对等组 服务。对等组服务是j x t a 网络的高可用性和容错性的关键。j x t a 应用的实 现者可以自由地把任意j x t a 服务作为对等服务或对等组服务进行安装。管道 服务,即为对等通信提供逻辑管道抽象的核心j x t a 服务,常常被作为对等组 服务来实现,以确保其总是可用。 管道 正如j x t a 规范定义,在对等机之间传输数据、文件、信息、代码或多媒 体内容的一嚼中方式是通过逻辑管道。j x t a 管道用于在对等枫之间发送消息( 可 带任意内容) 。 浙江人学硕士学位论文 个管道实例,从逻辑上讲,是对等组内的一个资源。管道实例的实际实现通常 情况下是通过管道服务完成的。与传统( 类似u n i x 的) 的系统不同,j x t a 管 道是单向的、异步的。需要双向通信的两个对等机将不得小创建两个独立的管道 实例。也跟传统机制如u n i x 管道或t c p i p 套接字0 i 问,j x t a 管道的末端 可以在不同的时间连接到不同的对等机上,或者根本不连接。在为p 2 p 网络e 的服务提供冗余实现方面,只此一个单一概念就是革命性的一步。对等机可以在 任一点及时逻辑地“拾起”管道。例如,设想一个想使用拼写检查器服务的对等 机。它可以连接到一个对等组的拼写检查器管道( 该管道是被作为冗余对等组服 务实现的) 上。在这种情况下,只要至少有一个拼写检查器的实例还在该对等组 内的某个地方运行,该对等机就还能得到服务。 j x t a 规范提供了两种一般类型的管道:点对点和,。播。 对等机可以使用点对点管道连接到另一个对等机并单向传输消息。对等机可 以使用广播管道连接到一个或多个其它对等机并向它们全体传输消息。从本质上 讲,点对点管道是一对一的消息传输机制,广播管道则是一对多的消息传输机制。 j x t a 社区目前正在多对多消息传输机制方面努力:这个机制已经被命名为 j x t a 导线( w i r e ) 。 不管是什么类型的管道,通过管道载送的信息块都称为j x t a 消息。j x t a 的另一核心构件就是消息。 消息 j x t a 消息是通过管道从一个对等机传送到另一个对等枫的数据束。这里, j x t a 规范再一次尽可能地使自己普遍适应,以免不经意间在消息的定义中引入 任何依赖于实现的策略。消息被定义为由信封和正文组成的任意大小的束。信封 是标准格式,它包括: 报头 源端点信息( u i u 格式) 目的地端点信息( u r i 格式) 消息摘要( 可选的一出于安全性目的) 消息正文的长度是任意的,可以包含一个可选的信任状( 出于安全性目的) 和内容。 j x t a 消息的定义非常松散。考虑到我们日常一般都是在可靠的、宽带的 t c p i p 网络上操作,这样做的必要性并不是立即可以明了的。但j x t a 消息的 格式必须是灵活的、善于适应新环境的,因为它可能要在所有种类的网络上实现, 而不只是在t c p i p 上。设想在一个支持2 5 6 字节数据包的不可靠传输的网络 ( 象传统的基于数据包的无线网络) 上的一个j x t a 实现,我们就会对j x t a 消息的简单定义如何使自己适应诸如这样的不利环境表示赞赏。 浙江人学硕士学位论文 为了提供一个标准的、语法上易分析的、通用的编码机制,j x t a 消息目前 采用x m l 文档格式。j x t a 利用了x m l 的普遍可访问性和易使用、易编程 的特点,这意味着j x t a 可以用大多数编程语言在大多数平台上很容易地实现 一只要x m l 语法分析器和生成库在那里是可用的。然而,j x t a 本身的设计 却使其消息代码的编写不依赖于x m l 的使用。虽然现在不太可能,但j x t a 社 区在规范的未来版本中包含( 或要求) 基于非x m l 的消息是完全可能的。 广告 广告有点像是消息的“堂兄弟”。j x t a 广告也采用x m l 文档格式。广告 的内容描述了诸如对等机、对等组、管道或服务等j x t a 组件实例的属性。例 如,可以访问另一个对等机的广告的对等机可以设法直接连到该对等机上;可以 访问一个对等组的广告的对等机可以通过广告加入对等组。目前的因特网中与广 告相似的东西是域名和w e b 站点的d n s 纪录。j x t a 规范没有规定如何创 建、传播或销毁广告。 从潜力上讲,对等组或许可以跟整个联系着的宇宙一样大。在这么大的名称 空间中为任何事物进行唯一的命名都是一个挑战。为了应对这个问题,j x t a 给 j x t a 组件的每个可设定地址的实例都分配了一个内部标识符。这种标识是通过 一个u u i d 进行的,u u i d 是使用能够确保在时间和空间上都有很高概率的唯 一i 生的算法产生的6 4 字节的数字。j x t a 标识符是u r n ( 统一资源名称) 格 式的,并被嵌入到广告中供内部使用。目前定义了四种标识符类型,用于标识对 等组、对等机、管道和代码数据( c o d e d a t a ) ( 简写为c o d a t ) 。 2 1 3j x t a 协议 互操作性的另一个关键是这样一个事实:核心j x t a 对等交互操作模型被 完全表示为在底层网络上传输的一套简单协议。j x t a 协议是互操作性的基础。 换句话说,既然协议和消息格式是定义完好的,那么基于j x t a 的系统问的互 操作性完全可以在导线一级上达到。 f
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东广州黄埔区康园工疗站服务中心招聘工作人员笔试模拟试题及答案详解一套
- 广东省医疗器械质量监督检验所招聘8人笔试模拟试题附答案详解
- 2025年江苏泰州泰兴市事业单位招聘52人笔试模拟试题带答案详解
- 2025四川成都市双流区永安中心卫生院(成都市双流区第二人民医院)招聘编外人员8人考前自测高频考点模拟试题及参考答案详解1套
- 2025年沈阳市广播电视台(融媒体中心)人员招聘笔试备考题库及参考答案详解1套
- 2025年安徽省公务员考试时事政治考试试卷带答案详解(a卷)
- 广东体育职业技术学院招聘专职教学督导员笔试模拟试题及参考答案详解1套
- 2025浙江传媒学院招聘2人(第二批)模拟试卷含答案详解
- 2025年度南漳县招聘高中(中职)学校教师(44人)模拟试卷附答案详解(模拟题)
- 2025入团考试题库及参考答案详解【a卷】
- 2025新党内法规知识测试(竞赛)题库及答案
- 青岛科研用地管理办法
- 二升三小学数学(暑假口算每日一练)
- 2024吕梁学院辅导员招聘笔试真题
- 膳食指南与食品安全课件
- 2025年社区专职干部招聘考试真题及答案
- 2025至2030中国预涂膜行业项目调研及市场前景预测评估报告
- 慢性呼吸疾病肺康复护理专家共识
- 《山东省房屋市政施工安全监督要点》及《安全监督“二十要”》2025
- 生物安全管理体系文件
- 中国大学生心理健康量表(CCSMHS)
评论
0/150
提交评论