冥王生活

您现在的位置是:首页 > 科技生活 > 正文

科技生活

p2p用什么加密算法(p2p算法是什么意思)

admin2023-01-02科技生活80

什么是p2p技术下载

以下是百度百科资料:

点对点技术 点对点技术(peer-to-peer, 简称P2P)又称对等互联网络技术,是一种网络新技术,依赖网络中参与者的计算能力和带宽,而不是把依赖都聚集在较少的几台服务器上。P2P网络通常用于通过Ad Hoc连接来连接节点。这类网络可以用于多种用途,各种档案分享软件已经得到了广泛的使用。P2P技术也被使用在类似VoIP等实时媒体业务的数据通信中。

纯点对点网络没有客户端或服务器的概念,只有平等的同级节点,同时对网络上的其它节点充当客户端和服务器。这种网络设计模型不同于客户端-服务器模型,在客户端-服务器模型中通信通常来往于一个中央服务器。

有些网络(如Napster, OpenNAP, 或IRC @find)的一些功能(比如搜索)使用客户端-服务器结构,而使用P2P结构来实现另外一些功能。类似Gnutella 或Freenet的网络则使用纯P2P结构来实现全部的任务。

历史

P2P 架构体现了一个互连网技术的关键概念,这一概念被描述在1969年4月7日第一份RFC文档“RFC1,主机软件”中。而最近,在不用中心索引服务器结构实现多媒体文件交换的背景下,这个概念已经变的非常普遍了。

纯P2P:

节点同时作为客户端和服务器端。

没有中心服务器。

没有中心路由器。

杂P2P:

有一个中心服务器保存节点的信息并对请求这些信息的要求做出响应。

节点负责发布这些信息(因为中心服务器并不保存文件),让中心服务器知道它们想共享什么文件,让需要它的节点下载其可共享的资源。

路由终端使用地址,通过被一组索引引用来取得绝对地址。

混合P2P:

同时含有纯P2P和杂P2P的特点。

P2P网络的优势

P2P网络的一个重要的目标就是让所有的客户端都能提供资源,包括带宽,存储空间和计算能力。因此,当有节点加入且对系统请求增多,整个系统的容量也增大。这是具有一组固定服务器的C/S结构不能实现的,这种结构中客户端的增加意味着所有用户更慢的数据传输。

P2P网络的分布特性通过在多节点上复制数据,也增加了防故障的健壮性,并且在纯P2P网络中,节点不需要依靠一个中心索引服务器来发现数据。在后一种情况下,系统也不会出现单点崩溃。

当用P2P来描述Napster 网络时,对等协议被认为是重要的,但是,实际中,Napster 网络取得的成就是对等节点(就象网络的末枝)联合一个中心索引来实现。这可以使它能快速并且高效的定位可用的内容。对等协议只是一种通用的方法来实现这一点。

应用

点对点技术有许多应用。共享包含各种格式音频,视频,数据等的文件是非常普遍的,实时数据(如IP电话通信)也可以使用P2P技术来传送。

有些网络和通信渠道,象Napster,OpenNAP,和IRC @find,一方面使用了C/S结构来处理一些任务(如搜索功能),另一方面又同时使用P2P结构来处理其他任务。而有些网络,如Gnutella 和 Freenet ,使用P2P结构来处理所有的任务,有时被认为是真正的P2P网络。尽管Gnutella 也使用了目录服务器来方便节点得到其它节点的网络地址。

学术性P2P网络

最近,宾夕法尼亚州立大学的开发者,联合了麻省理工学院开放知识行动,西蒙弗雷泽大学的研究人员,还有第二代互连网P2P工作组,正在开发一个P2P网络的学术性应用。这个项目称为LionShare,基于第二代网络技术,更详细地说是Gnutella模型。这个网络的主要目的是让众多不同学术机构的用户能够共享学术材料。LionShare网络使用杂P2P网络类型,混合了Gnutella分散的P2P网络和传统的C/S网络。这个程序的用户能够上传文件到一个服务器上,不管用户是否在线,都能够持续的共享。这个网络也允许在比正常小得多的共享社区中使用。

这个网络与当前正在使用的其他P2P网络的主要不同是LionShare网络不允许匿名用户。这样做的目的是防止版权材料在网络上共享,这同时也避免了法律纠纷。另一个不同是对不同组有选择性的共享个别的文件。用户能个别选择哪些用户可以接收这一个文件或者这一组文件。

学术社区需要这种技术,因为有越来越多的多媒体文件应用在课堂上。越来越多的的教授使用多媒体文件,象音频文件,视频文件和幻灯片。把这些文件传给学生是件困难的任务,而这如果用LionShare这类网络则容易的多。

法律方面

在美国法律中,“Betamax判决”的判例坚持复制“技术”不是本质非法的,如果它们有实质性非侵权用途。这个因特网广泛使用之前的决定被应用于大部分的数据网络,包括P2P网络,因为已得到认可的文件的传播也是可以的。这些非侵犯的使用包括发放开放源代码软件,公共领域文件和不在版权范围之内的作品。其他司法部门也可用类似的方式看待这个情况。

