P2P技术探讨

2012-03-30 10:11内蒙古商贸职业学院李占平
电子世界 2012年10期
关键词:结点用户

内蒙古商贸职业学院 李占平

P2P是英文peer-to-peer的缩写,peer在英语里有“同等者”、“同事”和“伙伴”等意义。P2P可以理解为“伙伴对伙伴”的意思,或称为对等互联。国内的媒体一般将P2P翻译成“端对端”或者“点对点”。P2P是一种技术,但更多的是一种思想,它有着改变整个互联网基础的潜能。它的核心思想是:上网用户之间自由的、不受主服务器控制的信息交流。P2P使得网络上的沟通变得容易、更直接共享和交互,真正地消除中间商。因此,P2P这种网络应用模式已经深入人心,在Napster之后各种各样的P2P软件就层出不穷了:eMule,KaZaA(可多任务搜索:P2P软件Kazaa新版发布),ezPeer,Shareaza,eDonkey,BT(BT软件的前世今生全面窥视)等文件交换软件;ICQ,QQ,MSN Messenger,Yahoo通等即时通信软件还有以Skype(在线通话新选择Skype软件闪亮登场)为代表的语音通信软件。

一、P2P的发展简史

P2P计算并非一种全新的技术。虽然P2P这个术语是现在才发明的,但P2P本身的基本技术的存在时间却至少和USENET、FidoNet这两种非常成功的分布式对等网络技术一样长,甚至更长些。关键在于,在最初的P2P应用出现时,许多使用该技术的人们甚至不会使用计算机。

USENET产生于1979年,是一种分布式系统,能够为各个地方提供新闻组。USENET最早的雏形由是两名研究生Tom Truscott和Jim Ellis实现的。当时并没有任何类似于互联网上“随选”信息的概念,文件只能通过电话线批量传送,且常常选在长途费用比较低的夜间进行。因此,当时的USENET若采用集中式的控制管理方法将效率低下,自然而然地就提出了一种分散、分布式的管理方法。

早期P2P应用另一个杰出的代表则是FidoNet。它和USENET类似,也是一个分散、分布的信息交换系统。Tom Jennings于1984年创建了FidoNet系统,来让不同BBS系统中的用户们互相交换信息。这种符合人们需要的技术,迅速成长起来,并一直沿用到今天。

USENET和FidoNet都是值得探究的系统,因为它们在多年前就遇到并解决了许多当今P2P技术所面临的同样问题,同时也还存在着安全性以及其他一些问题。为了开发成功的P2P计算系统,首先必须了解这些P2P技术的发展历史。

其次的是,Napster,这个名字你一定要记住。就是它让P2P回到了人们的视野之中,让P2P回到了舞台的中央。Napster是一个音乐共享软件,开创性地在互联网上推出了音乐交换服务。利用它,用户可以搜索、下载彼此计算机里存储的MP3文件。由于这种方式免费而且方便,所以在短短的时间内Napster就产生了巨大的影响力。但免费下载歌曲触犯了版权法,所以也是在短短的时间内Napster就被告上了法庭。

二、P2P的工作原理

早期的计算机使用的是众多用户共享大型计算机,后来个人计算机得以发展,使得应用模式从集中走向了分布模式。在互联网上也存在着类似的情况,起先采用客户机(浏览器)-服务器方式,用户使用网站上集中的服务器,进一步将逐步发展为走向分布式,集中的服务器变成分布的,即每一个用户终端一个结点。结点既是客户机又是服务器,这就是P2P对等连接模式。

在P2P模式中,每一个结点可以存储内容,也拥有计算力。通过在互联网上对等连接这些结点,用户可以共享内容和计算力。以共享下载文件为例,在下载同一个文件的众多用户中,每一个用户终端只需要下载文件的一个片段,然后互相交换,最终每个用户都得到完整的文件,即实现了共享内容。网格就是一个共享计算力的例子。

实现P2P的第一步是在互联网上进行检索,找到拥有所需内容和计算力的结点的地址,第二步是通过互联网实现对等连接。为了充分发挥互联网无所不在的优势,P2P不能对互联网协议进行任何修改,因而解决的方法是在基础的互联网上架设一个P2P重叠网。

