Peer to Peer (P2P,对等网络) 综述
p2p对等通信方式的概念 -回复

p2p对等通信方式的概念-回复P2P对等网络通信方式的概念在计算机网络中,P2P(Peer-to-Peer)对等通信方式是一种分布式网络体系结构,其中每个计算机在网络中充当同时作为客户端和服务器的角色。
这种通信方式将每个节点连接起来,形成一个对等网络,允许节点之间直接通信和共享资源,而不需要通过中央服务器。
P2P对等通信方式的概念源于对传统的客户端-服务器(Client-Server)模型的改进。
在传统的客户端-服务器模型中,客户端向服务器发送请求,并由服务器提供所需的资源。
这种模型的缺点是,服务器承担着大量的负载,当服务器崩溃或者连接中断时,整个网络服务也将受到影响。
P2P对等通信方式的优点在于,每个节点都可以独立地提供和请求资源,消除了单点故障的风险,并使网络更有弹性和可靠性。
此外,P2P 对等通信方式还具有更高的扩展性,网络的性能可以随着节点数量的增加而提高。
在P2P对等通信方式中,节点之间的连接是直接的,没有中央服务器的参与。
节点可以在加入网络时进行自动发现,或者通过中央节点提供的引导信息找到其他节点。
一旦节点建立了连接,它们可以通过直接交换数据进行通信。
节点之间的连接可以是点对点的,也可以形成多对多的连接,形成一个分布式网络。
P2P对等通信方式在许多领域都有应用。
最常见的应用之一是文件共享。
在P2P文件共享网络中,参与者可以共享和下载其他用户的文件,而不需要一个中央服务器来存储文件。
每个参与者都是网络的一部分,并且可以同时从其他参与者下载和上传文件。
P2P对等通信方式还广泛应用于实时通信和流媒体传输。
通过P2P对等通信方式,参与者可以直接与其他节点进行语音和视频通话,而不需要通过中央服务器作为中介。
这种方式提供了更低的延迟和更高的音视频质量。
在P2P对等通信方式中,节点之间的连接可以通过不同的方式实现。
其中一种方式是基于NAT穿越的连接。
由于使用了私有IP地址,许多节点都位于NAT(Network Address Translation)后面,这使得节点之间直接通信变得困难。
对等网络(P2P)总结整理解析