实际上,大多数在P2P网络上共享的文件是版权流行音乐和电影,包括各种格式(MP3,MPEG,RM 等)。在多数司法范围中,共享这些复本是非法的。这让很多观察者,包括多数的媒体公司和一些P2P的倡导者,批评这种网络已经对现有的发行模式造成了巨大的威胁。试图测量实际金钱损失的研究多少有些意义不明。虽然纸面上这些网络的存在而导致的大量损失,而实际上自从这些网络建成以来,实际的收入并没有多大的变化。不管这种威胁是否存在,美国唱片协会和美国电影协会正花费大量的钱来试着游说立法者来建立新的法律。一些版权拥有者也向公司出钱希望帮助在法律上挑战从事非法共享他们材料的用户。

尽管有Betamax判决,P2P网络已经成为那些艺术家和版权许可组织的代表攻击的靶子。这里面包括美国唱片协会和美国电影协会等行业组织。Napster 服务由于美国唱片协会的投诉而被迫关闭。在这个案例中,Napster故意地买卖这些并没有从版权所有者那得到许可发行的音像文件。

随着媒体公司打击版权侵犯的行为扩大,这些网络也迅速不断地作了调整,让无论从技术上还是法律上都难于撤除。这导致真正犯法的用户成为目标,因为虽然潜在的技术是合法的,但是用侵犯版权的方式来传播的个人对它的滥用很明显是非法的。

匿名P2P网络允许发布材料,无论合法不合法,在各种司法范围内都很少或不承担法律责任。很多人表示这将导致更多的非法材料更容易传播,甚至(有些人指出)促进恐怖主义,要求在这些领域对其进行规范。而其他人则反对说,非法使用的潜在能力不能阻止这种技术作为合法目的的使用,无罪推定必须得以应用,象其他非P2P技术的匿名服务,如电子邮件,同样有着相似的能力。

安全方面

许多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内容分发系统。

国内外现状

国外的P2P研究现状

国外开展P2P研究的学术团体主要包括P2P工作组(P2PWG) 、全球网格论坛(Global Grid Forum ,GGF) 。P2P工作组成立的主要目的是希望加速P2P计算基础设施的建立和相应的标准化工作。P2PWG成立之后,对P2P计算中的术语进行了统一,也形成相关的草案,但是在标准化工作方面工作进展缓慢。目前P2PWG已经和GGF合并,由该论坛管理P2P计算相关的工作。GGF负责网格计算和P2P计算等相关的标准化工作。

从国外公司对P2P计算的支持力度来看,Microsoft公司、Sun公司和Intel公司投入较大。Microsoft公司成立了Pastry项目组,主要负责P2P计算技术的研究和开发工作。目前Microsoft公司已经发布了基于Pastry的软件包SimPastry/ VisPastry。Rice大学也在Pastry的基础之上发布了FreePastry软件包。

在2000年8月,Intel公司宣布成立P2P工作组,正式开展P2P的研究。工作组成立以后,积极与应用开发商合作,开发P2P应用平台。2002年Intel发布了. Net基础架构之上的Accelerator Kit (P2P加速工具包) 和P2P安全API软件包,从而使得微软. NET开发人员能够迅速地建立P2P安全Web应用程序。

Sun公司以Java技术为背景,开展了JXTA项目。JXTA是基于Java的开源P2P平台,任何个人和组织均可以加入该项目。因此,该项目不仅吸引了大批P2P研究人员和开发人员,而且已经发布了基于JXTA的即时聊天软件包。JXTA定义了一组核心业务:认证、资源发现和管理。在安全方面,JXTA加入了加密软件包,允许使用该加密包进行数据加密,从而保证消息的隐私、可认证性和完整性。在JXTA核心之上,还定义了包括内容管理、信息搜索以及服务管理在内的各种其它可选JXTA服务。在核心服务和可选服务基础上,用户可以开发各种JXTA平台上的P2P应用。

国内的P2P研究现状

• 北京大学—Maze

Maze 是北京大学网络实验室开发的一个中心控制与对等连接相融合的对等计算文件共享系统,在结构上类似Napster,对等计算搜索方法类似于Gnutella。网络上的一台计算机,不论是在内网还是外网,可以通过安装运行Maze的客户端软件自由加入和退出Maze系统。每个节点可以将自己的一个或多个目录下的文件共享给系统的其他成员,也可以分享其他成员的资源。Maze支持基于关键字的资源检索,也可以通过好友关系直接获得。

• 清华大学—Granary

Granary是清华大学自主开发的对等计算存储服务系统。它以对象格式存储数据。另外,Granary设计了专门的结点信息收集算法PeerWindow的结构化覆盖网络路由协议Tourist。

• 华中科技大学—AnySee

AnySee是华中科大设计研发的视频直播系统。它采用了一对多的服务模式,支持部分NAT和防火墙的穿越,提高了视频直播系统的可扩展性;同时,它利用近播原则、分域调度的思想,使用Landmark路标算法直接建树的方式构建应用层上的组播树,克服了ESM等一对多模式系统由联接图的构造和维护带来的负载影响。

