You are on page 1of 19

CORBA-SNMP Protocol Converter

Technical White Paper


iii
Notice
Copyright 1998 ONE. All rights reserved.
This document is protected by copyright and distributed under licenses restricting its use,
copying and distribution. No part of this document may be translated or reproduced in
any form by any means without the prior written authorization of ONE
and its licensors. Any specific warranty related to ONE products as to which this
material relates is available in ONEs licensing terms and conditions. The
information in this document is subject to change without notice. ONE
is a registered trademark of ONE.
ONE makes no warranty of any kind with regard to our products
including documentation, and specifically disclaims the implied warranties of
merchantability and fitness for a particular purpose. ONE shall not be
liable for errors contained herein or for any damages, whether direct, indirect,
consequential, incidental or special, in connection with ONE products.
ONE
2725 South Industrial, Suite 100
Ann Arbor, MI 48104
Part no. WHT-W-XX-X-XA-10
Revision A, printed in the USA, September 1998
Restricted Rights Legend
Copyright 1988, 1989, Carnegie Mellon University.
Copyright 1988, 1989, Massachusetts Institute of Technology.
Copyright 1979, 1980, 1983, 1985-1988 The Regents of the University of California.
Copyright 1994 Hewlett-Packard Company
Copyright 1996, 1997 Silicon Graphics Computer Systems, Inc.
iv
Copyright 1997 Moscow Center for SPARC Technology
This software and documentation is based in part on the Fourth Berkeley Software
Distribution under license from the Regents of the University of California.
UNIX is a registered trademark in the United States and other countries and is
exclusively licensed by X/Open Company Ltd.
Microsoft is a registered trademark and Windows NT is a trademark of Microsoft
Corporation in the United States of America and other countries.
Sun, Sun Microsystems, Solaris, Solstice, SunLink and TMNscript are trademarks of Sun
Microsystems, Inc.
CORBA, ORB, the Object Request Broker, IIOP, UML and the OMG Interface
Definition Language (IDL) are trademarks or registered trademarks of the Object
Management Group, Inc. in the United States of America and other countries.
All other product names referenced herein are trademarks of their respective companies.
v
Contents
The Challenge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
The Players . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
CORBA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
SNMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
The CORBA-SNMP Protocol Converter Solution . . . . . . . . . . . . . . . . 11
Information Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Key Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Using the CORBA-SNMP Protocol Converter . . . . . . . . . . . . . . . . . . . 15
Performing Management Operations. . . . . . . . . . . . . . . . . . . . . . . . 15
Processing Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Benefits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
For More Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
vi
CORBA-SNMP Protocol Converter Technical White Paper 7
The Challenge
In the telecommunication (telecom) and data communication (datacom) domains,
mediation is the process in which information is manipulated as it moves from one
network element to another. This manipulation may involve such things as protocol
conversion, information model mapping, and functionality access. The actual mediation
process can be conducted in hardware or software and can be used on either side of the
information exchange.
The mediation process is imperative in todays heterogeneous telecom and datacom
domains. Network Elements (NEs) such as switches, routers, and terminals speak a wide
variety of protocols (TL1, SNMP, CMIP) and use a wide range of information models
(GDMO, CORBA). The protocol and information model used by any given Network
Element depends on the manufacturer choice and the type of Network Element.
The same diversity found in NEs can also be seen in todays Operation Support Systems
(OSS). OSSs are used by service providers to maintain and monitor the NEs that
comprise a network. Generally, the OSS is a software platform that has been designed to
manage a set of NEs using a specific protocol type and information model.
The Challenge
8 CORBA-SNMP Protocol Converter Technical White Paper
As network size increases, the likelihood of a network remaining homogeneous with
respect to the protocol and information model used by its NEs and OSS decreases. For
large and diverse networks, the service providers cannot be expected to maintain one
OSS for each protocol and information model. Thus, some form of mediation is required
in order to reconcile the differences between the chosen OSS protocol and information
model and the NEs it manages.
The Players
CORBA-SNMP Protocol Converter Technical White Paper 9
The Players
As an introduction to the technologies involved in a CORBA-SNMP mediation, look at
the example of a CORBA-enabled Operation Support System (OSS) that is required to
interact with SNMP devices. As the two entities use different protocols, a conversion of
CORBA information into SNMP information and vice versa must be performed. The
conversion, or mediation, of information could be performed by a piece of software
included in the OSS, by a hardware device directly connected to the SNMP device, or
even by a separate process located between the OSS and SNMP device.
CORBA
CORBA stands for Common Object Request Broker Architecture and is the standard for
distributed object computing. Developed by the Object Management Group (OMG) in
the early 90s, CORBA is the mechanism that handles the communication between
objects, regardless of where those objects are located. Thus, via CORBA, two
distributed objects on different sides of the world can transparently cooperate as if they
were located within the same process. The object developer is not required to know any
details concerning the intercommunication: all that is required to communicate with a
CORBA object is knowledge of the objects interface, defined in the OMGs language-
neutral Interface Definition Language (IDL).
In the telecom and datacom domains, NEs would be treated as CORBA objects having
their own management IDL interface. An OSS could then manage these objects using
the given IDL interface, unhindered by any specific protocols and information models.
The Players
10 CORBA-SNMP Protocol Converter Technical White Paper
In this respect, CORBA simplifies the management of Network Elements by using
industry-wide standard distributed computing software in place of more specialized and
often complex legacy protocols. However, millions of NEs that use these legacy
protocols exist and will continue to exist for many years to come. Thus, the new
CORBA-based OSSs must interact with the legacy equipment via some sort of
mediation application.
SNMP
SNMP stands for Simple Network Management Protocol. It was designed in the late
80s to address the need for a management protocol for the growing number of TCP/IP
networks. Today, it is employed in millions of the managed devices spread across the
vast array of TCP/IP networks that comprise the Internet.
As implied by its name, basic SNMP is simple. An SNMP agent provides three general
functions: Get, Set, and Trap. Get operations allow the SNMP manager to retrieve the
values of the objects in the agent. Set operations allow the manager to set those values.
Trap operations allow the agent to notify the manager in case of significant events.
The CORBA-SNMP Protocol Converter Solution
CORBA-SNMP Protocol Converter Technical White Paper 11
The CORBA-SNMP Protocol Converter Solution
In order to ease the development of mediation between new CORBA-enabled manager
applications and legacy SNMP Network Elements, ONE offers the CORBA-SNMP
Protocol Converter. The CORBA-SNMP Protocol Converter is a gateway between a
CORBA-enabled manager application and a set of SNMP agents. The Protocol
Converter uses an IDL interface to communicate with manager applications and SNMP
to communicate with agents. This communication includes performing management
operations (GET, SET, etc.) and receiving asynchronous events (traps).
The CORBA-SNMP Protocol Converter is accessed through a set of IDL interfaces and
structures. The Protocol Converter includes an IDL that offers a generic (MIB-
independent) approach to providing management operation services and network alarm
identification. The Protocol Converter can be accessed by any number of manager
applications and can manage any number of SNMP agents.
The CORBA-SNMP Protocol Converter also provides several sample clients (C++ and
JAVA) which can be used as starting points for building your manager application or for
integrating the CORBA-SNMP Protocol Converter into an existing management
application. Figure 1 illustrates the architecture of the CORBA-SNMP Protocol
Converter.
The CORBA-SNMP Protocol Converter Solution
12 CORBA-SNMP Protocol Converter Technical White Paper
Figure 1 CORBA-SNMP Protocol Converter architecture.
SNMP
Agent
Manager
CORBA
SNMP
Application
CORBA-SNMP
Protocol Converter
SNMP
Agent
IDL
IDL
Compiler
(C++)
Manager
Application
(JAVA)
The CORBA-SNMP Protocol Converter Solution
CORBA-SNMP Protocol Converter Technical White Paper 13
Information Flow
The CORBA-SNMP Protocol Converter implements a convert-and-forward process. The
Protocol Converter translates incoming CORBA requests from manager applications into
SNMP requests, and then forwards these requests to the appropriate SNMP agent.
Conversely, the Protocol Converter converts incoming SNMP agent responses and
events into corresponding IDL operations and structures, then forwards them to manager
applications. Figure 2 depicts the information flow between CORBA manager
applications and SNMP agents.
Figure 2 Information flow between CORBA manager applications and SNMP agents.
CORBA
SNMP
SNMP Manager
CORBA-SNMP Translator
CORBA Server
U
n
s
o
l
i
c
i
t
e
d

