网络文档JXTA,P2P通信系统(源代码,使用手册等放在CSDN了)

csdn是什么  时间:2021-04-27  阅读:()

摘 要

相对于传统的C/S网络模式 P2P Peer to Peer 网络具有其独特的优势使其能在优胜劣汰的准则下占有一席之地。 P2P网络的非中心性消除了服务器的性能瓶颈问题 它的可扩展性表现为使用系统的用户越多系统的性能越强大 它的分布式特性使得资源的可用性大大地增强了。P2P网络技术正被使用到分布式计算、协同工作、搜索引擎和文件共享等多个应用中。

JXTA是一个由SUN公司推出的开源项目。它的目的是提供一个支持P2P网络应用开发的网络计算平台 它为开发新的应用程序提供了基本的模块和服务。它为构建P2P网络制订了一组独立于语言和网络的协议使得应用程序的开发不局限于特定的语言消息的传送不必使用特定的网络协议。由JXTA开发的应用程序具有跨平台、跨网络的特性。

本文研究并实现了一个JXTA框架下的P2P即时通信系统。该系统主要包含一个聊天模块和一个文件传输模块 它可以作为我们正在开发的计算机辅助教学系统中信息和文件传输的底层通信模块。

关键词 JXTA、 P2P、即时通信、文件传输

ABSTRACT

Compared with the traditional C/S network framework, the P2Pnetwork has unique advantages, which makes itself become outstandingunderfierce competition. Firstly, the non-centrality of P2P networkeliminates the bottleneck of the server capability. Secondly, itsscalability turns out that the more systemusers it has the strongerfunction it operates. Thirdly, its distributed characteristicgreatly enlarges the usability of resources. The P2P networktechnology is now being used in the application of distributedcomputing, cooperativework, searchengine, file sharing, and soon.

JXTA, which is an open source program, is launched by SunMicrosystems Inc. It aims at providing a computing network platformthat supports the P2P network application development, as well asa basic module and service for developing new application program.What’ s more, it formulates a group of protocols, which isindependent from language and network, for structuring P2P network.Then, the development of application program would not be confinedto specific language, and the transmission of message would not beconfined to specific network protocol. So, the application programdeveloped by JXTA owns the characteristic of cross-platform andcross-network.

This dissertation analyzes and actualizes a P2P instantmessaging system under the framework of JXTA. This system mainlycontains a chattingmodule and file transmittingmodule, which couldbe utilized as the fundamental message and file transmitting moduleof our being developed computer assisted instruction systemKe ywor d s: JXTA,P2P, instant messaging,file transfer

摘 要........................................................................................错误未定义书签。

第1章前言..............................................................................错误未定义书签。

1. 1课题开发的目的及意义.........................................................错误未定义书签。

1.2课题研究现状......................................................................错误未定义书签。

第2章技术背景.......................................................................错误未定义书签。

2. 1 P2P技术..............................................................................错误未定义书签。

2. 1. 1 P2P的概念..............................................................错误未定义书签。

2. 1. 2 P2P与C/S方式的对比...........................................错误未定义书签。

2. 1. 3 P2P网络的特点.......................................................错误未定义书签。

2. 1.4 P2P的应用领域.......................................................错误未定义书签。

2.2 JXTA框架.............................................................................错误未定义书签。

2. 2. 1 JXTA概述................................................................错误未定义书签。

2. 2. 2 JXTA的发现机制.....................................................错误未定义书签。

2. 2. 3 JXTA管道API.........................................................错误未定义书签。

2. 2.4 JXTA网络服务.........................................................错误未定义书签。

2. 2. 5 JXTA安全................................................................错误未定义书签。

第3章 P2P即时通信系统的分析与设计.........................错误未定义书签。

3. 1系统需求分析......................................................................错误未定义书签。

3.2系统功能设计......................................................................错误未定义书签。

第4章 P2P即时通信系统的实现......................................错误未定义书签。

4. 1开发与运行环境...................................................................错误未定义书签。

4.2对等组服务的实现...............................................................错误未定义书签。

4.3系统运行说明......................................................................错误未定义书签。

第5章 总结与展望...............................................................错误未定义书签。

5. 1总结.....................................................................................错误未定义书签。

5.2工作展望..............................................................................错误未定义书签。

参考文献....................................................................................错误未定义书签。

致谢.............................................................................................错误未定义书签。