更详细介绍见〔中国计算机学会通讯 Page 38-51 郑纬民等 对等计算研究概论〕

企业研发产品

• 广州数联软件技术有限公司-Poco

POCO 是中国最大的 P2P用户分享平台 , 是有安全、流量控制力的,无中心服务器的第三代 P2P 资源交换平台 , 也是世界范围内少有的盈利的 P2P 平台。目前已经形成了 2600 万海量用户,平均在线 58.5 万,在线峰值突破 71 万,并且全部是宽带用户的用户群。 成为中国地区第一的 P2P 分享平台。[a]

• 深圳市点石软件有限公司-OP

OP-又称为Openext Media Desktop,一个网络娱乐内容平台,Napster的后继者,它可以最直接的方式找到您想要的音乐、影视、软件、游戏、图片、书籍以及各种文档,随时在线共享文件容量数以亿计“十万影视、百万音乐、千万图片”。OP整合了Internet Explorer、Windows Media Player、RealOne Player和ACDSee ,是国内的网络娱乐内容平台。[a]

• 基于P2P的在线电视直播-PPLive

PPLive是一款用于互联网上大规模视频直播的共享软件。它使用网状模型,有效解决了当前网络视频点播服务的带宽和负载有限 问题,实现用户越多,播放越流畅的特性,整 体服务质量大大提高!(2005年的超级女声决赛期间,这款软件非常的火爆,同时通过它看湖南卫视的有上万观众)

比特币的核心技术包括哪些

比特币的核心技术包括1、非对称加密技术 2、点对点传输技术 3、哈希现金算法机制。

1.非对称加密技术和对称加密技术最大的不同就是有了公钥和私钥之分。非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。公钥是公开的,私钥是保密的。 由于不涉及私钥的传输,整个传输过程就变得安全多了。后来又出现了具备商业实用性的非对称RSA加密算法以及后来的椭圆曲线加密算法(ECC),这些都奠定了加密算法理论的基础,但是美国国家安全局NSA最初认为这些技术对国家安全构成威胁,所以对这些技术进行了严密的监控,知道20世纪90年代末NSA才放弃了对这些技术的监控,这些非对称技术才最终走入了了公众的视野。这项技术对应到比特币场景中就是比特币的地址和私钥。

2.点对点传输技术顾名思义,就是无需中心服务器、个体之间可以相互传输信息的技术,P2P网络的重要目标就是让所有客户端都能提供资源,包括宽带、存储空间和计算能力。 对应到比特币网络中就是利用点对点的技术实现真正的去中心化。

3.哈希现金算法机制就是让那些制造垃圾邮件的人付出相应的代价!发送者需要付出一定的工作量,比如说哈希运算,几秒钟时间对于普通用户不算什么,但对于垃圾邮件的发送者每封邮件都要花几秒钟的时间,这样的成本是没有办法负担的。同时每次运算都会盖上一个独一无二的时间戳,这样就能保证邮件发送方不能重复使用一个运算结果。 对于比特币而言也是同样的道理,如何保证一笔数字货币没有被多次消费(Double Spending),就类似于验证一封邮件没有被多次发送,所以就要保证每一笔交易顺利完成,必须要付出一定的工作量(proof of Work),并且在完成交易时盖上一个时间戳表示交易完成的时间。

什么是p2p技术,版权谁所有

摘要 P2P(Peer to Peer)网络结构区别于Client/Server结构或Browser/Server结构最显著的特点是整个网络不存在中心节点(或中心服务器),其中的每一个节点(peer)大都同时具有信息消费者、信息提供者和信息通讯等三方面的功能。随着各类数字终端、服务器资源、网络带宽等资源持续保持类摩尔定律式的增长,通过更直接的共享方式来提高沟通效率、减少资源浪费并保障信息服务安全将为信息社会带来新一轮的发展高潮。P2P正是这种新共享方式的主要候选者之一。目前看来,P2P技术为服务共享、分布式计算和信息交流提供了更灵活高效的模式,也为信息安全带来了新挑战和新的安全保障手段。本文将对此作简要介绍。

P2P简介

P2P(Peer-to-Peer,即对等网络)是近年来广受IT业界关注的一个概念。由于广大的网络终端节点(普通用户拥有的节点,即通常意义上的终端设备)的计算和存储能力以及连接带宽随着摩尔定理不断地增长,使用P2P技术将大大提高这些节点的利用率,从而进一步提升网络、设备和信息服务的效能。

P2P之所以吸引人主要在于其在以下两个方面的突出表现:

• 低成本、高可用的超大规模计算和存储资源共享;

• 强大的网络联通性,更直接、更灵活的信息沟通。

目前P2P在加强网络上人的交流、文件交换、分布式计算、服务共享等方面已经充分显示出了其强大的技术优势。

1.1 什么是P2P

