现有p2p协议简介怎么写_P2P协议穿透

现有p2p协议简介怎么写_P2P协议穿透原文地址:http://wezly.iteye.com/blog/611630 (一) 常用p2p协议  一、napster:世界上第一个大型的p2p应用网络;中央集中式,倒闭了。  napster,这是当时很火的一种共享服务,主要用于查找mp3,它有一个服务器用于存储mp3文件的链接位置并提供检索,而真正的mp3文件则存放在千千万万的个人电脑上,搜索到的文件通过p2p方式

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

原文地址:http://wezly.iteye.com/blog/611630

 

(一) 常用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
网络对节点所提供共享内容的表示都很简单,一般仅仅为文件名。
参考资料:
http://hi.baidu.com/yrworld/blog/item/18e2d8fc4d8656fcfd037f5e.html
http://www.chinadv.com/tech/153534/
http://zixiaoruixue731.blog.163.com/blog/static/3366060200711103495214/
http://my.donews.com/yishuai/2006/04/23/p2p%e6%b1%a1%e6%9f%93%e5%88%9d%e6%8e%a2/
http://ausun-net.spaces.live.com/blog/cns!b9153878b5ef5882!1624.entry
http://dolf.cn/articles/knowledge-sharing-on-p2p-networks-and-implementation.html
http://hi.baidu.com/lifi007/blog/item/9c5e12cbe6105f1dbe09e68a.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/180017.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • django权限管理例子_php万能自定义表单系统

    django权限管理例子_php万能自定义表单系统前言上一篇我们分析了认证的源码,一个请求认证通过以后,第二步就是查看权限了,drf默认是允许所有用户访问权限源码分析源码入口:APIView.py文件下的initial方法下的check_per

    2022年7月31日
    3
  • python二级考试报名_python语言程序设计二级考试真题

    python二级考试报名_python语言程序设计二级考试真题请注意看红色标识文字,图片均是超清图片,可以单击查看看见更大的世界,遇见更好的自己Seeabetterworldtomeetbetterforourselves.1.MMdnn—-MMdnn是一个深度学习的模型工具集,它能够互转模型文件、可视化模型结构、自动产生训练/推演的代码、辅助测试模型兼容性等。2.Matplotlib—-Matplotlib是一个高质…

    2022年9月5日
    2
  • h3c bios密码_日本服务器ip端口密码

    h3c bios密码_日本服务器ip端口密码版本Ladon>=7.1139端口NetBIOSFileandPrintSharing通过这个端口进入的连接试图获得NetBIOS/SMB服务。这个协议被用于Windows”文件和打印机共享”和SAMBA。IPC$通信Windows系统中的netuseipc整个通信过程,先445−>137−>139验证,当你开启防火墙禁用445,发现系统命令就无法连接IPC了,根本没机会走到139,所以使用系统自带命令连接的ipc整个通信过程,先445->137->

    2022年10月9日
    0
  • 镁光闪存颗粒对照表_内存颗粒版本判断方法和编号解析(三星、美光、海力士)…

    镁光闪存颗粒对照表_内存颗粒版本判断方法和编号解析(三星、美光、海力士)…因为昨天chh看到一个人还在用土办法去判断美光颗粒版本加上前面B站也有人问我怎么去判断内存颗粒版本使用今天就抽空写一下。1.三星三星官方命名文件如下:实例:第一行:“SEC843”重要信息为843代表内存颗粒生产日期第二行:“K4A4G08”重要信息为4G08代表内存颗粒容量和位宽(AG代表容量为16Gb)第三行:“5WTBCTD”重要信息为T、TD,T代表颗粒版本我这个就是T-DI…

    2022年6月22日
    717
  • SQL Server实现某书店图书进货、销售管理系统[通俗易懂]

    SQL Server实现某书店图书进货、销售管理系统[通俗易懂]  文末附带数据库文件及数据库日志文件地址。 一.需求分析1、背景(1)待开发的系统名称:图书进货、销售管理系统(2)开发者:FriggaAZ(3)用户:书店管理人员(4)开发环境:① 操作系统:Windows10专业版Build17682② 数据库:SQLServer2017Developer2、系统总体功能分析需求(1)…

    2022年5月6日
    136
  • c语言 bzero_c语言中函数的类型

    c语言 bzero_c语言中函数的类型原型:externvoidbzero(void*s,intn);  用法:#include  功能:置字节字符串s的前n个字节为零。  说明:bzero无返回值。  举例:  //bzero.c  #include  #include  main()  {  struct  {  inta;  chars[5];  fl

    2022年10月13日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号