P2P原理

P2P概述

P2P的概念

P2P是一种技术,但更多的是一种思想,有着改变整个互联网基础的潜能的思想。
P2P是peer-to-peer的缩写,peer在英语里有“(地位、能力等)同等者”、“同事”和“伙伴”等意义。这样一来,P2P也就可以理解为“伙伴对伙伴”的意思,或称为对等联网。目前人们认为其在加强网络上人的交流、文件交换、分布计算等方面大有前途。   
简单的说,P2P直接将人们联系起来,让人们通过互联网直接交互。P2P使得网络上的沟通变得容易、更直接共享和交互,真正地消除中间商。P2P就是人可以直接连接到其他用户的计算机、交换文件,而不是像过去那样连接到服务器去浏览与下载。P2P另一个重要特点是改变互联网现在的以大网站为中心的状态、重返“非中心化”,并把权力交还给用户。 P2P看起来似乎很新,但是正如B2C、B2B是将现实世界中很平常的东西移植到互联网上一样,P2P并不是什么新东西。在现实生活中我们每天都按照P2P模式面对面地或者通过电话交流和沟通。
事实上,网络上现有的许多服务可以归入P2P的行列。即时讯息系统譬如ICQ、AOL Instant Messenger、Yahoo Pager、微软的MSN Messenger以及国内的OICQ是最流行的P2P应用。

P2P的发展历程

P2P正式步入发展的历史可以追溯到1997年7月,那几乎就是互联网在中国起步的阶段。在一段介绍此时P2P技术的时间表中这样写着:"Hotline Communications is founded, giving consumers software that lets them offer files for download from their own computers."(1997年7月,Hotline Communications公司成立,并且研制了一种可以使其用户从别人电脑中直接下载东西的软件)

早在1998年,美国东北波士顿大学的一年级新生、18岁的肖恩·范宁为了能够解决他的室友的一个问题–如何在网上找到音乐而编写的一个简单的程序,这个程序能够搜索音乐文件并提供检索,把所有的音乐文件地址存放在一个集中的服务器中,这样使用者就能够方便地过滤上百的地址而找到自己需要的MP3文件。

到了1999年,令他们没有想到的是,这个叫做Napster的程序成为了人们争相转告的"杀手程序"–它令无数散布在互联网上的音乐爱好者美梦成真,无数人在一夜之内开始使用Napster。在最高峰时Napster网络有8000万的注册用户,这是一个让其他所有网络望尘莫及的数字。这大概可以作为P2P软件成功进入人们生活的一个标志。

时间表中这样记录着这一段历史:

January 1999:
Shawn Fanning, 18, creates the Napster application and service while a freshman at Northeastern University.
(1999年1月,18岁的美国东北波士顿大学的一年级新生肖恩?范宁开始了Napster程序的服务)
May 1999:
Napster Inc. is founded.
(1999年5月,Napster公司宣告成立)

之所以我们注重开端,是因为这是一个非同意义上的起始,也正是从这天起,P2P开始了它曲折但极富生命力的发展。
到了2000年,P2P技术的发展就得使用月甚至日来记载了。直到现在使用P2P技术的软件比比皆是,人们也在不知不觉中感受到了P2P作为高科技发展载体的快乐。平常我们使用的QQ 、MSN就不提了,其他软件更是铺天盖地,让人目不暇接。

P2P的技术特点