大多数人最初是从Napster的品牌中知道P2P网络的。在这种应用中,P2P网络概念用于共享文件。但是,P2P不仅仅是用于文件共享,它还包括建立基于P2P形式的通讯网络、P2P计算或其它资源的共享等很多方面。P2P最根本的思想,同时也是它与C/S最显著的区别在于网络中的节点(peer)既可以获取其它节点的资源或服务同时又是资源或服务的提供者,即兼具Client和Server的双重身份。一般P2P网络中每一个节点所拥有的权利和义务都是对等的,包括通讯、服务和资源消费。

P2P是这样一种分布式网络,其中的参与者共享他们所拥有的一部分硬件资源(处理能力、存储能力、网络连接能力、打印机……),这些共享资源需要由网络提供服务和内容,能被其他peer直接访问而无需经过中间实体。在此网络中的参与者既是资源(服务和内容)提供者,又是资源(服务和内容)获取者。

可以将P2P分为纯(Pure)P2P和混合(Hybrid)P2P两种模式。纯P2P网络中不存在中心实体或服务器,从网络中移去任何一个单独的、任意的终端实体,都不会给网络中的服务带来大的损失。而混合P2P网络中则需要有中心实体来提供部分必要的网络服务,如保存元信息、提供索引或路由、提供安全检验等。

1.2 P2P发展历史

从网络P屠纯矗琍2P并不是新概念,它可以说是互联网整体架构的基础。互联网最基本的协议TCP/IP并没有客户机和服务器的概念,所有的设备都是通讯的平等的一端。在十几年前,所有的互联网上的系统都同时具有服务器和客户机的功能。然而,由于受早期计算机性能、资源等因素的限制,随着互联网规模的迅速扩大,大多数连接到互联网上的普通用户并没有能力提供网络服务,从而逐步形成了以少数服务器为中心的客户机/服务器(Client/Server)架构。WWW的风靡,正是这一应用潮流的体现。在客户机/服务器架构下,对客户机的资源要求非常少,因而可以使用户以非常低廉的成本方便地连接互联网,推动了互联网的快速普及。

但是,随着互联网对人们生活的联系日益紧密和深入,人们需要更直接、更广泛的信息交流。普通用户希望能够更全面地参与到互联网的信息交互中,而计算机和网络性能的提升也使其具有了现实的可能性。在此背景下,P2P再一次受到了广泛的关注。

将P2P带入了网络世界的一个著名例子是Napster。该公司成立于1999年,它提供服务允许音乐迷们交流MP3文件。它与提供免费音乐下载MP3.com的不同就是在Napster服务器没有一首歌曲,Napster提供了一个新的软件供音乐迷在自己的硬盘上共享歌曲文件,搜索其他用户共享的歌曲文件,并到其他也使用Napster服务的用户硬盘上去下载歌曲。Napster在短时间里吸引了5000万用户。最终,它被五大唱片商以侵犯版权推上被告席而成为世界的焦点。Napster的成功促使人们认识到把P2P拓展到整个互联网范围的可能性。

另一个采用P2P方式实现计算资源共享的例子是SETI@home。这是一个寻找外星球文明的大型科研工程。为了快速处理大规模天文数据,该工程将互联网上300万台以上的计算机通过P2P方式组织起来,充分共享这些节点的空闲计算资源(CPU),从而达到了甘瓯Flops的计算能力。

事实上,网络上现有的许多服务可以归入P2P的行列。即时通信系统如ICQ、Yahoo Messenger、MSN Messenger以及OICQ等是都最流行的P2P应用。它们允许用户互相沟通和交换信息、交换文件。但这些系统缺少对于大量信息共享非常重要的一些功能,如搜索。这可能正是为什么即时通讯出现很久但是并没有能够产生如Napster这样的影响的原因之一。

1.3 P2P网络的特点

与其它网络模型相比,P2P具有以下特点:

1.3.1 分散化(Decentralization)

网络中的资源和服务分散在所有节点上,信息的传输和服务的实现都直接在节点之间进行,可以无需中间环节和服务器的介入,避免了可能的瓶颈。

即使是在混合P2P中,虽然在查找资源、定位服务或安全检验等环节需要集中式服务器的参与,但主要的信息交换最终仍然在节点中间直接完成。这样就大大降低了对集中式服务器的资源和性能要求。

分散化是P2P的基本特点,由此带来了其在可扩展性、健壮性等方面的优势。

1.3.2 可扩展性

在传统的C/S架构中,系统能够容纳的用户数量和提供服务的能力主要受服务器的资源限制。为支持互联网上的大量用户,需要在服务器端使用大量高性能的计算机,铺设大带宽的网络。为此机群、cluster等技术纷纷上阵。在此结构下,集中式服务器之间的同步、协同等处理产生了大量的开销,限制了系统规模的扩展。

而在P2P网络中,随着用户的加入,不仅服务的需求增加了,系统整体的资源和服务能力也在同步地扩充,始终能较容易地满足用户的需要。即使在诸如Napster等混合型架构中,由于大部分处理直接在节点之间进行,大大减少了对服务器的依赖,因而能够方便地扩展到数百万个以上的用户。而对于纯P2P来说,整个体系是全分布的,不存在瓶颈。理论上其可扩展性几乎可以认为是无限的。

P2P可扩展性好这一优点已经在一些得到应用的实例中得以证明,如Napster,Gnutella,Freenet等。

