基于JAVA技术的网络管理系统软件体系结构袁满.docx
- 文档编号:26376964
- 上传时间:2023-06-18
- 格式:DOCX
- 页数:33
- 大小:25.35KB
基于JAVA技术的网络管理系统软件体系结构袁满.docx
《基于JAVA技术的网络管理系统软件体系结构袁满.docx》由会员分享,可在线阅读,更多相关《基于JAVA技术的网络管理系统软件体系结构袁满.docx(33页珍藏版)》请在冰豆网上搜索。
基于JAVA技术的网络管理系统软件体系结构袁满
基于JAVA技术的网络管理系统软件体系结构
袁满,胡建平,罗军,阚志刚
(北京航空航天大学计算机科学与工程系,教研室,北京,)
(中国研发中心,北京)
摘要作者在开发宽带接入网网络管理系统的项目中,提出了基于
6/?
/
技术的现代网络管理系统的软件体系结构。
这种结构是典型的三层体系结构:
客户表示层、中间服务提供层以及后端数据永久存储层,同时对每个层中涉及到的相
关技术进行了阐述。
这一体系结构不仅适合于网络管理软件的开发,而且对于其它行业软件开发具有同样的参考价值。
关键词网络管理软件体系结构
-,3M.4N0/N3&260
文章编号
%""!
GC##%G
(
!
""#
)
%!
G"%C"G"O
文献标识码
/
中图分类号
AM#P#$"Q
$%&’()*+,-,.%/%-&0(1&’,)%")234&%2&5)%
6,7%8(-!
"#"9%23-(:
(.;
<5,-+,-
=
>5!
4,-?
4-.
=
@5(!
5-
=
A,-.B34.,-.
C
%
(
0)FRF’ST’F8)*UF(JDV/)*D’7K(FWU7’X/U(*D’7K(FWU
,
+)Y($.DHYK()*-WF)’W)7’X
2’SF’))*F’S
,
0)FRF’S%"""C#
)
!
(
DEF7NZ+.[F’7,0)FRF’S%"""%#)
"D7&),2&
:
+K*F’SX)8)IDYF’S>*D7X>7’X’)(\D*EH7’7S)H)’(UJU()H
,
7EF’XDVHDX)*’’)(\D*EH7’7S)H)’(UDV(7\*)
7*W[F()W(K*)HDX)I>7U)XD’6787()W[’DIDSJFUY*DYDU)X$A[FUEF’XDV7*W[F()W(K*)FU(JYFW7I([*))I7J)*U(*KW(K*)U
,
’7H)IJ
,
WIF)’(Y*)U)’(7(FD’I7J)*
,
HFXXI)U)*8FW)Y*D8FX)*I7J)*7’X>7WEG)’XY)*H7’)’(U(D*7S)I7J)*
,
7(([)U7H)(FH)
,
*7I7()X()W[’DIDSJF’8DI8)X7()8)*JI7J)*FUXFUWKUU)X$A[FU7*W[F()W(K*)Y*DYDU)XF’([FUY7Y)*7YYIF)U(D’D(DI’J’)(]
\D*EH7’7S)H)’(X)8)IDYH)’(
,
>K(7IUDD([)*VF)IXUDV(\7*)X)8)IDYH)’($
A%;’()87
:
)(\D*EH7’7S)H)’(
,
-DV(\7*)7*W[F()W(K*)
,
-,3M
,
.4N0/
,
N3&
计算机工程与应用
!
""#$%!
而有些用户除了查询功能外,还有修改功能。
这样对不同的用
户可以通过
&’(
作为配置文件来进行相应的功能定制,以满
足不同用户对系统权限的需求与管理,利用
&’(
作为配置文
件,有效地增加了系统灵活与扩充性。
在利用
&’(
的功能时必然要涉及到
&’(
解析器。
解析器
主要用来对
&’(
文件进行解释并创建文档树,同时它还可以
检查文档的语法与结构。
有许多这样的解析器可用。
目前从
&’(
解析器获得信息的方法有两种,一种是基于事件流的,另
一种是基于树的。
)*&
(
)+,-./*01234&’(
)已经成为基于事
件流的事实上的标准了,它提供了一套具有回调功能的
*01
,
通过这些
*01
来实现应用与
&’(
解析器间的通信。
而
56’
(
5378,/9:
6;7:
’3=/.
)已经提供了一套
*01
,其中的
56’
%
标准已经得到了
>#?
的许可,
56’
标准
!
草稿已经发布。
所以现在的
&’(
解析器均支持
)*&
与
56’
标准。
目前
@*A*
的包中提供了这些
*01
,在应用中可以有选择地选用,笔者在
开发项目中采用的是符合
56’
标准的
&’(
解析器。
B$!
C@D技术
C@D
技术提供了分布式组件模型,这一技术可以使开发人
员将精力集中在解决自己业务方面的问题上,而依靠
@!
CC
平
台来解决系统级的复杂问题,这种侧重点分离的开发方式有利
于快速地开发出具有可扩充的、易于理解的以及高可靠性的应
用软件。
企业
@EFED/E9
使许多技术得以标准化,它允许为不
同的应用所开发的
C@D
可以在多个应用服务器进行配置,这
样就不需要开发每一个应用服务器。
前端服务器通过利用
C@D
技术,可以实现许多的高级功能,如可扩充性、事务支持、集簇
功能、冗余功能、数据库集成以及负载均衡等。
有两种形式的
C@D
。
一种是
)/GG+39C@D
,在多层系统中它
用来表示一个客户端,并且直接支持客户端应用的动作;另一
种
C@D
是
C9:
+:
HC@D
,它表示应用的数据,
C9:
+:
HD/E9G
对数据
库中的数据提供了一种对象的视图,它通过事务的上下文来访
问或更新数据库中的数据,这样通信中数据一致性、完整性以
及安全性就能够得到保证。
I总结
通过对
*5)(
及相关设备的网络管理项目的研制与开发,
笔者抽象并提出了现代网络管理系统的多层软件体系结构模
型。
整个模型的体系结构层次分明,各层完成各自的任务。
其中
位于中间层的后端服务器完成网络管理的五大功能中的核心
任务,象故障告警、网络事件的接收与处理、状态轮询、拓扑发
(下转
!
!
B
页)
应用界面
特征基于>/;的JK’(客户端基于>/;的@*A*客户端基于@*A*应用程序的客户端
浏览器形式需要浏览器1C或L/:
)7E-/的支浏览器中必须包括正确的虚拟机不需要浏览器,可以使用平台上的任何虚拟机
持但无需插件
分布程度客户端不需要安装任何软件,可当使用内部虚拟机时,不需要安装,但存在需要本地安装
以在网络的任何地方实现访问一些潜在的不兼容性,而且需要特定的插件
信息变更时需要刷新客户端只要客户端启动了,信息的更新是自动的信息的任何变化均会使客户端的信息自动更新
链路情况当链路的速度较低时,性能会较好需要高速链路。
需要高速链路
启动速度情况启动速度好,应用运行于服务器端,启动速度不理想,必须从服务器端下载
客户端需要下载
5JK’(,运行效果你所需要的所有数据
取决于链路的速度
执行速度好,但取决于通信的链路情况,好,特别是带有插件时,数据缓存好,性能随着客户端机器的增强而增强,
所有的处理均发生在服务器端提高了内存中的处理速度可用它来增强虚拟机的性能
表
%
几种不同的客户表示层特征比较
图
!
扩充后的网络管理软件体系结构
%I#!
""#$%!
计算机工程与应用
(
#
)网络事件管理模块;
(
&
)网络告警管理模块;
(
’
)网络设备状态轮询模块;
(
(
)网络配置模块;
(
)
)安全管理模块等。
#$&前端服务器及相关技术
#$&$%
前端服务器
前端服务器支持三种不同类型的客户,即
*+,+
客户、应用
客户及
-./0
客户,其中所有的处理操作均在服务器端进行,
而客户端仅将处理结果以报表、图形、曲线等的形式来表示用
户所关心的视图。
前端服务器形成了客户端与服务器端的链
接。
后端执行核心任务,并将数据存储到
123/4
中,前端服务
器处理来自客户端的请求。
这一处理操作主要是对后端数据库
进行直接的查询操作。
从图
%
可以看出无论是前端服务器还是
后端服务器均与数据库相连,其中后端服务器可以对数据库进
行存取操作,而前端服务器只能对数据库进行读取操作。
这两
个服务器与数据库通信均采用标准的
*235
接口。
如果客户端
请求对数据库中的数据进行写操作,那么它只能通过后端服务
器来进行,这是因为只有通过后端服务器,才对用户进行安全
认证。
前端服务器起到了双重的作用,对后端服务器来说,它以
客户的身份出现;对客户端来说它又起到服务器的作用。
所以
说前端服务器起到了承前启后的作用,它的主要功能就是来处
理客户的请求,为客户准备用户所关心的网络状态信息。
#$&$!
前端服务器与后端服务器通信问题
前端服务器与后端服务器通信方式主要是依据这两个服
务器集合运行的分布程度来决定的。
如果前端服务器与后端服
务器运行于同一个
*6/
上,那么,两者可以通过基于
.57
的
4859:
.
协议进行通信,如果两者是处于分布式运行环境中,
前端服务器与后端服务器可以通过
1/;
协议进行通信。
#$&$#
前端服务器实现时应考虑的一些问题
对于客户端应用为基于
<=>
的情况,前端服务器要维护
一个
<=>
服务器。
这一
<=>
服务器与
4=?
@=AB
C)D
绑定在一起的,
它维护着
4=?
@=AB
与
*47
C)D
。
4=?
@=AB
通过
1/;
来调用后端服务器
所支持的
E7;
,具体来说,在具体的实现中应考虑如下的模块:
(
%
)网络拓扑服务器模块;
(
!
)网络地图服务器模块;
(
#
)网络事件服务器模块;
(
&
)网络告警服务器模块;
(
’
)轮询服务器模块等。
&前端与后端服务器数据交换
位于中间层的前端与后端服务器可以通过
F/0
来实现数
据交换。
F/0
是一种标准的数据交换语言,通过利用
F/0
使
系统间的数据访问变得更加容易。
具体实现可以通过前、后端
服务器中的
F/0
解析器来对
F/0
的语法及语义进行具体的
分析与提取。
通过灵活的配置文件实现了应用的可扩充能力。
’客户表示层
通过
<=>
客户端可以查看网络告警信息、网络性能、进行
网络的配置、各种统计报告、网络拓扑及故障告警等信息,定义
用户关心的视图等。
通过浏览器,用户可以从数据库中清除或
删除告警等操作。
为满足不同用户的需要,客户表示层可以以
两种方式来访问中间服务器层,一种是基于浏览器方式的,另
一种是基于
*E6E
应用程序方式的。
’$%
基于浏览器的客户端访问方式
基于浏览器的访问包括两种方式,一种为基于
<=>
的
*E6E
客户端,另一种是基于
<=>
的
-./0
的客户端。
这种基
于
<=>
方式的客户端是目前在网络管理中比较流行的一种方
式,这种方式不需要在客户端安装任何软件,客户端只需要
*6/
的
*E6E7@GHIJK
插件的支持。
这种访问方式的优点为:
(
%
)由于用户界面是基于
<=>
浏览器的,所以应用起来是
既简单又直观;
(
!
)网络管理员在任何地方都可以通过
<=>
浏览器来管
理他们的设备;
(
#
)通过
<=>
提供的超链接能力,可以随时链接到设备厂
商站点,以获得帮助;
(
&
)
<=>
浏览器可以运行在任何的硬件平台上;
所以目前很多设备厂商在他们的设备中开发的管理程序
开始支持基于
<=>
的访问方式。
基于
<=>
的
*E6E
客户端与
前端服务器采用
1/;
、
5813E
、
4859:
.
、
440
或
-..7
协议,而
基于
<=>
的
-./0
的客户端采用
-..7
协议实现与前端服务
器的通信。
’$!
基于
*E6E
应用程序的客户端访问方式
这种访问方式属于传统的“瘦”客户方式,与典型的客户
L
服务器模式一样需要在客户端安装
*E6E
应用程序。
采用这种
访问方式客户端可以采用
1/;
、
5813E
、
4859:
.
或协议实现
与位于中间服务器层的前端服务器进行通信。
’$#两种访问方式对比
在实际的应用中,用户最终选取哪一个客户表示方式,可
以通过表
%
中列出的对比信息来选择。
(对网络管理软件基本体系结构的扩充
随着被管理网络规模及客户端用户数量的的增加,可以通
过对上述的基本体系结构进行扩充,以使其满足实际应用的需
要,见图
!
。
从图
!
可以看出,目前,即使采用了基本体系结构,对于将
来网络扩充后,软件的扩充也是十分容易的。
从图
!
可以看出,
中间层一方面既起到连接前端与后端的功能,又起到了均衡负
载的作用,同时又起到了隔离客户端与数据存储层的作用,可
以保证客户对数据的安全存取。
如果被管设备数量很大时,还
可以增加后端服务器的数量,这样一个前端服务器可连接若干
客户,一个客户可以连接若干个前端服务器。
同样,一个前端服
务器可以与若干个后端服务器相连,一个后端服务器也可以与
多个前端服务器相连。
该实现技术与前面提到的基本结构相
同,这里就不的重述了。
)实现中涉及到的*E6E、*E6E相关术以及F/0
技术
*E6E
、
*E6E
组件技术以及
F/0
技术为笔者开发基于
*E6E
技术的现代网络管理系统提供了相当丰富的工具支持。
)$%F/0技术
在现代网络管理中,利用
F/0
技术有利于对管理信息存
储与交换的标准化。
例如,在网络管理系统中不同权限的用户
所关联的菜单功能是不同的,有些用户只能对系统进行查询,
%M!
计算机工程与应用
!
""#$%!
因此,这种体系结构对于现代网络系统的开发与研制具有较大
的应用与参考价值,笔者认为这种结构也可以应用于其它行业
的软件开发。
!
网络管理软件基本体系结构
笔者通过对网络管理软件体系的研究,建立了三层体系结
构模型,基于被管理网络规模抽象出了一种适合于被管网络为
中小规模的情况的基本体系结构,同时考虑实际应用中被管网
络为大规模的情况,又对基本体系结构进行扩充,得到适合于
被管网络为大规模情况的网络管理软件体系结构。
对于一般企
业,当被管理的网络规模不是很大时,可以考虑图
%
所示的基
本体系结构。
从图中可以看出在不考虑被管实体时,从后向前
依次分为数据存储层、中间服务器层以及客户表示层。
#
体系结构中功能实体
#$%被管实体
被管实体是整个被管理网络中所有被管设备的集合,一般
说来这些设备可能包括交换机、路由器、服务器及
&’()*
等
设备,其中每个被管设备均是一个
’+*,
-%.
节点,即符合简单网
络管理协议,每个设备中都运行着由厂商开发的驻留在设备中
的
’+*,
代理。
这一代理主要实现对该设备
*/0
信息的维护。
它可以通过
’+*,
、
1*/
-2.
、
3410)
-5.
等协议与位于中间服务器
层中的后端服务器进行通信,
’+*,
代理还可以主动地向后端
服务器发送陷阱报文,同时后端服务器也可以向它进行主动轮
询,每一个被管设备通常称为一个网元。
#$!
数据存储层
数据存储层主要是通过关系数据库为网管信息的存储介
质。
它主要负责对永久数据的存储,这些数据包括网络设备的
基本数据、网络拓扑数据、网络性能数据、网络发现数据、网络
授权与安全认证数据、策略数据等。
这些数据是由位于第二层
中的后端服务器经过与被管设备的通信得到的并存储到数据
库中的。
这些数据可能来自于后端服务器对设备的主动轮询,
还可能来自于被管设备向后端服务器发出的陷阱,还可以来自
于设备的配置及策略数据等。
客户表示层可以根据需要通过前
端服务器
6
后端服务器
6
数据库来实现对数永久数据存储的写
操作。
当然这里的写操作是要通过后端服务器进行认证的。
而
对于客户端仅仅是需要查询所关心的数据时,它可以直接通过
位于服务层中的前端服务器来对数据库进行查询操作。
数据存
储层与位于中间服务器层中的后端服务器间是通过标准的
7&03
-8.
进行通信。
使数据存储层不依赖于具体的
1&0*’
,这样
就保证了数据存储层的可扩充性及与存储介质的无关性。
存储
层中存储着整个网络管理中的所有的信息,通过对这些信息的
各种操纵实现网络管理功能。
#$#
中间服务提供层
中间服务器层包括两个服务器,一个是前端服务器,另一
个是后端服务器。
更确切地说,每一个服务器都是一些功能服
务器的集合。
这些服务器是整个体系结构的核心部分,它们负
责数据采集、数据维护以及用户的授权、认证等安全方面的任
务。
下面对这些服务器进行详细地讨论。
#$#$%
后端服务器
后端服务器执行服务器端的核心网络管理任务,主要任务
是完成网络发现、网络拓扑、故障管理、配置管理、性能管理以
及安全管理等。
通过这些功能来对被管理对象的信息进行维
护、接收并处理陷阱、事件处理、告警、数据采集、生成报告以及
状态轮询等。
这一层是整个网络管理中的一个核心层,只有通
过这一层才能采集并存储网络管理信息到数据库中。
后端服务器负责维护与更新存储在数据库中的基于网络
事件、状态轮询、管理员操作等的信息模型。
同时这里包含着一
个策略引擎,实现对基于策略的网络管理。
后端服务器可以通过配置文件实现高度的定制。
通过所提
供的定制管理对象、过滤器以及分析器等的接口来实现对后端
服务器的扩充。
当前端与后端服务器运行在同一个
79*
(
7:
;:
9<=>?
:
@*:
AB )上时,后端服务可以通过 7: ;: ),/ 的 ’EAFD> 来实现;当前端与后端服务器运行在分布式环境中时,后端服 务可以通过 1*/ 来实现。 后端服务器支持如 ’+*, 、 3410) 等 的各种协议。 #$#$! 后端服务器实现中的一些考虑 在实现后端服务器时应考虑下面模块: ( % )网络拓扑模块; ( ! )网络地图服务器模块; 图 %中小规模网络管理软件的体系结构 %8%! ""#$%! 计算机工程与应用 %引言 随着现代计算机网络的发展,计算网络变得更加复杂,尤 其目前电信数据网与计算机网络的融合,使得网络管理变得更 加复杂。 网络管理系统已经成为网络管理员必不可少的管理工 具。 人们对计算机网络管理工具的要求已不仅仅局限于集中式 管理模式,要求网络管理工具具有分布计算能力。 可以说,目前 计算机网络象电话系统一样已经成为人们日常生活中必不可 少的部分。 所以每年 &’()*’)( 用户的接入量在成指数增长,目 前提供 &’()*’)( 接入服务也越来越丰富,从有线的 ++, 、 &-+, 、 ./01234+23 、 /+-1 到无线的宽带接入等。 因此如何有力 地保障网络为人们提供高效、稳定的网络服务这一事实已摆在 了 &’()*’)( 服务提供商的面前。 所以目前 &’()*’)( 服务商都在 纷纷购买或开发他们自己的网络管理系统工具软件。 目前,大 多数的 &’()*’)( 提供商还是根据自己的需求来开发适合自己 的网络管理系统软件。 几年来,客户 5 服务器体系结构的软件模 式已在软件开发中发挥了相当重要的作用,而且随着分布计算 及计算机软件技术的发展,这种传统的两层体系结构已经不能 满足某些应用的需求,尤其现代计算机网络管理对分布计算能 力的要求也越来越高。 人们对网络的管理已经从集中式的管理 发展为分布式管理。 几年来随着 6787 9#: 、 260 9;: 、 <31 9! : 等技术的发 展与成熟使人们对网络管理的分布式要求已变成现实。 所以目 前很多网络管理软件都极力追求开发具有 =)> 功能。 众所周 知,在开发网络管理系统过程中一个好的体系结构对于软件的 设计与开发都是至关重要的。 笔者在研制与开发宽带接入网网 络管理系统软件过程中,利用 6/? / 及相关技术,通过需求以 及对网络管理模型的层层抽象,建立了三个层网络管理体系结 构框架,具体说这三层分别是: 客户表示层、中间服务提供层以 及后端的数据永久存储层。 其中客户表示层可以是基于 @A31 的,也可以是基于单独的 6/? / 应用程序的;中间层又可划分 为两个层,一是前端服务器,另一个是后端服务器。 其中前端服 务器主要负责客户与后端服务器的的交互,而后端服务器主要 负责对被管设备的轮询、状态监控、数据采集以及与数据库的 数据交换等功能。 6/? / 是一种跨平台的语言而 <31 是可移植 的数据表示语言,利用 6/? / 写成的程序具有“写一次,可运行 于任何地方”的特点,因此通过 <31 、 6/? / 及相关技术可以实 现现代网络管理系统的各种管理的功能。 这样的三层体系结构 层次分明,集开放性、高效性、可扩展性以及网络安全性于一 身。 这样的层次结构有利于各功能模块并行研制及分工协作。 基于 ! "#"技术的网络管理系统软件体系结构 袁满 % 胡建平 % 罗军 % 阚志刚 ! % (北京航空航天大学计算机科学与工程系 B"% 教研室,北京 %"""C# ) ! ( DEF7 中国研发中心,北京 %"""%# ) 2GH7FI : JK7’H7’L! B#$’)( 摘要作者在开发宽带接入网网络管理系统的项目中,提出了基于 6/? / 技术的现代网络管理系统的软件体系结构。 这种结构是典型的三层体系结构: 客户表示层、中间服务提供层以及后端数据永久存储层,同时对每个层中涉及到的相 关技术进行了阐述。 这一体系结构不仅适合于网络管理软件的开发,而且对于其它行业软件开发具有同样的参考价值。 关键词网络管理软件体系结构 -,3M.4N0/N3&260 文章编号 %""! GC##%G ( ! ""# ) %! G"%C"G"O 文献标识码 / 中图分类号 AM#P#$"Q $%&’()*+,-,.%/%-&0(1&’,)%")234&%2&5)% 6,7%8(-! "#"9%23-(: (.; <5,-+,- = >5! 4,-? 4-. = @5(! 5- = A,-.B34.,-. C % ( 0)FRF’ST’F8)*UF(JDV/)*D’7K(FWU7’X/U(*D’7K(FWU , +)Y($.DHYK()*-WF)’W)7’X 2’SF’))*F’S , 0)FRF’S%"""C# ) ! ( DEF7NZ+.[F’7,0)FRF’S%"""%#) "D7&),2& : +K*F’SX)8)IDYF’S>*D7X>7’X’)(\D*EH7’7S)H)’(UJU()H , 7EF’XDVHDX)*’’)(\D*EH7’7S)H)’(UDV(7\*) 7*W[F()W(K*)HDX)I>7U)XD’6787()W[’DIDSJFUY*DYDU)X$A[FUEF’XDV7*W[F()W(K*)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 JAVA 技术 网络 管理 系统软件 体系结构