1>· 非中心化(Decentralization):网络中的资源和服务分散在所有结点上,信息的传输和服务的实现都直接在结点之间进行,可以无需中间环节和服务器的介入,避免了可能的瓶颈。P2P的非中心化基本特点,带来了其在可扩展性、健壮性等方面的优势。
2>· 可扩展性:在P2P网络中,随着用户的加入,不仅服务的需求增加了,系统整体的资源和服务能力也在同步地扩充,始终能较容易地满足用户的需要。整个体系是全分布的,不存在瓶颈。理论上其可扩展性几乎可以认为是无限的。
3>· 健壮性:P2P架构天生具有耐攻击、高容错的优点。由于服务是分散在各个结点之间进行的,部分结点或网络遭到破坏对其它部分的影响很小。P2P网络一般在部分结点失效时能够自动调整整体拓扑,保持其它结点的连通性。P2P网络通常都是以自组织的方式建立起来的,并允许结点自由地加入和离开。P2P网络还能够根据网络带宽、结点数、负载等变化不断地做自适应式的调整。
4>· 高性能/价格比:性能优势是P2P被广泛关注的一个重要原因。随着硬件技术的发展,个人计算机的计算和存储能力以及网络带宽等性能依照摩尔定理高速增长。采用P2P架构可以有效地利用互联网中散布的大量普通结点,将计算任务或存储资料分布到所有结点上。利用其中闲置的计算能力或存储空间,达到高性能计算和海量存储的目的。通过利用网络中的大量空闲资源,可以用更低的成本提供更高的计算和存储能力。
5>· 隐私保护: 在P2P网络中,由于信息的传输分散在各节点之间进行而无需经过某个集中环节,用户的隐私信息被窃听和泄漏的可能性大大缩小。此外,目前解决Internet隐私问题主要采用中继转发的技术方法,从而将通信的参与者隐藏在众多的网络实体之中。在传统的一些匿名通信系统中,实现这一机制依赖于某些中继服务器节点。而在P2P中,所有参与者都可以提供中继转发的功能,因而大大提高了匿名通讯的灵活性和可靠性,能够为用户提供更好的隐私保护。
6>· 负载均衡: P2P 网络环境下由于每个节点既是服务器又是客户机,减少了对传统C/S结构服务器计算能力、存储能力的要求,同时因为资源分布在多个节点,更好的实现了整个网的负载均衡。

P2P网络的分类

P2P网络的基本结构有以下三种:

中心化拓扑结构

中式对等网络基于中央目录服务器,为网络中各节目提供目录查询服务,传输内容无需再经过中央服务器。这种网络,结构比较简单,中央服务器的负担大大降低。但由于仍存在中央节点,容易形成传输瓶颈,扩展性也比较差,不适合大型网络。但由于目录集中管理,对于小型网络的管理和控制上倒是一种可选择方案。

全分布式非结构化拓扑结构

无结构分布式网络与集中式的最显著区别在于,它没有中央服务器,所有结点通过与相邻节点间的通信,接入整个网络。在无结构的网络中,节点采用一种查询包的机制来搜索需要的资源。具体的方式为,某节点将包含查询内容的查询包发送到与之相邻的节点,该查询包以扩散的方式在网络中蔓延,由于这样的方式如果不加节制,会造成消息泛滥,因此一般会设置一个适当的生存时间(TTL),在查询的过程中递减,当TTL值为0时,将不再继续发送。

这种无结构的方式,组织方式比较松散,节点的加入与离开比较自由,当查询热门内容时,很容易就能找到,但如果需求的内容比较冷门,较小的TTL不容易找到,而较大的TTL值又容易引起较大的查询流量,尤其当网络范围扩展到一定规模时,即使限制的TTL值较小,仍然会引起流量的剧增。但当网络中存在一些拥有丰富资源的所谓的类服务器节点时,可显著提高查询的效率。

全分布式结构化拓扑结构

 结构化分布式网络,是近几年基于分布式哈希表(Distributed Hash Table)技术的研究成果。它的基本思想是将网络中所有的资源整理成一张巨大的表,表内包含资源的关键字和所存放结点的地址,然后将这张表分割后分别存储到网络中的每一结点中去。当用户在网络中搜索相应的资源时,它将能发现存储与关键词对应的哈希表内容所存放的结点,在该结点中存储了包含所需资源的结点地址,然后发起搜索的结点根据这些地址信息,与对应结点连接并传输资源。这是一种技术上比较先进的对等网络,它具有高度结构化,高可扩展性,结点的加入与离开比较自由。这种方式适合比较大型的网络。

除了以上三种,还有一种半分布式拓扑结构,它吸取了中心化拓扑结构和全分布式结构化拓扑结构的优点,,选择性能较高的结点作为超级节点,在各个超级节点尚存除了系统中其他部分结点的信息,检索算法仅在超级节点间转发,超级节点再将查询请求转发给适当的叶子结点。
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值