IP Library Granted Patent US 7,225,244
Granted Patent B2
US 7,225,244 · App. 09/832,436 · Granted May 29, 2007

Common command interface

Assignee: Ciena Corporation
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,225,244
App. No.
09/832,436
Granted
May 29, 2007
Kind
B2
Abstract

A common command interface (CCI) provides an interface abstraction allowing network device applications to maintain one set of code for each command regardless of which command interface (e.g., web, CLI, NMS, etc.) initiates the command. That is, the command code in each application may be shared across multiple command interfaces. The interface abstraction allows new applications including additional commands to be added to a network device and existing applications to be dynamically upgraded to include new and/or modified commands without having to modify the CCI. Thus, the network device may provide the increased flexibility of having multiple command interfaces while minimizing the complexity required to maintain commands across those interfaces. In addition, a community command interface may be used to connect the common command interfaces of multiple network devices.

Claims (96)

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

executing a command proxy on each of one or more network cards that comprise a processor located within the telecommunications network device;

registering at least one command executable by an application with one of a plurality of distributed command proxies associated with a common command interface and a central command daemon, said command proxy being local to the application;

executing a web server and a telnet server on the network card that comprises the central command daemon;

registering the command through the command proxy local to the application with the central command daemon associated with said common command interface;

providing a user interface comprising a command line interface and a web interface;

receiving the command at the common command interface from either of said command line interface and said web interface;

forwarding the command to the application; and

completing execution of the command;

wherein said common command interface receives commands in a plurality of formats; and

wherein the common command interface allows the network device application to maintain one set of code for each command regardless of which command interface initiated the command.

2. The method of claim 1 , wherein receiving the command at the command interface from the user interface and forwarding the command to the application comprises:

receiving the command at one of the plurality of command proxies that is local to the user interface;

determining if the application that registered the received command is local to the command proxy that is local to the user interface;

if yes, then forwarding the received command to the application that registered the received command; and

if no, then forwarding the received command to the central command daemon.

3. The method of claim 2 , further comprising:

forwarding the received command to the one of the plurality of command proxies that registered the received command; and

forwarding the received command to the application that registered the received command.

4. The method of claim 1 , wherein the command interface is a central system and wherein registering at least one command executable by an application with a command interface comprises:

registering the command with a central command daemon.

5. The method of claim 1 , wherein completing execution of the command comprises:

receiving the command through a command application programming interface (API) linked into the application; and

calling a call back routine within the application corresponding to the received command.

6. The method of claim 5 , wherein completing execution of the command further comprises:

calling a display routine linked into the application to send any display data directly to the user interface.

7. The method of claim 1 , wherein the user interface comprises:

a web interface.

8. The method of claim 1 , wherein the user interface comprises:

a command language interface (CLI).

9. The method of claim 1 , wherein the user interface comprises:

a network/element management system interface.

10. A method of managing a telecommunications network device, comprising:

executing a command proxy on each of one or more network cards that comprise a processor located within the telecommunications network device;

registering at least one command executable by an application with a first command proxy, wherein the first command proxy is local to the application;

registering the command through the first command proxy with a central command daemon;

executing a web server and a telnet server on the network card that comprises the central command daemon;

providing a user interface comprising a command line interface and a web interface;

receiving the command at either of said command line interface and said web interface;

forwarding the command to a second command proxy, wherein the second command proxy is local to the user interface;

forwarding the command through the second command proxy to the central command daemon;

forwarding the command through the central command daemon to the first command proxy;

forwarding the command through the first command proxy to the application; and

completing execution of the command;

wherein said first command proxy and said second command proxy receive commands in a plurality of formats; and

wherein the common command interface allows the network device application to maintain one set of code for each command regardless of which command interface initiated the command.

11. A method of managing a telecommunications network including a first network device and a second network device, comprising:

executing a command proxy on each of one or more network cards that comprise a processor located within each telecommunications network device;

executing a community command daemon on one of the first or second network devices;

executing a first application on the first network device;

executing a second application on the second network device;

