摘要随着网络规模的扩大,网络管理变得越来越重要。文章介绍了分布式网络管理的体系结构,分析了分布式网络管理的几种相关技术:基于公共对象请求代理体系结构(CORBA)、基于Web、基于移动代理和基于主动网络。着重介绍了基于CORBA和基于移动代理的网络管理模型,它们代表了网络管理发展的两种趋势。最后,对网络管理技术进行总结,指出智能化、分布化、跨平台、可扩展性、可维护性是未来网络管理发展的目标。
0、引言
随着计算机和电信网络的飞速发展,人们对网络管理的研究越来越重视。基于Internet的简单网络管理协议(SNMP)和基于电信网的通用管理信息协议(CMIP)等网管协议在各种网络环境中得到广泛应用并发挥了巨大作用。如何保障网络正常、经济、可靠、安全的运行是网络管理的核心问题。传统的网络管理系统采用集中式管理模式,网络中处于中心位置的是中心网络服务器,它负责对整个网络进行统一控制和管理,中心网络服务器定期向网元节点发送查询信息,与网元节点进行相关信息交换。但是,大量的数据传输会消耗网络带宽,在传输过程中又容易引起数据丢失,而且中心网络服务器往往超负荷工作,严重影响运行效率。这种网络管理系统结构较简单,虽然容易实现,但是可扩展性差,如果中心网络服务器一旦失效,将引起整个网络瘫痪。
1、分布式网络管理
为了克服集中式网络管理的缺陷,可以将管理工作分散到整个系统中进行分布处理,再将处理结果汇总。在这样的环境中会有多个管理者存在,网络管理工作也应按照一定的管理结构划分给各个管理站(NMS)。这种管理结构可以是能反映网络连接关系的结构,也可以是反映等级管理关系的结构,甚至可以是反映分布应用的结构。
在实际的分布式网络管理中采用的是层次式网络管理,通过引入子管理站(SUBNMS)减轻顶层管理站的负担,每个子管理站负责一个子网域,并对应一个管理信息库(MIB),这些MIB与顶层管理站的MIB在网络初始条件下可以设置为相同,但在网络运行后,每个子网域的MIB搜集本网内的管理信息和数据,再汇总到顶层管理站的MIB中。采用这种方式,可以减少网络传输,消除瓶颈,增加可靠性和扩展性,从而提高整个网络管理的性能,而顶层管理站负责协调所有管理站的通信与操作,更易于与现有的网管系统集成。系统结构如图1所示。
图1 分布式网络管理模型
分布式网络管理集中体现了“分布式”思想(如分布式阈值检测、分布式查找与监测、分布式的管理任务引擎等),将网络管理任务由网管工作站移到一个或多个远程工作站。以分布式阈值检测为例,在实际应用中,一些厂商可以在网络设备中内置SNMP的软件,承担中心网络管理软件的分布式阈值监测任务。再加上包含于计算机网络管理软件之内的远程监控(RMON)工具,这些内置软件的收集诊断和性能数据独立于中心管理控制台,并执行特定的校验操作。这种分布式RMON特性扩展了中心网络管理系统跨越交换局域网网段的监测和收集能力。另外,自适应的策略管理、智能过滤、判断逻辑等功能可根据策略或规则对变化的网络做出性能和安全性方面的响应,减少管理复杂度,限制信息负荷等。
2、发展趋势
分布式网络管理主要有两种发展趋势:a)通过分布式计算方法,在现有的网管框架下实现开放的、标准的和可扩展的分布式管理,主要有基于公共对象请求代理体系结构(CORBA)的分布式管理和基于Web的分布式管理。b)使用全新的分布式体制的网管系统,主要通过移动代理(MobileAgent)和主动式网络(ActiveNetwork)实现分布式网络管理。
2.1基于CORBA的网络管理
CORBA是由对象管理组织(OMG)提出的应用软件体系结构和对象技术规范,其核心是一套标准的语言、接口和协议,以支持异构分布应用程序间的互操作性及独立于平台和编程语言的对象重用。
CORBA的主要特点:a)引入中间件(Middle-Ware)作为事务代理,完成客户机(Client)向服务对象方(Server)提出的业务请求,实现客户与服务对象的完全分开,客户不需要了解服务对象的实现过程以及具体位置。b)提供软总线机制,使得在任何环境下、采用任何语言开发的软件只要符合接口规范的定义,均能集成到分布式系统中。c)CORBA规范软件系统采用面向对象的软件实现方法开发应用系统,实现对象内部细节的完整封装,保留对象方法的对外接口定义。
引入中间件,在CORBA系统中称为对象请求代理(ORB),它负责接收客户机的服务要求,寻找实现该服务的对象,传递相应参数,引用有关方法,返回结果。由于ORB可以根据对象引用来定位服务器,因此客户机对远端对象发起的调用就像本地调用一样,从而实现了CORBA的位置透明性,ORB在异构分布式环境下为不同机器上的应用提供了互操作性,并无缝地集成了多种对象系统。
OMG接口定义语言(IDL)通过对象的接口定义了对象的类型。一个接口由一些命名的操作和与这些操作相关的参数组成。虽然IDL提供概念框架用于描述对象,但不需要有IDL源代码供ORB工作,只要相同的信息以句柄函数或运行接口库的形式提供,特定的ORB就可以正常工作。IDL是一种方法,它使对象实现能告诉潜在的客户,什么样的操作可以执行。从IDL的定义上可以将CORBA对象映射为特定的编程语言或对象系统。
基于CORBA的网络管理模型如图2所示,通过软总线机制,为分布在不同节点上的对象提供一个对象总线及相应的总线服务,各分布式对象只要按照要求的接口方法接上总线,便可方便地实现对象间的互操作。利用CORBA进行网络管理,既可以用CORBA客户实现管理系统,也可利用CORBA定义被管对象,还可以单独利用CORBA实现完整的网络管理系统。但是为了发挥现有网络管理模型在管理信息定义以及管理信息通信协议方面的优势,一般是利用CORBA实现管理系统以及访问被管资源,使其获得分布式和编程简单的特性,而被管系统仍采用现有的模型实现。目前的研究热点是SNMP/CORBA网关和CMIP/CORBA网关的实现问题,以支持CORBA客户对SNMP或CMIP的被管对象进行管理操作。
图2 基于CORBA的网络管理模型
2.2基于Web的网络管理
传统的基于大型平台的网络管理模式存在很多不足:a)管理平台软硬件费用昂贵。b)系统安装、维护较复杂。c)远程访问困难,不便于分布式管理。d)扩展性较差,网络管理应用开发较复杂。因此,通过Web技术(如超文本应用协议(HTTP)、超文本标记语言(HTML)、Web浏览器和Web服务器等)来集成网络管理系统,特别适合于要求低成本、易于理解、平台独立和远程访问的网络环境。