现有P2P协议分类与简介

http://blog.csdn.net/u012888602/article/details/48241165

(一) 常用p2p协议

  一、Napster:世界上第一个大型的P2P应用网络;中央集中式,倒闭了。

  Napster,这是当时很火的一种共享服务,主要用于查找mp3,它有一个服务器用于存储mp3文件的链接位置并提供检索,而真正的mp3文 件则存放在千千万万的个人电脑上,搜索到的文件通过P2P方式直接在个人电脑间传播共享。这种方式的缺点就是需要一台服务器,在mp3文件版权之争火热的 年代,Napster很快就成为众矢之的,被众多唱片公司诉讼侵犯版权而被迫关闭。当然服务器一关Napster也就不复存在。

  二、Gnutella和Gnutella2(Gnutella2是对Gnutella的改进和扩展):开源的;第一个真正非中心的无结构P2P网络,文件查询采用洪泛方式。

  Gnutella吸取了Napster的失败教训,将P2P的理念更推进一步:它不存在中枢目录服务器,所有资料都放在个人电脑上。用户只要安 装了该软件,就将自己的电脑立即变成一台能够提供完整目录和文件服务的服务器,并会自动搜寻其它同类服务器,从而联成一台由无数PC组成的超级服务器网 络。传统网络的Server和Client在它的面前被重新定义。

  三、FastTrack:

  第一个客户端是KazaA。协议与Gnutella类似。02-03年的最大用户网,05年退至第三名。衰退原因是这个网络无法应对众多用户同时使用,而且有版权拥有者pollution的行为,以及间谍软件的问题。

  iMesh也是以FastTrack为协议的。

  四、eDonkey,overnet,kad:

  自私的人们在利用P2P软件的时候大多只愿“获取”,而不愿“共享”,P2P的发展遇到了意识的发展瓶颈。不过,一头“驴”很快改变了游戏规则,这就是电驴-eDonkey,它引入了强制共享机制。

  eDeonkey将网络节点分成服务器层和客户层,并且将文件分块以提高下载速度。eDonkey网络下最普及的p2p客户端程序是 eDonkey2000和emule。Emule是eDonkey的后继,但是更出色,采用了DHT来构建底层网络拓扑,目前非常流行的P2P文件共享软 件。

  overnet设计的目的是取代eDonkey,它没有中心服务器,但用户数少于eDonkey。

  Kademlia 协议,在这里叫做kad网络,采用UDP方式通信。很类似于overnet,几乎只有eDonkey用户使用它。

  五、BitTorrent:借助分散式服务器提供共享文件索引的混合式P2P网络,文件分片下载。

  下载速度高,没有查找功能,种子具有时效性。它将中心目录服务器的稳定性同优化的分布式文件管理结合起来。

  六、Direct Connect:

  一种常用在小的网络和大学内部网络中的协议,适用于小网络环境中,DC++是常见客户端。

  七、Ares:类似Gnutella网络。

(二) 现有P2P技术主要涉及的领域和发展方向

  (1)提供文件和其它内容共享的P2P网络,例如Napster、Gnotella、Freenet、CAN、eDonkey、eMule、BitTorrent等。

  (2)基于P2P方式的协同处理与服务共享平台,例如JXTA、Magi、Groove、.NETMy Service等。

  (3)即时通讯交流,包括ICQ、OICQ、Yahoo Messenger等。

  (4)安全的P2P通讯与信息共享,利用P2P无中心的特性可以为隐私保护和匿名通讯提供新的技术手段。例如CliqueNet、Crowds、Onion Routing等。

  (5)语音与流媒体:由于P2P技术的使用,大量的用户同时访问流媒体服务器,也不会造成服务器因负载过重而瘫痪。Skype与Coolstream是其中的典型代表。

  (6)网格计算,挖掘P2P分布计算能力。使用P2P技术以集中那些联接在网络上的电脑的空闲的CPU时间片断、内存空间、硬盘空间来替代“超级计算机”。例如SETI@home、Avaki、Popular Power、distributed.NET等。网格计算的宗旨是:将遍布全球的数以万计的计算节点通过高速Internet连接并组织成一个巨系统,使其能够透明、高效地完成复杂计算任务。

  (7)IBM、微软、Ariba也在合作开展一个名为UDDI的项目以将B2B电子商务标准化

  (8)Eazel正在建立下一代的Linux桌面。

  (9)Jabber已经开发了一种基于XML、开放的即时讯息标准,Jabber被认为是建立了未来使用P2P数据交换的标准。

  (10)Lotus Notes的开发者创建的Groove试图“帮助人们以全新的方式沟通”。

  (11)英特尔也在推广它的P2P技术以帮助更有效地使用芯片的计算能力。

(三) P2P资源定位方式

  P2P网络中进行资源定位是首先要解决问题。一般采用三种方式:

  (1)集中方式索引

  每一个节点将自身能够提供共享的内容注册到一个或几个集中式的目录服务器中。查找资源时首先通过服务器定位,然后两个节点之间再直接通讯。例如早期的Napster。这类网络实现简单,但往往需要大的目录服务器的支持,并且系统的健壮性不好。

  (2)广播方式

  没有任何索引信息,内容提交与内容查找都通过相邻接节点直接广播传递。例如Gnutella。一般情况下,采取这种方式的P2P网络对参与节点的带宽要求比较高。

  (3)动态哈希表的方式

  上述两种定位方式可以依据不同的P2P应用环境进行选择,但是人们普遍看好DHT(Distributed Hash Table,分散式杂凑表)方式。基于DHT的P2P网络在一定程度上可以直接实现内容的定位。一个矛盾的问题是:如果一个节点提供共享的内容表示越复 杂,则哈希函数越不好选择;相应的,网络的拓扑结构就越复杂。而如果内容表示简单,则又达不到真正实现依据内容定位的能力。目前大多数DHT方式的P2P 网络对节点所提供共享内容的表示都很简单,一般仅仅为文件名。