第1章前言

1. 1课题开发的目的及意义

C/S结构的服务器在多人同时访问时所承受的压力比较大服务器通常也比较昂贵。在负荷过重的时候访问速度通常都比较缓慢甚至可能会发生拒绝服务的情况严重影响正常的工作活动。这样的服务器较容易受到黑客的攻击产生不可估计的损失。在服务器不是很强的情况下采用P2P结构可以缓解服务器的压力。由于P2P网络结构没有特定的服务器服务的提供方可以是任何能上网的计算机使得服务的可靠性和灵活性都有所增强。

计算机辅助教学系统是目前教学的一个重要辅助手段现存的计算机辅助教学系统大多采用C/S结构 网络应用集中在少量服务器上虽然基本可以满足课堂教学的需求但大量的客户端不能相互交流 只能与服务器打交道造成大量的资源浪费。学校的非盈利性 决定了不能靠随意升级服务器来提供更多的服务。采用P2P网络结构可有效避免传统的C/S所带来的问题。本课题所设计的即时通信系统可以作为计算机辅助教学系统信息和文件传输的底层通信模块。

1. 2课题研究现状

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

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

P4P全称“Proactive network Provider Participation for P2P” 是P2P技术的升级版意在加强服务供应商(ISP)与客户端程序的通信 降低骨干网络传输压力和运营成本并提高P2P文件传输的性能。与P2P随机挑选Peer(对等体)不同 P4P协议可以协调网络拓扑数据能够有效选择Peer从而提高网络路由效率。 P2P软件的应用吞噬了巨量的网络带宽这使得运营商头痛不已新提出的P4P技术很有可能可以解决吞噬网络带宽的问题。 P4P是智能选取数据交换对象更多地通过智能运算选择同一路由器或者地域性网络来进行数据交换最大程度上解决大型节点和网络出口的负载通过智能选择数据交换对象也能大大提高数据传输的能力。

第2章技术背景

本章主要介绍了P2P技术包括P2P的概念、特点、应用领域 JXTA开发平台的简介、基本概念、协议架构以及基于JXTA平台的开发方法。

2. 1 P2P技术

2. 1. 1 P2P的概念

P2P是peer-to-peer的缩写 中文为对等网络或点对点网络通常简称为P2P。 P2P让人们通过互联网直接交互让用户可以直接连接到其他用户的计算机进行通信和文件交换而不像传统的browser/server或者client/server结构那样需要经过服务器的介入它改变了互联网以服务器为中心的状态。 P2P网络中的每一台计算机既能充当网络服务的请求者又能对其它计算机的请求做出响应提供资源与服务 也就是说既可以充当服务器也能充当客户机的角色。 P2P大大地提高了存储设备、带宽和计算资源的使用率。所有接入P2P网络的设备都以对等的身份进行连接组成一个对等网络各对等体之间可任意通讯而不需通过服务器的中转系统提供的服务分布在各个对等体上 消除了单点故障提高了资源利用率增强了网络的健壮性。系统具有良好的升级能力和几乎无限的扩充能力完全适应网络伸缩性的变化。

2. 1. 2 P2P与C/S方式的对比

传统的客户/服务器Client/Server简称C/S结构如图2. 1所示。绝大部分数据处理都集中在服务器上客户端只做少量的工作。

图2.1C/S网络结构图

C/S模式的优点是对客户端的配置要求比较低维护可集中在服务器上进行对客户可以做到完全透明的升级。这样的结构有一些缺点第一由于服务本身的处理绝大部分集中在服务器上 随着用户数量的增加服

务器的负载和带宽要求也相应地增加最终导致服务器不能再处理额外的用户请求。第二 因为只有服务器能够提供服务所以一旦服务器由于某种原因不在线 用户就不能得到服务。第三客户端的资源得不到充分利用。 C/S模式对客户端的要求比较低它们处于一个被动的地位它们能够从服务器那里请求服务但不能向其它客户端提供任何服务而目前主流的PC配置都比较强大 因此对于大多数互联网应用来说是一种资源浪费。第四大部分的常用服务是以服务器为中心 它们具有静态IP地址任何用户只要知道它们易记的域名就可访问它们。不过伴随着互联网不断地发展有限的IP地址使得网络服务提供商为上网的机器动态分配IP地址静态IP地址相对比较昂贵。

