关键词不能为空

当前您在: 主页 > 英语 >

P2P技术原理

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-03-03 22:03
tags:

-

2021年3月3日发(作者:luffy)


P2P


技术



技术原理



什么是对等网络

< p>
(P2P)


技术?


P2P


技术属于覆盖层网络


(Overlay


Network)


的范


畴,是相对于客户机


/


服务器


(C/S)


模式来说的一种网络信息交换方



式。在


C/S


模 式中,


数据的分发采用专门的服务器,


多个客户端都从此服务器 获取数据。



种模式的优点是:数据的一致性容易控制,系统也 容易管理。但是此种



模式的


缺点是: 因为服务器的个数只有一个


(


即便有多个也非常有限

< p>
)


,系统容易出现单


一失效点;单一服务器面对众 多的客户端,由于


CPU


能力、内存大小、网

< br>


络带


宽的限制,


可同时服务的 客户端非常有限,


可扩展性差。


P2P


技术正是为了解决


这些问题而提出来的一种对等网络结构。在


P 2P


网络中,每个节点既可以从



其< /p>


他节点得到服务,


也可以向其他节点提供服务。

< br>这样,


庞大的终端资源被利用起


来,一举解决了


C/S


模式中的两个弊端。



对等网络的基本结构




1


)集中式对等网络



Na pster



QQ


< br>


集中式对等网络基于中



央目 录服务器,为网络中各节目提供目录查询服务,传


输内容无需再经过中央服务器。


这种网络,


结构比较简单,


中央服务器的负担 大


大降低。但由于仍存在中央节



点, 容易形成传输瓶颈,扩展性也比较差,不适


合大型网络。


但由于 目录集中管理,


对于小型网络的管理和控制上倒是一种可选


择方 案。




2


) 无结构分布式网络



Gnutella




无结构分布式网络与集中式的最显著区别在于,

< p>
它没有中央服务器,


所有结点通


过与相邻节点间的 通信,


接入整个网络。


在无结构的网络中,

节点采用一种查询


包的



机制来搜 索需要的资源。具体的方式为,某节点将包含查询内容的查询包


发送到与之相邻的节点,


该查询包以扩散的方式在网络中蔓延,


由于这样的方式


如果不加节



制,


会造 成消息泛滥,


因此一般会设置一个适当的生存时间


< p>
TTL




在查询的过程 中递减,当


TTL


值为


0


时,将不再继续发送。



这种无结构的方式,


组织方式比较松散,


节点的加入与离开 比较自由,


当查询


热门内容时,很容易就能找到,但如果需求的 内容比较冷门,较小的


TTL


不容


易找



到,而较大的


TTL


值又容易引起较大的查询流量,尤其当网络范围扩展到


一定规模时,即使限制的


TTL


值较小,仍然会引起流量的剧增。但当网络中存


在一些拥



有丰富资源的所谓的类服务器节点时,可显著提高查询的效率。




3


)结构化分布式网络



第三代


P2P Pastry


Tapestry



Chord



CAN





结构化分布式网络,


是近几年 基于分布式哈希表



Distributed


Hash


Table



技术的研究成果。


它的基本思想是将网络中所有的资源整理成一张巨大的表,



内包含资源的关键字和所存放结点的地址,然后将这张表分割 后分别存



储到网


络中的每一结点中去 。


当用户在网络中搜索相应的资源时,


它将能发现存储与关


键词对应的哈希表内容所存放的结点,在该结点中存储了包含所需资源的结点



地址,


然后发起搜索的结点根据这些地址信息,


与对应结点连接并传输资源。



是一种技术 上比较先进的对等网络,


它具有高度结构化,


高可扩展性,


结点的加


入与



离开比较自由。这种方式适合比较大型的网络。



P2P


网络有


3


种比较流行 的组织结构,被应用在不同的


P2P


应用中。

< br>



(1)DHT


结构




分布式哈希表


(DHT)[1 ]


是一种功能强大的工具,它的提出引起了学术界一股


研究


DHT


的热潮。


虽然


DHT


具有各种各样的实现方式,


但是具有共同的特



征,


即都是一个环行拓扑结构,在这个结构里 每个节点具有一个唯一的节点标识


(I


D)


节点


ID


是一个


128


位的哈希值。


每个节点都在路由表里保存了其他 前



驱、


后继节点的

< br>ID


。如图


1(a)


所示。通过 这些路由信息,可以方便地找到其他节点。