现有P2P协议分类与简介相关推荐

  1. 基于服务器的p2p协议实现,基于P2P协议的文件服务器技术.PDF

    基于P2P协议的文件服务器技术.PDF 第 15 卷 第 6 期 微 机 发 展 Vol. 15 No. 6 2005 年 6 月 Microcomputer Development J un. 20 ...

  2. 使用同一个目的port的p2p协议传输的tcp流特征相似度计算

    结论: (1)使用同一个目的port的p2p协议传输的tcp流特征相似度高达99%.如果他们是cc通信,那么应该都算在一起,反之就都不是cc通信流. (2)使用不同目的端口的p2p协议传输的tcp流相 ...

  3. 网络协议丨FTP协议和P2P协议

    现在不管是下载文件还是浏览内容,我们都是使用HTTP协议. 但是除了HTTP协议以外,也存在其他的协议. 比如文件下载,就有FTP协议,也就是文件传输协议.FTP 采用两个 TCP 连接来传输一个文件 ...

  4. 3dmax:3dmax三维VR渲染设置之高级灯光渲染(标准灯光分类及简介—目标聚光灯、泛光灯、台灯+射灯+壁灯+筒灯+电视灯+平行光,灯带+天光灯)图文教程之详细攻略

    3dmax:3dmax三维VR渲染设置之高级灯光渲染(标准灯光分类及简介-目标聚光灯.泛光灯.台灯+射灯+壁灯+筒灯+电视灯+平行光,灯带+天光灯)图文教程之详细攻略 目录 3dmax三维VR渲染设置 ...

  5. [微力同步 v2.4.2] 跨平台文件同步工具+使用P2P协议同步分发和合并文件+WAN同步加速

    介绍 使用 P2P 协议同步,分发和合并文件 凭借独特的 P2P 加速同步软件和数据,文件传送成功率高达 100%, 支持数以千台的终端设备和百万级的文件规模, 传送的数据量无限制. WAN 同步加速 ...

  6. 计算机的库的分类,计算机运行库的分类和简介

    我们在使用软件的时候,经常会碰到"该软件需要 VC++?支持""应用程序配置不正确,未能启动成功""不是有效的Win32程序"等错误提示,而 ...

  7. 计算机网络协议(四)——HTTP、HTTPS、P2P协议

    底层网络知识详解:最常用的应用层 概述 一.HTTP协议 1.1.HTTP 1.1 1.2.HTTP 2.0 1.3 QUIC协议 二.HTTPS协议 三.P2P协议 概述 这个专栏的计算机网络协议, ...

  8. 计算机网络④-③/④:流媒体协议:编码/推流/拉流、 P2P协议:.torrent/DHT

    应用层(OSI 模型的第七层, TCP 模型的第四层, 即应用层,)还有RTMP.P2P等协议. 1 流媒体协议 视频流中的图片存在:空间冗余.时间冗余.视觉冗余.编码冗余.可以通过编码来压缩视频. ...

  9. 常见P2P协议之BitTorrent 分析

    这段时间在研究BT数据流如何突破防火墙的,但是最后好像有点拦截的意思,反了:(,还是把它总结一下,欢迎讨论,wengpingbo@gmail.com BitTorrent协议介绍 BitTorrent ...

最新文章

  1. Java基础学习总结(11)——重载与重写
  2. Android 常见adb命令
  3. 激光点云感知 voxnet本质
  4. Python教程:json中encode与decode区别
  5. WordPress中使主题支持小工具以及添加插件启用函数
  6. gitlab 将管理员权限移交给ldap账户_CDPDC中Atlas集成FreeIPA的LDAP认证
  7. matlab如何测两点的角度_根据2点经纬度,计算方位角,以及计算2条线的夹角
  8. Python获取同目录下json文件内容
  9. 信息学奥赛一本通 1342:【例4-1】最短路径问题
  10. 数字滤波器(六)--设计FIR滤波器
  11. flask route
  12. 迅雷下载到99.99%速度0kb/s怎么办?
  13. 深度学习(8)-NLP(词嵌入,嵌入矩阵,词向量,情绪分类,偏见问题)
  14. 局域网怎么添加新的计算机用户,如何添加局域网
  15. python主进程 子进程_Python关闭主进程时关闭子进程
  16. 导出word功能,用html代码在word中插入分页符
  17. 云计算赛项-私有云skywalking服务部署与应用
  18. Vue+element通过接口上传图片给后端
  19. java 获取当年法定假日以及公休日-接口坞
  20. Dobot相关资料汇总(随时更新)

热门文章

  1. Python基础——csv文件处理及可视化
  2. virsh undefine 报错处理
  3. SSM三大框架的运行流程、原理、核心技术详解!
  4. 有哪些有效的线上活动推荐
  5. 招银网络二面:什么是序列化?常见的序列化协议有哪些?
  6. excel单元格合并后跨页出现的边框问题?
  7. 小学如何搞计算机课堂游戏活动,在小学教育中如何学好计算机课
  8. psnr,ssim解读
  9. overflow是什么意思,css overflow什么作用?
  10. oracle 归档日期,Oracle中归档日期满报错解决方法