P2P方式则有着显著的不同对等网络计算不依赖于一个中心服务器提供服务。如图2.2所示 它改变了C/S模式的结构采用了平等的结构。对等网络允许间接连接的计算机互相发现使得这些计算机都可以同时作为服务器与客户机并能够发现对等网络中可用的服务。

图2.2P2P网络结构图

在对等网络中可以通过各种通信方式利用整个网络的带宽。把提供服务的负担分散在网络的各个对等体(Peer)上 既消除了因为单点故障而造成的服务中断又可以使用各种各样的路由从而缓解网络的拥挤状态。

在C/S模式中为了提供可靠的服务需要额外的昂贵的带宽、设备和配套设施而对等网络通过把这些资源需求分散在对等网络来提供类似的可靠性保证。

不过对等网络结构的冗余特点也给对等网络计算带来了一些不利。一、由于服务的分布性和网络的复杂性对服务的请求可能不能及时得到响应甚至不可能得到响应。二、 网络上提供资源的计算机断开连接后资源便会

消失。三、对等网络不利于维护 C/S模式的维护主要集中在服务器端但对等网络则需要对整个网络进行维护。

但是对等网络可以克服这些局限。大量互联的对等体可以降低服务请求无应答现象出现的概率。虽然资源有时会消失但可以通过在多个对等体上提供资源的冗余访问来保证资源的可用性。总之 由对等网络结构带来的弊端 也可以用其自身结构的优势去解决。

2. 1. 3 P2P网络的特点

P2P是一种完全分散式的网络体系结构系统中的任何一个对等体都处于同等的地位它既可以扮演客户机也可以扮演服务器减少了传统C/S结构对服务器计算能力、存储能力的要求。资源分布在多个对等体 因此能更好地实现了整个网络的负载均衡。 P2P网络的特点如下:

 1非中心性

信息的传输和服务的实现都直接在对等体之间进行无需服务器的介入避免了服务器出现瓶颈的情况。每个对等体既是服务器又是客户机减少了 C/S结构对服务器计算能力、存储能力的较高要求。 网络资源分布在多个对等体上能更好地实现整个网络的负载均衡。

P2P的非中心性特点 带来了其在可扩展性、鲁棒性等方面的优势。

2可扩展性

在P2P网络中用户可以在适当的范围内自动发现附近的服务。 由于没有集中式的服务器监管所以不存在服务器资源不足的问题。 P2P网络随着用户的加入 虽然服务的需求增加了不过系统整体的资源和服务的能力也在同步地扩充始终能比较好地满足用户的需要。在理论上其可扩展性几乎可以认为是无限的。例如通过FTP协议下载文件 当下载用户增加之后下载速度会变得越来越慢然而P2P网络正好相反加入的用户越多 P2P网络中能提供资源的用户就越多下载的速度也就越快。

3健壮性

编写精良的、利用了网络的动态本质的P2P应用程序具有优秀的容错能力 P2P应用程序能包容其它服务或网络的错误。 P2P架构天生具有的耐攻击和高容错的优点使其能更容易地处理网络难以捉摸的变化。 由于服务分散在各个对等体中 因此P2P网络不容易受到网络出错或拒绝服务攻击的影响。虽然这些问题仍将影响P2P网络里的个别参与者但它们的问题不会对网络里的其它人造成普遍影响。 P2P网络一般能在部分对等体失效时自动调整整体拓扑结构保持其它对等体的连通性。 P2P网络通常都是由一群对相同服务或资源感兴趣的对等体以自组织的方式建立起来的。 P2P应用能在需要时动态地、 自动地发现服务和其它资源。

4高性价比

性能优势是P2P被广泛关注的一个重要原因。随着硬件技术的发展个人计算机的计算和存储能力以及网络带宽等性能依照摩尔定理高速增长。采用P2P架构可以有效地利用互联网中散布的大量普通对等体将计算任务或存储资料分布到所有对等体上利用其闲置的计算能力和存储空间达到高性能计算和海量存储的目的。

2. 1.4 P2P的应用领域

与传统的C/S系统相比P2P技术具有无可比拟的优势。目前 Internet上各种P2P应用软件层出不穷用户数量急剧增加。除了最初的文件交换应用又出现了分布式存储、深度搜索、对等计算、 即时通信和协同工作等新的应用。 P2P已成为当今软件技术的前沿热点。 目前 P2P计算技术正被应用到军事、商业、政府、通信等领域。根据具体应用的不同可以把P2P应用大致分为以下四种类型

 1分布式计算

