3.2.2.2配置信息管理中心的设计
配置信息管理中心是一个Aglets client程序,完成以下功能:
1)设定采集目标主机清单、采集内容、数据访问方式;
2)生成并派遣信息采集代理;
3)收集信息采集代理发送回的配置信息(Aglets消息),该信息可以是代理在过程中发送回来,或者是代理返回后发送。
3.2.2.3 配置信息采集代理的设计
信息采集代理是也一个没有界面的Aglets,它由配置信息管理中心,按照指定的目标主机地址列表中的顺序依次访问每个主机,采集配置信息。
当移动到一台主机后,其基本工作流程如下:
1)将本机IP地址从目标主机列表中删除;
2)通过移动代理网管服务器提供的SNMP设施,访问设定的采集内容MIB值;
3)如果设定直接返回信息,则将采集的数据打包成一个Aglets消息,发送回配置信息管理中心;否则,将信息暂存在代理的内存中;//Aglets消息类型,如何打包,使用。
4)检查目标主机列表是否为空。如果不空,则移动到列表中的第1个地址的主机;再依次执行任务,如果某个主机不可达,则设置时间间隔,超时则返回信息说明该主机不可达,再依次到下一个主机采集信息。最后再一起打包返回管理中心。如果空,则移动回配置信息管理中心所在主机。
5)当移动回配置信息管理中心所在主机后,如果设置汇总返回信息,则将采集的配置信息数据打包成一个Aglets消息,发送给配置信息管理中心。最后,发送一个采集结束消配置信息管理中心,然后自行死亡。
4 一个原型系统
由于Aglets是基于Java的移动代理开发平台,我们使用了Java语言来实现该原型系统。使用的Java开发软件包包括aglets-2.0.2.jar、AdventNetSnmpHLAPI.jar和jdk1.5.0。

图3用户采集配置数据结果
该系统使用三个类来实现:DataCollectionWindowAglet类,DataCollectionAglet类,CollectionWindow类,其中前两个类继承类Aglet,DataCollectionWindowAglet类实现静态代理,负责移动代理的生成、派遣和返回数据的处理,DataCollectionAglet类完成配置数据的采集, CollectionWindow类实现了界面窗口。原型系统在Windows2000系统下开发。
客户端程序界面如图3所示,分为3个部分。顶部供用户输入要采集信息的主机IP地址,指定采集信息内容,以及代理发送采集信息的方式。中部的按钮“启动”供用户启动采集过程。底部的文本框显示采集的结果信息。
5 响应时间性能分析
我们对基于移动代理和基于传统SNMP方法在读取配置数据响应时间性能进行比较,使用开发的原型系统进行实验测试,测试两种结构下的响应时间。
如图4所示,由该图可以看出当被管设备集中在同一子网内时,使用移动代理方法的响应时间优于基于SNMP方法的响应时间,在读取相同的数据量时,随着主机数的增加二者的响应时间差距逐渐增大,所以移动代理的响应时间特性优于SNMP方法的响应时间。

图4 单子网响应时间比较 图5变量数对响应时间的影响
图5所示,对于读取的数据量对响应时间的影响,我们分析在单子网模式下的响应时间,可见,在读取的数据量少时,基于snmp方法是有一定优越性的,但是随着数据量的增加使得基于移动代理的方法优势逐渐体现出来,读取的数据量越大则优势越明显。这里给出一个直观的解释,在读取的数据量很少时移动代理要花费更多的时间在自身处理上,如源移动代理系统收集运行状态和编码的时间,移动代理在目标机器上的解码、实例化、和激活时间,而当读取的数据量较大时,移动代理可以在高速的局域网内迁移,而SNMP方法则要访问多次,尤其是读表的时间上很耗费时间,所以处理时间可能会更长,此时如图5所示,移动代理的优势就比较明显。
6 结束语
本文介绍了一个利用移动代理访问配置数据的原型系统和相关的实现方法。该配置信息采集系统是在IBM的移动代理平台Aglets基础上实现的,实验环境中包括两个服务器,用户通过客户机可以实现移动代理对分布在两个服务器上的配置数据的访问。原型系统提供了数据查询界面、配置数据显示界面,实现用户简单的查询需求。该系统的成功运行表明,利用移动代理技术访问分布式配置数据是可行的、有效的。同时与传统的基于SNMP方法的数据采集进行了性能比较,实验结果表明,在主机数量比较集中的且被管理的主机量较大时刻,使用移动代理技术体现出延迟上的优越性,在同样的实验环境中,在采集相同数量主机时,采集的数据量越大,则移动代理较之传统的基于SNMP方法延迟更小。
参考文献:
[1]张普含.“一种基于移动代理的网络管理系统及性能分析”.软件学报.2002,Vol.13,No.11。
[ 2] Manoj Jumar Kona and Cheng-Zhong Xu. A Framework for Network Management using Mobile Agents. Department of Electrical and Computer Engineering Wayne State University, Deroit, MI 48202.
[4] Danny B.Lange General Magic Inc.420 North Mary Avenue Sunnyvale. CA94086 U.S.A. Mitsuru Oshima IBM Tokyo Reseach Laboratory 1623-14 Shimotsuruma.Yamato-shi Kanagawa-ken 242, Japan. Mobile Agents with Java : The Aglet API.
[4]RocH.Glitho, Ericsson Research Canada Edgar Olougouna,Samuel Pierre,Ecole Polytechnique,Canada . Mobile Agent and Their Use for Information Retrieval: A Brief Overview and an Elaborate Case Study. IEEE Network.Janua.ry/Feburary2002
[5]Ravi Jain, Faroog Anjum and Amjad Umar. A Comparison of Mobile Agent and Client-Server Paradigms for Information Retrieval Tasks in Virtual Enterprises. Copyright 2000 Telcordia Technologies, Inc.