1.3.3 健壮性

在互联网上随时可能出现异常情况,网络中断、网络拥塞、节点失效等各种异常事件都会给系统的稳定性和服务持续性带来影响。在传统的集中式服务模式中,集中式服务器成为整个系统的要害所在,一旦发生异常就会影响到所有用户的使用。

而P2P架构则天生具有耐攻击、高容错的优点。由于服务是分散在各个节点之间进行的,部分节点或网络遭到破坏对其它部分的影响很小。而且P2P模型一般在部分节点失效时能够自动调整整体拓扑,保持其它节点的连通性。事实上,P2P网络通常都是以自组织的方式建立起来的,并允许节点自由地加入和离开。一些P2P模型还能够根据网络带宽、节点数、负载等变化不断地做自适应式的调整。

1.3.4 隐私性

随着互联网的普及和计算/存储能力飞速增长,收集隐私信息正在变得越来越容易。隐私的保护作为网络安全性的一个方面越来越被大家所关注。目前的Internet通用协议不支持隐藏通信端地址的功能。攻击者可以监控用户的流量特征,获得IP地址。甚至可以使用一些跟踪软件直接从IP地址追踪到个人用户。

在P2P网络中,由于信息的传输分散在各节点之间进行而无需经过某个集中环节,用户的隐私信息被窃听和泄漏的可能性大大缩小。此外,目前解决Internet隐私问题主要采用中继转发的技术方法,从而将通信的参与者隐藏在众多的网络实体之中。在传统的一些匿名通信系统中,实现这一机制依赖于某些中继服务器节点。而在P2P中,所有参与者都可以提供中继转发的功能,因而大大提高了匿名通讯的灵活性和可靠性,能够为用户提供更好的隐私保护。

1.3.5 高性能

性能优势是P2P被广泛关注的一个重要原因。

随着硬件技术的发展,个人计算机的计算和存储能力以及网络带宽等性能依照摩尔定理高速增长。而在目前的互联网上,这些普通用户拥有的节点只是以客户机的方式连接到网络中,仅仅作为信息和服务的消费者,游离于互联网的边缘。对于这些边际节点的能力来说,存在极大的浪费。

采用P2P架构可以有效地利用互联网中散布的大量普通节点,将计算任务或存储资料分布到所有节点上。利用其中闲置的计算能力或存储空间,达到高性能计算和海量存储的目的。这与当前高性能计算机中普遍采用的分布式计算的思想是一致的。但通过利用网络中的大量空闲资源,可以用更低的成本提供更高的计算和存储能力。

2.P2P技术研究现状

2.1 P2P分类

P2P是一个相对底层的技术,一些共性的问题如节点表示、资源路由、可扩展性、安全性等受到人们的普遍关注。但是,由于应用需求不同,相关的研究侧重点还是有所不同的。从应用角度来看,目前P2P技术研究主要涉及到以下几个领域:

• 提供文件和其它内容共享的P2P网络,例如Napster、Gnutella、CAN、eDonkey、BitTorrent等;

• 挖掘P2P对等计算能力和存储共享能力,例如SETI@home、Avaki、Popular Power等;

• 基于P2P方式的协同处理与服务共享平台,例如JXTA、Magi、Groove、.NET My Service等;

• 即时通讯交流,包括ICQ、OICQ、Yahoo Messenger等;

• 安全的P2P通讯与信息共享,例如CliqueNet、Crowds、Onion Routing等。

上述的分类并不是绝对的。一些系统兼顾了多类功能。

惠普实验室的一篇技术报告[1]中提到的针对P2P研究体系的分类方法也有较好的参考价值。具体如下:

图1. P2P分类参考体系

2.2 P2P网络的共性问题

2.2.1 资源的定位

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

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

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

• 动态哈希表的方式: 动态哈希表(Distributed Hash Table, DHT)是大多数P2P网络所采取的资源定位方式。首先将网络中的每一个节点分配虚拟地址(VID),同时用一个关键字(KEY)来表示其可提供的共享内容。取一个哈希函数,这个函数可以将KEY转换成一个哈希值H(KEY)。网络中节点相邻的定义是哈希值相邻。发布信息的时候就把(KEY, VID)二元组发布到具有和H(KEY)相近地址的节点上去,其中VID指出了文档的存储位置。资源定位的时候,就可以快速根据H(KEY)到相近的节点上获取二元组(KEY, VID),从而获得文档的存储位置。不同的DHT算法决定了P2P网络的逻辑拓扑,比如CAN就是一个N维向量空间,而CHORD是一个环形拓扑,TAPESTRY则是一个网状的拓扑。

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

2.2.2 P2P网络与小世界现象

统计发现,动态更新的P2P网络拓扑结构在一定程度上满足某种规律。如果把握好这种规律,则对P2P网络的健壮性、快速查询及可扩展性都将有非常大的帮助。这种规律近年来在生物学、社会学、生态学等领域也同时存在。很多科学家将这种规律称之为“小世界现象”(SMALL WORLD)[21]。