分布式计算的思想是利用网络把众多计算机闲置的计算能力聚集起来使用积累的强大的计算能力执行超级计算机的任务。任何需要大量数据处理的行业都可应用对等计算来进行处理。本质上对等计算就是网络上CPU资源的共享。比较有代表性的系统是SETI@home该项目是美国加州大学伯克利分校的空间科学实验室研究的利用P2P技术将网络上空闲的CPU组合起来形成巨大的计算能力用来分析无线电信号搜寻能够证实外星智能生物存在的证据。该程序是在屏幕保护模式下运行的利用的是多余的处理器资源不影响用户正常使用计算机。各个节点计算完成后向主服务器传输结果再获取新的数据进行下一轮的计算。

2协同工作

公司机构的日益分散使得给员工和客户提供方便的协作工具变得日益重要。 网络的出现使协同工作成为了可能。协同工作是指多个用户之间利用网络中的协同计算平台互相协作来完成任务。协同工作一般包括实时通信、共享白板、协同写作甚至进行视频会议等应用。

3搜索引擎

P2P技术的另一个优势是开发强大的搜索工具。 P2P搜索技术使用户能够深度搜索文档。而且这种搜索无需通过Web服务器也可以不受信息文档格式和宿主设备的限制可达到传统目录式搜索引擎无可比拟的深度。目前集中式搜索引擎如Google、雅虎、百度是人们在网络中检索信息资源的主要工具但这种集中式的搜索引擎远远无法涵盖所有互联网内的共享内容而P2P搜索技术正好是这种集中式检索的一种良性互补。可以说

无忧云:洛阳/大连BGP云服务器38.4元/月,雅安物理机服务器315元/月起,香港荃湾CN2限时5折优惠

无忧云怎么样?无忧云是一家成立于2017年的老牌商家旗下的服务器销售品牌,现由深圳市云上无忧网络科技有限公司运营,是正规持证IDC/ISP/IRCS商家,主要销售国内、中国香港、国外服务器产品,线路有腾讯云国外线路、自营香港CN2线路等,都是中国大陆直连线路,非常适合免备案建站业务需求和各种负载较高的项目,同时国内服务器也有多个BGP以及高防节点,目前商家开启了夏日清凉补贴活动,商家的机器还是非常...

AkkoCloud(60元/月 ),英国伦敦CN2 1核 768 MB 内存 10 GB SSD 硬盘 600GB 流量 英国伦敦CN2 1核  1.5G  300Mbps

官方网站:https://www.akkocloud.com/AkkoCloud新品英国伦敦CN2 GIA已上线三网回程CN2 GIA 国内速度优秀.电信去程CN2 GIALooking Glass:http://lonlg.akkocloud.com/Speedtest:http://lonlg.akkocloud.com/speedtest/新品上线刚好碰上国庆节 特此放上国庆专属九折循环优惠...

极光KVM(限时16元),洛杉矶三网CN2,cera机房,香港cn2

极光KVM创立于2018年,主要经营美国洛杉矶CN2机房、CeRaNetworks机房、中国香港CeraNetworks机房、香港CMI机房等产品。其中,洛杉矶提供CN2 GIA、CN2 GT以及常规BGP直连线路接入。从名字也可以看到,VPS产品全部是基于KVM架构的。极光KVM也有明确的更换IP政策,下单时选择“IP保险计划”多支付10块钱,可以在服务周期内免费更换一次IP,当然也可以不选择,...

csdn是什么为你推荐
党建搜狗浏览器2版本itunesrealgoogle支持ipad支持ipadipad连不上wifiipad无法加入网络怎么回事ipadwifiipad插卡版和wifi版有什么区别,价格差的多么?iphonewifi苹果手机突然用不了Wi-Fi了icloudiphone自己用icloud把iPhone抹掉了.激活却不是自己的id怎么破迅雷快鸟迅雷快鸟是做什么用的,,,
apache虚拟主机 国外vps 如何查询ip地址 谷歌域名邮箱 187邮箱 enzu 网络星期一 账号泄露 shopex空间 线路工具 服务器架设 国外网站代理服务器 魔兽世界台湾服务器 国外在线代理 美国十次啦服务器 怎么测试下载速度 hinet 新家坡 域名和空间 七夕快乐英语 更多