T
r
a
p
E
v
e
n
t
R
e
q
u
e
s
t
R
e
s
p
o
n
s
e
SN MP
Ag ent
O
p
e
r
a
t
i
o
n
I
n
v
o
c
a
t
i
o
n
Manager
Application
CORBA
CORBA-SNMP Protocol Converter
The CORBA-SNMP Protocol Converter Solution
14 CORBA-SNMP Protocol Converter Technical White Paper
Key Concepts
The CORBA-SNMP Protocol Converter maintains a list of Manager Identities and
Agent Targets. A Manager Identity defines the listening address of a CORBA manager
in the Protocol Converter. An Agent Target defines an SNMP agent on the network,
including its network address and configuration parameters. Each SNMP agent can
specify a manager address where it will send management events such as traps. Figure 3
illustrates these concepts.
Figure 3 Key internal architecture concepts of the CORBA-SNMP Protocol Converter.
SNMP
Agent
SNMP
Agent
SNMP
Agent
Manager
Identity
Manager
Identity
Manager
Identity
Agent
Target
Agent
Target
Agent
Target
Agent
Target
Agent
Target
Agent Handle
Manager
Application
Agent Handle
Server
Administration
CORBA-SNMP Protocol Converter
Using the CORBA-SNMP Protocol Converter
CORBA-SNMP Protocol Converter Technical White Paper 15
Using the CORBA-SNMP Protocol Converter
Performing Management Operations
To perform a management operation on an SNMP-enabled device from within a
CORBA-enabled manager application, your manager application must have a CORBA
object reference that refers to an Agent Handle. An Agent Handle is a reference to an
SNMP agent and is a managers contact point. Through an Agent Handle, a manager can
send requests to an agent as well as receive agent responses, traps, and events. Each
Agent Handle is bound to one specific SNMP agent using the agents Agent Target
definition. The object reference in your manager application is a proxy to the actual
Agent Handle that resides in the CORBA-SNMP Protocol Converter server, which in
turn is a proxy to the actual SNMP agent. The manager application can request an Agent
Handle object reference for a specific agent directly from the Protocol Converter.
Management operations can be invoked in synchronous or asynchronous mode. In
synchronous mode, the calling thread is blocked until the response is received (see
Figure 4). In asynchronous mode, the client thread initiates the management request and
continues normal processing. Then, when the request has been serviced, the caller is
notified with the associated response.
Using the CORBA-SNMP Protocol Converter
16 CORBA-SNMP Protocol Converter Technical White Paper