基于已有的经验和理论成果,可把复杂的网络分成两类,其依据是网络的连通性分布P(k)。P(k)是指网络中一个节点与其他k个节点连通的概率。第一类称为指数网络(exponential networks),是指P(k)成指数分布,例如Watts和Strogatz建议的small world模型。这类网络节点的连接度比较均匀,即基本上每个节点的联结数都近似相等。在这种网络内,网络的分离度(degree of separation)都很小,即任意两个节点之间建立连接的长度都很小;第二类称为可扩展网络(scale-free networks),是指P(k)呈幂数分布(power law)。很多网络,如World-Wide Web,Internet,Gnutella等都属于这一类。这类网络中大多数节点的连接度都不高,少数节点的连接度很高。可以将这些少数节点看成中心节点。这类网络连通性和可扩展性很好,而且非常健壮和可靠,即使有部分节点失效,也不会对整个网络造成过大的影响。但是,它的抗攻击性并不好。攻击者只需对连接度很高的少数节点攻击,就能造成网络的瘫痪。不过,这种攻击的代价很大。小世界现象的另外一个规律是,网络结构与系统性质来自于自组织、成长与竞争。

分离度与幂数分布对P2P网络拓扑结构的构建与发现、动态更新、资源定位(Content Routing)等都有很好的利用价值。

2.2.3 P2P的安全问题

P2P网络系统的开发,除了涉及传统的安全性的领域:身份识别认证、授权、数据完整性、保密性和不可否认性,还有一系列特殊问题亟待解决:

• 在P2P共享网络中普遍存在的知识产权保护问题。

n 在一个无中心的环境中如何选择可靠的资源,即如何建立节点之间的信誉问题;

• P2P带来的新型网络病毒传播模式防阻断问题;

• 基于P2P的隐蔽通讯与隐私保护问题;

• P2P网络服务健壮性与抗毁能力等等。

相关问题的具体论述在后面给出。

2.3 P2P文件共享、存储及检索

内容共享和文件交换是到目前为止最引人注目的P2P应用。高效的大规模内容共享直接推动了P2P技术研究的热潮。基于P2P的内容共享包括P2P文件共享与检索、高速下载、P2P存储等。

2.3.1 P2P文件共享

这一类应用中,每个对等的节点都提供文件内容的共享,同时也可以在整个点对点网络中检索获得其他的节点上存储的资源。这类系统可以分为三类:

• 非结构化P2P系统:这类系统的特点是文件的发布和网络拓扑松散相关。该类方法包括Napster,KaZaA,Morpheus,Gnutella。Napster是包含有中心索引服务器的最早的P2P文件共享系统,存在扩展性和单点失败问题。 Gnutella、Morpheus是纯P2P文件共享系统,后者如今并入前者中;KaZaA是包含有超级节点的混合型P2P文件共享系统。KaZaA、Morpheus、Gnutella等系统采用广播或者受限广播来进行资源定位,具有较好的自组织性和扩展性,适用于互联网个人信息共享。缺点是稀疏资源的召回率低。

• 结构化P2P系统:这类系统的特点是文件的发布和网络拓扑紧密相关。文件按照P2P拓扑中的逻辑地址精确的分布在网络中。这类系统包括CAN、TAPESTRY、CHORD、PASTRY,以及基于这些系统的一些其它文件共享和检索方面的研究实验系统。在这类系统中每个节点都具有虚拟的逻辑地址,并根据地址使所有节点构成一个相对稳定而紧致的拓扑结构。在此拓扑上构造一个存储文件的分布式哈希表DHT,文件根据自身的索引存储到哈希表中。每次检索也是根据文件的索引在DHT中搜索相应的文件。生成文件的索引的方法有三种:根据文件的信息生成的哈希值(HASH),如CFS,OCEANSTORE,PAST,Mnemosyne等;根据文件包含的关键字生成关键字索引;还有根据文件的内容向量索引,如PSearch。

• 松散结构化P2P系统:此类系统介乎结构化和非结构化之间。系统中的每个节点都有分配有虚拟的逻辑地址,但整个系统仍然是松散的网络结构。文件的分布根据文件的索引分配到相近地址的节点上。随着系统的使用,文件被多个检索路径上的节点加以缓存。类似的系统包括Freenet,Freehaven等。相关系统非常强调共享服务的健壮性(安全性)。

2.3.2 P2P分布式存储

P2P分布式存储系统具有类似于上一类系统的功能和构造,但侧重于分布式系统中文件系统管理。此类系统主要包括两个类型:

• 非结构化P2P系统:例如Farsite就属于此类系统。Farsite通过使用密钥加密文件的内容,并把密文的备份发布到可信任的节点上。每个节点根据获得的文件内容,组织成编目的文件系统。

• 结构化P2P系统。此类分布式文件系统基于DHT的思想,将文件发布到DHT上,并组织成树状的文件系统。每个目录都组织成一个描述块的形式,每个描述块都对应一个块的Hash值,每个块中包含有所有子目录描述块的hash值,叶子节点是文件的描述块,所有这些描述块分布在DHT中以供检索。此类系统包括基于CHORD的CFS、基于Tapestry的Oceanstore等。

