当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:14:00  来源:本站整理

Jini技术底子构造[Java编程]

赞助商链接



  本文“Jini技术底子构造[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

Jini技术的即插即用的底子构造主要由三组协议构成:查找(Lookup)、发现(Discovery)和加入(Join).查找服务是分布式Jini系统的基本构成部份,供应了在分布式Jini系统中服务的中央注册机制.在Jini系统中,程序找到服务的首选办法是通过查找服务,并且查找服务也是供应应管理员和用户各种拜候接口的底子.

查找服务的服务模子

查找服务保存了一个服务的表,表中的每个元素代表了系统中可用的一项服务,此中保存了拜候这项服务所需求的代码和一系列可扩大的描写服务的属性.打个比方,查找服务就像电话簿,Jini系统中的服务就像电话簿中的用户,查找服务中保存的信息就是用户的电话号码.也就是说,但凡需求拜候Jini系统中的服务,就必须知道查找服务中保存的“电话号码”.但是查找服务有不少超越电话簿的长处,比方:查找服务保存的是一个动态的“电话簿”,并且,系统中的服务可以在“电话簿”中主动加入和去掉自己的“电话号码”,而查找服务也完好支持这种机制.而在今后的内容里,我们会发现更多的差别点.

当服务在查找服务中注册后,会产生一个告诉事件.系统管理员可以操纵查找服务中的事件回调机制来收到这个告诉.这就有利于系统管理员管理和保护系统.并且服务也会供应设置自身的用户界面,这个用户界面可以作为服务的属性保存到查找服务中.管理员能轻松地设置服务,不用忙着处处找各种各样的驱动程序和管理软件.

在服务的有效期内,假如服务碰到问题需求惹起管理员的注意,比方打印服务发现纸张欠缺服务就增添一个属性来指明问题.更改后的后果会保存到查找服务中.这时,同上所述,管理员操纵查找服务的事件回调机制来收到上述问题的告诉.有了这个有力的机制,大大减轻了系统管理员的负担.

发现协议和加入协议

网络中的服务在启动后,怎样加入到分布式Jini系统中,成为Jini系统中的服务,有两个重要的必不可少的步骤.第一步必定是找到系统中的查找服务,这个历程就是Discovery历程,用到的协议就是发现协议.第二步就是把自己注册到查找服务中,这个历程是Join历程,描写这个历程的协议就是Join协议.一项服务在完成了这两步后,就真正成为了Jini系统中的一位成员.为了精确地描写这两个协议,先介绍一下用到的术语.

主机.拥有一或多个Java虚拟机并且能加入网络的一个硬件设备被称为主机组.一组Jini服务所构成的调集.组的名字是肆意的字符串,用来描写该组的性质.

Discovery实体.Discovery实体就是处于同一主机内,将要开始,大概正处在找到查找服务的历程中一个或多个彼此合作的Java语言中的对象的调集.

Join实体.Join实体就是处于同一主机内,已经得到了查找服务,处于从查找服务中查询服务大概将自己注册到Jini系统内历程中的一个或多个彼此合作的Java语言中的对象的调集.在今后的文章中,为了便利描写,将Discovery实体和Join实体统称为实体.

Jini系统中的服务包含的范围很广,包含各种纯软件的服务和硬件设备的服务.假如一台主机但愿加入Jini系统,成为Jini系统中的一项服务,需求具有以下几个条件:首先需求一个可以运行Jini代码的Java虚拟机;其次需求一个精确配置的网络协议栈.这个网络协议栈随着网络协议的差别而改变.这里假定采取的网络层的协议是IP协议,此时以下几个条件是必不可少的:IP地址(IP地址大概是静态IP地址,大概是由主机操纵DHCP协议来获得的动态IP地址);支持TCP协议和UDP多点传送协议(在Discovery历程中会用到这两种协议).举个例子,一台联网的、安装了JDK(Java开辟工具包)的个人电脑就是一台主机.

每个查找服务都有相关联的组,这样可以使Jini系统中的服务构造更有层次感.比方:一个特定的查找服务可以属于打印设备组,任何打印服务都可以注册到该查找服务中.当然,组都是预定义的.在Discovery的历程中,Discovery实体肯定自己感爱好的组,也就是自己但愿加入的组,假如找到的查找服务也属于这样的组,Discovery实体就加入到这个查找服务中.这就避免了查找服务的构造过于宏大,把组织系统中服务的责任分摊给系统中多个差别的查找服务.目前,组的命名还没有一个明确的标准,Sun公司只是但愿组的名字最好符合网络域名的命名标准,但是目前并没有给出若何定义组的名字的具体标准.我们相信在将来的发展历程中,随着对Jini系统中服务的组织构造层次性要求的提高,这种命名标准会随之完善起来的.

1.发现

在Discovery实体和查找服务交互历程顶用到的协议一共有三个,辨别是:多点传送恳求协议(multicast request protocol)、多点传送公布协议(multicast announcement protocol)和单点传送发现协议(unicast Discovery protocol).这里首先对这三个协议举行简单的介绍.

多点传送恳求协议.Discovery实体利用该协议以发现Jini系统中存在的查找服务.这个协议可用于计划浏览Jini系统中的服务的浏览器.

多点传送公布协议.查找服务在启动后大概在网络崩溃的恢复历程中,操纵该协议在系统中公布自己存在的数据报.

单点传送发现协议.当Discovery实体和查找服务中有一个知道了另一个的网络地址和端口号时,就采取该协议来主动成立二者之间点到点的通讯.

在Discovery的历程中,Discovery实体和查找服务的接洽是成立在socket层上的.二者既是客户方,也是服务方.在通讯的历程中,分为两个阶段.

第一个阶段:Discovery实体和查找服务各自都成立了一个单点传送服务的服务器,可以理解为普通的Internet服务器,比方FTP协议中的FTP服务器,目的就是让Discovery实体和查找服务可以成立与对方的点到点的衔接.目前面对的问题是:若何让双方知道对方的服务器地址?在第二个阶段的描写中会找到这个问题的答案.

第二个阶段:此时Discovery实体和查找服务都不知道对方的网络地址,但是按照Jini系统的要求,双方在网络层加入了特定的多点传送的组(这个组不是Jini系统中的组的概念,而是指网络协议中的组),并且双方都知道对方加入的网络组的组地址.由于网络协议支持向网络组中全部机械同时发送UDP数据包,操纵这个特点,双方都向对方所属的组发送数据包.Discovery实体发送数据包的历程称为多点传送恳求,在查找服务中发送数据包的历程称为多点传送广播公布.在二者发送的数据包中都保存了各自的地址和别的必要信息.同时,双方都成立了一个收听发向本组的UDP数据包的服务器.Discovery实体所成立的服务器的服务称为多点传送广播收听服务,在查找服务中成立的服务器的服务称为多点传送广播恳求服务.服务器把收到的数据包举行解码,便可以知道客户方的地址.在这个阶段顶用到的协议就是多点传送恳求协议和多点传送公布协议.这时,Discovery历程就进入了第三个阶段.


  以上是“Jini技术底子构造[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • Jini设备及其操纵实例
  • Jini技术底子构造
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .