(信号与信息处理专业论文)基于p2p的分布式文件系统的通信模块.pdf_第1页
(信号与信息处理专业论文)基于p2p的分布式文件系统的通信模块.pdf_第2页
(信号与信息处理专业论文)基于p2p的分布式文件系统的通信模块.pdf_第3页
(信号与信息处理专业论文)基于p2p的分布式文件系统的通信模块.pdf_第4页
(信号与信息处理专业论文)基于p2p的分布式文件系统的通信模块.pdf_第5页
已阅读5页,还剩64页未读 继续免费阅读

(信号与信息处理专业论文)基于p2p的分布式文件系统的通信模块.pdf.pdf 免费下载

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

文档简介

基于p 2 p 的舟布式搜索引肇的通信模块 基于p 2 p 的分布式文件系统的通信模块 摘要 d r e a m ( 分布式远程实体访问模型,d i s t r i b u t e dr e m o t ee n t i t y a c c e s sm o d u l e ) 系统,是作者与同学合作推出的一套全新的、基于 p 2 p 架构的搜索引擎,其应用实质是分布式的文件共享系统,提供终 端主机( p e e r ) 之间直接的网络连接和资源互享机制。作为搜索引擎, 它的独特之处在于:系统构建在p 2 p 而不悬c s 架构之上,最终的业 务资源分布在各个p e e r 上两不是集中存储在传统的s e r v e r 上;另外, 较之传统p 2 p 分布式文件共享系统,它拥有一个高效的、分工明确的 三层架构,通过可靠和高效的消息通信和各个层次合理的分工,使得 文件共享活动得以快捷实现。 本文论述的通信模块,是整个d r e a m 系统运作、信息传输的基 础。文章试从分析p 2 p 网络架构的演进出发,通过定量的比较分析不 同实现模型的通信开销,论证d r e a m 系统所选择的三层架构的合理 性,并在此基础上提出d r e a m 系统通信模块的一个实现框架,这部 分是本文重点之一。 d r e a m 系统有p e e r 、s u p e r n o d e ( s n ) 耱s e r v e r 三释不嚣懿受 色,它们分别处在舔统的三个不阁的层次,其中s e r v e r 是全局唯一的、 静态豹节点,负责整令系统爨管理工圣挈,s n 缀刚构成了实际鳇资源 信息的转发和查询功能实体,p e e r 是最终的资源消息的消费者和提供 者。本文从d r e a m 系统整体熬功能嚣求瑟始分援,系统地讨谂了 p e e r 、s n 和s e r v e r 三种角色对遥信模块的的功能需求,明确了它们 各爨艟数据流程。这部分是本文麴重点之二。 本文基于通信模块功能分析,并考虑了今后系统的可扩展性,设 计懋d r e a m 系统的应用层遁傣协议,明确了协议的摄文格式;接着 进行相关的计算机通信技术论证并设诗出d r e a n 系统遥信模块的 四秭通信模式,即p e e r 与s e r v e r 、p e e r 与s n 、s n 与s e r v e r 与s n 、 p e e r 与p e e r 之间的透信,结合d l 疆烈妊通信协议论文对上述四个通 信模式的实现做了详细的规范,针对不间豹通信模式做了栩对不问的 通倍策略,其中对部分模块做了一鍪代礴上的分析,并给出了关键 基于p 2 p 的分布式搜索 j i 擎的通信模块 数据结构的代码实现。这部分是本文的重点之三。 在文章的最后最后阐述了d r e a m 系统下一阶段的研究方向,特 别提出了p 2 p 通信模块的平台化趋势,指出d r e a m 系统的通信模 块设计的指导策略和发展方向。 本文较,。泛地涉及到网络和计算机方面的技术,包括网络拓扑分 析知识、网络服务器设计技术、应用层协议分析和制订、组播技术、 o o a o o d 、j a v a 技术、n i o 技术及安全技术等等。 关键词:p 2 p 通信s n 通信开销应用层通信协议 】l 基于p 2 p 的分布式拽索引擎的通信模块 c o m m u n i c 气t 1 0 nm o d u l e 0 fd i s t r l b u t e ds e a r c he n g i n e b a s e d o n p 2 p a b s t r a c t an e ws o l u t i o no fp 2 pd i s t r i b u t e df i l es h a r es y s t e m s e a r c h e n g i n e , d r e a m ( d i s t r i b u t e d r e m o t e e n t i t ya c c e s sm o d u l e ) i sp u tf o r w a r da sa c o l l e c t i v ew o r k 觚i t so fad e s i g ng r o u p w h m hi sc h a r a c t e r i z e db yi t s 3 - l e v e la r c h i t e c t u r ea n ds e a f c h e n g i n e f u n c t i o no np 2 pn e w w o r k a p p l i c a t i o n a sas e a r e l ae n g i n e ,i t ss p e e i a l i t y l i e si np 2 pa r c h i t e c t u r e , w h i l ei ta l s o p r o v i d e s a ne f f i c i e n t ,p r o f e s s i o n a l a p p r o a c ht o r e a l i z ea d i s t r i b u t e df i l e s y s l e m t h ec o m m u n i c a t i o np a r t o fd r e a m s y s t e m w o u l db ed i s c u s s e di nt h i sa r t i c l ea sw e l la saf e a s i b l em o d u l er e a l i z a t i o n t h i sp r e s e n t a t i o nv e r i f i e st h ec o r r e c t n e s so ft h e3 - l e v e la r c h i t e c t u r e o fd r e a m s y s t e ma n d t r i e st o p u t i ti n t o p r a c t i c e ,o nt h e b a s i so f a n a l y s i st od i f f e r e n tp 2 p m o d u l e st h a ta r ec u r r e n t l yu s e d ,w h i c hw o u l db e o n e k e yt o p i c so f t h i sp r e s e n t a t i o n , p e e r , s u p e r n o d e ( s n ) a n ds e r v e r ,t h e3p a r t so fd r e a ms y s t e m , a r ei n t r o d u c e d ,a n dt h e i rr o l e si nt h ew h o l es y s t e ma r ed e s c r i b e d t h e n 1 1 1 基于p 2 p 的分布式搜索引擎的通信模块 h_-_-_ t h e i rf u n c t i o na r ed i s c u s s e di nd e t a i la n ds p e c i f i e d ,w h i c hl e a d st ot h e d i s c u s s i o na b o u ts p e c i f i c a t i o no fs y s t e mc o m m u n i c a t i o nm o d u l e t h e r e a r e2p a r t sw i t h i ns y s t e mc o m m u n i c a t i o nm o d u l e ,i n n e rc o m m u n i c a t i o n a n do u t e ro n e t h ef o r m e ri s r u n n i n g i n s i d ea m a c h i n e ,w h i c h i s i n v o l v e ds o m em e c h a n i s m ss u c ha si p c ( i n t e r p r o c e s sc o m m u n i c a t i o n ) w h i l et h el a t e rs h o u l dd e a lw t t hc o m m u n i c a t i o nb e t w e e np r o c e s s t h r e a d r u n n i n go n d i f f e r e n tr e m o t ep e e r s ,i n v o l v e ds o m ee x t r ap r o t o c o lp r o c e s s t h e r ea r em a i n l y4t y p e so fo u t e rc o m m u n i c a t i o nm o d u l e si nd r e a m s y s t e m ,i e ,c o m m u n i c a t i o nb e t w e e n p e e ra n ds e r v e r ,p e e ra n ds n ,s n s e r v e r & s n ,p e e r a n dp e e r t h ef o r m e r3i t e m sd e a l sw i t ht o p i c1 ,w h i l e t h el a t e r1i t e mi st o p i c2 i nt h ee n d ,a ne x p e c t a t i o nm o d u l eo fd r e a m i sp u tf o r w a r d ,i na d d i t i o nt ot h ed a t af l o wo f s y s t e m o nt h eb a s i so fa b o v e a na p p l i c a t i o np r o t o c o li sr a i s e dw i t ht h e p a c k e th e a d e rf o r m a ts p e c i f i e d ,a c c o r d i n gt ow h i c had e s i g ni n s t a n c eo f d r e a m sc o m m u n i c a t i o nm o d u l ei sp u tf o r w a r dw i t ht h es u p p o r to ft h e o t h e rm o d u l e so fd r e a m s y s t e m ,w i t hs o m ec o d er e a l i z a t i o no fs o m e m o d u l ea n d k e y d a t as t r u c t u r e t h e t e c h n i q u e si n v o l v e di nd r e a m a l el i s t e da sf o l l o w e d :a n a l y s i s o fn e t w o r kt o p o l o g y ,d e s i g no fa p p l i c a t i o ns e r v e r ,a n a l y s i s d e s i g no f a p p l i c a t i o np r o t o c o l ,m u l t i c a s t ,o o a o o d ,j a v a ,n i o ,j s s e ,e t c k e y w o r d s :p 2 p , s n ,c o m m u n i c a t i o nc o s t s ,p r o t o c o l s | v 独创性声明 本人声明所呈变的论文是本人在导师指导f 进行的研究l 作成取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也4 i 包含为获得北京邮电大学或其他 教玎机构的学位或证书而使用过的材糊。与我一同j 作的同志对本研究所做的任 何黄献均已在论文中作了明确的说明并表示丁谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名日期: 勉2 笠! 生= ; 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即: 研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保 留并向国家有关部门或机构送交论文韵复印件和磁盘,允许学位论文被查阅和借 阅:学校可以公稻学位论文的全部或部分内容,可以允许采用影印、缩印或其它 复制手段保存、拒编学位论文。( 保密的学位论文在解密后遵守此规定) 本学位论文 本人签名: 导师签名: 本授权书。 日期:塑! 苎:竺:三 日期:粤业乒一 基于p 2 p 的分布式搜索引擎的通信模块 第一章绪论 月前网络的现状和发展速度已经不能满足迅速膨胀的用,j 需求的速度。一方 面,用户的数量呈爆炸性增长:另。一方面,i n t e r n e t 服务正在从原来以文本页嘶 浏览为主的方式转向了多媒体、交互式为主的方式,如:v o d ( v i d e oo nd e m a n d ) 、 音乐、图片、3 d 、互动游戏、远程教学、远程医疗等等。这使得原来强大的集 中式服务器不堪重负,服务质量q o s ( q u a l i t yo fs e r v i c e ) 得不到保障。之所以 如此,是因为无论是集中式服务器本身,还是它的网络带宽,都构成系统的瓶颈 f 1 【2 】。要想消除这个瓶颈,最好的办法是将它的服务分散化f 3 】,使系统中的任 意主机既享受服务,也提供服务这就是p e e r t o p e e r ( p 2 p ) 的策略。总体而 舂,p 2 p 技术在提高服务的可靠性和服务的多样性上,以及在提高通信效率方面 的潜力上,已经引起计算机界的广泛关注。其中p 2 p 技术在搜索系统中的应用 可以使我们更快速、更准确、更及时、更大量的发现我们所需要的信息。 t 1引言 我们的课题是提出和论证一个全新的p 2 p 架构,并设计个具体的实现方 案,即我们小组命名的d r e a m ( d i s t r i b u t e dr e m o t e e n t i t y a c c e s sm o d u l e ) 分布式远程实体访问模式。d r e a m 系统是包括笔者在内的4 人小组合作设计的, 它采用一种较赣颍的方式,察现萋予p 2 p 的分布式文件共享赢统及搜索引擎。 本文论述的是d r e a i d 系统的通信模块的设计翻开发工作。 关于d r e a m 设计韵由来,不得不提到p 2 p 网络应用 4 t z 非常有名的、基 二f 中央服务器的n a p s t e r ,它几乎掀起了互联网应用的一场革命。虽然现在p 2 p 应用一般是完全分布式的。但n a p s t e r 曾经的辉煌成功却给了我们缀深的印 象。我们进一步提出一个问题。能否结合n a p s t f m 和今天完全分布式p 2 p 应用 的优势。构造一个新型的p 2 p 应用框架 5 1 1 6 。关于这方面的论述,我们将在第 一、二章中论述。 1 2p 2 p 分布式共事系统 尽管p 2 p 在很多方面有重要应用,文件共享是最重要的一个应用,而且文 件系统也涵盖了p 2 p 应用的基本元索,下面我们就p 2 p 分稚式文件系统做个 简要的讨论。基于p 2 p 的分布式文件共事系统,实质上解决的是两个问题: 1 资源定位:给你( 系统) 一个资源,你能返回资源所在的地址( 资 基于p 2 p 的分布式搜索引肇的通信模块 源拥有p e e r 的地址,比如i p 地址) : 2 ,资源共享:p e e r 之间能建立通信,互享资源。 网络 图卜1 p 2 p 通信示意图 关于p 2 p 的资源定位,实质是根据用户输入信息在网络中进行资源搜索的 应用,在本论文中,定义为p 2 p 搜索引擎。 随着加入文件共享网络的用户急剧增加,可扩展性是一个p 2 p 系统成功与 否的关键。由于p 2 p 网络的分布式特性,数据存储和数据传输是内在要求可扩 展的,关键的问题是文件定位和查询解析是否可扩展。这方面,分布式的架构无 疑更有优势。 从网络结构上来看,p 2 p 搜索引蘩应该处于应用层,理论上,它应建立在理 想状态下的p 2 p 平台之上。从软件实现的角度来看,p 2 p 应用必须基于底层提供 的计葬功能和网络通信功能,因为p 狰的操作不仅涉及到对文件系统的操作, 而且是跨越网络的文件操作。p 2 p 提供种共享的思路,使得上层应用的开发更 像是在抽象的“逻辑平台”上进行钓,用户只需关注与平台的接口,不同的p e e r , 更确切地说,是p e e r 上的应用就是平台豹不同接入点。 图1 - 2 s e r v e r 充当逻辑平台 1 3p 2 p 通信的演进及现状 概括而苦,p 2 p 搜索引擎的发展主要经历了两个阶段,其中第一阶段( 第 2 基于p 2 p 的分布式搜索引擎的通信模块 代) 是基于中心服务器的共享式服务方式,其网路拓扑是集中式的,s e r v e r 处予 网络的中心,各个p e e r 围绕着s e r v e r 进行资源的发布和查询:第二阶段( 第二 代) 是完全分柿式的,代表是g n u t e l l a 系统。网络拓扑式完全分布式的,各个 p e e r 存网络中的地位式完全平等的。p e e r 各自以自己为中心,搜索别的p e e r 的 兆事资源。 它们的网络拓扑如下图所示。 13 1 n a p s t e r 模式 拓扑 代拓扑 图卜3 p 2 p 通信1 代到2 代网络拓扑的演进 中心服务器属于第一代p 2 p 通信方式,其典型代表就是n a p s t e r 。各个p e e r 在s e r v e r 处查找所需的资源列表( 如下图单线箭头所示) ,之后在p e e r 之问进行 p 2 p 通信( 如下图框线箭头所示) 。全局的目录资源集中在s e r v e r ,全局的p 2 p 通信是在网络中进行的。 各个p e e r 将资源标识( 包含资源的基本信息,如资源名称、资源拥有者地 墨! 壁! 塑坌查叁垫查! ! 至竺堕笪坚竺 址等信息) 发布到全局唯一的中心目录服务器上,服务器对资源标识进行管理 并接收各个p e e r 对资源信息的查询。 l i s e r v e r i _ 彳 f 产彳 iil il 妙u 妙妙, 逻辑总线( 网络连接) 图1 - 5 分布式的p 2 p 4 | 夕 。而10 ,1 7一,1上 基于p 2 p 的分布式搜索; 擎的通信模堤 各个p e e r 相互之间查找资源列表( 如图单线箭头所示) ,通常是用泛洪 ( f l o o d in g ) 方式。之后p e e r 根据搜索到的资源列表,与特定的p e e r 建立连接, 闽进 j :p z p 通信( 如图框线箭头所示) ,所有节点强维护本地发弁的资源列表, 没有全局的资源目录。 13 3 其它模式 近些年来,逐渐出现两层结构的模型,如m o r p h e u s 、分级集中对等网络模 型设计( h a n ) 。架构图如下所示。 s n 11 ,y ,、 p e e r ip e e r s n :? s n1 逻鬻总线( 氍雏建接) 图l 一6 分级集中对等网络聚构 这种分级集中对等网络的拓扑如下所示: f 太一 图l 一7 分级集中对等网络架构 一跺一1l。_一 x 粤爷垃 。隙一i l 、_嗽盟 基于p 2 p 的分布式搜索引擎的通信模块 在p e e r 之上又抽象出个管理层。超级节点s u p e r n o d e ( s n ) 上维护索引 目录,普通主机( p e e r ) 和它所属的超级节点之间进行集中索引的模式,超级蒂点 之州则进行分布式索引,融合了集中式索引和分布式索引的优点。 总之,在n a p s 。i l ! i 的彗鬃般的崛起和沉寂之后,p 2 p 。直是业界研究的热门 话题,2 0 0 3 年以来,在传统的第一代和第二代的基础上,对p 2 p 架构的研究又 深入到两层、两层半,并在不断的推进。现在p 2 p 的应用开发更是风起云涌,如 风靡全球的b t 下载工具,正在迅速流行的i n t e r n e t 电话s k y p e 等,均是采用 p 2 p 通信技术的成功案例。 1 4 d r e a m 系统的选择 第一代p 2 p 系统的最大隐患在中央服务器上,如果该服务器失效,整个系 统都会瘫痪。另一个问题在于安全性上,n a p s t e r 并没有提供有效的安全机制。 不依赖于中央服务器的第二代p 2 p 系统( g n u t e l l a ) 在网络的物理拓扑之 上虚拟了层“叠加”拓扑,该拓扑之中每个p 2 p 节点和若干个其它节点相连, 但由于数据的存放和“叠加”拓扑毫无关系,在这样“非结构化”的系统中搜索 需要的数据几乎是随机搜索,搜索从一个节点开始逐个询问是否有匹配查询请求 的数据,造成这样的问题,其根源是没有节点可能存放那些文件的信息。 g n u t e l l a 采用所有的查询都通过在网络中以有限的f l o o d i n g 的方式进 行,通过t t l 限制f l o o d i n g 的范围。这种方式虽然可以有效地找到霈要的信息, 但却会在网络中产生大量的流量,显然是不可扩震的。另外6 n u t e l l a 也没有提 供足够的安全机制。 这也说明:不受限的、缺乏管理的p 2 p 搜索,除非限定范围,否则最终在通 信的无限扩张中,走向崩溃;当然,其中不乏佼佼者,然而它只能从技术上改革, 而不能从根本上改变。它们很难进行大规模的应用,或者代价较高。 近些年出现的两层p 2 p 架构 1 3 ,虽然既有第一代的效率,又有第二代的灵 活,但是它仍有如下缺陷: 在s n 之间的通信仍然需受占用很多带宽; 新用户在接入网络的时候,需要发送很多广播来找到一个s n 网络接入 网络; 用户进行的基本上是盲搜索,它效率和速度比较差: 一个s n 退出网络之后,它的p e e r 就都要重新寻找网络,影响使用性能: 很难对用户的查询历史进行利用。从网络通信量对这种架构进行分析在 后面将会叙述。 在研究p 2 p 通信发展线索的基础上,综合考虑网络的通信效率、可靠性和可 基于p 2 p 的分布式搜索;i 肇的通信模块 扩贬性,本系统采用分却式与集中式结合的三层架丰;= l :全局唯一的s e r v e r 处在 顶层,从资源搜索与发布中解放出来,抽象为通信管理模块,负责为p e e r 与分 前,式的刚之闷建:通信。真正的资源搜索( 查询+ 发卸资源资源项) 则是山 绀分佰式的s n 负责完成,它们处在中间层,底层是众多的p e e r 。这种方式使得 处理流程并行化,在提高通信可靠性的同时,也提高了系统的吞吐量。 。一 一 、+_ , _ , 霸络连接( | n t e r n e t ) 图i - 8 d r e a m 系统架构 d r e a m 系统有p e e r 、s u p e r n o d e ( s n ) 和s e r v e r 三种不同的角色,它们分别 处在系统的三个不同的层次,每个层次有不同的逻辑分工。主要涉及到的通信有: p e e r 与s e r v e r 之间的通信:p e e r 与s n 之间的通信;s n 与s e r v e r 与s n 之间的 通信;p e e r 与p e e r 之间的通信。其中前三种主要是用于p e e r 对网络资源的定 位、寻址,而后者则是p e e r 与p e e r 直接交互。本文将给出对以上通信模式的设 计,和相关通信协议及其对应的报文格式的实现。 接下来的一章,本文试图分析各个架构组网的通信开销,在此基础上论证 d r e a m 系统选择三层架构的合理性。 基于p 2 p 的分布式搜索引擎的通信模块 第二章p 2 p 组网模型分析 本章将全面分析各种p 2 p 的通信纸织方式,主要围绕着通信开销的分析, 试圈找 _ 合适的d r e a m 系统的组网方式。 组网的通信开销 是否选择三层架构,必须分析别的架构模型并做综合比较才能得出结论。 不论是d r e a m 系统的三层架构,还是进来流行的二层架构,它们与传统的第 二代完全分布式p 2 p 通信模型晟大的不同在于前两者提供了一定的管理功能,这 使得系统的p e e r 分为两种角色:特殊的资源管理者,和一般的资源发布消费者。 而以g n u t e l l a 为代表的第二:代p 2 p 通信模式中的p e e r 是完全对等的,它们的熊 色就是一般的资源发布消费者。 正是有了以上的区别,本文决定选用比较法对不同的网络模型进行分析。其 中以全分布式的g n u t e i 。l a 模式傲比较基准。主要比较的是通信量,为简化思维 抓住问题实质,通信量抽象为连接次数。所有别的分析模型均通过与基准模型的 比较得出自身在系统通信量方面的度蠹。我们先选取拥有m 个中心结点( 或日q s l i p e rn o d e ,s n ) 的分布式集中管理模型,做为选用的分析模型;通过推理演绎, 最终推出d r e a m 系统的合理架掏模型。 研究策略: 分析 1 完全分布式网络拓扑:各个结点在资源搜索时进行逻辑全连接, g n u t e l l a ,分析其通信开销; 2 , 若干中心点网络拓扑:网络分为若干组,组内有若- 干p e c r ,每组有 个结点负责管理本组内的资源索引信息,计算模型的通信开销; 3 1 与2 进行比较: 4 研究过程中是否能推出或发现别的合适的网络模型,是则回跳到2 。 最终:拟 ! 导出如下的d r e a i v l 系统网络拓扑。全网分为若干s n 管理组,每个 s n 管理组由一个s n 和若干个p e c f 组成:s n 闯通过网络连接组成一个全网范围内 的s n 通信组,并在一些特定条件或特殊的情况下与全劂唯一的s e r v e r 通信。 8 基于p 2 p 的分布式搜索引擎的通信模块 2 2模型分析 2 21基准模型 瞬2 - 1 演进分析图 第二代p 2 p 通信方式,即纯粹p 2 p ,p e e r 无须发布资源,p e e r 的搜索采 用泛洪( f l o o d i n g ) 方式。为简单起见,先假设一个p e e r 搜索n s 次,单个结点 的通信量:n s ( n p i ) ,该方案的总体通信量分别是:n s * ( n p 一1 ) * n p 。 2 22模型一 假设:p e e r 空间的数目n p ,中心结点数m ,首先假设中心结点不参予资源 搜索,即是额外添加的目录服务器,目标资源数目n r :采用遍历搜索;为突出 9 基于p 2 p 的分布式搜索引擎的通信模埏 分析重点,通信量用连接次数来示意: 对于第。方案( 纯粹p 2 p ) ,p e e r 无须发布资源,为简单起见,先假设个 p e e r 搜索k s 次,单个结点的通信量:n 5 $ ( n p 1 ) ,浚方案的总体通信量分 别是:n s * ( n p - 1 ) * n p : 对于第二方案,p e e r 在单位时间发布了n f 次资源项( 定义为发布频度) , 搜索了n s 次( 定义为搜索频度) ,单个通信量:( n f + n s ) $ m ,方案的总体 通信量分别是:( n f + n s ) * m * n p 。 就总通信量而言,模型一相当于基准模型的比率为: ( n f + n s ) + m + n p ( n s 4 ( n p 一1 ) 4 n p ) 式( 3 】) = ( n f n s + 1 ) 4 ( m ( n p 一1 ) ) = c 1 + ( m ( n p 1 ) ) , 其中c l = ( n f n s + 1 ) ,可以看作是常数 可以看到: a 1n f , r n s 通常可以看成是常数,只要满足m n p ,就能极大降 低通信量,在n p 一定的情况下,通信量的增降是与m 正比的; b ) 虽然n f n s 通常可以看成是常数,但从上式也可推出,n f n s 越小,通信开销越小。即,搜索的次数较发布资源的次数越频繁,搜索 点越集中,通信效率相对也越高。 c ) 理想情况,m = i ,只有一个资源查询服务器,通信效率最高: 各个结点只向一个节点发布和搜索资源信息。实质上,这就是n a p s t e r 体系结构。可以看出,在相同条件下,它比g u n t e l l a 式系统的通信量整 整少了n p 倍,结点数目越高,通信量上的优势越明显! d ) 理想情况,当m 接近于n p 时,两种方案的通信量相当,不过 额外添加太多的服务器最然不是办法。事实上,当m 近似等于n p 时( 在 n f n s 较小的情况下) ,即每个p e e r 给分配一个s e r v e r ,两种方案的通 信量才1 近似相同,这种方案没有现实意义。 2 23模型二 在模型一中,m 个服务器是独立于n p 个p e e r 的,下面我们来讨论不是 独立的情况,这是m 个p e e r 有着且录服务器管理和查询的功能,但它们又和其 它( n p m ) 个p e e r 一样又是资源的搜索者,在此我们把它们i il l 做s n ( s u p e r n o d e ) 。 为简便起见,我们先假设p e e r 向每个s n 均发布该p e e r 所拥有的资源项。 同样,假设p e e r 的发布频度是n f ,援索频度是n s ,单个通信量: ( n f + n s ) $ m ,方案的总体通信量分别是:( n f + n s ) m 木( n p m ) 。 基于p 2 p 的分布式搜索引擎的通信模块 而纯粹p 2 p 如上所示,总体通信量分鄹是:n s * ( n p 1 ) * n p 。 模型二的通信量相对于基准模型的比率为: ( n f + n s ) 卓m + ( n p m ) ( n s + ( n p - 1 ) + n p ) 式( 3 - 2 ) = ( n f t n s + 1 ) + m ( n p m ) ( ( n p 一1 ) + n p ) = ( n f n s + 1 ) + ( m 8 n p ) ( ( n p 1 ) + n p ) - ( n f n s + 1 ) + ( m 4 m ) ( ( n p 一1 ) n p ) = c l + m ( n p - 1 ) 一( c l + m m ) ( n p ( n p 一1 ) ) 其中c l = ( n f n s + 1 ) ,可以看作是常数 这是一个抛物线,其图式为 推论 刚 ” 厂 、 图2 - 2 相对开铺比例曲线 m 的取值 a 1 当m 数目为n p 2 时,上述比值最大,即网络开销最大,值是( c l 41 t n p ( n p 1 1 ,当n p 较大时,约等于c 1 4 ,i i ( n f n s + 1 ) 4 。 b 、当m - - - - o 或m = n p 时。比值最小为0 。然而m = o 没有逻辑意义( 模 型二的推论是建立在m 非0 的前提的) :而m = n p ,代表每个p e e r 均拥 有全局韵资源项,这从通信开销上是不错,但对p e e r 的存储开销要求最 大,并且随着n p 范围的扩大,对p e e r 的存储要求将交得不簏忍受,而 它的效果和m = 0 相当。( 根据开始提到的原则,1 t 的本质是:( 通信+ 存储1 + 计算,三者作为三个极互相制约,相互可以转换,一方的减少往 往最终是以另一方的增加为代价的) c 1 理想情况下,m = i 是最优的。 基于p 2 p 的夯布式搜索引擎的通信模块 224 模型三 以上模型总是单纯从通信量角度论述网络架构的合理选择,并得出结论:m = 【 1 1 f ,通信镀”销相对最小。m :i ,代表是集中式服务的模型,即是第代p 2 p 通 信模型,然而事实卜第一代模型并没有长久地存在牍中存技术上它有一个最a 的缺点,即网络流量和负载过分集中于个结点( 中心服务器) ,一旦中心服务 器瘫痪,整个系统也就瘫痪。这种可靠性上的缺陷,连同别的方面的原因,促使 了第二代p 2 p 通信机制的诞牛。 但是,我们也看到,第一代较第二代有着巨大的通信优势,如何能在提高系 统可靠性的基础上,继承这一优势,是p 2 p 通信研究中不能回避的问题。我们提 出了d r e a m 系统的三层架构,其中的通信模块试图在这一方面做一突破性的努 j j 。 d r e a m 系统采用分布式与集中式结合的三层架构,由此延伸出3 个不同的角 色:全局唯一的s e r v e r 从资源搜索与发布中解放出柬,抽象为通信管理模块, 负责为p e e r 与分布式的s n 之间建立通信。真正的资源搜索( 查询+ 发布资源资 源项) 则是由一组分布式的s n 负责完成,从而是的处理流程并行化,在提高通 信可靠性的同时,也提高了系统的吞 吐量。对应用户的p e e r 进行具体的资源搜 索发布消息,并通过与对等的p e e r 交互获得它的共享资源。 为什么不直接采用只有s n 和p e e r ,没有s e r v e r 的两层架构,如同( 如分 级集中对等网络模型( h a n ) ) ? ( 下图见1 2 9 1 ) 图2 - 3 分级集中对等网络模型( h a n ) 开始的考虑是s n 之间的通信简单假设为泛洪方式( 类似于g u n t e l l a ) ,这 样的效果在刚才已经论证了:通信开销大于集中式。所以在分布式的s n 之上, 在提供一个高性能的s e r v e r 。后来,在进一步的研究中发现s e r v e r 可以定位在 接入控制( 针对p e e r ) 、资源转发( 针对s n ) 的功能上,将来功能的扩展尽可能 地可以集中在s e r v e r 上做,更方便。 1 2 基于p 2 p 的分布式搜索引擎的通信模块 本质上,s n 是为了分担s e r v e r 的负摆( 包括通信与计算的歼销) ,增加网 络的可靠性而产生的,另外,s n 组合在某种程度上是并行处理p e e r 请求,能增 加系统的吞吐量。既然是分担负担,所以涉及洲的通信应尽量不涉及s e r v e r , 而s n 存在本身已经在一定程度上减轻了s e r v e r 的处理( 通信+ 计算) 压力。不 过,s n 只是在尽可能的情况f 分担s e r v e r 的负担,单个洲不可能被要求完全 承担s e r v e r 的负担,在现实环境中,一一个s n 只是拿出自己极有限的资源参与到 接受目录查询的“公益性”功能中,不能对它要求太多。 如果s n 是一个组,那么它们之间存在通信与否对系统的性能有影响吗? 如 果有,影响有多大? 下面将就此展开讨论。 我们的分析建立在前面论述的基础上,论述d r e a m 系统三层架构的系统开 销,主要是围绕通信开销。提出两种可能的方案。 2 2 4 1方案一:s n 间不进行相互搜索 本方案s n 间不进行相互搜索,当s n 在本地不能解决p e e r 所进行的资源项 查询时,便直接将查询转至s e r v e r 。 设总资源项为c r ,m 个s n ,s e t v e r 在s n 组内发散1 个拷贝,假设发散得足 够平均,则每个s n 平均分担c r m ,荩被查询的概率是1 l ,转发给s e r v e r 的概率是( 1 1 m ) ,最终s e r v e r 处理的负担楚c r * ( 1 1 m ) ,所以s e r v e r 的 处理负担减轻了1 m 。 假设s e r v e r 在s n 组内发散n ( n m ) 个拷贝,假设发散得足够平均,则 每个s n 平均分担n * c r m ,其被查询的概率是r t m ,转发给s e r v e r 的概率 是( 1 一n m ) 。 此时s e r v e r 处理搜索的负担是 c r + ( 1 一n m )式( 3 - 3 ) 在此若不考虑s e r v e r 发布资源的负担,则s e r v e r 的处理负担减轻了n m 。 从公式( 3 - 3 ) 可推出: a ) m 恒定时,随着n 的增加,s e r v e z 的处理负担线形降低; b ) n 恒定时,s e r v e r 的处理负担与m 值呈一定的反比例: c ) 极端地,当n - - - - m 时,s e r v e r 的处理负担为0 ,s n 全面替代s e r v e r 的搜索功能:显然这种情况就是把各个s n 变成s e r v e r 的克隆,在m 个 p e e r 上各自维护一个s e r v e r 的开销; d ) 在小范围内,由于资源项的数量不是太多,在荤个p e e r 上维护 一个s e r v e r 的功能有时也是可以接收的,而且如果使m 值比较大,从而 单个s n 负责维护的p e e r 小组较小、p e e r 数目较少则组内总的p e e r 的 基于p 2 p 的分布式搜索;i 擎的通信模块 查咖频度也较少,s n 的汁3 黝t 销相对不是太大: e ) 大范围内,3 晨行不通的,不可熊要求一个p e e r 承担s e r v e r 那样 大的维护量; f ) 大范陶情况,由于c r 本身很大,要求n m ( 型i 三 基于p 2 p 的分布式搜索;l 擎的通信模块 第四章d r e a d y l 通信协议 住系统中传输资源地址信息时,由于它们涉及的是“路由”或控制信息,陶 i 阿要求要有较高的可靠性。在设计通信协议时,我们要也考虑如何保证通信数据 的正确性这一问题。整个数据流是在i n t e r n e t 网络上传输的,i n t e r n e t 是基于 l p 的,而i p 是“b e s t e f f o r t ”的,这使得通信的可靠性只能由上层协议来实 现的。 d r e a m 系统的消息通信可分为两种:其一,是p e e r 真正想要共享的内容的 传输,资源项目的发布和搜索信息的传递,所涉及到的数据是用户直接进行操作 的;另外就是,系统提供的管理信息,包括系统的s e r v e r 与s n 之间交互的资源 项位置信息、控制信息等信令、路由信息。前者,涉及到用户业务,可由具体业 务决定对传输可靠性的要求,而后者涉及到信令与路由信息,般可靠性要求要 高一些。 4 1设计工作涉及的网络技术 4 11t o p l p 协议族 t c p i p 协议族已被各界公认为异种计算机、异种网络彼此通令的重要协 议,也是目前最为可行的协议,现在已成为事实上的国际标准和工业标准。 f o p i p 协议为i n t e r n e t 提供了基本的网络通讯工具,它是所有服务的基 础。由于其开放性、适应性强等特点,以及基本的分层结构,包交换技术,科学 的编址和方便的选择路由,并提供了各种可能的服务,能和许多基本的通信( g s m , a t m ,c d k a 等) 技术兼容,已经成为网络交换信息的基础协议。t c p i p 是个动 态的协议族,除包括t c p 、i p 基本协议外,还包括f t p 、s m t p 、t e l n e t 、i c m p 、 a r p 、s n m p 、e g p 、r i p 等协议组成线性序列,而且随应用的扩大,还会有新的 协议加入进来。 t c p i p 采用分层结构,分为网络接口层、互联网络层、传输层和应用层, 如下图所示。传输层在t c p i p 模型中位于互联网层之上,应用层这下。它的 功能是使源和目的端主机上的对等这体进行会话。| r c p i p 在传输层定义了两个 端到端的协议一个是传输控制协议t c p ( t r a n s m i s s i o nc o n t r o l p r o t o c 0 1 ) , 另一个是用户数据报协议u d p ( u s e rd a t a g r a mp r o t o c o ) 。u d p 提供不可靠的 无连接的数据报投递服务,t c p 提供面向连接的可靠的流传递服务。 它们使用i p 路由功能把数据包发送到目的地,从而为应用程序及应用层协 议( 包括:h t t p 、s m t p 、s n m p 、f t p 和t e l n el ) 提供嘲络服务。 基于p 2 p 的分布式搜索引擎的通信模嵌 瘦用层 传输层 网络层 网络接口璧 各种应用层协议 ( t e i e t ,f t p ,s m t p 等) t c p ,u d p 竺 i p t t t pa r p 各种网络接口 物理硬件 圉4 - 1 t c p i p 协议体系结构图 t c p 是一种面向连接的可靠协议,通过滑动窗口提供流量控制通过序列号 和确认提供可靠性:t c p 重发一切没有收到确认的数据,并在应用的终端用户之 间提供一条虚电路。t c p 的优势在予提供了分段的可靠传输。u d p 是一种无连接 的不可靠协议;它不对发送的数据包做任何软传检查( 实际中可靠性可由上层应

温馨提示

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

评论

0/150

提交评论