IP Library Granted Patent US 7,039,724
Granted Patent B1
US 7,039,724 · App. 09/753,017 · Granted May 2, 2006

Programmable command-line interface API for managing operation of a network device

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,039,724
App. No.
09/753,017
Granted
May 2, 2006
Kind
B1
Abstract

A method of managing a network device, includes providing a command-line interface application programming interface (CLI-API) compatible with a command-line interface (CLI) of the network device, receiving instructions from an application that calls one or more routines in the CLI application programming interface, and generating at least one command in response to receiving instructions from the application wherein the at least one command is compatible with the CLI of the network device. An apparatus includes a remote serial command-line interface (RS-CLI) device having a storage device capable of storing instructions, a network port capable of being connected to the network and capable of processing a network protocol stack in addition to receiving the instructions, a serial port capable of processing a serial protocol and capable of being connected to the non-application enabled network device, and a processor capable of processing instructions stored in the storage area of the RS-CLI device.

Claims (38)

1. A method of managing a first network device, comprising:

loading an object-oriented network management application on a second network device;

generating at least one command line interface command by the object-oriented application translating at least one non-command line command to the at least one command line interface command; and

communicating the at least one command line interface command from the second network device to the first network device via a loopback address;

wherein the application is implemented as one or more object-oriented classes and the one or more routines are method calls in the one or more object-oriented classes; and

wherein a command-line interface application programming interface (“CLI-API”) provides an object-oriented application programming interface for the application to develop programmatic interactions with the network device.

2. The method of claim 1 , wherein the one or more object oriented classes and the method calls are compatible with the Java object-oriented programming language.

3. The method of claim 1 , wherein the one or more object-oriented classes are selected from a set of classes including a session management class, an input-output class, a configuration class, a macro-generation class, and other classes.

4. The method of claim 1 , wherein the at least one command-line interface command is capable of performing one or more network management operations selected from a set of operations including configuring a network device, gathering information on network interfaces on a network device, bringing a network device up or down on a network, and downloading a new image to a network device.

5. The method of claim 1 , wherein the programmatic interactions with the network device includes stateful applications operable to measure one or more variables on the network device and make decisions based on the one or more measured variables.

6. A network system having network management capabilities, comprising:

a non-application enabled network device having a command line interface (CLI) capable of controlling one or more network management features of the non-application enabled network device, a non-application enabled network device being a network device that is not able to process an application written in a high-level programming language; and

an application-enabled network device capable of executing applications that use a command-line interface application programming interface (CPI-API) to generate one or more commands compatible with the command line interface of the non-application enabled network device and transmit the one or more commands to the non-application enabled network device and transmit the one or more commands to the non-application enabled network device over a network for execution, an application-enabled network device being a network device that is able to process an application written in a high-level programming language.

7. The network system of claim 6 , wherein the application-enabled network device is capable of processing object-oriented applications compatible with the Java programming language.

8. A network system having network management capabilities, comprising:

a non-application enabled network device having a command line interface (CLI) capable of controlling one or more network management features of the non-application enabled network device;

an application-enabled network device capable of executing applications that use a command-line interface application programming interface (CLI-API) to generate one or more commands compatible with the CLI of the non-application enabled network device and transmitting the one or more commands to the non-application enabled network device over the network for execution; and

a remote serial command line interface (RS-CLI) device connected between the application-enabled network device and the non-application enabled network device, the RS-CLI device capable of receiving an application over a network from the application-enabled network device, executing the application and producing commands for transmission over a serial connection connected to the non-application enabled network device,

wherein the commands are compatible with the CLI on the non-application enabled network device.

9. The network of claim 8 , wherein the RS-CLI device comprises,

a storage device capable of storing an instruction;

a network port capable of processing a network protocol stack and connected to the network;

a serial port capable of processing a serial protocol and connected to the non-application enabled network device; and

