Generic CLI API for System/Network Management Systems - Part 1

Posted on Saturday, April 25, 2009 by Anuj Mehta


A rule based method for device management systems which dynamically generates parsing code for CLI commands, thus making the development and maintenance of the management applications easier than before. The format of the command syntax and command response is specified as a set of rules, based on which the CLI command and the parsing code for command response is generated.

Problem Statement

Over the years there are numerous technological advancements in the field of protocols and formats used for transmitting device management data. For network management system four common protocols are used
1. SNMP and its associated management information base (MIB) data block.
2. The Command Line Interface (CLI).
3. The Common Management Information Protocol (CMIP).
4. XML-based products and formats, such as NETCONF.

In spite of technological advancements CLI is still popular among device administrators. CLI has been one of the (in many cases, the only) interface to manage Network, Computing and Storage elements. As of this writing, there is no Industry standard available for CLI request and response, thus hampering interoperability between various device management systems in large data centers. Most of device management systems have vendor specific, proprietary CLI implementation. This type of implementation is rigid as the parsing code for command syntax and output is tightly coupled with the format of command syntax and response. Any change in command or response syntax leads to the dreadful activity of manually changing the parsing code. This adds additional overhead for code maintenance.

Other Approaches

• There is yet another approach called XML-CLI, where the command syntax is encoded in an XML file (conforming to a predefined schema).

Related posts
Part 2
Part 3

5 Responses to "Generic CLI API for System/Network Management Systems - Part 1":

Anonymous says:
This comment has been removed by a blog administrator.
Anonymous says:

I think what you published was actually very logical.
However, think about this, what if you were to write a killer
headline? I ain't suggesting your information is not good, but suppose you added a post title that grabbed a person's attention?
I mean "Generic CLI API for System/Network Management Systems - Part 1" is kinda plain.
You should look at Yahoo's front page and watch how they create post titles to get people to open the links. You might add a video or a pic or two to get people excited about everything've got to say.
Just my opinion, it would bring your blog a little bit more interesting.
Feel free to visit my web blog : article directory

Anonymous says:

I used to be suggested this blog by way of my cousin.
I am now not positive whether or not this post is written by means of him as nobody else understand such
designated about my difficulty. You are amazing!
Thank you!
Feel free to surf my web blog - internship electrical engineering

Anonymous says:

Hello, i think that i saw you visited my blog thus i
came to return the prefer?.I'm trying to find things to enhance my web site!I assume its adequate to use a few of your concepts!!
Review my blog post ... internship for mechanical engineering students

Nocvue CLI says:

Hi Anuj,

It's a nice post, thanks for the sharing such information.You can also check my reference regarding CLI Device Management.