基于XML的网络管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于XML的网络管理系统
作者:马晓玲李刚
来源:《中国科技博览》2009年第02期
[摘要]网络技术飞速发展的同时,其安全性和管理的复杂程度都大大增强。
基于XML的网络管理技术是当前网络管理技术研究的最新趋势。
本文首先论述了网络管理和XML的基本概念,随后给出了常用的网络管理技术,最后论述了基于XML的网络管理系统设计实例。
[关键词]XML网络管理SNMP SOAP
中图分类号:TN915.07文献标识码:A文章编号:1009-914X(2009)01(b)-0034-01
引言:随着计算机技术和通信技术的发展。
计算机网络已经在社会的各个领域发挥着越来越重要的作用。
可是随着网络规模的扩大,影响网络服务的因素也增多,网络管理的复杂度也大大增加。
如何对网络进行有效的管理,确保信息网络可靠、稳定地运行已经成为一个亟待解决的问题。
基于XML的网络管理技术是当前网络管理技术研究的最新趋势,XML技术具有良好的数据存储格式、可扩展性强、结构化程度高并且便于网络传输。
因此加强基于XML的网络管理系统的设计研究具有重要意义。
1、网络管理和XML的基本概念
网络管理就是监视和控制一个复杂的计算机网络,以确保其尽可能长时间地正常运行,或当网络出现故障时尽可能快地发现故障和修复故障,使之最大限度地发挥其应有的效益的过程。
网络管理包括网络的监视和控制两个方面。
网络管理的功能是配置管理、故障管理、性能管理、安全管理和计费管理。
XML(Extensible Markup Language:可扩展标记语言)是由万维网协会于1998年推出的一个超越HTML能力范围的新语言,它将SGML(standardGeneralized Markup Language,标准通用置标语言)的丰富功能与HTML的易用性结合到了Web的应用中,以一种开放的自我描述方式定义了数据结构,在描述数据内容的同时能突出对结构的描述,从而体现出数据之间的关系。
2、网络管理的常用技术方法
常用的网络管理技术有以下几种:①CMIP网络管理技术。
公共管理信息协议CMIP是一种针对开放式系统互联参考模型OSI的网络管理体系结构。
基于CMIP的网络管理系统包括系统管理应用进程SMAP(System Managomeent Application Procedure)、系统管理应用实体SMAE(System Management Application Entity)、层管理实体和管理信息库。
CMIP的整体结构的开放性着眼于网络未来发展的设计思想,使得它有很强的适应性,能够处理任何复杂系统的综合管理。
然而由于其实现的复杂性,导致它并没有被人们所广泛使用。
②SNMP网络管理技术。
SNMP管理体系结构是当前最典型的网络管理体系结构。
与SNMP相关的管理信息结构SMI以及管理信息库MIB非常简单,能够迅速、简便地实现。
SNMP是目前TCP/IP网络中应用最为广泛的网络管理协议。
SNMP的网络管理模型由4个组成部分:被管对象、管理站、管理信息库、管理协议。
它的最大特点就是设计简单,既不需要复杂的实现过程,也不会占用太多的网络资源,非常便于使用。
但是SNMP不适合分布式的管理。
③CORBA网络管理技术。
公共对象请求代理体系结构CORBA是对象管理工作组OMG(Object Management Group)为了解决分布式处理环境中软件系统互联问题而定义的一种分布式处理体系结构。
COR·BA具有以下优点:支持多种现存语言、可在一个分布式应用中混用多种语言、支持分布对象、提供高度的互通性。
利用CORBA技术把这两者结合起来是当时网络管理的一个主要发展方向,它可以很好的支持分布式管理中管理工作站之间的通信。
④web网络管理技术。
基于Web的网络管理模型使用Web技术,管理员可以在任何地方都能对网络进行管理,只要有一个网络浏览器就行了,并且这种网络管理不受操作平台限制。
实现方式有代理方式和嵌入式两种。
⑤XML网络管理技术。
基于XML的网络管理是在支持HTML的路由器和管理者之间通过传递XML文档类型的RPC来达到管理网络设备的日的。
它们为管理支持XML的路由器设计了一种基于XML网络管理的API:JUNO Script。
3、基于XML的网络管理系统设计
3.1系统设计思想
考虑将MIB作为NETCONF协议的数据模型,这样就可以通过NET-CONF协议配置支持SNMP的网络设备。
虽然MIB是用SMI描述的,但是我们可以将它转换为XML格式的,使之可以作为一种NETCONF的数据模型。
由于NETCONF协议是不能直接访问SNMP设备的,所以本系统还引入了SNMP/XML网关,用来完成NETCONF协议中XML格式消息与SNMY格式消息之间的相互转换。
3.2系统总体框架
在本系统的设计中,首先要确定的就是NETCONF的传输层协议。
s0AP是基于XML机制的,而且对远程过程调用RPC提供了很好的支持,这些特点与NETCONF的要求有很大的相似之处;另一方面SOAP相关的技术已经发展的比较成熟。
经过多方面考虑,最终决定使用SOAP协议作为NETCONF的传输层协议。
确定了SOAP协议的传输层协议之后,就是对系统的总体架构的设计。
本系统模型主要包括三个部分:①网络管理者(NETCONF客户
端)②SNMP/XML网关(NETCONF服务器端)③基于SNMP的代理。
其中网络管理者负责对被管设备的配置管理等。
它作为NETCO哪客户端而存在,以XML格式的消息进行通信。
由于实现SNMP代理的设备并不支持XML格式的消息,所以二者之间引入了一个SNMP/XML转换网关。
SNMP/XML转换网关的核心任务首先是作为NETCONF服务器端,为网络管理者提供相关的服务,并接收来自网络管理者的请求,最后把最终的结果返回给网络管理者,它和网络管理者之间的通信遵循基于SOAP的NETCONF协议规范;其次网关还必须将接收到的来自网络管理者的XML格式的请求转换为SNMP格式的,并将它转发到SNMP代理。
系统支持分布式管理,网关可以分布在不同的地方,只要它可以和网络管理者
通讯就可以。
可以使不同的网关管理不同域内的代理,从而减轻网关的处理负担。
3.3SNMP/XML转换网关的实现
SNMP/XML转换网关是整个系统中最重要也最复杂的部分。
限于篇幅的原因,这里指对SNMP/XML转换网关的实现简要做探讨。
网关主要由三部分组成,它们之间也是层次结构:最上层为NETCONF/SOAP服务器端,中间层为XML处理层,最下层为SNMP协议层,下面对它们分别进行详细介绍。
3.3.1NETCONF/SOAP服务器端
本系统实现的NETCONF协议双方,传输层协议使用的是SOAP,对于基于SOAP的NETCONF协议,IETF也已经对其做了标准化(RFCA743)。
这时的服务器端和客户端就相当于一个Web Service系统中的服务提供者和服务请求者。
我们采用APache的Axis包作为SOAP 引擎。
Axis是一个优秀的SOAP引擎,它功能非常强大,有一些方便的工具如WSDL2JAVA 可以使用,使开发更加简单、方便、快捷。
使用Axis包之后,我们可以把主要精力藏在所提供服务的实现上。
作为服务提供者,我们采用WSDL(Web Services Description language,web 服务描述语台)来描述服务器端所提供的服务。