107
P2P网络计算平台及应用共享文件设计样本
(样本只提供该系统的基本情况介绍,若需要完整的设计和论文,建议您购买本系统,凡是购买本站系统的,本站均根据您的要求,把系统上的开发信息,题目等修改成符合您的要求)
本设计包含内容:毕业论文
论文大概:
P2P网络计算平台及应用
——共享文件设计
P2P网络计算平台及应用
----共享文件设计
1.1
摘 要:对等网(P2P)主要指计算机之间以对等方式形成的网络连接,弱化或完全取消了服务器的作用。文章首先将对P2P网络的基本概念、主要应用进行介绍,分析P2P技术与C/S模式互联网的区别,介绍P2P网络存在的问题与其发展前景;然后对JXTA协议进行剖析研究;最后对共享文件设计进行阐述说明。
关键词:对等网;C/S模式;拓扑;JXTA协议;
Survey of Peer-to-Peer(P2P) Network
Technology
——File sharing design
Abstract:Peer-to-Peer(P2P)network mainly indicates the network
formed among computers in the Peer-to-Peer mode, and the function of
server id weakened or canceled completely in this networking mode.
This paper firstly introduces P2Pnetwork basic concept,
technological realization and main applications, analyzes the
differences between P2P technology and C/S mode Internet. The
present development condition and development foreground of the P2P
network. Then disquisition the project JXTA. Finally this paper
presents expatiates and explain the File sharing
design.
Key words:Peer-to-Peer network;C/S mode;Topology;project
JXTA;
目录
摘 要、关键字 2
第一章、引言 4
第二章、对等网(P2P)技术的研究 5
2.1
P2P技术的基本概念 5
2.2 P2P的分类 5
2.2.1
纯分散式P2P网络(拓扑图见图1) 6
2.2.2混合式P2P网络(拓扑图见图2) 7
2.3
P2P技术的技术实现 7
2.4 P2P技术的主要运用 8
2.5
P2P网络与C/S模式互联网技术比较 9
2.6
P2P的发展现状 10
2.6.1代表性研发产品和技术 10
2.6.2
P2P技术目前存在的问题 11
2.6.3组织与标准 12
2.7
P2P的发展前景 12
第三章、对JXTA协议的剖析研究 13
3.1
JXTA设计目标 13
3.2 JXTA的层次结构 14
3.3
JXTA的重要概念 15
3.3.1 Peer(对等体) 15
3.3.2
PeerGroup(对等组) 15
3.3.3 Endpoint(端点) 16
3.3.4
Pipe(管道) 17
3.3.5 AdvertiSement(广告) 18
3.3.6
Message(消息) 19
3.3.7 Rendezvous Peer(集合点) 19
3.3.8
RouterPeer(路由Peer) 21
3.3.9
GatewayPeer(网关Peer) 22
3.4JXTA协议 23
第四章、P2P共享文件设计的实现 25
4.1
系统的基本需求及结构 25
4.2 系统模块间合理通信的实现 26
4.2.1
监听器到服务器的通信 26
4.2.2 浏览器到服务器的通信 27
4.2.3
监听器到浏览器的通信 32
4.3 服务器的设计实现 33
4.4
主程序结构及部分实现 35
第五章、总结 42
5.1前期准备 42
5.2程序设计 42
5.3系统评价 43
5.4总结 43
1.2 第一章、引言
20世纪70年代中期,源于局域网中文件共享的P2P技术就开始流行起来,目前大家所关注的P2P并非新技术,而是旧有技术新的应用模式。限于PC机的性能,并基于易管理性和安全性考虑,后来发展的那些架构在)TCP/IP之上的软件大多
采用了C/S(客户端/服务器)模式的结构,比如浏览器和Web服务器,邮件客户端和邮件服务器等。随着Web服务需求的增长,人们感到有必要直接控制、改变和共享资源。90年代后期,PC机的性能在速度和处理能力上突飞猛进,人们开始意识到可以将服务器软件放在单独的PC上,而且可以在PC机之间初始化全双工的信息流,这就导致了P2P技术的复兴。2000年用于共享MP3音乐的Napster软件与美国唱片界的一场官司将P2P技术重新带回人们的视线。继Napster之后,各种基于对等网的应用风起云涌,
文件交换方面比较有代表性的有:Gnutella、FreeNet等。对等计算方面有:著名的Distribute0.Net案例利用100,000台分布在互联网上的PC机对56位DES数据加密算法进行了强力攻击;
SETI@Home项目使用一个屏保程序占用大约100万台CPU的空闲时间,循环分析寻求外太空生命过程中所产生的数据。协同工作方面有:Intel内部处理器开发工具Netbatch允许工程师们利用没有使用的10000台遍布全球的Intel公司工作站为芯片的设计执行计算机仿真,在10年里已经为Intel节省了约5亿美元。
P2P技术对目前广泛应用的C/S模式的互联网基本构架、人们的上网习惯、企业的运作方式、相关法律等诸多方面都提出了全新的挑战,有人曾预言对等网可能会成为未来互联网的基础。鉴于此,该文将给大家较为全面地介绍一下P2P
网络的基本知识,希望能够促进P2P技术的快速健康发展。
1.3 第二章、对等网(P2P)技术的研究
1.3.1.1 2.1
P2P技术的基本概念
P2P技术主要指由硬件形成网络连接后的信息控制技术,主要代表形式是在应用层上基于P2P网络协议的客户端软件。IBM为P2P下了如下定义:P2P系统由若干互联协作的计算机构成,且至少具有如下特征之一:系统依存于边缘化(非中央式服务器)设备的主动协作,每个成员直接从其他成员而不是从服务器的参与中受益;系统中成员同时扮演服务器与客户端的角色;系统应用的用户能够意识到彼此的存在,构成一个虚拟或实际的群体。P2P网络是互联网整体架构的基础,互联网最基本的TCP/IP协议并没有客户端和服务器的概念,在通讯过程中,所有的设备都是平等的一端。
P2P技术与计算机技术联系起来可理解为计算机以对等关系接入网络,进行数据交换,类似Windows中的网络邻居。Windows中的NetBEUI
协议就是一种支持对等网的网络协议,通过网络邻居使用该协议可以在局域网上共享伙伴机器中的文件内容,甚至于硬件设施。实质上,可以认为目前为大家所关注的P2P技术是Windows中的网络邻居从局域网到Internet概念上的一种延伸。也就是说可以利用P2P客户端软件在Internet上实现文件甚至硬件设施的共享。
P2P技术改变了“内容”所在的位置,使其正在从“中心”走向“边缘”,也就是说内容不再存于主要的服务器上,而是存在所有用户的PC机上。P2P使得PC重新焕发活力、不再是被动的客户端,而成为具有服务器和客户端双重特征的设备。
1.3.1.2 2.2
P2P的分类
关于对等网的分类,目前尚不统一,一些学者认为象Napster这类带有服务器的网络结构不属于P2P网络;另外一部分人则认为虽然带有服务器,但此处的服务器弱化了功能,不同于C/S模式中的服务器,而且此处客户端的连接方式符合分散式拓扑结构,故可以将其示为广义的P2P网络。根据目前P2P的发展,笔者认为第二种分类方法更为合理,故将P2P网络划分为纯分散式P2P网络和混合式P2P网络两大类,另一种分类方法请参阅参考文献[1]。
1.3.1.3 2.2.1
纯分散式P2P网络(拓扑图见图1)
网络中没有服务器,链状的节点之间构成一个分散式网络。通过基于对等网协议的客户端软件搜索网络中存在的对等节点,节点之间不必通过服务器,可直接建立连接。这种P2P网络模型优点在于允许用户设定自己的规则和建立自己的网络环境;为与Internet合作,提供近似的即插即用特性;不仅能够在Internet下有效地工作,而且对于LAN和Internet也非常有用。存在的问题:由于没有中心管理者,网络节点难以发现;不易管理且安全性较差。此种类型的P2P网络如:Gnutella、FreeNet等。
1.3.1.4 2.2.2混合式P2P网络(拓扑图见图2)
各节点之间可以直接建立连接,但网络的构建需要服务器,通过集中认证,建立索引机制。然而这里的服务器仅用于辅助对等节点之间建立连接,一旦连接成功,服务器不再起作用,对等节点之间直接进行通信。这不同于C/S模式中的服务器,也可以认为是弱化了服务器的作用。这种P2P网络模型和纯分散式P2P网络相比,易于发现网络节点、易于管理且安全性较好,但也有类似C/S模式的缺陷,如容错性差等。目前P2P技术的应用大多为这种模式,较为典型的如:Napster等。
1.3.1.5 2.3
P2P技术的技术实现
下面以共享MP3音乐的Napster为例,简要说明一下P2P网络的技术实现方法。Napster是一个带有中央服务器的混合式P2P网络。客户端下载文件或对外提供文件共享,而服务器的主要目的在于建立当前所有在线的Napster节点所存文件的
目录索引,而不存贮MP3文件。MP3存贮在Napster节点本地的一个共享目录中。节点每次连接到Napster网络以后,将自己当前的IP地址、端口号、拥有的MP3、MP3存放路径等信息发送给服务器,加入服务器的目录索引,这些信息以后将用于和其它节点直接建立连接,对外提供文件共享。客户端搜索并下载音乐文件的
整个过程如图3所示。
1)节点D打开Napster应用程序,登陆中央服务器,并向其发送搜索请求;服务器通过目录索引查找与节点D搜索请求相匹配的MP3文件信息。
2)服务器向节点D发送持有该MP3的所有节点的IP地址、端口号和存放路径等信息来响应节点D的搜索请求。
3)节点D根据服务器所提供的信息,ping每一台持有所需MP3的节点,计算返回时间,与距离最短的节点F直接建立连接,开始下载文件。如果节点F位于防火墙后,则节点D通过服务器向F发送自己的IP地址和端口号,请求F主动与D建立网络连接。下载完成后双方终止连接。
1.3.1.6 2.4
P2P技术的主要运用
P2P技术引导网络计算模式从集中式向分散式偏移,也就是说网络应用的核心从中央服务器向网络边缘的终端设备扩散。对等网的应用主要体现在如下几个方面:
1)对等计算
对等计算研究的是如何充分地把网络中多台计算机暂时不用的计算能力结合起来,使用积累的能力执行超级计算机的任务。本质而言,对等计算就是网络上CPU资源的共享。应用实例有:Distribute0.Net和
SETI@Home等。
2)协同工作
协同工作是指多个用户之间利用网络中的协同计算平台来共同完成某项任务,共享信息资源等。采用P2P技术,可以去掉目前协同工作系统中的中央服务器,参与协同工作的计算机直接建立连接。应用实例有:Intel的Netbatch软件,上海鹰腾公司的PASP_Eschool等。
3)搜索引擎
P2P技术使用户能够深度搜索文档,而且无需通过Web服务器,也可以不受信息文档格式和宿主设备的限制,达到传统目录式搜索引擎(只能搜索到20%-30%的网络资源)无可比拟的深度(理论上将包括网络上的所有开放的信息资源)。应用实例有:Infrasearch、Pointera等。
4)文件交换
传统的Web方式中,要实现文件交换需要Web服务器的大力参与,通过将文件上传到某个特定的网站,用户再到该网站搜索需要的文件,然后下载。这就要求Web服务器能够对大量用户的访问提供有效的服务,因而经常成为Web方式这类应用的瓶颈之一。而P2P技术可以使用户利用基于P2P网络协议的客户端软件脱离服务器,直接从含有所需文件的对等节点机下载该文件。应用实例有:Napster、GnutellaFreeNet等。
此外,还有诸如边缘服务、智能代理、实时通信技术和广域网络存储系统等其他几种应用方式。另据报道,美国Cybiko及瑞典Pocit
Labs
AB等公司正试图将P2P技术应用到无线通信中,使得不必经过基站就可连接具有无线通信功能的移动终端,实验性产品已经问世。