这种结构多用于文件共享和作为底层结构用于 流媒体传输


[2]





(2)


树形结构




P2P


网络树形结构如图


1(b)


所示。在这种结构中,所有的节点都被组织在一

< p>
棵树中,树根只有子节点,树叶只有父节点,其他节点既有子节点也有父节点。

信息的流向沿着树枝流动。最初的树形结构多用于


P2P


流 媒体直播


[3-4]





(3)


网状结构




网状结构如图


1(c)


所示,又叫无结构。顾名思义,这种结构中,所有的节点


无规则地连在 一起,


没有稳定的关系,


没有父子关系。


网状结构


[5]



P2P

< p>
提供



了最大的容忍性、动态适应性,在流媒体直 播和点播应用中取得了极大的成功。


当网络变得很大时,


常常会 引入超级节点的概念,


超级节点可以和任何一种以上


结构



结合起来组成新的结构,如


KaZaA[6 ]





P2P


技术应用



(1)


分布式科学计算



P2P


技术可以使得众多终端的


CPU


资源联合起来,服务于一个共同的计算。这


种计算一般是计算量巨大、


数据极多、


耗时很长的科学计算。


在每次计算 过程中,



任务


(

包括逻辑与数据等


)


被划分成多个片,被分配到参与科学计 算的


P2P


节点


机器上。在不影响原有 计算机使用的前提下,人们利用分散的


CPU


资源完成计




任务,并将结果返回给一个或多个服务器 ,将众多结果进行整合,以得到最


终结果。



(2)


文件共享


BitTorrent


是一种无结构的网络协议。除了


Bi tTorrent


之外,还有不少著名的无结构化的


P2P


文件共享协议,典型的有


Gnutella[8]

< br>和


KaZaA[6]




(3)


流媒体直播



(4)


流媒体点播



(5)IP


层语音通信



Skype


采取类似


KaZaA

的拓扑结构,在网络中选取一些超级节点。在通信双方


直连效果不好时,

< p>
一些合适的超级节点则担当起其中转节点的角色,


为通信双方


创建中转连接,并转发相应的语音通信包。



典型< /p>


P2P


应用的机制分析



3.1BitTorrent



BitTorrent


软件用户首先从


Web


服务器上



获得下载文件的种子文件,种子

< p>
文件中包含下载文件名及数据部分的哈希值,还包含一个或者多个的索引


( Trac


ker)


服务器地址。它的工作过程如下:客户



端向索引服务器发一个超文本传输


协议


(HTTP)



GET

请求,并把它自己的私有信息和下载文件的哈希值放在


GET


的参数中;索引服务器根据请求的哈希值



查找内部的数据字 典,随机地返回正


在下载该文件的一组节点,


客户端连接这些节 点,


下载需要的文件片段。


因此可


以将 索引服务器的文件下载过程简单地分成两个



部分:与索引服务 器通信的


H


TTP


,与其他客户端通信 并传输数据的协议,我们称为


BitTorrent


对等协议。


B


itTorrent


软件的工作原理 如图



4


所示。


BitTorrent


协议也处在不断变化中,可


以通过数据 报协议


(UDP)



DHT

< p>
的方法获得可用的传输节点信息,而不是仅仅


通过原有的

< br>


HTTP


,这种方法使得


Bi tTorrent


应用更加灵活,提高


BitTorrent< /p>


用户的下载体验。





3.2eMule



eMule


软件基于


eDonkey< /p>


协议改进后的协议,


同时兼容


eDonk ey


协议。




eMule


客户端都预先设置好了一个服务器列表和一个本地共享文件



列表,



户端通过


TCP


连接到


eMule


服务器进行登录,


得到想要的文件的信息以及可用


的客户端的 信息。一个客户端可以从多个其他的


EMule


客户端下载



同一个文


件,


并 从不同的客户端取得不同的数据片段。


eMule


同时扩展了< /p>


eDonkey


的能


力,允许客户端之间 互相交换关



于服务器、其他客户端和文件的信息。

< p>
eMule


服务器不保存任何文件,它只是文件位置信息的中心索引。


eMule


客户端一启


动就会自动使用传输 控制协议



(TCP)


连接到


eMule


服务器上。服务器给客户端


提供一个 客户端标识


(ID)


,它仅在客户端服务器连接的生命周期内有 效。连接建

-


-


-


-


-


-


-


-



本文更新与2021-03-03 22:03,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/703508.html

P2P技术原理的相关文章