APPARATUS AND METHOD FOR ACCESSING COMMAND LINE INTERFACE INFORMATION FROM A DEVICE

Information

  • Patent Application
  • 20080005361
  • Publication Number
    20080005361
  • Date Filed
    May 31, 2007
    17 years ago
  • Date Published
    January 03, 2008
    17 years ago
Abstract
A method and apparatus for accessing information from a network device, said device being managed through a command line interface, said method comprising storing information regarding operation of the device in a hierarchical structure in a memory within the device, searching for a command line management feature or configuration by passing a search command to the device and then passing a command relating to the feature name or configuration to the device, whereby the device then searches through the hierarchical data structure for the feature name or configuration in which the search command is provided in the first layer of the hierarchical structure in the memory and the feature name or configuration is provided in the second layer of the hierarchical structure in the memory within the device.
Description

BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is an arrangement of a network, which includes devices, which may include preferred embodiments of the invention;



FIG. 2 is a chart which illustrates how the information in a device may be accessed according to the invention;



FIG. 3A is a screen shot relating to the arrangement of FIG. 2;



FIG. 3B is another screen shot relating to the arrangement of FIG. 2;



FIG. 4 is a flow chart of the steps of a method according to a preferred embodiment of the invention; and



FIG. 5 is a flow chart of the steps of an alternative method according to the invention.





DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring to FIG. 1 there is shown a physical network 10 comprising a plurality of devices in the form of a network supervisor's workstation or computer 11, other workstations 12B-E, hubs 13A, 13B, switch 14, Ethernet phones 15A-C, phone 15A being directly connected to hub 13A, and phone 15B being connected between hub 13B and workstation 12E and phone 15C between hub 13A and workstation and a network call processor (NCP) 20 which operates the telephones 15A-C over the network. The network is a simple network and is set out for purposes of illustration only. Other configurations and arrangements of network may be used.


The devices are connected together by means of links 16A-H which may be hard wired and utilise any desired protocol, and link 16F which is a wireless link.


The network supervisor's workstation includes, in addition to a visual display unit 18, a central processing unit or signal processor 19, a selector which may be in the form of a mouse 22, a program store 21 which may comprise, for example, a CD drive, a floppy disk drive, a zip drive or a flash memory, and a memory 17 for storing a program which may have been loaded from the program store 21 or downloaded for example via Internet from a website.


Let us assume that the huh 13A has been replaced and it is necessary for the network supervisor to configure it. The hub 13A includes a memory which includes information relating to that device, that is, details of its type, and the configuration and status of various parameters of the device, which can be accessed via the command line interface. It is more convenient to access this information directly from the device itself.


Commands that control the various functions of a device are grouped by function and view. Management functions are done within the context of these groupings, which provides a logical grouping of related commands and the various views restrict access to various functions. Within each of these command groups or view, there is a group of commands and for each command there may be one or more parameters.


Information about all the textual user interface commands is arranged within the memory of the device in a hierarchical manner in layers, which comprise branches, there being provided a plurality of branch levels. Thus the information held is divided into relevant broad subjects. As will be seen from FIG. 2, the broad subjects each have a title listed in column 1 and a related short description listed in column 2. We will refer to the subjects of column 1 as providing first branch subjects.


The first branch subjects and their corresponding brief descriptions are:


















format
Format the device



free
Clear user terminal interface



ftp
Open FTP connection



lock
Lock current user terminal interface



mkdir
Create a new directory



more
Display the contents of file



move
Move a file



msdp-tracert
MSDP traceroute to source RP



mtracert
Trace route to multicast source



pad
Establish one PAD connection



ping
Send echo messages



pwd
Display current working directory



quit
Exist from current command viewfinder



reboot
Reboot system



rename
Rename a file or directory



reset
Reset Operation



rmdir
Remove an existing directory



rsh
Establish one RSH connection



save
Save current configuration



schedule
Schedule system task



search
Find features/configurations location



send
Send information to other user terminal interface



start-script
Start a script-string on a UI



startup
Specify system start-up parameters



super
Privilege current user a specified priority level



system-view
Enter system view



telnet
Establish one TELNET connection



terminal
Set the terminal line characteristics



tftp
Open TFTP connection



tracert
Trace route function



undelete
Recover a deleted file



undo
Cancel current setting



upgrade
Upgrade bootrom



vrbd
Show VRP version



xmodem
Establish an x-modem connection










