An Efficient Network Management System Based on XML Technology

coldwaterphewΔιακομιστές

17 Νοε 2013 (πριν από 3 χρόνια και 8 μήνες)

98 εμφανίσεις


An Efficient Network Management System

Based on XML Technology

Fu
-
Min

Chang
*
,
Hau
-
Wen

Chang, and Shang
-
Juh Kao

Department of Applied Mathematics


National Chung
-
Hsing University

250,Kuo Kuang Road,Taichung

40227, Taiwan

Email : {fmchamg,
hwchang ,
sjkao}@
amath.nchu.edu.tw


ABSTRACT

In this paper, we presented XMS, an XML
-
based network management system with three
-
layered
hierarchical structure. W
i
th XMS,
management operations of

existing SNMP agent
s

can be
efficient
incorporate
d by taking

the
advantages

of

the
XML
technolog
y
. Our XMS fully utilizes the XML
technologies such as DOM, XSLT, XPath, and Xindice to network
management
. We were able to
reduce the
development

cost of management system through the support of standard API for
processing XML document
.


KEY WORDS

SNMP, XML, network management, DOM, XPath




1 Introductio
n

Simple Network Management Protocol (SNMP)
[1]
is a widely used solution for
T
CP/IP network
management in last decades.
Although t
he SNMP model is suitable for
most

management
applicat
ions
,
it is
inadequate

for
the rapidly
expanding

network because of its poor scalability and inefficien
cy

[
2
]
.
Recently, eXtensible Markup Language (XML) [
3
] has gained its popularity for data interchange and
information representation.
XML
-
based network
m
anagement

[
4
,
5
,6,7,8
]
has been proposed as an
alternative approach to
supplement

traditional network management

systems
.
The use of X
ML
in
network management

has

several
advantages
, such as
provid
ing

powerful

semantic

features for
management

information pr
esentation

and
efficient reliable
management
information transmission. In
addition, XML
-
formatted
management

information can be easily
integrated with
a database
through

the support of various available tools
,

such as
XML Parser, Document Object Model (DOM
) [
9
],
XP
ath
, Simple API for XML (SAX)
[
19
]
, etc. Consequently, database processing

for

network
management

applications

is easily
achieved
.

A number of
articles

of appl
ying

XML in network management have been
reported
.
We will gives
several recent developm
ents in the following.
A. John et al. introduced a paradigm, named XNAMI

[
4
,
5
]
, for the retrieval and presentation of management data. XNAMI is Java
-
based
network and
application
management

toolkit which uses XML and
DOM

to specify a MIB at runtime. With
X
NAMI, variables can be added or deleted from the MIB at a managed element

dynamically
.
J.P.

also
Martin
-
Flatin present
ed

an idea to use XML for integrated management in his
research

on
Web
-
based Integrated Network Management Architecture (WIMA) [
6
].
SNMP
MIB to XML
translation models, namely Model
-
level mapping and Metamodel
-
level mapping were
also
proposed in
WIMA.
F.

Strauss

s presented a library to access SMI MIB information, named

libsmi


[
7
], which
translates SNMP MIB information to other languages,
such as Java, CORBA, C, XML, etc. This
library provides a tool for MIB dump (mibdump), which allows dumping the content of a MIB module
into an XML document. An SNMP
-
to
-
XML gateway using mibdump was implemented.
In the paper
about embedded Web server,
H. T
. Ju et al. propose
d

a
n

XML
-
based management (XBM) architecture

[
8
]
.
With

the XBM, HTTP server is embedded into
both
Web
-
based Management

manager and agent.
Management information are encoded by XM
L

and
transferred

by HTTP. In order t
o integrate the
legacy

SNMP agent into X
BM
,

they also proposed
three
interaction translation methods
, DOM
-
based
translation, HTTP
-
based translation, and SOAP
-
based translation,
for XML/SNMP gateway.

More previous

efforts of applying XML technology to network management are acc
omplished
by

modify
ing

the existing agent
s
.
Even a number of XML/SNMP gateways had been proposed [
7
,
8
], the
y

didn

t

clearly specify how to develop the
management applications

using XML technologies
.
T
he
most

appropriate
and
practical

method

could be
to
res
erve

the existing SNMP agent

and develop an
XML
-
based manager as an alternative
to take the advantages of
the XML technolog
y
. Under this
approach, a management proxy is
require
d for
communication and management information
inter
change between XML
-
based man
ager
s

and SNMP agent
s
.
Since XML support a variety of
databases
,
it is easy to store and process
management

information together with
, XML data
manipulation tools such as Parser, DOM,
X
PATH
, etc., for management purpose. That is, a manager
can efficient
ly