Figure 4 Information flow for a synchronously performed GET operation.
Processing Events
Events are SNMP traps (v1 traps or v2 notifications) or SNMPv2 inform requests
generated by agents. An agent sends a specific SNMP trap to its registered manager
application as notification of a significant event.
The CORBA-SNMP Protocol Converter handles SNMP events in a manner similar to
the CORBA Event Service push model. Using Event Service terminology, the Protocol
Converter is the push supplier which dispenses events to manager applications. To
receive these events, manager applications must contain a registered push consumer
CORBA object. To register an object as a push consumer, a manager application
implements a specific push consumer interface defined in the CORBA-SNMP Protocol
Converter IDL. The manager application sends an object reference to an instance of this
implementation to the Protocol Converter when registering for traps.
Manager
Appl icat ion
Get request PDU
SNMP
Agent
Agent Handle
Create an
agent handle
object Reference
Invoke service
operation
Get response PDU
Thread
Blocked
GET()
Request object Reference
CORBA-SNMP
Protocol
Converter
Using the CORBA-SNMP Protocol Converter
CORBA-SNMP Protocol Converter Technical White Paper 17
The CORBA manager application can register to receive events for both global and
specific agents. In both cases, the manager application must have a push consumer
object to receive the events. For events generated by a specific agent, the manager
application must also have an Agent Handle object reference. Figure 5 shows the
CORBA-SNMP Protocol Converters event management model.

Figure 5 CORBA-SNMP Protocol Converter Event management.
.
InternalEventServer
SNMP
Trap
ObjRef
Push Event
(Push Supplier)
SNMP
Consumer
Push Event
Agent
(2)
(3)
Manager
Application
Register for Events
(ObjRef)
(1)
CORBA-SNMP
Protocol Converter
Benefits
18 CORBA-SNMP Protocol Converter Technical White Paper
Benefits
The CORBA-SNMP Protocol Converter offers a solution to the problem of managing
SNMP agents from a CORBA-enabled manager application. By acting as a gateway
between manager applications and agents, the CORBA-SNMP Protocol Converter
provides full access to SNMP agents via a generic CORBA interface. Manager
applications can issue GET, GET_NEXT, GET_BULK, and SET requests and receive
notifications from agents without any knowledge of SNMP PDUs. This feature greatly
reduces development time and minimizes the amount of additional code required in the
management application.
For More Information
For more information about available documentation and the products and services we
provide, please contact us:
Open Networks Engineering Inc.
2725 South Industrial
Ann Arbor, MI 48104
E-mail: support@one.com
Phone: (734) 975-8500
Fax: (734) 975 6940
Web: http://www.one.com

You might also like