1简介
纯点对点网络没有 客户端或服务器的概念,只有平等的同级节点,同时对网络上的其它节点充当客户端和服务器。这种网络设计模型不同于 客户端-服务器模型,在客户端-服务器模型中通信通常来往于一个中央服务器。
有些网络(如Napster,OpenNAP,或IRC@find)的一些功能(比如搜索)使用 客户端-服务器结构,而使用P2P结构来实现另外一些功能。类似Gnutella或Freenet的网络则使用纯P2P结构来实现全部的任务。
点对点即是下载同样资料的人,可以通过 客户端和服务器来加快下载进度。
历史 P2P架构体现了一个互联网技术的关键概念,这一概念被描述在1969年4月7日第一份RFC文档“RFC1,主机软件”[1]中。而最近,在不用中心索引服务器结构实现 多媒体文件交换的背景下,这个概念已经变得非常普遍了。
分类
依中央化程度
纯P2P:
节点同时作为 客户端和服务器端。
没有中心服务器。
没有 中心路由器。
如Gnutella。
杂P2P:
有一个中心服务器保存 节点的信息并对请求这些信息的要求做出响应。
节点负责发布这些信息(因为中心服务器并不保存文件),让中心服务器知道它们想共享什么文件,让需要它的节点下载其可共享的资源。
路由 终端使用地址,通过被一组索引引用来取得 绝对地址。
如最原始的Napster。
混合P2P:
同时含有纯P2P和杂P2P的特点。
如Skype。
2应用
依网路拓扑结构:
结构P2P:
点对点之间互有连结资讯,彼此形成特定规则 拓扑结构。
需要请求某资源时,依该 拓扑结构规则寻找,若存在则一定找得到。
如Chord、CAN。
无结构P2P:
点对点之间互有连结资讯,彼此形成无规则 网状拓扑结构。
需要请求某资源点时,以广播方式寻找,通常会设TTL,即使存在也不一定找得到。
如Gnutella。
松散结构P2P:
点对点之间互有连结资讯,彼此形成无规则 网状拓扑结构。
需要请求某资源时,依现有资讯推测寻找,介于结构P2P和无结构P2P之间。
如Freenet。
P2P网络的优势
P2P网络的一个重要的目标就是让所有的 客户端都能提供资源,包括带宽, 存储空间和计算能力。因此,当有 节点加入且对系统请求增多,整个系统的容量也增大。这是具有一组固定服务器的Client-Server结构不能实现的,因为在上述这种结构中, 客户端的增加意味着所有用户更慢的数据传输。
P2P网络的分布特性通过在多 节点上复制数据,也增加了防故障的健壮性,并且在纯P2P网络中,节点不需要依靠一个中心索引服务器来发现数据。在后一种情况下,系统也不会出现单点崩溃。
当用P2P来描述Napster网络时,对等协议被认为是重要的,但是,实际中,Napster网络取得的成就是对等节点(就像网络的末枝)联合一个中心索引来实现。这可以使它能快速并且高效的定位可用的内容。对等协议只是一种通用的方法来实现这一点。
应用
eMule 点对点技术有许多应用。共享包含各种格式音频,视频,数据等的文件是非常普遍的,即时数据(如IP电话通信)也可以使用P2P技术来传送。
有些网路和通信渠道,像Napster,OpenNAP,和IRC@find,一方面使用了 主从式架构结构来处理一些任务(如搜索功能),另一方面又同时使用P2P结构来处理其他任务。而有些网路,如Gnutella和Freenet,使用P2P结构来处理所有的任务,有时被认为是真正的P2P网路。尽管Gnutella也使用了目录伺服器来方便节点得到其它节点的网路地址。
学术性P2P网络
最近,宾西法尼亚州立大学的开发者,联合了 麻省理工学院开放知识行动, 西蒙弗雷泽大学的研究人员,还有第二代互连网P2P工作组,正在开发一个P2P网络的学术性应用。这个项目称为LionShare,基于第二代网络技术,更详细地说是Gnutella模型。这个网络的主要目的是让众多不同学术机构的用户能够共享学术材料。LionShare网络使用杂P2P 网络类型,混合了Gnutella分散的P2P网络和传统的C/S网络。这个程序的用户能够上传文件到一个服务器上,不管用户是否在线,都能够持续的共享。这个网络也允许在比正常小得多的共享社区中使用。
这个网络与当前正在使用的其他P2P网络的主要不同是LionShare网络不允许匿名用户。这样做的目的是防止版权材料在网络上共享,这同时也避免了法律纠纷。另一个不同是对不同组有选择性的共享个别的文件。用户能个别选择哪些用户可以接收这一个文件或者这一组文件。
学术社区需要这种技术,因为有越来越多的 多媒体文件应用在课堂上。越来越多的教授使用 多媒体文件,象音频文件,视频文件和幻灯片。把这些文件传给学生是件困难的任务,而这如果用LionShare这类网络则容易的多。
3争议
法律方面
在 美国法律中,“Betamax判决”的判例坚持复制“技术”不是本质非法的,如果它们有实质性非侵权用途。这个因特网广泛使用之前的决定被应用于大部分的数据网络,包括P2P网络,因为已得到认可的文件的传播也是可以的。这些非侵犯的使用包括发放 开放源代码软件,公共领域文件和不在版权范围之内的作品。其他司法部门也可用类似的方式看待这个情况。
实际上,大多数在P2P网络上共享的文件是版权流行音乐和电影,包括各种格式(MP3,MPEG,RM等)。在多数司法范围中,共享这些复本是非法的。这让很多观察者,包括多数的媒体公司和一些P2P的倡导者,批评这种网络已经对现有的发行模式造成了巨大的威胁。试图测量实际金钱损失的研究多少有些意义不明。虽然纸面上这些网络的存在而导致的大量损失,而实际上自从这些网络建成以来,实际的收入并没有多大的变化。不管这种威胁是否存在, 美国唱片协会和美国电影
协会正花费大量的钱来试着游说立法者来建立新的法律。一些版权拥有者也向公司出钱希望帮助在法律上挑战从事非法共享他们材料的用户。
尽管有Betamax判决,P2P网络已经成为那些 艺术家和版权许可组织的代表攻击的靶子。这里面包括 美国唱片协会和美国电影协会等行业组织。Napster服务由于 美国唱片协会的投诉而被迫关闭。在这个案例中,Napster故意地买卖这些并没有从版权所有者那得到许可发行的音像文件。
随着媒体公司打击版权侵犯的行为扩大,这些网络也迅速不断地作了调整,让其无论从技术上还是法律上都难于撤除。这导致真正犯法的用户成为目标,因为虽然潜在的技术是合法的,但是用侵犯版权的方式来传播的个人对它的滥用很明显是非法的。
匿名P2P网络允许发布材料,无论合法不合法,在各种司法范围内都很少或不承担法律责任。很多人表示这将导致更多的非法材料更容易传播,甚至(有些人指出)促进恐怖主义,要求在这些领域对其进行规范。而其他人则反对说,非法使用的潜在能力不能阻止这种技术作为合法目的的使用,无罪推定必须得以应用,象其他非P2P技术的匿名服务,如 电子邮件,同样有着相似的能力。
重要案例:
美国法律
SonyCorp.vsUniversalCityStudios(Betamax判决)
MGMvsGrokster
安全方面
许多P2P网络一直受到怀有各种目的的人的持续攻击。例子包括:
中毒攻击(提供内容与描述不同的文件)
拒绝服务攻击(使网络运行非常慢甚至完全崩溃)
背叛攻击(用户或软件使用网络却没有贡献出自己的资源)
在数据中插入病毒(如,下载或传递的文件可能被感染了病毒或 木马)
P2P软件本身的 木马(如,软件可能含有 间谍软件)
过滤( 网络运营商可能会试图禁止传递来自P2P网络上的数据)
身份攻击(如,跟踪网络上用户并且进行不断骚扰式的或者是用合法性地攻击他们)
垃圾信息(如在网络上发送未请求的信息--不一定是 拒绝服务攻击)
如果精心设计P2P网络,使用 加密技术,大部分的攻击都可以避免或控制,P2P网络安全事实上与 拜占庭将军问题有密切联系。然而,当很多的 节点试着破坏它时,几乎任何网络也都会失效,而且许多协议会因用户少而表现得很失败。
2007年4月23日,CA公司发表资安警讯,指出Foxy、BitComet、eDonkey、µTorrent、Ares、Azureus、BearShare、 Lphant、Shareaza、Hamachi、exeemlite、Fpsetup、Morpheus、iMesh等14个P2P软体都存在安全威胁,这些P2P软体的潜在威胁来源包括可能会覆写档案、为档案重新命名、删除档案、被第三方植入恶意程式等。
计算技术展望
技术上,一个纯P2P应用必须贯彻只有对等协议,没有服务器和 客户端的概念。但这样的纯P2P应用和网络是很少的,大部分称为P2P的网络和应用实际上包含了或者依赖一些非对等单元,如DNS。同时,真正的应用也使用了多个协议,使 节点可以同时或分时做 客户端,服务器,和对等节点。完全分散的 对等网络已经使用了很多年了,象Usenet(1979年)和FidoNet(1984年)这两个例子。
很多P2P系统使用更强的对等点(称为超级对等点(SuperNode))作为服务器,那些客户节点以星状方式连接到一个超级对等点上。
在1990年代末期,为了促进 对等网络应用的发展,升阳(SUN)公司增加了一些类到Java技术中,让开发者能开发分散的实时聊天的applet和应用,这是在 即时通信流行之前。这个工作现在有JXTA工程来继续实现。
P2P系统和应用已经吸引了计算机科学研究的大量关注,一些卓越的研究计划包括Chord计划,ARPANET,thePASTstorageutility,P-Grid(一个自发组织的新兴覆盖性网络),和CoopNet内容分发系统。
限制
中华人民共和国
P2P技术在 中国法律方面处于空白状态,原则不受中国政府的官方限制。但由于P2P技术会大量占用 网络带宽,并且由于 中国的网络设施的现状和中国对 网络管理的态度,都不同程度的对P2P通讯方式有所限制。
目前 中国各大ISP对 网络接入都进行了限速,通常为512K/s以下,对占用带宽的应用比如P2P,会采取措施,常用的手段有限制TCP连接数,封锁P2P协议,限制下载/ 上传速度等。但是由于这些行为大部分都是秘密进行,因此 中国众多P2P使用者称,此举严重侵犯了他们的知情权和使用权。在 中国,被限制最多的P2P软件是BitTorrent系列软件和eMule。
此外, 中国出于对国内产业支持和信息控制的考量,也会限制一些P2P方式的 即时通讯软件。 中国信息产业部曾发文要求VOIP只能在指定的 网络运营商进行试验,并有地区封杀skype,不过也有官员对此否认并说明只是针对PC-Phone[2]。
日本
在 日本,根据日本现行著作权法,日本境内一切免费提供 商业软件/或其他数据下载的网站均属非法。违法情节严重的可被判处有期徒刑,同时处以罚款。BitTorrent系列软件和eMule均被禁止。但是,P2P技术在 日本仍然流行。这多亏了Share和Winny软件的发明。这两款软件都采用了IP加密和 数据加密的技术,目前 日本有几百万人使用这两款软件来交流动画,游戏,音乐,软件等数据,但显然警方已经掌控了追查使用者的方法。2008年5月9日,三名在share上发布大量版权保护作品的职人遭到逮捕。这两款软件的流行也带来了一些负面问题,比如机密资料的泄漏和 计算机病毒的传播。