process the
management

data through popular XML APIs. Consequently, management
applications can be easily developed.

In this paper

we design
ed

an XML
-
based network management system with three
-
layered
hierarchical structure
.

The top layer is an interface
for system managers

which operate with the web
browser
. Middle layer is the core part and plays the
management

proxy role. The low layer
contains

management

information

provider
s
.

For validation

purpose
, an XML
-
based management system
(
XMS
)

is developed wi
th f
our
distinguished

management
applications
:
Control, Information Query,
Visual
ization, and Notification
.
Specifically
,
Scalable Vector Graphics (SVG) [1
0
] is applied for graph
representation of traffic, and
eX
tensible Stylesheet

Language

Transformations

(XSLT) [1
1
] is taken as
our query language.

The
entire

system is
written

by Java [1
2
].
By taking the advantages of XML
processing, the proposed management system
is expected
more
powerful and widely accessible
.


The remainder
s

of this paper
are

organized
as follows.
In s
ection 2
, we introduce the organization of
the
management

system.

The
implementation of our propos
al is described next
. Finally, we give a
summary

and possible improvement
.

2

Architecture of XMS


The XML
-
based network
management

system is
organized as a three
-
layered hierarchical structure
as shown in Figure 1. Browser ready
management

servers are located at
the

top layer. Through the
Web browser, a network manager can interact with the management proxy through HTTP protocol.
The low layer
includes all
management

devices. The middle layer includes five components: Web
server with Servlet, Management Applications, XML Parser, XSLT Filter, and Information Collection
Module. Web server is responsible for
communication

between managers and manag
ement
applications. Servlet/JSP is a
programming

interface for constructing
W
eb pages and cooperating with
database.

Based on a variety of management functions, four
distinguished

management
applications

are
taken into consideration in our system: Control,

Information Query, Visualization, and Notification.
Through the
application
of
Control, manager can easily modify parameters and change
management

functions in

managed devices. The function of Information Query application is to provide
management

informa
tion

queries

and historical
management

information analysis. It can be enhanced
by adding complex aggregations. Visualization application is to render
management

information
graphically in order to make it clear and
friendly
. As for Notification, it is to
monitor a MIB variable
and notify
the

manager
to send out a notification message
.


Figure 1
.

A
rchitecture of the proposed network management system

Information collection module includes Translator, SNMP stack, and Virtual MIB. Virtual MIB is
the reposit
ory for XML
-
formatted management information. It can be a simple file system or
a
sophisticated XML database. Translator is responsible for translation between XML
documents

and
SNMP
MIB data
. The translated XML document
s

are

stored in Virtual MIB
,

while

t
he translated
SNMP messages
are forwarded

to SNMP stack. Management information is operated by the SNMP
stack through the
communication

with

management agents using SNMP. SNMP stack sends the
management request to managed devices using SNMP operations such

as GET and SET. It also
forwards the response message from managed devices to the Translator.

XML Parser is responsible for validation check of XML documents generated by
management
applications
.
After
it has passed
the validation
check,

the XML document
is forwarded to Translator.
XSLT
Engine

provides

data transformation
between management applications and Virtual MIB. XSLT
is a
template
-
based declarative
language

that transforms an XML document from one data structure to
another. It employs XP
ATH

to addr
ess element
s

in
the
XML document.
It’s powerful in filtering and
disseminating data.


3 Implementation Details


An

XML
-
based
M
anagement
S
ystem, named XMS


has been implemented and presented in the
section to exercise the before
-
mentioned management archite
cture.

XMS was implemented on
W
indows XP using Java language.
The XML packages used in XMS are mostly
derived
from the
Apache project
[13] and implemented in Java
.
We
take

the Apache Tomcat 4.0 [1
4
] as Servlet/JSP
engine, which
follows

servlet 2.3 an
d JSP
1.2 specificatio
ns
.

We
also employ Xerces2 [1
5
] as a XML
Parser, Xalan
-
Java 2.5.0 [1
6
] as XS
L
T Engine. We ma
k
e use of Xindice 1.0 [
17
],
a
native XML
database, to store the XML document
s

of management information. AdventNet SNMP API 3.3 [
18
]
is

employed as
SNMP stack.
Table 1 summaries the software packages used in XMS.

Software Package

Functions

Apache Tomcat 4.0

Web Server, Servlet/JSP Engine
,
Implementation
of Servlet 2.3 and JSP 1.2 specification

Xerces2 Java Parser 2.4.0

XML Parser
,
Support DTD, Name
Space, DOM API, SAX 2.0, JAXP 1.2, XML Schema 1.0

Xalan
-
Java 2.5.0

