p2p技术[编辑]
一、简介:
P2P网络通常用于通过Ad Hoc连接来连接节点。这类网络可以用于多种用途,各种档案分享软件已经得到了广泛的使用。P2P技术也被使用在类似VoIP等实时媒体业务的数据通信中。
纯点对点网络没有客户端或服务器的概念,只有平等的同级节点,同时对网络上的其它节点充当客户端和服务器。这种网络设计模型不同于客户端-服务器模型,在客户端-服务器模型中通信通常来往于一个中央服务器。有些网络(如Napster, OpenNAP, 或IRC @find)的一些功能(比如搜索)使用客户端-服务器结构,而使用P2P结构来实现另外一些功能。类似Gnutella 或Freenet的网络则使用纯P2P结构来实现全部的任务。
二、优势:
P2P网络的一个重要的目标就是让所有的客户端都能提供资源,包括带宽,存储空间和计算能力。因此,当有节点加入且对系统请求增多,整个系统的容量也增大。这是具有一组固定服务器的C/S结构不能实现的,这种结构中客户端的增加意味着所有用户更慢的数据传输。
P2P网络的分布特性通过在多节点上复制数据,也增加了防故障的健壮性,并且在纯P2P网络中,节点不需要依靠一个中心索引服务器来发现数据。在后一种情况下,系统也不会出现单点崩溃。
当用P2P来描述Napster网络时,对等协议被认为是重要的,但是,实际中,Napster网络取得的成就是对等节点(就象网络的末枝)联合一个中心索引来实现。这可以使它能快速并且高效的定位可用的内容。对等协议只是一种通用的方法来实现这一点。
三、应用:
点对点技术有许多应用。共享包含各种格式音频,视频,数据等的文件是非常普遍的,实时数据(如IP电话通信、Anychat音视频)也可以使用P2P技术来传送。
有些网络和通信渠道,像Napster,OpenNAP,和IRC @find,一方面使用了C/S结构来处理一些任务(如搜索功能),另一方面又同时使用P2P结构来处理其他任务。而有些网络,如Gnutella和 Freenet ,使用P2P结构来处理所有的任务,有时被认为是真正的P2P网络。尽管Gnutella 也使用了目录服务器来方便节点得到其它节点的网络地址。
四、安全:
许多P2P网络一直受到怀有各种目的的人的持续攻击。例子包括:
中毒攻击(提供内容与描述不同的文件)
拒绝服务攻击(使网络运行非常慢甚至完全崩溃)
背叛攻击(用户或软件使用网络却没有贡献出自己的资源)
在数据中插入病毒(如,下载或传递的文件可能被感染了病毒或木马)
P2P软件本身的木马(如,软件可能含有间谍软件)
过滤(网络运营商可能会试图禁止传递来自P2P网络上的数据)
身份攻击(如,跟踪网络上用户并且折磨或合法地攻击他们)
垃圾信息(如在网络上发送未请求的信息--不一定是拒绝服务攻击)
如果精心设计P2P网络,使用加密技术,大部分的攻击都可以避免或控制,P2P网络安全事实上与拜占庭将军问题有密切联系。然而,当很多的节点试着破坏它时,几乎任何网络也都会失效,而且许多协议会因用户少而表现得很失败。
五、技术展望:
技术上,一个纯P2P应用必须贯彻只有对等协议,没有服务器和客户端的概念。但这样的纯P2P应用和网络是很少的,大部分称为P2P的网络和应用实际上包含了或者依赖一些非对等单元,如DNS。同时,真正的应用也使用了多个协议,使节点可以同时或分时做客户端,服务器,和对等节点。完全分散的对等网络已经使用了很多年了,象Usenet(1979年)和FidoNet(1984年)这两个例子。
很多P2P系统使用更强的对等点(称为超级对等点)作为服务器,那些客户节点以星状方式连接到一个超级对等点上。
在1990年代末期,为了促进对等网络应用的发展,SUN公司增加了一些类到java技术中,让开发者能开发分散的实时聊天的applet和应用,这是在即时通信流行之前。这个工作有JXTA工程来继续实现。
P2P系统和应用已经吸引了计算机科学研究的大量关注,一些卓越的研究计划包括Chord计划, ARPANET, the PAST storage utility, P-Grid(一个自发组织的新兴覆盖性网络),和CoopNet内容分发系统。
网络营销词典内容均由网友提供,仅供参考。如发现词条内容有问题,请发邮件至info # wm23.com。