三、JXTA平台实现P2P标准化应用

1.JXTA的作用,JXTA与P2P的关系

JXTA是为了构建P2P网络而制订的一组协议,是处理构建P2P网络所碰到的问题的解决方法。JXTA致力于为P2P应用提供一个P2P平台基础。其中包括一系列独立于语言,平台和网络技术之外的协议(假设并不知道网络的下层实现)。这些协议解决了P2P应用的基本需求。协议的设计目标是简单并且低成本,引用JXTA目标声明的话就是“每一个设备都有一个数字心跳”(every device with a digital heartbeat)。

JXTA将会成为P2P应用的地层开发平台。现在的JXTA还处在初级阶段,未来它会逐渐成熟提供一个强壮的,可靠的框架给P2P计算。由于Java是构建异构环境下应用的首选所以它也是建立P2P应用的自然选择。我希望这篇文章能够带给您启发,帮助您开始探索JXTA和P2P世界。

2.JXTA的核心协议分析及各自的主要用途

(1)Peer Discovery Protocol(PDP)对等点发现协议

Peer使用这个协议来发现被发布出来的Jxta资源。由于广告就是代表着发布的资源,所以PDP的主要工作就是帮助peer来其它peer的广告。作为最低级别的发现协议,PDP提供发现的最基本机制。应用程序可以选择使用其它更高级别的发现机制。PDP可以作为低基本的协议为其它高级别协议提供服务。

(2)Peer Resolver Protocol(PRP)对等点解析协议

在通常情况下,peer向其它peer发送查询消息来定位服务或者内容。Peer Resolver Protocol会将查询的格式标准化。使用这个协议,peer可以发送通用的查询并接收回复。

(3)Peer Information Protocol(PIP)对等点信息协议

PIP可以被用来在Jxta环境中对一个peer发出ping消息。当一个peer接收到一个peer消息的时候可以有几种选择:可以选给出一个简单的回复,回复当中仅包含peer的运行时间。Peer也可以选择发送一个完全的回复,当中包含它自身的广告信息。或者它也可以选择忽略这个ping消息。

(4)Peer Membership Protocol(PMP)对等点成员协议

对等点使用对等点成员协议来加入和离开peer group。

(5)Pipe Binding Protocol(PBP)管道绑定协议

在Jxta环境当中,peer使用管道来连接服务。一个peer可以动态的将绑定pipe的一端连接服务。Peer可以新建pipe,把它绑定到现存的pipe上,或是取消对pipe的绑定。在这些情况下,peer使用管道绑定协议。

(6)Endpoint Routing Protocol(ERP)终点路由协议

这个协议帮助peer将消息路由至目的地。ERP帮助peer路由器查询其它peer路由器用于传递消息的有效路由。

从编写P2P应用程序的角度而言,可以简单地划分上述协议的主要用途:

● Peer Discovery——搜索资源

● Peer Resolver——一般查询服务

● Peer Information——监控

● Pipe Binding——可寻址的消息传递

● Rendezvous——消息传播

● PeerEndpoint——路由

3.P2P的未来发展趋势及主要问题

带宽和计算能力继续增长,P2P平台能利用这些能力去完成人们感兴趣的应用,结构将更自治可扩展,提供更多的资源,展开更多的应用。

但是,也存在3个方面的问题:

(1)版权问题

如果人们大肆在网上利用P2P的文件交换功能的话,的确给个人带来了很多的便利,需要什么软件或者文件都可以直接用P2P软件索取,但是由此带来的版权问题的确非常令人头痛。例如文件交换的先驱Napster很长时间都是官司缠身,因为Napster专门用作在网上交流传递MP3,可是歌曲都是有版权的,这样的任意流通对唱片商和媒体公司造成非常大的损失。所以在网上运用P2P功能的话,一定要注意不能侵犯别人的版权。

(2)管理问题

因为P2P崇尚自由,每一个peer都是独立的,既可以充当原来客户的角色,又可以充当服务器的角色,所以没有人知道对方有些什么内容。在网上这个自由空间里,用户虽然可以充分享受自由,但是不能排除有些人利用这一点传播不健康的或者是反社会的东西。而且,许多P2P公司原本是想通过P2P网络进行电子商务的,但是付费问题、流量计算、商品价值的验证等等都是现实难以解决的困难。