2.3.3 P2P搜索技术

P2P文件共享首先要解决文件定位的问题。但是基于P2P的文件搜索技术可以独立出来,成为传统的搜索引擎等系统强大的搜索工具。P2P搜索技术使用户能够深度搜索文档。而且这种搜索无需通过Web服务器,也可以不受信息文档格式和宿主设备的限制,可达到传统目录式搜索引擎(只能搜索到20%-30%的网络资源)无可比拟的深度(理论上将包括网络上的所有开放的信息资源)。以P2P技术发展的另一先锋Gnutella进行的搜索为例:一台PC上的Gnutella软件可将用户的搜索请求同时发给网络上另外10台PC。如果搜索请求未得到满足,这10台PC中的每一台都会把该搜索请求转发给另外10台PC。理论上,搜索范围将在几秒钟内以几何级数增长,几分钟内就可搜遍几百万台PC上的信息资源。当然实际环境中还需要考虑网络带宽以及路由优化方面的问题。P2P为互联网的信息搜索提供了一个全新的解决之道。

2.3.4 资源共享的新境界

采用P2P方式实现信息的共享和高速下载蕴含着巨大的商机。Napster由于一开始的知识产权问题而暂时陷入低谷之后,Gnutella紧随其后推出了更具有P2P架构的文件服务模式。为了激发更多的人来提供内容,随后的eDonkey和eMule定义了更方便的交互协议。为了充分利用分布在全球的网络带宽,实现大数据量的信息能够快速大面积下载,由美国旧金山的软件工程师布莱姆•科亨(Bram Cohen)开发的BT(BitTorrent,比特涡流)系统2003年一经推出就产生了很大影响。有人预言BT将领导P2P资源共享的新潮流。

P2P文件共享技术自身在快速发展的同时,相关的应用机会将越来越大。包括基于各种目的的网络内容分发、在线流媒体服务、游戏或其它软件分发等等都开始引入这种新的技术。同时,新应用的引入也将进一步推进P2P文件共享技术的创新步伐。

2.4 对等计算

对等计算是分布式计算的思想在广域网上的延伸,目的是将网络上的CPU资源共享,把网络中众多的普通计算机中暂时不用的计算能力累计起来,用以执行以往需要超级计算机来完成的任务。

在对等计算中,大型的计算任务被分解成很多个小的分片,分别分配给网络中的节点独立执行。实际上可以将P2P看作一个松耦合的分布式计算系统,可以有集中控制节点,也可以是纯P2P架构。受互联网的限制,其子任务之间的同步和数据交换比较少,基本是相互独立的。因而对于那些可以分解的计算密集性任务来说,对等计算是再适合不过的了。在2002年9月破解了RSA公司悬赏的RC5-64密码的组织,正是利用对等计算技术集合了互联网上的331252台计算机才完成了这一巨大的计算量。对等计算的威力由此可见一斑。

许多需要大量数据处理的行业都可以从对等计算中获利,如天气预报、动画制作、基因组的研究等。有了对等计算之后,很多时候就不再需要配备专门的超级计算机了,可以大大降低计算成本。Intel也采用对等计算技术、利用其办公室内的数百台PC机来完成CPU设计的工作,节省了大量的费用。同时对等计算的发展是以PC机资源的有效利用为出发点,自然也受到Intel的极力推崇。SETI@Home利用对等计算技术完成天文方面的运算,也是一个成功的范例。

2.5 协同工作与在线交流

协同工作依托在网络之上。但以传统的WEB方式实现,往往给服务器带来极大的负担,并造成了昂贵的成本支出。而采用P2P技术,可以在互联网上任意两个用户之间建立实时的联系和信息传输,避免了中央服务器产生的网络和处理延迟及性能瓶颈,因而能够更方便、高效地实现用户之间的协同。

最近几年方兴未艾的即时通(Instant Messaging,简称IM)正是实现了用户之间的直接交流,受到了互联网用户的极大欢迎,可以说已经是无处不在。目前很多公司正努力将这种方式应用到企业级的协同工作平台中来,已经推出了一些产品。由于其具有成本低廉、平均事务处理能力较高、可动态扩展等优良品性,并能够有效地提高信息交流和沟通效率,未来P2P技术在企业级协同工作领域有着很好的应用前景。

另外一个很有前景的应用就是基于P2P方式的网络游戏。目前已经有一些公司开始关注这方面的研发工作。

3 与P2P相关的几个信息安全问题

3.1 P2P信息共享与知识产权保护

在P2P共享网络中普遍存在着知识产权保护问题。尽管目前Gnutella、Kazaa等P2P共享软件宣传其骨干服务器上并没有存储任何涉及产权保护的内容的备份,而仅仅是保存了各个内容在互联网上的存储索引。但无疑的是,P2P共享软件的繁荣加速了盗版媒体的分发,提高了知识产权保护的难点。美国唱片工业协会RIAA(Recording Industry Association of America)与这些共享软件公司展开了漫长的官司拉锯战,著名的Napster便是这场战争的第一个牺牲者。另一个涉及面很关的战场则是RIAA和使用P2P来交换正版音乐的平民。从2004年1月至今RIAA已提交了1000份有关方面的诉讼。尽管如此,至今每个月仍然有超过150,000,000的歌曲在网络上被自由下载。后Napster时代的P2P共享软件较Napster更具有分散性,也更难加以控制。即使P2P共享软件的运营公司被判违法而关闭,整个网络仍然会存活,至少会正常工作一段时间。

