PP构架分析精选.doc
8页P2P构架分析Jack 发布于:2007-02-06 03:38闲来无事,对P2P的文件结构和系统构架找了一番,做一个资料收集网络拓扑结构:1. 中心化拓扑(Centralized Topology)2. 全分布式非结构化拓扑(Decentralized Unstructured Topology)3. 全分布式结构化拓扑(Decentralized Structured Topology,也称作 DHT 网络)4. 半分布式拓扑(Partial ly Decentral i zed Topology)Structure 1http://www.DD中心化拓扑最大的优点是维护简单发现效率高由于资源的发现依赖中心化的目 录系统,发现算法灵活高效并能够实现复杂查询最大的问题与传统客户机/服 务器结构类似,容易造成单点故障,访问的“热点”现象和法律等相关问题,这是 第一代P2P网络采用的结构模式,经典案例就是著名的MP3共享软件NapsteroNapster是最早出现的P2P系统之一,并在短期内迅速成长起来Napster 实质上并非是纯粹的P2P系统,它通过一个中央服务器保存所有Napster用户 上传的音乐文件索引和存放位置的信息。
当某个用户需要某个音乐文件时,首先 连接到Napster服务器,在服务器进行检索,并由服务器返切存有该文件的用户 信息;再由请求者直接连到文件的所有者传输文件Napster首先实现了文件查询与文件传输的分离,有效地节省了中央服务器的 带宽消耗,减少了系统的文件传输延时这种方式最大的隐患在中央服务器上, 如果该服务器失效,整个系统都会瘫痪当用户数量增加到105或者更高时, Napster的系统性能会大大下降另一个问题在于安全性上,Napster并没有提 供有效的安全机制在Napster模型中,一群高性能的中央服务器保存着网络中所有活动对等计 算机共享资源的目录信息当需要查询某个文件时,对等机会向一台中央服务器 发出文件查询请求中央服务器进行相应的检索和查询后,会返回符合查询要求 的对等机地址信息列表查询发起对等机接收到应答后,会根据网络流量和延迟 等信息进行选择,和合适的对等机建立连接,并开始文件传输这种对等网络模型存在很多问题,主要表现为:(1) 中央服务器的瘫痪容易导致整个网络的崩馈,可靠性和安全性较低2) 随着网络规模的扩大,对中央索引服务器进行维护和更新的费用将急剧增 加,所需成本过高。
3) 中央服务器的存在引起共享资源在版权问题上的纠纷,并因此被攻击为非 纯粹意义上的P2P网络模型对小型网络而言,集中H录式模型在管理和控制 方面占一定优势但鉴于其存在的种种缺陷,该模型并不适合大型网络应用Structure 2Pastry是微软研究院提出的可扩展的分布式对象定位和路由协议,可用于构 建大规模的P2P系统在Pastry中,每个结点分配一个128位的结点标识符号 (nodelD),所有的结点标识符形成了一个环形的nodelD空间,范围从0到2128 -1 ,结点加入系统时通过散列结点IP地址在128位nodelD空间中随机分配在MIT,开展了多个与P2P相关的研究项目:Chord, GRID和RONChord项 目的目标是提供一个适合于P2P环境的分布式资源发现服务,它通过使用DIIT 技术使得发现指定对象只需要维护O(logN)长度的路由表在DHT技术中,网络结点按照一定的方式分配一个唯一结点标识符(Node ID), 资源对象通过散列运算产生一个唯一的资源标识符(Object ID),且该资源将存 储在结点ID与之相等或者相近的结点上需要查找该资源时,采用同样的方法 可定位到存储该资源的结点。
因此,Chord的主要贡献是提出了-•个分布式查找 协议,该协议可将指定的关键字(Key)映射到对应的结点(Node)从算法来看, Chord是相容散列算法的变体MITGRID和RON项目则提出了在分布式广域网中 实施查找资源的系统框架T&T ACIRI 中心的 CAN (Content Addressable Networks)项目独特之处在于 采用多维的标识符空间来实现分布式散列算法CAN将所有结点映射到-•个n维 的笛卡尔空间中,并为每个结点尽可能均匀的分配一块区域CAN采用的散列函 数通过对(key, value)对中的key进行散列运算,得到笛卡尔空间中的一个点, 并将(key, value)对存储在拥有该点所在区域的结点内CAN采用的路由算法 相当直接和简单,知道目标点的坐标后,就将请求传给当前结点四邻中坐标最接 近目标点的结点CAN是一个具有良好可扩展性的系统,给定N个结点,系统维 数为d,则路由路径长度为0(nl/d),每结点维护的路由表信息和网络规模无关 为 0(d) oDHT类结构最大的问题是DHT的维护机制较为复杂,尤其是结点频繁加入退 出造成的网络波动(Churn)会极大增加DHT的维护代价。
DHT所面临的另外一 个问题是DHT仅支持精确关键词匹配查询,无法支持内容/语义等复杂查询半分布式结构(有的文献称作Hybrid Structure)吸取了中心化结构和全 分布式非结构化拓扑的优点,选择性能较高(处理、存储、带宽等方面性能)的 结点作为超级点(英文文献中多称作:SuperNodes, Hubs),在各个超级点上存 储了系统中其他部分结点的信息,发现算法仅在超级点之间转发,超级点再将查 询请求转发给适当的叶子结点半分布式结构也是一个层次式结构,超级点之间 构成一个高速转发层,超级点和所负责的普通结点构成若干层次最典型的案例 就是KaZaaoKaZaa是现在全世界流行的儿款p2p软件之一根据CA公司统计,全球KaZaa 的下载量超过2. 5亿次使用KaZaa软件进行文件传输消耗了互联网40%的带宽 之所以它如此的成功,是因为它结合了 Napster和Gnutella,共同的优点从结 构上来说,它使用了 Gnutella的全分布式的结构,这样可以是系统更好的扩展, 因为它无需中央索引服务器存储文件名,它是自动的把性能好的机器成为 SuperNode,它存储着离它最近的叶子节点的文件信息,这些SuperNode,再连通 起来形成-个Overlay Network.由于SuperNode的索引功能,使搜索效率大大 提高。
什么是笛卡儿空间?就是我们知道的直角坐标系,二维,三维我不能想象到四维是什么样子 的一一有人说我们现在的空间就是四维的,所有的坐标点都与时间垂直,但是我 不知道该怎么画出来一一,所以到目前为止都对多维空间没有什么认识)Otherthings worth to see.httu:〃 8800409196 675277 2c33040a200603.HTMStructure 3全分布非结构化网络在重叠网络(overlay)采用了随机图的组织方式,结 点度数服从〃PoweLlaw〃[a][b]规律,从而能够较快发现目的结点,面对网络的 动态变化体现了较好的容错能力,因此具有较好的可用性同时可以支持复杂查 询,如带有规则表达式的多关键词查询,模糊查询等,最典型的案例是GnutellaGnutella是一个P2P文件共享系统,它和Napster最大的区别在于Gnutella 是纯粹的P2P系统,没有索引服务器,它采用了基于完全随机图的洪泛(Flooding)发现和随机转发(Random Walker)机制为了控制搜索消息的传 输,通过TTL (Time To Live)的减值来实现具体协议参照(Gnutella协议中 文版)在Gnutella分布式对等网络模型N中,每一个联网计算机在功能上都是对 等的,既是客户机同时又是服务器,所以被称为对等机(Servent, Server+Client 的组合)。
随着联网节点的不断增多,网络规模不断扩大,通过这种洪泛方式定位对等 点的方法将造成网络流量急剧增加,从而导致网络中部分低带宽节点因网络资源 过载而失效所以在初期的Gnutella网络中,存在比较严重的分区,断链现象 也就是说,一个查询访问只能在网络的很小一部分进行,因此网络的可扩展性不 好所以,解决Gnutella网络的可扩展性对该网络的进一步发展至关重要由于没有确定拓扑结构的支持,非结构化网络无法保证资源发现的效率即 使需要查找的目的结点存在发现也有可能失败由于采用TTL(Time-to-Live)、 洪泛(Flooding).随机漫步或有选择转发算法,因此直径不可控,可扩展性较 差因此发现的准确性和可扩展性是非结构化网络面临的两个重要问题目前对 此类结构的研究主要集中于改进发现算法和复制策略以提高发现的准确率和性 能Structure 4:半分布式结构的优点是性能、可扩展性较好,较容易管理,但对超级点依赖 性大,易于受到攻击,容错性也受到影响下表比较了4种结构的综合性能,比 较结果如表所示比较标准/拓 扑结构中心化 拓扑全分布式非结构 化拓扑全分布式结构 化拓扑半分布式 拓扑可扩展性差差好中可靠性差好好•I*,可维护性最好最好好中1发现算法效率最高中高中,复杂查询支持支持 J国外开展P2P研究的学术团体主要包括P2P工作组(P2PWG)、全球网格论坛 (Global Grid Forum , GGF)。
P2P工作组成立的主要目的是希望加速P2P计算 基础设施的建立和相应的标准化工作P2PWG成立之后,对P2P计算中的术语进 行了统一,也形成相关的草案,但是在标准化工作方面工作进展缓慢目前P2PWG 已经和GGF合并,由该论坛管理P2P计算相关的工作GGF负责网格计算和P2P 计算等相关的标准化工作从国外公司对P2P计算的支持力度来看,Microsoft公司、Sun公司和Intel 公司投入较大Microsoft公司成立了 Pastry项目组,主要负责P2P计算技术 的研究和开发工作目前Microsoft公司己经发布了基丁 Pastry的软件包 SimPastry/ VisPastryRice 大学也在 Pastry 的基础之上发布了 FreePastry 软件包在2000年8月,Intel公司宣布成立P2P工作组,正式开展P2P的研究 工作组成立以后,积极与应用开发商合作,开发P2P应用平台2002年Tntel 发布了. Net基础架构之上的Accelerator Kit (P2P加速工具包)和P2P安全 API软件包,从而使得微软.NET开发人员能够迅速地建立P2P安全Web应用程 序。
Sun公司以Java技术为背景,开展了 JXTA项目JXTA是基于Java的开源 P2P平台,任何个人和组织均可以加入该项目因此,该项目不仅吸引了大批P2P 研究人员和开发人员,而且已经发布了基于JXTA的即时聊天软件包JXTA定义 了一组核心业务:认证、资源发现和管理在安全方面,JXTA加入了加密软件 包,允许使用该加密包进行数据加密,从而保证消息的隐私、可认证性和完整性 在JXTA核心之上,还定义了包括内容管理、信息搜索以及服务管理在内的各种 其它可选JXTA服务在核心服务和可选服务基础上,用户可以开发各种JXTA 平台上的P2P应用P2P实际的应用主要体现在以下几个方面:P2P分布式存储P2P分布式存储系统是一个用于对等网络的数据存储系统,它可以提供高效 率的、鲁棒的和负载平衡的文件存取功能这些研究包括:OceanStore, Farsite 等。

卡西欧5800p使用说明书资料.ppt
锂金属电池界面稳定化-全面剖析.docx
SG3525斩控式单相交流调压电路设计要点.doc
话剧《枕头人》剧本.docx
重视家风建设全面从严治党治家应成为领导干部必修课PPT模板.pptx
黄渤海区拖网渔具综合调查分析.docx
2024年一级造价工程师考试《建设工程技术与计量(交通运输工程)-公路篇》真题及答案.docx
【课件】Unit+3+Reading+and+Thinking公开课课件人教版(2019)必修第一册.pptx
嵌入式软件开发流程566841551.doc
生命密码PPT课件.ppt
爱与责任-师德之魂.ppt
制冷空调装置自动控制技术讲义.ppt