One of these first level commands is “search”, which finds management features or finds configuration parameters and values. The second level for the “search” command contains “feature” and “configurations” which specifies if the network supervisor is searching for information about a management feature or is searching for a configuration parameter name of a value that was assign to a configuration parameter.


Search for Command Line Management Feature


To search for a command line management feature of a particular device in the network, a network supervisor enters “search feature” (which passes a relevant search command to the chosen device) and then enters the feature name (which passes a relevant command to the chosen device). The chosen device then searches through its hierarchical data structure for entered feature name and for similar items. For this command the first layer is “search” the second layer is “feature” and the third layer is a list of features. Contained in this third layer for each feature in the list is the associated commands that use that feature name, a short description of each of the commands, and a list similar terms to aid a network supervisor to find the command if there are close to the feature name but did not enter the feature name exactly. The commands examples and descriptions which match or are close to the feature name entered in the “search feature” command are displayed to the network supervisor.


Search for Configuration Parameter Name or Value


If a network supervisor wants to know what commands use the parameter “speed”, then the network supervisor will enter “search configurations speed” (which passes a relevant command to the chosen device) and the chosen device will search through its hierarchical data structure for all the commands that have a parameter called “speed” and will display on the network supervisor's workstation (or print out) the list of commands that have a parameter called “speed”.


If a network supervisor wants to know what parameters have been set to the value of 10.161.63.0, then the network supervisor would enter “search configurations parameter 10.161.63.0”, (which passes a relevant search command to the chosen device) and the chosen device will search through its hierarchical data structure for all the configuration parameters that have been set to the value of 10.161.63.0. The device would display on the network supervisor's workstation each parameter that has been set the value of 10.161.63.0 and for each parameter displayed the command used to set that parameter to a value will also be displayed, so the network supervisor will quickly know how to set that parameter to a different value if desired.


If a network supervisor wants to know why a parameter was set to a particular value (e.g., 10.161.63.0), then the network supervisor would enter “search configurations reason 10.1 61.63.0” (which passes a relevant search command to the chosen device) and the device will search through its hierarchical data structure for all the configuration parameters that have been set to the value of 10.161.63.0 and read the optional reason field associated with each parameter found. The device would display on the network supervisor's workstation each parameter that has been set the value of 10.161.63.0 and the reason field. When a parameter value is set the network supervisor is prompted to briefly describe why this parameter is being set the value. The reason field will help the network supervisor understand not only what value a parameter holds, but will also provide the rational for setting that parameter to that specific value.


As another more specific example, let us assume that a network supervisor wishes to search how to configure the device in relation to DHCP. Thus the network supervisor selects “search” from the first-level branch subject. Under “search” in column 3 are two second-level branch subjects, “feature” and “configuration”. Column 4 sets out the corresponding brief descriptions, “Find where to configure a certain feature” and “Find a keyword that has been configured” Thus the first of these, “features” sets out where to configure a particular feature.


The network supervisor then selects “DHCP” as a key word, which then provides a list of the entries where the relevant information relating to the configuration of the device with respect to DHCP will be found. These are listed in column 6 as entries and brief titles and with corresponding brief descriptions in column 7, thus, referring now to FIG. 3B,:















system-view -> DHCP enable
DHCP service enable


system-view -> DHCP relay release
Release one IP address


system-view -> DHCP select
Setting process mode for DHCP



packet


system-view -> DHCP select global
Global DHCP IP mode


system-view -> DHCP select interface
Interface DHCP IP pool mode


system-view -> DHCP select relay
Relay mode


system-view -> display DHCP client
DHCP client information


system-view -> display DHCP relay
DHCP relay information


system-view -> display DHCP server
DHCP server information


[router-mid-search]









The network supervisor wishes to find configuration information and selects “configurations”. The device lists the three possible commands used to find configuration information.

  • [router-mid-search] configurations
  • [router-mid-search-configurations]?
  • Name
  • Parameter
  • Reason
  • Full details: system-view - >display dhcp server tree all
  • [ router-mid-search-configurations]


The network supervisor chooses the command “Name” to find configuration information about the parameter named “dhcp global poor”. The device displays information indicating the dhcp global pool has been configured with a Network address of 10.161.63.0 and a subnet mask of 255.255.255.0.

  • [router-mid-search-configurations]Name dhcp global pool
  • DHCP Global Pool:
  • Network 10.161.63.0 mask 255.255.255.0
  • Full details: system-view - >display dhcp server tree all
  • [router-mid-search-configurations]


