Alexandre Polozoff
Selecting a TMN Development Platform

 
.


Telecommunications Management Network

A 421 page hardcover with lots of info on recent trends including CORBA, Java and the web.


Telecommunications Network Management

No ideas about this book. Anyone read it yet?


TMN into the 21st Century
Techniques, Standards, Technologies & Applications

Featuring original chapters from prominent experts in the field.


Power Programming in HP Openview: Developing CMIP Management Applications


Programmer's, here you go!


Network Management Standards: SNMP, CMIP, TMN


One of the few books still in print on this subject.


SONET & T1


Learn about SONET & T1


ISDN SS7


Learn about ISDN and SS7 technology


Signaling in Telecommunications Networks


An informative book


Understanding SNMP MIBs


Don't know how to read an SNMP MIB? This book is for you.


Windows NT: SNMP


A 325 page guide.


HP Openview: A manager's guide


This 450 page book is chock full of info


How to Manage Your Network Using SNMP


A network management practicum

Before you can develop a TMN system you need to decide upon a development platform. There are several development platforms and environments out there. Here are some things to look at when making your decision.

Staff

Before you can attack any of the issues related to TMN development you need to have a staff that has TMN development experience. If you can't find people like that, and there are not that many, then try to find someone with OSI network management development backgrounds preferably with CMIP and X/Open (XOM/XMP) experience. If you can't find people with CMIP then SNMP is the next level down. But you must understand that GDMO objects are more complicated than SNMP. And CMIP development is just as equally complicated.

A good alternative is to take some courses. Various vendors offer courses that use their particular software/hardware. In some cases, the training will be free of charge and one-on-one.

The less experience your staff has with any of the concepts (GDMO, CMIP, TMN, OSI, etc) the more time you need to allocate to your project. Without a mentor (ie; someone that knows these things) double your estimates. It is really that time consuming to learn these things. And a simple mistake can take days to debug and figure out.

Standards Compliance

The first criteria of selecting a platform is to determine whether the development platform is standard compliant. This can be difficult with all the marketing pitches you are getting. Here are some points to examine.

  • Building metadata.

    How does the platform incorporate the GDMO objects into its metadata? It is important to ensure that the top level documents are the X/Open documents instead of CMIP-1. By using X/Open you will have cross platform code level compatibility with other X/Open development environments.

  • MIB compilers

    This is a critical area of compliance. You will find that different MIB compilers will react to the same document in radically different ways. If at all possible, test the GDMO documents you want to use in your development with the MIB compiler you want to use BEFORE you purchase it.

Cross Platform

Hypothesis: if you stick to development environments following the X/Open standards then you should have few, if any, problems developing code that will work across different platforms.

Reality: much like the fallacy of Java... The first pitfall here is that one vendor is compliant to draft 4 and another to draft 5 and obviously the two won't work exactly the same way.

Most vendors have their code only on one particular hardware platform (though that is slowly changing). Once you buy into a system like that you are stuck with that vendor.

Development Features

One thing the developers will be looking at is the different features of the development environment. Things to look for here are:

  • Visual oriented development.

    Some platforms provide a very visual front end to the developer. This will then in turn churn out C or C++ code. I have used this approached and found it extremely efficient.

  • Handles complexities of routine X/Open programming.

    From the agent side of the development I can say that almost all agents are the same. There are development kits out there that can help you have an agent running in almost no time at all because they already handle 90% of the work.

    On the managing side you are looking for easy to use interfaces that hide the complexity of XOM/XMP programming. You still need to know the basics of XOM using these interfaces but not in as much detail that one normally would.

    One caveat here is that the toolkit can generate such large applications that the debugger can't load the application! Make sure this doesn't happen to you.

  • Along the same lines as the previous point is having an object oriented interface for the manager. Some vendors have tools which will take GDMO and produce C++ classes to manipulate these objects. This work is being spearheaded by OSF in the CMIS High Level API Working Group.

  • Interactive MIB Browser.

    One of the biggest needs for the developer is testing an agent and MIB Browsers are the only way to do it unless he wants to develop his own test applications.

  • Conversely, you need to be able to generate test agents quickly.

    This way the managing applications are not waiting around for the agent development to be completed before they can start testing.

Cross-talk

In this day and age of standards you would not think this to be a problem. But getting different NM platforms to talk to each other can be in some cases impossible.

I was involved in the evaluation of NM platforms for a particular development environment. The first order of business was to prove that their environments could talk to an agent that I had already developed and was up and running. I had also ensured that the agent could be talked to by at least one other hardware platform than the one it was developed on.

We had each of the vendors bring their platforms into our environment and talk to this agent. Not one of the other platforms was able to talk with this agent. We were given all sorts of excuses why their particular CMIP implementation was incompatible with the platform my agent was running on. Each vendor was given ample time and information ahead of the demonstration to get things working. This was an eye-opener!

Now this is not a condemnation of any of the vendors, it is just a picture of how things are. Many network managers are trying to achieve vendor independence in their environments. This is a difficult task to say the least.

Moral of this story? Do as much testing on this issue if you are striving for this.

Re-evaluation period

Unlike most development you need to add in periodic re-evaluation of the development platform into your schedules.

One reast is that not all technical/standard issues will arise immediately. In fact, some problems/limitations can stay hidden for months. Plan into your schedule to possibly having to switch platforms mid-stream. You might end up finding that the particular vendor you have settled on has a problem/limitation which can not be corrected without seriously jeopardizing your schedules.

I've seen this exact scenario happen before.

Front End

Almost all vendors provide some kind of a front end interface to do basic network management functions. These interfaces are generally very generic and therefore provide minimal functionality. You will probably want to design your own network management applications.

Developing your front end management applications needs to address your particular business case.

Integrated Distributed Objects

Distributed objects are becoming a hot new buzz word. Some development environments are starting to provide built in distributed objects for the management side of things. Look for CORBA support.


Also, look at the speed and scaleability of the CORBA implementation you plan to use. I saw a project go belly up because the CORBA implementation selected worked fine with a small number of objects, but once several hundred thousand objects were instantiated, the whole thing crawled to halt.

Vendor Development Support

What kind of support will you get from the vendor after you have bought into their vision? This milage varies. I have had excellent free support from some vendors with direct email access to their platform developers. On the other hand, I have had absolutely abysmal 'expensive' paid support with access to only a go between to the vendor's developers.

This is an important issue especially if you are using a platform no one on the staff has experience with. Many problems do end up being trivial user errors but getting access to someone that recognizes the problem to help solve it is essential. Otherwise you are spinning your wheels waiting and losing valuable development time in the interim.

Return to Alexandre Polozoff's TMN page
Return to Alexandre Polozoff's home page
Send mail to Alexandre Polozoff


Copyright @ 1995-1998 Alexandre Polozoff. All Rights Reserved.