对等网络 (P2P一、概述(一定义对等网络 (P2P网络是分布式系统和计算机网络相结合的产物 ,在应用领域和学术界获得了广泛的重视和成功 ,被称为“改变 Internet 的新一代网络技术〞。
对等网络 (P2P:Peer to Peer。
peer指网络结点在 :1 行为上是自由的—任意参加、退出 ,不受其它结点限制 ,匿名 ;2 功能上是平等的—不管实际能力的差异 ;3 连接上是互联的—直接 /间接 ,任两结点可建立逻辑链接,对应物理网上的一条IP 路径。
(二 P2P网络的优势1、充分利用网络带宽P2P不通过效劳器进行信息交换 ,无效劳器瓶颈 ,无单点失效 ,充分利用网络带宽 , 如 BT 下载多个文件 ,可接近实际最大带宽 ,HTTP 及 FTP 很少有这样的效果2、提高网络工作效率结构化 P2P 有严格拓扑结构 ,基于 DHT, 将网络结点、数据对象高效均匀地映射到覆盖网中 ,路由效率高3、开发了每个网络结点的潜力结点资源是指计算能力及存储容量,个人计算机并非永久联网,是临时性的动态结点,称为“网络边缘结点〞。
P2P 使内容“位于中心〞转变为“位于边缘〞,计算模式由“效劳器集中计算〞转变为“分布式协同计算〞。
4、具有高可扩展性 (scalability当网络结点总数增加时 ,可进行可扩展性衡量。
P2P 网络中 ,结点间分摊通信开销 ,无需增加设备 ,路由跳数增量小。
5、良好的容错性主要表达在 :冗余方法、周期性检测、结点自适应状态维护。
二、第一代混合式P2P网络(一主要代表混合式 P2P 网络 ,它是 C/S 和 P2P 两种模式的混合 ;有两个主要代表 :1、Napster—— P2P网络的先驱2、BitTorrent——分片优化的新一代混合式P2P网络(二第一代 P2P网络的特点1、拓扑结构1 混合式 (C/S+P2P2 星型拓扑结构 ,以效劳器为核心2、查询与路由1 用户向效劳器发出查询请求,效劳器返回文件索引2用户根据索引与其它用户进行数据传输3路由跳数为 O(1,即常数跳3、容错性 :取决于效劳器的故障概率(实际网络中 ,由于本钱原因 ,可用性较低。
p2p组队的原理

p2p组队的原理P2P(Peer-to-Peer)组队原理主要是基于对等网络技术,这种技术改变了传统的C/S(Client/Server)通信模式,实现了网络中的点对点通信。
具体来说,P2P组队原理包括以下几个方面:1. 对等网络结构:P2P网络中每个节点都具有相同地位,没有中心节点,所有节点都是平等的。
这意味着每个节点既可以作为服务器为其他节点提供服务,也可以作为客户端从其他节点获取资源。
2. 节点自我管理:在P2P网络中,节点之间相互管理,自主完成网络中的任务分配、数据传输等工作。
这种自我管理的方式能够提高网络的可靠性和稳定性。
3. 网络自组织:当网络中出现某些变化时,节点之间能够快速地重新组织网络,保持网络的稳定性和可靠性。
这种自组织的特点使得P2P网络具有较强的适应性和韧性。
4. 数据传输和任务分配:在P2P组队中,数据传输和任务分配是通过网络中的节点之间的直接连接来实现的。
每个节点都保存着其他节点的信息,并且不断更新。
当一个节点需要数据或完成任务时,它可以通过其他节点直接获取数据或完成任务,而不需要经过中心服务器。
这种方式可以减少对中心服务器的依赖,提高网络的扩展性和可用性。
5. 资源共享:P2P网络还支持节点之间的资源共享,使得网络中的资源得到更加充分的利用。
通过资源共享,每个节点可以将自己的资源提供给其他节点使用,同时也可以从其他节点获取所需的资源。
这种方式可以提高资源的利用率和网络的效率。
总的来说,P2P组队原理的核心思想是去中心化、分布式和自组织。
通过这些特点,P2P技术能够实现高效的资源共享、灵活的任务分配和可靠的数据传输,为人们提供更加便捷和高效的网络服务。
PP协议对等网络中的性能增强协议

PP协议对等网络中的性能增强协议对等(Peer-to-Peer,P2P)协议是一种点对点通信模型,它使得网络中的每个节点都同时是服务的提供方和使用方。
PP协议(Performance-Enhancing Protocol)是一种用于对等网络中提升性能的协议。
本文将重点讨论PP协议在对等网络中的应用,包括其原理、功能和优势。
一、PP协议的原理PP协议通过改进传输过程中的数据传送方法和流量控制机制,以减少延迟、提高吞吐量、增加网络的可靠性。
其原理主要包括以下几个方面:1. 数据缓存与数据预取:PP协议通过在节点中设置数据缓存,将热门数据提前下载到缓存中,以减少数据请求的延迟时间。
2. 数据压缩与传输优化:PP协议会对数据进行压缩,减小数据包的大小,从而减少传输时间。
此外,通过优化传输路径、减少网络拥塞和阻塞等手段,进一步提升数据传输效率。
3. 动态负载均衡:PP协议会根据网络的拓扑结构和节点的计算能力,动态地分配任务和负载,以避免节点过载,提高整体性能。
二、PP协议的功能PP协议在对等网络中拥有多种功能,旨在提升网络性能和用户体验。
1. 资源共享:PP协议允许对等网络中的节点共享资源,例如文件、带宽等。
通过充分利用节点之间的资源,可以提高资源利用率和网络传输效率。
2. 动态组网:PP协议能够自动识别网络中的节点,并构建动态的对等网络,无需中央服务器的介入。
这种分布式的组网方式可以提高网络的可扩展性和灵活性。
3. 安全和隐私保护:PP协议通过加密和身份验证等技术,保护对等网络中的数据安全和用户隐私。
同时,对等网络中的节点也能够相互监督和验证,增加了系统的可信度。
4. 可靠性和容错性:PP协议通过数据冗余和多路径传输等策略,提高了数据传输的可靠性和网络的容错性。
即使某个节点出现故障或离线,数据仍能够通过其他节点传输,保障系统的稳定性。
三、PP协议的优势PP协议在对等网络中具有以下优势:1. 提高网络性能:通过利用节点之间的资源,优化传输策略和减少网络拥塞,PP协议能够显著提高网络的性能,加快数据传输速度。
P2P协议概述

P2P协议概述协议名称:P2P协议概述一、引言P2P(Peer-to-Peer)协议是一种分布式计算和网络通信的协议,它允许互联网上的计算机直接与其他计算机进行通信和资源共享,而无需通过中央服务器。
本协议旨在提供P2P协议的概述,包括其定义、特点、应用领域以及相关的安全和隐私考虑。
二、定义P2P协议是一种点对点通信协议,其中每个节点既是客户端又是服务器。
它允许节点之间直接通信,共享资源和服务,而无需依赖中央服务器。
P2P协议可以用于文件共享、实时通信、流媒体传输等多种应用场景。
三、特点1. 去中心化:P2P协议不需要中央服务器来协调和控制节点之间的通信,每个节点都具有相同的权利和责任。
2. 可扩展性:P2P网络可以随着节点数量的增加而扩展,节点之间的负载和资源共享能力可以平衡。
3. 自组织性:P2P网络中的节点可以自主地加入或离开网络,网络拓扑结构可以自动调整以适应节点的变化。
4. 高效性:P2P协议利用多个节点的计算和存储资源,提供更高的数据传输速度和更好的系统性能。
5. 安全性:P2P协议可以通过加密和认证机制来保护节点之间的通信和共享的资源,防止恶意攻击和非法访问。
四、应用领域1. 文件共享:P2P协议可以用于实现大规模的文件共享网络,如BitTorrent等,用户可以通过P2P网络快速下载和分享文件。
2. 实时通信:P2P协议可以用于实现实时音视频通信,如Skype和WebRTC等,用户可以通过P2P网络进行高质量的语音和视频通话。
3. 流媒体传输:P2P协议可以用于实现大规模的流媒体传输,如PPLive和PPStream等,用户可以通过P2P网络观看高清视频直播。
4. 分布式计算:P2P协议可以用于实现分布式计算,如BOINC和SETI@home 等,用户可以通过P2P网络共享计算资源,解决复杂的科学和工程问题。
五、安全和隐私考虑1. 身份认证:P2P协议应该提供身份认证机制,确保节点之间的通信和资源共享只限于合法和信任的节点。
P2P协议概述

P2P协议概述协议名称:P2P协议概述概述:P2P(Peer-to-Peer)协议是一种点对点通信协议,它允许直接从一个节点到另一个节点进行通信,而无需通过中央服务器的中转。
P2P协议的目标是实现高效、安全和可扩展的分布式通信。
本文将详细介绍P2P协议的基本原理、功能特点和设计要求。
一、基本原理:P2P协议基于分布式网络架构,其中的节点既可以是服务提供者,也可以是服务请求者。
节点之间通过直接连接进行通信,每个节点既是服务的提供者,也是服务的请求者。
P2P网络不依赖于中央服务器,而是通过协议规定的方式进行节点之间的发现、连接和数据传输。
二、功能特点:1. 去中心化:P2P协议不依赖于中央服务器,节点之间通过直接连接进行通信,提高了系统的可靠性和可扩展性。
2. 自动发现:P2P网络中的节点能够自动发现其他节点,并建立连接,实现动态的节点加入和离开。
3. 数据传输:P2P协议支持节点之间的数据传输,可以实现文件共享、实时通信等功能。
4. 路由和转发:P2P网络中的节点能够根据协议规定的路由算法进行数据的转发,实现节点之间的可达性。
5. 安全性:P2P协议可以通过加密和身份验证等机制来确保通信的安全性。
三、设计要求:1. 协议规范:P2P协议应明确规定节点之间的通信规范,包括消息格式、数据结构、协议头等,确保节点之间能够正确解析和处理收到的数据。
2. 可扩展性:P2P协议应支持节点的动态加入和离开,能够自适应网络拓扑的变化,实现系统的可扩展性。
3. 高效性:P2P协议应优化数据传输的效率,减少节点之间的通信延迟和带宽消耗,提高系统的性能。
4. 安全性:P2P协议应提供安全机制,包括身份验证、加密传输、防止拒绝服务攻击等,确保通信的机密性和完整性。
5. 可靠性:P2P协议应具备容错和恢复机制,能够处理节点故障和网络异常情况,确保系统的可靠性和稳定性。
四、总结:P2P协议是一种点对点通信协议,通过直接连接实现节点之间的通信,具备去中心化、自动发现、数据传输、路由和转发、安全性等功能特点。
对等网实验报告

对等网实验报告对等网实验报告一、引言随着互联网的快速发展,传统的中心化网络架构已经不能满足人们对高效、安全、可靠的网络通信的需求。
对等网(Peer-to-Peer,P2P)作为一种新型的网络架构,以其分布式、去中心化的特点,逐渐引起了人们的关注。
本实验旨在通过对等网的实验,探索其优势和应用潜力。
二、背景对等网是一种基于对等通信原理的网络架构,其核心思想是将网络中的每台计算机都视为一个节点,实现节点之间的直接通信和资源共享,而不需要依赖中心服务器。
这种去中心化的架构使得对等网具有更好的可扩展性、鲁棒性和抗攻击性。
三、实验过程1. 网络拓扑搭建在实验开始前,我们搭建了一个包含10台计算机的局域网。
每台计算机都安装了对等网软件,并通过局域网连接起来。
这样,这些计算机就可以相互发现和通信。
2. 节点发现与连接在对等网中,节点的发现和连接是非常重要的。
我们通过对等网软件提供的自动发现功能,使得每个节点可以主动发现其他节点,并建立连接。
通过这种方式,我们建立了一个包含10个节点的对等网。
3. 资源共享对等网最大的优势之一是资源共享。
我们在实验中选择了一个文件作为共享资源,并将其上传到对等网中的某个节点。
其他节点可以通过对等网软件进行搜索,并下载所需的文件。
通过实验,我们发现资源共享的速度相比传统的中心化网络更快,而且更加稳定。
4. 去中心化的优势在实验过程中,我们发现对等网的去中心化架构具有一些明显的优势。
首先,对等网可以更好地应对节点故障。
当某个节点出现故障时,其他节点仍然可以继续工作,不会造成整个系统的瘫痪。
其次,对等网可以更好地应对网络攻击。
由于节点之间的通信是直接的,攻击者很难通过攻击中心服务器来破坏整个系统。
四、实验结果分析通过实验,我们得出了以下几点结论:1. 对等网具有更好的可扩展性。
由于对等网的节点数量不受限制,可以根据需求随时增加或减少节点数量,从而实现更好的可扩展性。
2. 对等网具有更好的鲁棒性。
Peer-To-Peer介绍最近几年,Peer-to-Peer(对等计算,简称P2P)迅速

Peer-T o-Peer 介绍最近几年,Peer-to-Peer (对等计算,简称P2P) 迅速成为计算机界关注的热门话题之一,财富杂志更将P2P列为影响Internet未来的四项科技之一。
“Peer”在英语里有“对等者”和“伙伴”的意义。
因此,从字面上,P2P可以理解为对等互联网。
国内的媒体一般将P2P翻译成“点对点”或者“端对端”,学术界则统一称为对等计算。
P2P可以定义为:网络的参与者共享他们所拥有的一部分硬件资源(处理能力、存储能力、网络连接能力、打印机等),这些共享资源通过网络提供服务和内容,能被其它对等节点(Peer)直接访问而无需经过中间实体。
在此网络中的参与者既是资源(服务和内容)提供者(Server),又是资源获取者(Client)。
客观地说,这种计算模式并不是什么新技术,自从上个世纪70年代网络产生以来就存在了,只不过当时的网络带宽和传播速度限制了这种计算模式的发展。
90年代末,随着高速互联网的普及、个人计算机计算和存储能力的提升,P2P技术重新登上历史舞台并且带来了一场技术上的革命。
许多基于P2P技术的杀手级应用应运而生,给人们的生活带来了极大的便利。
从计算模式上来说,P2P打破了传统的Client/Server (C/S)模式,在网络中的每个结点的地位都是对等的。
每个结点既充当服务器,为其他结点提供服务,同时也享用其他结点提供的服务。
P2P与C/S模式的对比如下图所示:图1 Client/Server模式图2 Peer to Peer 模式P2P技术的特点体现在以下几个方面[1]:∙非中心化:网络中的资源和服务分散在所有结点上,信息的传输和服务的实现都直接在结点之间进行,可以无需中间环节和服务器的介入,避免了可能的瓶颈。
P2P的非中心化基本特点,带来了其在可扩展性、健壮性等方面的优势。
∙可扩展性:在P2P网络中,随着用户的加入,不仅服务的需求增加了,系统整体的资源和服务能力也在同步地扩充,始终能比较容易地满足用户的需要。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Peer to Peer (P2P,对等网络) 综述献给对P2P网络感兴趣的朋友们:Peer-to-Peer 综述罗杰文中科院计算技术研究所目录1. Peer-To-Peer 网络介绍2. P2P网络的拓扑结构分类3. P2P搜索技术研究与挑战4. P2P应用研究与前景展望后记Peer-to-Peer 综述上一页下一页第 2 章 P2P网络的拓扑结构拓扑结构是指分布式系统中各个计算单元之间的物理或逻辑的互联关系,结点之间的拓扑结构一直是确定系统类型的重要依据。
目前互联网络中广泛使用集中式、层次式等拓扑结构。
Internet本身是世界上最大的非集中式的互联网络,但是九十年代所建立的一些网络应用系统却是完全的集中式的系统,许多Web应用都是运行在集中式的服务器系统上。
集中式拓扑结构系统目前面临着过量存储负载、DOS(Denial of Service,拒绝服务)攻击,网络带宽限制等一些难以解决的问题。
Peer-to-Peer (简称P2P) 系统主要采用非集中式的拓扑结构,一般来说不存在上述这些难题。
根据结构关系可以将P2P系统细分为四种拓扑形式:●中心化拓扑(Centralized Topology);●全分布式非结构化拓扑(Decentralized Unstructured Topology);●全分布式结构化拓扑(Decentralized Structured Topology,也称作DHT网络);●半分布式拓扑(Partially Decentralized Topology)。
其中,中心化拓扑最大的优点是维护简单,资源发现效率高。
由于资源的发现依赖中心化的目录系统,发现算法灵活高效并能够实现复杂查询。
最大的问题与传统客户机/服务器结构类似,容易造成单点故障,访问的“热点”现象和版权纠纷等相关问题,这是第一代P2P网络采用的结构模式,经典案例就是著名的MP3共享软件Napster[1].Napster是最早出现的P2P系统之一,并在短期内迅速成长起来。
它实质上并非是纯粹的P2P 系统,而是通过一个中央索引服务器保存所有Napster用户上传的音乐文件索引和存放位置的信息。
它的工作原理如图1所示。
当某个用户需要某个音乐文件时,首先连接到Napster中央索引服务器,在服务器上进行检索,服务器返回存有该文件的用户信息,再由请求者直接连到文件的所有者传输文件。
Napster首先实现了文件查询与文件传输的分离,有效地节省了中央服务器的带宽消耗,减少了系统的文件传输延时。
图1 Napster的拓扑结构然而,这种对等网络模型存在以下这些问题:●中央索引服务器的瘫痪容易导致整个网络的崩溃,因此可靠性和安全性较低。
●随着网络规模的扩大,对中央索引服务器进行维护和更新的费用将急剧增加,所需成本较高。
●中央索引服务器的存在常引起版权问题上的纠纷,服务提供商容易被追究法律责任。
综合上述优缺点,对小型网络而言,中心化拓扑模型在管理和控制方面占一定优势。
但鉴于其存在的上述缺陷,该模型并不适合大型网络应用。
全分布式非结构化拓扑的P2P网络是在重叠网络(Overlay Network)(见标注1)采用了随机图的组织方式,结点度数服从Power-law规律(幂次法则)[2],从而能够较快发现目的结点,面对网络的动态变化体现了较好的容错能力,因此具有较好的可用性。
同时可以支持复杂查询,如带有规则表达式的多关键词查询,模糊查询等,采用这种拓扑结构最典型的案例便是Gnutella(音译:纽特拉)。
准确地说,Gnutella不是特指某一款软件,而是指遵守Gnutella协议[3]的网络以及客户端软件的统称。
目前基于Gnutella网络的客户端软件非常多,著名的有Shareaza、LimeWire和BearShare等。
图2Gnutella的拓扑结构和文件检索方法Gnutella和Napster最大的区别在于Gnutella是更加纯粹的P2P系统,因为它没有中央索引服务器,每台机器在Gnutella网络中是真正的对等关系,既是客户机同时又是服务器,所以被称为对等机(Servent,Server+Client的组合)。
在文件检索方面,它与Napster也不相同。
在Gnutella网络的发展初期,它主要采用基于完全随机图的Flooding搜索算法。
图2 显示了Flooding的工作流程:当一台计算机要下载一个文件,它首先以文件名或者关键字生成一个查询,并把这个查询发送给与它相连的所有计算机,这些计算机如果存在这个文件,则与查询的机器建立连接,如果不存在这个文件,则继续在自己相邻的计算机之间转发这个查询,直到找到文件为止。
为了控制搜索消息不至于永远这样传递下去,一般通过TTL (Time To Live)的减值来控制查询的深度。
但是,随着联网节点的不断增多,网络规模不断扩大,通过这种Flooding方式定位对等点的方法将造成网络流量急剧增加,从而导致网络中部分低带宽节点因网络资源过载而失效。
所以在初期的Gnutella网络中,存在比较严重的分区,断链现象。
也就是说,一个查询访问只能在网络的很小一部分进行,因此网络的可扩展性不好。
所以,后来许多研究人员在Flooding的基础上作了许多改进,例如采用Random work [4]、Dynamic Query[5]等方法。
由于非结构化网络将重叠网络认为是一个完全随机图,结点之间的链路没有遵循某些预先定义的拓扑来构建。
这些系统一般不提供性能保证,但容错性好,支持复杂的查询,并受结点频繁加入和退出系统的影响小。
但是查询的结果可能不完全,查询速度较慢,采用Flooding 查询的系统对网络带宽的消耗非常大,并由此带来可扩展性差等问题。
全分布式结构化拓扑的P2P网络主要是采用分布式散列表(Distributed Hash Table, 简写成DHT)技术来组织网络中的结点。
DHT是一个由广域范围大量结点共同维护的巨大散列表。
散列表被分割成不连续的块,每个结点被分配给一个属于自己的散列块,并成为这个散列块的管理者。
通过加密散列函数,一个对象的名字或关键词被映射为128位或160位的散列值。
分布式散列表起源于SDDS(Scalable Distribute Data Structures)[6]研究,Gribble等实现了一个高度可扩展,容错的SDDS集群。
DHT类结构能够自适应结点的动态加入/退出,有着良好的可扩展性、鲁棒性、结点ID分配的均匀性和自组织能力。
由于重叠网络采用了确定性拓扑结构,DHT可以提供精确的发现。
只要目的结点存在于网络中DHT总能发现它,发现的准确性得到了保证,最经典的案例是Tapestry,Pastry,Chord和CAN。
Tapestry [7]提供了一个分布式容错查找和路由基础平台,在此平台基础之上,可以开发各种P2P应用(OceanStore[8]即是此平台上的一个应用)。
Tapestry的思想来源于Plaxton。
在Plaxton中,结点使用自己所知道的邻近结点表,按照目的ID来逐步传递消息。
Tapestry基于Plaxton的思想,加入了容错机制,从而可适应P2P的动态变化的特点。
OceanStore是以Tapestry为路由和查找基础设施的P2P平台。
它是一个适合于全球数据存储的P2P应用系统。
任何用户均可以加入OceanStore系统,或者共享自己的存储空间,或者使用该系统中的资源。
通过使用复制和缓存技术,OceanStore可提高查找的效率。
最近,Tapestry为适应P2P网络的动态特性,作了很多改进,增加了额外的机制实现了网络的软状态(soft state),并提供了自组织、鲁棒性、可扩展性和动态适应性,当网络高负载且有失效结点时候性能有限降低,消除了对全局信息的依赖、根结点易失效和弹性差的问题。
Pastry 是微软研究院提出的可扩展的分布式对象定位和路由协议,可用于构建大规模的P2P 系统。
如图3 所示,在Pastry中,每个结点分配一个128位的结点标识符号(nodeID) ,所有的结点标识符形成了一个环形的nodeID空间,范围从0到2128 - 1 ,结点加入系统时通过散列结点IP地址在128位nodeID空间中随机分配。
网络结点的加入与退出,资源查询的过程可以参考文献[9]。
图3Pastry的消息路由Chord [10]项目诞生于美国的麻省理工学院。
它的目标是提供一个适合于P2P环境的分布式资源发现服务,它通过使用DHT技术使得发现指定对象只需要维护O(logN)长度的路由表。
在DHT技术中,网络结点按照一定的方式分配一个唯一结点标识符(Node ID) ,资源对象通过散列运算产生一个唯一的资源标识符(Object ID) ,且该资源将存储在结点ID与之相等或者相近的结点上。
需要查找该资源时,采用同样的方法可定位到存储该资源的结点。
因此,Chord的主要贡献是提出了一个分布式查找协议,该协议可将指定的关键字(Key) 映射到对应的结点(Node) 。
从算法来看,Chord是相容散列算法的变体。
图4 Chord的拓扑形状CAN(Content Addressable Networks)[11] 项目采用多维的标识符空间来实现分布式散列算法。
CAN将所有结点映射到一个n维的笛卡尔空间中,并为每个结点尽可能均匀的分配一块区域。
CAN采用的散列函数通过对(key, value) 对中的key进行散列运算,得到笛卡尔空间中的一个点,并将(key, value) 对存储在拥有该点所在区域的结点内。
CAN采用的路由算法相当直接和简单,知道目标点的坐标后,就将请求传给当前结点四邻中坐标最接近目标点的结点。
CAN是一个具有良好可扩展性的系统,给定N个结点,系统维数为d,则路由路径长度为O(n1/d) ,每结点维护的路由表信息和网络规模无关为O(d) 。
上述四种基于DHT的P2P系统的性能比较可以参照[12]。
DHT这类结构最大的问题是DHT的维护机制较为复杂,尤其是结点频繁加入退出造成的网络波动(Churn)会极大增加DHT的维护代价。
DHT所面临的另外一个问题是DHT仅支持精确关键词匹配查询,无法支持内容/语义等复杂查询。
半分布式拓扑结构(有的文献亦称作混杂模式,英文表达为Hybrid Structure)吸取了中心化结构和全分布式非结构化拓扑的优点,选择性能较高(处理、存储、带宽等方面性能)的结点作为超级结点(英文表达为SuperNodes或者Hubs),在各个超级结点上存储了系统中其他部分结点的信息,发现算法仅在超级结点之间转发,超级结点再将查询请求转发给适当的叶子结点。
半分布式结构也是一个层次式结构,超级结点之间构成一个高速转发层,超级结点和所负责的普通结点构成若干层次。