The network supervisor then wishes to see all parameters set to the value of 10.161.63.0.

  • [router-mid-search-configurations] parameter 10.161.63.0
  • DHCP Global Pool:
  • Network 10.161.63.0 mask 255.255.255.0
  • Full details: system-view - >display dhcp server tree all
  • [router-mid-search-configurations]


The network supervisor further inquires why the parameter was set to the value of 10.161.63.0.

  • [router-mid-search-configurations] reason 10.161.63.0
  • DHCP Global Pool:
  • Network 10.161.63.0 mask 255.255.255.0
  • Reason: “Use 255 private addresses for campus XYZ DHCP pool which is assigned the 161.63 subgroup”
  • Full details: system-view - >display dhcp server tree all
  • [router-mid-search-configurations]


Thus in a very simple manner the network supervisor can find the relevant information which can be displayed on the screen. The process can also be understood from a consideration of computer screen shot of FIGS. 3A.


Referring to FIG. 4, the steps of a process for carrying out the invention in a preferred aspect are set out.


















Step 101
Start Search



Step 102
Type



Step 103
Select key word



Step 104
Select preconfigured list of data



Step 105
Results



Step 106
View list of entries (locations) in the memory each of




which includes the keyword



Step 107
Select desired entry to view detailed information for




that entry.










Thus in step 101 the network supervisor starts a search. At step 102 the network supervisor selects whether to search using either keywords in step 103 or a preconfigured list of data in step 104. The preconfigured list of data may include, for example, commonly used data which the network supervisor might want to refer to frequently.


The step 103 corresponds to the column 5 of FIG. 2.


After the relevant keyword has been entered in step 103, (which in FIG. 2 is “dhcp”) if the results are found in step 105, then in step 106 a list is presented of entries (locations) in the memory each of which includes the keyword. The list in step 106 corresponds to column 6 in FIG. 2. The network supervisor then, in step 107, selects the relevant entry (i.e. in the column 6 of FIG. 2) to obtain the detailed information for that entry.


If, however, in step 105 no results are found as a result of the keyword search in 103 or the list of preconfigured data in step 104, then one returns to step 101 and starts a new search.


It will thus be seen that queries can be performed using either keywords or preconfigured data.


Keywords can be indexed to enhance performance. Thus, during development, groups of keywords can be selected to make them more easily searchable. Also, one can include synonyms for these keywords to enhance user-interaction. And since these keywords are basically features which are supported on the device, one only needs to index them once so that each keyword is linked to its respective branch.


Data can be searched on the fly by keywords or cached and sorted once configured, i.e., one generates a sorted list of keywords every time these configurations change (to have more efficient access-time when we perform search queries, but one has to regenerate this list every time we change any of those settings).


The preconfigured data comprises a set of features that users may utilize to operate devices.



FIG. 5 shows an alternative set of steps for carrying out the invention.















Step 401
Command Type (select what command is to be used,



in this case “search”).


Step 402
Type of Search? If “Feature” go to step 403, if



“Configuration” go to step 406 (at this point the



network supervisor can select to search for a particular



feature in the device, or a particular configuration on



the device)


Step 403
Search Feature Names & Synonyms


Step 404
Was Feature Name or Synonym Found? If “Yes” go



to step 405; if “No” return to step 401


Step 405
Display the Feature Syntax & Short Description and



return to step 401


Step 406
Select Type of Configuration. If “Name” go to step



407; if “Reason” go to step 409; if “Parameter” go to step 408



(either “Name”or “Reason”)


Step 407
Search for Parameter Names & Synonyms


Step 408
Search for Parameter Values


Step 410
Was anything found in step 407 or 408? If “No”



return to step 401; if “Yes” display the parameter and



their values at step 411, then return to step 401


Step 409
Search for parameter Values


Step 412
Were Parameter Values found in step 409? If “Yes”



go to step 413; if “No” return to step 401


Step 413
Display Parameter and their values and the reasons



then return to step 401









It will be noted in the arrangement of FIG. 5, in addition to the steps which can be carried out in FIG. 4, one can search the configuration of a particular device, using a search parameter in terms of a name and synonym in step 407, or one can search for the values of a parameter by the actual parameter values so that inserting a particular value of the parameter will produce a list of all those parts of the device which carry that parameter value in step 408, and in step 409 one can actually search for the reasons that a particular parameter has a particular value. This is particularly useful since in the setting up of the device, a previous network supervisor may have set a parameter at a particular value for a particular reason, and he can insert that reason into the memory of the device so that a subsequent person looking at that particular parameter value will know why that particular parameter value has been set.