XLST Engine
,
Support
XSLT 1.0
,

XPath 1.0
,

TRaX interfaces

Xindice 1.0

Native
XML database
,
Support XML:DB API

AdventNet SNMP API 3.3

SNMP stack


Table 1
.

Software packages used in
XMS

3.1 Translator

The function
s

of T
r
anslator
are

to
translate

the XML documents into SNMP commands and the
MIB
values
into XML documents.

The former
task
is easily made using DOM. DOM models
an
XML
document
as a tree of nodes, such as Element, Entity, At
tr, Document, etc. It provides two
kinds of
operation
s
:

tree traversal and node manipulation
. Traversal operations, such as getFirstChild() and
getParentNode(),
can obtain

the
necessary data
from the input XML document
for
preparing

SNMP
command.
M
anipulat
ion operations, such as appendChild() and serAttribute(), can manipulate the
XML documents. Regarding the
translation to XML documents, there

are two ways for transforming
MIB

variables

into D
ocument Type Definition (DTD)

as presented in [6]
: Model
-
level m
apping and
Meta
model
-
level mapping.
In
Model
-
level mapping
,

the DTD is specific to a particular
MIB,

and the
XML elements and attributes in the DTD have the same names as the MIB variables. In
Meta
model
-
level

mapping
,

the DTD is identical for all
MIB
s
.
Bas
ed on
the consideration of flexib
ility

and
consistency
,

we
adopted

M
eta
model
-
level mapping

as our
transformation

method.
The DTD is
shown
in Figure
2
.







The experimental system is developed at the distributed system laboratory in the Department of Applied Mathematics, National
Chung
-
Hsing Universi
ty, Taiwan


Figure
2
.

Output

DTD

3.2 Management Applications


In XMS, four management applications were
developed
.

Th
ey

are Control, Notification,
Visualization, and Information Query.
With

Control application, m
anager can perform basic SNMP
operations
by filling the form or pointing out an input XML as shown in Figure 3. The result is
represented by a table on the W
eb page or an

XML file as shown in Figure 4 and Figure 5 respectively.


Figure
3
.

Screenshot of Control
.




Figure
4
.

Result of “GET .1.3.6.1.2.1.1.3.0 on 140.120.7.10”
on

Web page.




Figure
5
.

Result of “GET .1.3.6.1.2.1.1.3.0 on 140.120.7.10” in X
ML

file
.

With
N
otification
application
,
manager

can
specify an OID for intensive
watch
on

a
fixed

polling
frequency.
After an OID
being
specified by manager, a
n

input document will be generated and pass
ed

to XML Parser. The XML Parser validates this docume
nt to ensure the input is well
-
defined
. If it is
valid, it will be translated to a sequence
of
operation
s

and be performed sequentially. The regular
poll
ing

value will be store
d

in Virtual MIB for further query.

Manager can also set a threshold of
accumula
tion

value
or mean value and
action to be performed whenever an event occurs
.
As shown in
Figure 6,
w
e monitor ifInOctets
of ifTable group

on 140.120.8.1 which means the income traffic flow
of subnet 140.120.8.*
. W
hen its mean value exceeds
100MB

an hour,
a warning
message is generated
and
sent

to
manager
.



Figure 6
.

Input form of Notification
application
.

A graphic report is also possible through

Visualization application.

With

V
isualization
application
, a
graphic
display

is generated
by
SVG
through
XSLT

transformation
.
XSLT

uses XPath to select a
desired set of node,
and
then prints these nodes out with
a
predefined template.

An
outcome of
monitoring

ifInOctets
as in previous notification application
is shown in Figure 7.


Figure 7. Outcome of a
v
isual
ization

application
.

T
o make a long term analysis or
for
further processing

by
other applications,
the
management
information
is reported in

Virtual MIB. Virtual MIB is implemented by using Xindice. Xindice
support
s

XML:DB API core 1 which is a standard
ac
cess

interface, just like JDBC
for

relational
database. XML:DB API adopts XPath as a query
expressing language
. The XPath model
operates on a
tree like structure.

For example,
the XPath expression
//value[@device="140.120.8.10"]
is a query for
finding out
any element
node
whose tag name is “value”
with

a

device


attribute and
has attribute
"140.120.8.10". The
result
of a
query
will
returns a
ResourceSet

which may contains many XML
instances. Every instance is called a
Resource
. Note that the root element w
ill be the target we
specified in XPath, and some of its attributes are generated automatically by Xindice.

P
art of the XML

is shown in Figure 8
.

As another

example
providing by
“/value[@device="140.120.8.10" and
oid=".1.3.6.1.2.1.2.2"][last()]”, we get th
e last record of “.1.3.6.1.2.1.2.2” of