registering a first command executable by the first application with a first command interface on the first network device;

registering a second command executable by the second application with a second command interface on the second network device;

registering the first and second commands with the community command daemon; and

executing a web server and a telnet server on the network card that comprises the community command daemon;

wherein said command interfaces receive commands in a plurality of formats; and

wherein the common command interface allows the network device application to maintain one set of code for each command regardless of which command interface initiated the command.

12. The method of claim 11 , further comprising:

receiving the first command at the community command daemon from a user interface;

forwarding the first command through the community command daemon to the first command interface;

forwarding the first command through the first command interface to the first application; and

completing execution of the first command.

13. The method of claim 11 , further comprising:

receiving the second command at the community command daemon from a user interface;

forwarding the second command through the community command daemon to the second command interface;

forwarding the second command through the second command interface to the second application; and

completing execution of the second command.

14. The method of claim 12 , wherein the user interface comprises:

a web interface.

15. The method of claim 12 , wherein the user interface comprises:

a command language interface (CLI).

16. The method of claim 12 , wherein the user interface comprises:

a network/element management system interface.

17. A telecommunications network device, comprising:

an application executing a command; and

a common command interface comprising a distributed system having a central command daemon and a plurality of distributed command proxies, wherein the application registers the command with the common command interface and the common command interface receives the command from a user interface and forwards the received command to the application, and wherein said common command interface receives commands in a plurality of formats;

wherein a command proxy is executed on each of one or more network cards that comprise a processor located within the telecommunications network device;

wherein a web server and a telnet server are executed on the network card that comprises the central command daemon; and

wherein the common command interface allows the network device application to maintain one set of code for each command regardless of which command interface initiated the command.

18. The telecommunications network device of claim 17 , wherein the common command interface comprises a central system including:

a central command daemon.

19. The telecommunications network device of claim 17 , wherein the application comprises:

a command application programming interface (API) for registering the command with the common command interface and for responding to the command forwarded by the common command interface.

20. The telecommunications network device of claim 19 , wherein the command API comprises:

a registration routine for registering the command with the common command interface; and

a command handler for responding to the command forwarded by the common command interface.

21. The telecommunications network device of claim 20 , wherein the application further comprises:

a call back routine, wherein the command handler calls the call back routine when the command handler receives the command forwarded by the common command interface.

22. The telecommunications network device of claim 19 , wherein the application further comprises:

a display API for sending display data to the user interface when responding to the command forwarded by the common command interface.

23. The telecommunications network device of claim 17 , wherein the user interface comprises:

a web interface.

24. The telecommunications network device of claim 17 , wherein the user interface comprises:

a command language interface (CLI).

25. The telecommunications network device of claim 17 , wherein the user interface comprises:

a network/element management system interface.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Nov 20, 2023
From: BANK OF AMERICA, N.A.
To: CIENA CORPORATION
Reel/Frame 065630/0232 →
PATENT SECURITY AGREEMENT Recorded Nov 8, 2019
From: CIENA CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 050969/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 30, 2019
From: DEUTSCHE BANK AG NEW YORK BRANCH
To: CIENA CORPORATION
Reel/Frame 050938/0389 →
PATENT SECURITY AGREEMENT Recorded Jul 16, 2014
From: CIENA CORPORATION
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 033347/0260 →
SECURITY INTEREST Recorded Jul 15, 2014
From: CIENA CORPORATION
To: DEUTSCHE BANK AG NEW YORK BRANCH
Reel/Frame 033329/0417 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2005
From: EQUIPE COMMUNICATIONS CORPORATION
To: CIENA CORPORATION
Reel/Frame 016135/0680 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2001
From: REYNOLDS, DANIEL A.; STEFANELLI, DOUGLAS B.; KIDDER, JOSEPH D.
To: EQUIPE COMMUNICATIONS CORPORATION
Reel/Frame 011713/0141 →
Continuity (2)
Continuation In Part 0980378300 · Mar 12, 2001
Related Publication 20030126195A1 · Jul 3, 2003