Although the invention has been described by way of examples of preferred embodiments, it is to be understood that various other adaptations and modifications may be made within the spirit and scope of the invention. Therefore, it is the object of the appended claims to cover all such variations and modifications as come within the true spirit and scope of the invention.

Claims
  • 1. A method for accessing information from a network device, said device being managed through a command line interface, said method comprising storing information regarding operation of the device in a hierarchical structure in a memory within the device, searching for a command line management feature or configuration by passing a search command to the device and then passing a command relating to the feature name or configuration to the device, whereby the device then searches through the hierarchical data structure for the feature name or configuration.
  • 2. The method as claimed in claim 1 in which the search command is provided in the first layer of the hierarchical structure in the memory and the feature name or configuration is provided in the second layer of the hierarchical structure in the memory within the device.
  • 3. The method as claimed in claim 2 in which the device provides a list of the commands that use the feature name, said device storing data relating to all of the features in a third layer of the hierarchical structure in the memory.
  • 4. The method as claimed in claim. 3 in which the third layer includes, for each feature, the associated commands that use that feature name, a short description of each of the commands, and a list of similar terms.
  • 5. The method of claim 4 including displaying the feature, commands and short description.
  • 6. The method of claim 2 including searching for commands which use a particular parameter by further passing a parameter to the device after the command relating to the configuration whereby the device will search for all the commands that have the relevant parameter and will display a list of commands that have that parameter.
  • 7. A method as claimed in claim 6 in which the memory includes a field associated with each parameter including information as to why a parameter was set to a particular value, whereby the device will display information as to why each command parameter was set to a particular value.
  • 8. A method as claimed in claim 7 including providing said set of entries in a readable format.
  • 9. A method as claimed in claim 8 including providing said set of entries in a readable format with a brief description of the subject stored at each entry.
  • 10. A method as claimed in claim 7 including storing said information in a branch structure whereby, before said keyword is entered, a set of entries of first-branch subjects stored in the memory is displayed and the network supervisor selects one of said first-branch subjects before entering said keyword.
  • 11. A device in a network, said device being managed through a command line interface, said device including means for accessing information from the device, said device including a memory storing information regarding operation of the device, means to access to the information in said memory whereby when a keyword relating to a subject to be searched is passed to said device, said device provides from the memory, a set of entries which each contain information including the keyword.
  • 12. A device as claimed in claim 11 including means to display said set of entries in a readable format.
  • 13. A device as claimed in claim 12 including means to display said set of entries in a readable format with a brief description of the subject stored at each entry.
  • 14. A device as claimed in claim 11 including means to store said information in a branch structure whereby, before said keyword is entered, a set of entries of first-branch subjects stored in the memory is displayed and the network supervisor selects one of said first-branch subjects before entering said keyword.
  • 15. A device as claimed in claim 13 including means to display said set of entries in a readable format with a brief description of the subject stored at each entry including a value of a parameter and the reason why the parameter was set to that value.
  • 16. A network device, said device being managed through a command line interface, said device comprising a memory storing information regarding operation of the device in a hierarchical structure, means being provided to search for a command line management feature or configuration in the memory by receiving a search command to the device and then receiving a command relating to the feature name or a configuration to the device, whereby the device then searches through the hierarchical data structure for the feature name or configuration.
  • 17. The network device as claimed in claim 16 in which the memory is arranged so that the search command is provided in the first layer of the hierarchical structure in the memory and the feature name or configuration is provided in the second layer of the hierarchical structure in the memory.
  • 18. The network device as claimed in claim 17 in which the device includes means whereby, as a result of the receipt of the search command, provides a list of the commands that use the feature name, said device further storing data relating to all of the features in a third layer of the hierarchical structure in the memory.
  • 19. The network device as claimed in claim 18 in which the third layer includes, for each feature, the associated commands that use that feature name, a short description of each of the commands, and a list similar terms.
  • 20. The network device of claim 19 including means for displaying the feature, commands and short description in said list.
  • 21. The network device of claim 17 including means for searching for commands which use a particular parameter by further passing a command to the device after the command relating to the configuration whereby the device searches for all the commands that have the relevant parameter and provides a list of commands that have that parameter.
  • 22. A network device as claimed in claim 21 in which the memory includes a field associated with each parameter including information as to why a parameter was set to a particular value, whereby the device will display information as to why each command parameter was set to a particular value.
Provisional Applications (1)
Number Date Country
60810070 Jun 2006 US