另一方面,Napster以后的P2P共享软件也在迫切寻找一个和媒体发布厂商的共生互利之道。如何更加合法合理的应用这些共享软件,是一个新时代的课题。毕竟P2P除了共享盗版软件,还可以共享相当多的有益的信息。

网络社会与自然社会一样,其自身具有一种自发地在无序和有序之间寻找平衡的趋势。P2P技术为网络信息共享带来了革命性的改进,而这种改进如果想要持续长期地为广大用户带来好处,必须以不损害内容提供商的基本利益为前提。这就要求在不影响现有P2P共享软件性能的前提下,一定程度上实现知识产权保护机制。目前,已经有些P2P厂商和其它公司一起在研究这样的问题。这也许将是下一代P2P共享软件面临的挑战性技术问题之一。

3.2 对等诚信

为使得P2P技术在更多的商业环境里发挥作用,必须考虑到网络节点之间的信任问题。集中式的节点信任管理既复杂又不一定可靠。所以在P2P网络中应该考虑对等诚信模型。实际上,对等诚信由于具有灵活性、针对性并且不需要复杂的集中管理,可能是未来各种网络加强信任管理的必然选择,而不仅仅局限于对等网络。

对等诚信的一个关键是量化节点的信誉度。或者说需要建立一个基于P2P的信誉度模型。信誉度模型通过预测网络的状态来提高分布式系统的可靠性。一个比较成功的信誉度应用例子是在线拍卖系统eBay。在eBay的信誉度模型中,买卖双方在每次交易以后可以相互提升信誉度;一名用户的总的信誉度为过去6个月中这些信誉度的总和。eBay依靠一个中心来管理和存储信誉度。同样,在一个分布式系统中,对等点也可以在每次交易以后相互提升信誉度,就象在eBay中一样。例如,对等点i每次从j下载文件时,它的信誉度就提升(+1)或降低(-1)。如果被下载的文件是不可信的,或是被篡改过的,或者下载被中断等,则对等点i会把本次交易的信誉度记为负值(-1)。就象在eBay中一样,我们可以把局部信誉度 定义为对等点i从对等点j下载文件的所有交易的信誉度之和。

每个对等点i可以存贮它自身与对等点j的满意的交易数 ,以及不满意的交易数 ,则 可定义为:

= -

文献[2][3]对P2P系统的信誉度讨论所采用的方法类似于局部信誉度方法。文献[4]对信誉度信息进行了更为综合的考虑,然而并没有给出任何具体的算法以计算每个对等点的信誉度值。文献[5]讨论了在P2P匿名系统中如何采用信誉度模型以选择可靠的资源,并对匿名环境中如何应用信誉度模型给出了一些建议。对分布式环境中信誉度机制的挑战是如何在无中央管理的情况下对局部信誉度 进行聚合。在聚合过程中经常出现的两个问题,一是如果对对等节点的信誉度聚合仅限于某个局部范围内,就不能得到节点的更为全面的信誉度值;二是如果在全局范围内聚合,由于要查询每个对等点的局部信誉度会导致网络拥塞。

3.3 P2P带来的新型网络病毒传播问题

随着计算机网络应用的深入发展,计算机病毒对信息安全的威胁日益增加。特别是在P2P环境下,方便的共享和快速的选路机制,为某些网络病毒提供了更好的入侵机会。

由于P2

什么是P2P技术?

点对点技术(peer-to-peer,简称P2P)又称对等互联网络技术,是一种网络新技术,依赖网络中参与者的计算能力和带宽,而不是把依赖都聚集在较少的几台服务器上。P2P网络通常用于通过AdHoc连接来连接节点。这类网络可以用于多种用途,各种档案分享软件已经得到了广泛的使用。P2P技术也被使用在类似VoIP等实时媒体业务的数据通信中。

纯点对点网络没有客户端或服务器的概念,只有平等的同级节点,同时对网络上的其它节点充当客户端和服务器。这种网络设计模型不同于客户端-服务器模型,在客户端-服务器模型中通信通常来往于一个中央服务器。

有些网络(如Napster,OpenNAP,或IRC@find)的一些功能(比如搜索)使用客户端-服务器结构,而使用P2P结构来实现另外一些功能。类似Gnutella或Freenet的网络则使用纯P2P结构来实现全部的任务。

历史

P2P架构体现了一个互连网技术的关键概念,这一概念被描述在1969年4月7日第一份RFC文档“RFC1,主机软件”中。而最近,在不用中心索引服务器结构实现多媒体文件交换的背景下,这个概念已经变的非常普遍了。

发表评论

评论列表

  • 这篇文章还没有收到评论,赶紧来抢沙发吧~