a processor capable of processing the instruction stored in the storage area of the RS-CLI device that at least generates a command compatible with a CLI of a network device in response to processing the instruction stored in the storage area.

10. The RS-CLI device of claim 8 , wherein the instruction stored in the storage area is from a software component selected from a set of software components including an operating system an object-oriented component, a virtual machine, and a network protocol stack.

11. A remote serial command-line interface (RS-CLI) device comprising:

a storage device capable of storing an instruction,

a network port capable of being connected to the network and capable of processing a network protocol stack in addition to receiving the instruction;

a serial port capable of processing a serial protocol and capable of being connected to the non-application enabled network device; and

a processor capable of processing the instruction stored in the storage area of the RS-CLI device that at least generates a command compatible with a CLI of the non-application enabled network device in response to processing the instruction stored in the storage area;

wherein the instruction in the storage area is from a software component stored in the storage area and selected from a set of software components including an operating system, an object-oriented component, a virtual machine, a network protocol stack, and an object-oriented application.

12. An apparatus for managing a non-application enabled network device, a non-application enabled network device being a network device that is not able to process an application written in a high-level programming language, the apparatus comprising:

an application-enabled network device configured to receive an application having instructions compatible with a command-line interface application programming interface (CLI-API), the command-line interface application programming interface configured to work with a command-line interface (CLI) of the non-application enabled network device, an application-enabled network device being a network device that is able to process an application written in a high-level programming language;

a processor associated with the application-enabled network device, the processor configured to execute the application and thereby cause the command-line interface application programming interface to create one or more command-line interface commands wherein the one or more command-line interface commands created by the command-line interface application programming interface are capable of controlling the non-application enabled network device; and

a network interface on the application enabled network device that transmits the one or more command-line interface commands created by the command-line interface application programming interface over a network for processing by the non-application enabled network device.

13. The apparatus of claim 12 , wherein the CLI commands created on the application-enabled network device are capable of controlling one or more aspect of the operation of the non-application enabled network device.

14. The apparatus of claim 12 , wherein the application-enabled network device receives results over the network from the processing of the CLI commands on the non-application enabled network device.

15. The apparatus of claim 12 , wherein the application-enabled network device can process Java object-oriented instructions.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 48612/0598) Recorded May 18, 2023
From: GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT
To: AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC. (FORMER NAME OF AVAYA CLOUD INC.); HYPERQUALITY, INC.; HYPERQUALITY II, LLC; CAAS TECHNOLOGIES, LLC; AVAYA MANAGEMENT L.P.
Reel/Frame 063691/0294 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 53955/0436) Recorded May 18, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063705/0023 →
RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 48612/FRAME 0582 Recorded Apr 26, 2023
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: AVAYA HOLDINGS CORP.; AVAYA INC.; AVAYA MANAGEMENT L.P.
Reel/Frame 063456/0428 →
SECURITY INTEREST Recorded Sep 25, 2020
From: AVAYA INC.; AVAYA MANAGEMENT L.P.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 053955/0436 →
SECURITY INTEREST Recorded Mar 15, 2019
From: AVAYA MANAGEMENT L.P.
To: CITIBANK, N.A.
Reel/Frame 048612/0582 →
SECURITY INTEREST Recorded Mar 15, 2019
From: AVAYA MANAGEMENT L.P.
To: GOLDMAN SACHS BANK USA
Reel/Frame 048612/0598 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 12, 2019
From: AVAYA HOLDINGS LIMITED
To: AVAYA MANAGEMENT L.P.
Reel/Frame 048577/0492 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 023892/0500 Recorded Dec 15, 2017
From: CITIBANK, N.A.
To: AVAYA INC.
Reel/Frame 044891/0564 →
SECURITY AGREEMENT Recorded Feb 5, 2010
From: AVAYA INC.
To: CITICORP USA, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 023905/0001 →
SECURITY AGREEMENT Recorded Feb 4, 2010
From: AVAYA INC.
To: CITIBANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 023892/0500 →