the device IP
“140.120.8.10”
.


F
igure
8
.

Part of a query result (may contain several instances).

4 Conclusion

A
pplying
XML

technology in network management presents several advantage
s

such as powerful
management inf
ormation presentation model, efficient and reliable management information
tra
n
smission, and easily archived database processing in management function. In this paper, we
designed and implemented an xml
-
based network management system called XMS with three
-
layer
structure. By empl
o
ying management proxy, SNMP agent can be managed in XMS. XMS fully
utilized XML technology such
as DOM, XSLT, XPath, and Xindice to network
management
. Through
the support of XML standard API, the cost of development of management

application can be reduced.
By taking the advantage of XML technology, the proposed management system become
s

more flexible
wide accessible, we also implement
e
d four distinguish mgmt application in the report.

For th
e future
study
, we

will overcome
the sh
ortcoming
s

of centralized
management

and
turn to
pursue decentralized
.

The enhancement of integrating
with
other management protocol
s

such as CMIP
or WBEM is also
interested
.


References

[1]

Case
,

J., Fedor
,

M., Schoffstall
,

M., and Davin
,

J.
(1990).
Simple Ne
twork Management Protocol
,
RFC 1157
.

[2]

Meyer
,

K., Erlinger
,

M., Bester
,

J., Sunshine
,

C., Goldszmidt
,

G.
.,

and
Yemini
,
Y.

(
1995
).

Decentralizing Control and Intelligence in Network Management
, Proceedings of the 4
th

International Symposium on Integrated Netw
ork Management.

[3]

Bray
,

T., Paoli
,

J.,

Sperberg
-
McQueen
,

C. M.
,

and Maler
,
E.
(2000)
.
Extensible Markup Language
(XML) 1.0 (Second Edition)

W3C Recommendation
.

http://www.w3.org/XML/

[4]

John
,

A., Vanderveen
,

K., and Sugla
,
B.
(1999).

An XML
-
based Framework for
Dynamic SNMP
MIB Extension
,
IFIP/IEE International Workshop on Distributed Systems Operations and
Management (DSOM), pp 107
-
120, Zurich
.

[5]

John
,

A., Vanderveen
,

K., and Sugla
,
B.
(1999).

XNAMI


An eXtensible XML
-
based paradigm
for Network and Application Ma
nagement Instrumentation
,

Networks, 1999. (ICON '99)
Proceedings. IEEE International Conference,

Page(s): 115
-
124
.

[6]

Martin
-
Flatin
,

J. P.
(2000).

Web
-
Based Management of IP Networks and Systems
,
Ph.D. Thesis,
EPFL, Lausanne, Switzerland.

[7]

Strau
s
,

F.
A librar
y to access SMI MIB information
.

h
ttp://www.ibr.cs.tubs.de/projects/
libsmi
/

[8]

Ju
,

H.T., Choi
,

M.J.,

Han
,

S., Oh
,

Y., Yoon
,

J.H.,

Lee
,

H. and Hong
,

J.W.
(2002).
An Embedded
Web Server Architecture for XML
-
Based Network Management
,
Proc. of the IEEE Network
Op
erations and Management Symposium, Florence
, Italy
,

pp. 7
-
18.

[9]

W3C DOM Working Group.
Document Object Model
.

http://www.w3.org/DOM/

[10]

SVG Working Group

(2003)
.
Scalable Vector Graphics 1.1 Specification
,

W3C Recommendat
ion.
http://www.w3.org/TR/SVG11/

[11]

Clark
,
J
.

(1999)
. “XSL Transformations (XSLT) 1.0” W3C Recommendation
http://www.w3.org/TR/xslt

[12]

Sun Microsystems Computer Corporation

(
1995)
.
The
Java

Language: A White Paper
.

[13]

Apache

Software Foundation.
The
Apache

XML Project
.
http://xml.
apache
.org

[14]

Apache Software Foundation,
The Jakarta Project
-

Tomcat
,
http://jakarta.apache.org/
tomcat
/
.

[15]

Apache Software Foundation,
The
Xerces

Java XML
parser
.

http://xml.apache.org/xerces2
-
j/


[16]

Apache Software Foundation,
The Apache XML Project
--

Xalan

2
.

http://xml.apache.org/xalan
-
j/.

[17]

Apache Software Foundation,
The Apache Xindice Project
.

http://xml.apache.org/xindice/

[18]

AdventNet

Inc.,
AdventNet

SNMP A
PI 3.3
.
h
ttp://www.
dventnet
.com/products/
.

[19]

SAX

Project.
SAX
:
Simple

API

for XML
.

http://www.saxproject.org/