JXTA设计目标及层次结构
一、 JXTA设计目标
首先,JXTA是为了构建P2P网络而制订的一组协议,是处理构建P2P网络所碰到的问题的解决方法,JXTA标准协议规范介绍如下:
“JXTA由六个协议组成,这些协议是专为特定的、分布式的、对等的网络计算而设计的。使用这些协议,Peer可以互相合作来建立自我组织、自我管理的对等组,而不必关心它们在网络中所处的位置(在网络边缘或者防火墙的后面),并且也不需要集中的管理机构。”
因此JXTA的核心是六个协议,其次,JXTA是P2P应用程序开发的运行平台;目前JXTA首先推出了基于Java的参考实现,提供了支持六个协议的Java API,JXTA还将推出包括C语言在内的其他编程语言的API,JXTA在设计时有如下几个目标:
1、操作系统无关
2、语言无关
3、为P2P应用提供服务和基础
从本质上讲,JXTA的目标是希望在任何设备,从台式机到PDA、汽车、洗衣机等设备都可以支持P2P编程。这里有几个概念上的目标,它们包括:
1、使用组来组织Peer并且在组内提供服务和应用的环境。
2、组可以使用认证和验证方式来控制组内的访问权限。
3、通过网络来发布关于Peer和网络资源的信息。
4、通过系统来发布各种请求。
5、提供一个基础平台,供Peer之间做路由和通信。在防火墙或者其他障碍后面的Peer之间的通信也是这个目标中很关键的一部分。
6、供一种机制允许Peer之间可以彼此监视状态和资源。
除此之外还有一些其他目标,例如加密、支持不同的通信协议、易用性、稳定性和性能等,所有这些目标在设计JXTA协议和最初的Java API时,都被考虑到,另外,开发人员和Sun公司的管理者还考虑了以下目标:
1、系统应该允许任何设备直接加入到JXTA网络中去。
2、系统应该允许ISP对网络上的Peer进行集中管理。
3、系统应该支持数字产品版权的管理,例如购买的软件、音乐CD、电影等。
4、封装和抽象一些特定的核心功能,以便产生出商业方面的应用。
从上面列出的目标可以看出两点,首先要让企业觉得使用JXTA可以使自己对系统进行控制,原因在于大部分P2P系统没有集中式的管理,所以在应用中不受企业的欢迎;其次,对于硬件或者软件提供商来说,JXTA系统需要能够创造出利润。
根据以上这些目标,JXTA被设计成企业可以接受的、容易维护的、健壮的,并且能够满足任何P2P应用的概念。
作者:务实出处:yesky责任编辑:
方舟
[ 2003-12-25 17:27 ]
文件共享程序和聊天程序的成功已经吸引了许多程序员加入P2P程序的开发
二、 JXTA的层次结构
JXTA由三层组成,如图1所示。第一层是JXTA核心层,它包含了服务所需要的核心功能;第二层是服务层,它提供了访问JXTA协议的接口;第三层是应用层,它使用服务来访问JXTA网络和JXTA提供的功能。这样的设计和一个标准的操作系统比较相似,标准的操作系统包括核心操作系统、服务和应用程序。

图1 JXTA的层次结构
各层的说明如下所示:
1、核心层(JXTA Core):这一层封装了最根本的东西,包括Peer、对等组、Peer发现、Peer通信、Peer监视和相关的安全原语。
2、服务层(JXTA Services):这一层包括对于P2P网络不是必需的、但很通用的功能,如查找、共享、索引、代码缓存和内容缓存的机制。
3、应用层(JXTA Application):这一层包括了应用JXTA服务开发出来的完整的P2P应用程序,例如myJXTA,JXTA-CAD等应用程序。