(3)垃圾信息充斥P2P网络

但P2P网络用户众多,而且在P2P网络上的搜索引擎可以查找到更多的匹配的目标,所以如果用户在其上进行查找的话,可以想象,会出现非常多的结果,但是其中却又有一小部分是有用的,其他的就是垃圾信息。这样,用户实际上还要在这些垃圾中再寻找自己想要的东西,效率并没有提高多少,因此,必须设计更好的算法,再配合以人工智能等技术解决这个问题。

但P2P网络毕竟是个新生的事务,所以在很长一段时间内,必定都有很多的问题等待解决,相信P2P网络一定逐渐健壮起来。

四、P2P的发展机遇与挑战

近年来,互联网上的对等连接(P2P)应用发展迅速,MP3和视频文件共享下载所引起的P2P流已经成为宽带用户流量的主体。基于P2P的即时通信和互联网电话发展迅速,对等广播正在兴起,P2P协同计算和网格也正方兴未艾。网络通信的对象正在从人—人、人—机发展到机—机,从家庭网络和传感器/执行器网络发展到军事网络中心战的全球信息网格(GIG)。但NGN是从以人—人为主的传统通信模式、体验和需求演化来的,不能有效地支持这种概括起来可以称之为无所不在的互联网的新应用模式。

目前,中国实施的中国下一代互联网(CNGI)计划大规模布设了IPv6骨干网,这为发展P2P应用、建立诚信安全具有分布管理能力的网络环境提供了机会。一方面,在CNGI的IPv6网上一开始就可以实行实名制建立网络新秩序;另外一方面,在CNGI上以无缝和持续演进的方式建立智能结点重叠网,以支持P2P应用并且提供分布式管理。

P2P在技术层面上并非高深莫测,但正是这个看似简单的技术却蕴藏着无穷的创造力。一项新技术的诞生往往伴随着一股经济浪潮的涌动。P2P的诞生,使得不少IT企业都把目光投向了P2P,希望能利用它发挥最大的用途,抢占该市场的首席地位。

目前,全球各种与P2P有关的研究项目层出不穷,应用热潮也一浪高过一浪。而且人们对P2P寄予厚望的原因,正是P2P身后所蕴藏着的无比的创造力,只有P2P才是自由的网络世界最好的搭配。虽然就技术而言,P2P想在各个层面大规模应用起来还需要克服解决上述种种问题,但是在可以预见的未来,随着对P2P研究的进一步深入和关注P2P的企业逐渐增多,P2P必将消除障碍,进入一个飞速发展的新时期。

[1]张雪梅,方敏.网络环境下的文献信息资源共享[J].淮阴工学院学报,2011(1).

[2]邵金侠,刘延申,王维虎.对等网络结构及其资源定位技术研究[J].中国水运(学术版),2010(5).

[3]张阿敏,刘强.P2P网络模型探究[J].株洲工学院学报,2010(6).

[4]郭晨霞.网络环境下图书馆文献信息资源共享[J].内蒙古科技与经济,2011(9).

[5]徐永丽,李秀英.资源共享:图书馆发展的必由之路[J].内蒙古科技与经济,2011(21).

[6]李建东,李勃,宋艳芳.基于P2P技术的分布式数据库系统的研究[J].沈阳理工大学学报,2009(5).

[7]毛薇,姚青,李涛.P2P系统发现技术的研究与实现[J].武汉理工大学学报(交通科学与工程版),2010(06).

[8]李英壮,王守彦,张建华.基于非结构化P2P网络资源检索的自组织研究[J].大连理工大学学报,2009(S1).

猜你喜欢
结点用户
Dijkstra算法在BIM审查中的应用
LEACH 算法应用于矿井无线通信的路由算法研究
基于八数码问题的搜索算法的研究
关注用户
关注用户
关注用户
Camera360:拍出5亿用户
100万用户
如何获取一亿海外用户
基于Raspberry PI为结点的天气云测量网络实现