|
|
This feature module describes the enhancement to Cisco IOS Release 12.0(11)S which allows interfaces to be identified with unique values which will remain constant even when a device is rebooted. These interface identification values are used for network monitoring and management using Simple Network Management Protocol (SNMP). This document includes the following sections:
One of the most commonly used identifiers used in SNMP-based network management applications is the interface index (ifIndex) value. IfIndex is a unique identifying number associated with a physical or logical interface; as far as most software is concerned, the ifIndex is the "name" of the interface.
Though there is no requirement in the relevant RFCs that the correspondence between particular ifIndex values and their interfaces be maintained across reboots, increasingly applications such as device inventory, billing, and fault detection depend on this correspondence being maintained.
Cisco IOS Release 12.0(11)S adds support for an ifIndex value that can persist across reboots, allowing users to avoid the workarounds previously required for consistent interface identification.
It is currently possible to poll the router at regular intervals to correlate the interfaces to the ifIndex, but it is not practical to poll this interface constantly. If this data is not correlated constantly however, the data may be made invalid because of a re-boot or new card inserted into the router in between polls. Therefore, ifIndex persistence is the only way to guarantee data integrity.
IfIndex persistence means that the mapping between the ifDescr object values and the ifIndex object values (generated from the IF-MIB) will be retained across reboots.
Association of Interfaces with Traffic Targets for Network Management
The IfIndex Persistence feature allows for greater accuracy when collecting and processing network management data by uniquely identifying input and output interfaces for traffic flows and SNMP statistics. By relating each interface to a known entity (such as a ISP customer), network management data can be more effectively utilized.
Accuracy for Mediation, Fault Detection, and Billing
With the international growth and reliance of network data being used for usage-based billing, network planning, policy enforcement, and trending analysis, it becomes increasingly important to be extremely accurate when collecting and processing network management data. The ifIndex information is used to identify input and output interfaces for traffic flows and SNMP statistics. Not being able to reliably relate each interface to a known entity such as a customer invalidates the data.
The interface-specific ifIndex persistence command ([no] snmp-server ifIndex persistence) can not be used on subinterfaces. A command applied to an interface is automatically applied to all the subinterfaces associated with that interface.
Testing indicates approximately 25 bytes of NVRAM storage is used by this feature per interface. There may be some boot delay on platforms with lower CPU speeds.
RFCs are available from a variety of internet sources. The primary source is the IETF's web site at http://www.ietf.org
For Cisco IOS Release 12.0(11)S and later, this feature is supported on the following platforms:
The Interface Index Persistence feature supports the following standards, RFCs and MIBs:
Standards
No standards are supported by this feature (ifIndex persistence is not required by RFC2233).
RFCs
MIBs
Note that this feature does not change any exisiting MIBs or add any new MIBs.
For lists of MIBs supported by Platform and Cisco IOS Release, and to download MIB modules, go to the Cisco MIB website on CCO at http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml.
The configuration tasks described below assume you have configured SNMP on your routing device and are using SNMP to monitor network activity using the Cisco IOS command line interface or a network management application.
See the following sections for configuration tasks for the Interface Index Persistence feature. Each task in the list indicates if the task is optional or required.
IfIndex persistence is disabled by default. To globally enable ifIndex values that are maintained across reboots, use the following command in global configuration mode:
| Command | Purpose |
|---|---|
Router(config)#snmp-server ifIndex persist | Globally enables ifIndex values which will remain constant across reboots. |
To globally disable ifIndex persistence after enabling it, use the following command in global configuration mode:
| Command | Purpose |
|---|---|
Router(config)#no snmp-server ifIndex persist | Disables global ifIndex persistence. |
![]() |
NoteAfter issuing ifIndex persistence commands, the configuration must be saved using the copy running-config startup-config EXEC mode command to ensure consistent ifIndex values. |
To enable ifIndex persistence only on a specific interface, use the following commands, starting in global configuration mode:
| Command | Purpose | |
|---|---|---|
Step1 | Router(config)#interface type slot/port | Enters interface configuration mode for the specified interface. Note that the syntax of the interface command will vary depending on the platform you are using. |
Step2 | Router(config-if)#snmp ifIndex persist | Enables an ifIndex value which is constant across reboots on the specified interface. |
Step3 | Router(config-if)# | Exits interface configuration mode. |
To disable ifIndex persistence only on a specific interface, use the following commands, starting in global configuration mode:
| Command | Purpose | |
|---|---|---|
Step1 | Router(config)#interface type slot/port | Enters interface configuration mode for the specified interface. Note that the syntax of the interface command will vary depending on the platform you are using. |
Step2 | Router(config-if)#no snmp ifIndex persist | Disables an ifIndex value which is constant across reboots on the specified interface. |
Step3 | Router(config-if)# | Exits interface configuration mode. |
To clear the interface-specific ifIndex persistence setting and configure the interface to use the global configuration setting, use the following commands, starting in global configuration mode:
| Command | Purpose | |
|---|---|---|
Step1 | Router(config)#interface type slot/port | Enters interface configuration mode for the specified interface. Note that the syntax of the interface command will vary depending on the platform you are using. |
Step2 | Router(config-if)#snmp ifIndex clear | Clears any interface-specific ifIndex persistence configuration for the specified interface. The ifIndex setting (enabled or disabled) will match the global configuration setting. |
Step3 | Router(config-if)# | Exits interface configuration mode. |
When you clear the interface-specific setting, only the global ifIndex persistence setting will apply to that interface. Regardless of whether the specific interface has ifIndex persistence enabled or disabled, after you issue the snmp ifIndex clear command, the ifIndex persistence setting will default to the global setting.
For example, assume you enabled ifIndex persistence on interface ethernet 0/1, then globally enabled ifIndex persistence. Using the snmp ifIndex clear command in interface configuration mode for ethernet 0/1 would leave that interface with ifIndex enabled, because the global setting is to have ifIndex persistence enabled.
Likewise, if you disabled ifIndex persistence for ethernet 0/1, globally enabled ifIndex persistence, then issued the snmp ifIndex clear command on that interface, ifIndex would be enabled (the global setting) on that interface.
![]() |
TipsUse the snmp ifIndex clear command on a specific interface when you want that interface to use the global configuration setting for ifIndex persistence. This command clears any ifIndex configuration commands previously entered for that specific interface. |
.
Use the more system:running-config command to verify that ifIndex commands are configured.
This section provides the following configuration examples:
In the following example, ifIndex persistence is enabled for all interfaces:
router(config)# snmp-server ifindex persist
In the following example, ifIndex persistence is enabled for interface ethernet 0/1 only:
router(config)# interface ethernet 0/1 router(config-if)# snmp ifindex persist router(config-if)# exit
In the following example, ifIndex persistence is enabled for interface ethernet 0/1 only:
router(config)# interface ethernet 0/1 router(config-if)# no snmp ifindex persist router(config-if)# exit
In the following example, any previous setting for ifIndex persistence on interface ethernet 0/1 is removed from the configuration. If ifIndex persistence is globally enabled, ifIndex persistence will be enabled for ethernet 0/1. If ifIndex persistence is globally disabled, ifIndex persistence will be disabled for ethernet 0/1:
router(config)# interface ethernet 0/1 router(config-if)# snmp ifindex clear router(config-if)# exit
This section documents new commands. All other commands used with this feature are documented in the CiscoIOS Release 12.0 command reference publications.
To clear any previously configured snmp ifIndex commands issued in interface configuration mode on a specific interface, use the snmp ifIndex clear command in interface configuration mode.
snmp ifIndex clearSyntax Description
This command has no arguments or keywords.
Defaults
None
Command Modes
Interface configuration mode
Command History
12.0(11)S This command was introduced.
Release
Modification
Usage Guidelines
Use the snmp-server ifIndex clear command on a specific interface when you want that interface to use the global configuration setting for ifIndex persistence. This command clears any ifIndex configuration commands previously entered for that specific interface.
Examples
In the following example, ifIndex persistence is enabled for all interfaces:
router(config)# snmp-server ifindex persist
IfIndex persistence is then disabled for ethernet 0/1 only:
router(config)# interface ethernet 0/1 router(config-if)# no snmp ifindex persist
router(config-if)# exit
Later, the ifIndex configuration command is cleared from the configuration for ethernet 0/1:
router(config)# interface ethernet 0/1 router(config-if)# snmp ifindex clear
router(config-if)# exit
This leaves ifIndex persistence enabled for all interfaces, as specified by the snmp-server ifIndex persist global configuration command.
Related Commands
snmp ifIndex persist Enables or disables ifIndex values in the IF-MIB which persist across reboots (ifIndex persistence) only on a specific interface. snmp-server ifIndex persist Globally enables or disables ifIndex values in the IF-MIB which persist across reboots (ifIndex persistence) for all interfaces not specifically configured for ifIndex persistence.
Command
Description
To enable ifIndex values in the IF-MIB which persist across reboots (ifIndex persistence) only on a specific interface, use the snmp ifIndex persist command in interface configuration mode. To disable ifIndex persistence only a specific interface, use the no form of this command in interface configuration mode.
snmp ifIndex persistSyntax Description
This command has no arguments or keywords.
Defaults
This command is disabled by default.
Command Modes
Interface configuration mode
Command History
12.0(11)S This command was introduced.
Release
Modification
Usage Guidelines
The snmp-server ifIndex persistence global configuration command enables and disables ifIndex persistence for all interfaces on the routing device using ifDescr and ifIndex entries in the ifIndex table. The snmp ifIndex persistence interface configuration command enables and disables persistence for individual entries (corresponding to individual interfaces) in the ifIndex table.
IfIndex commands configured for an interface apply to all subinterfaces on that interface.
Examples
In the following example, ifIndex persistence is enabled for interface ethernet 0/1 only:
router(config)# interface ethernet 0/1 router(config-if)# snmp ifindex persist router(config-if)# exit
In the following example, ifIndex persistence is enabled for interface ethernet 0/1 only:
router(config)# interface ethernet 0/1 router(config-if)# no snmp ifindex persist
router(config-if)# exit
Related Commands
snmp ifIndex clear Clears any interface-specific configuration of ifIndex persistence. snmp-server ifIndex persist Globally enables or disables ifIndex values in the IF-MIB which persist across reboots (ifIndex persistence) for all interfaces not specifically configured for ifIndex persistence.
Command
Description
To globally enable ifIndex values which will remain constant across reboots for use by SNMP, use the snmp-server ifIndex persist command in global configuration mode. To globally disable ifIndex persistence, use the no form of this command in global configuration mode.
snmp-server ifIndex persistSyntax Description
This command has no arguments or keywords.
Defaults
This command is disabled by default.
Command Modes
Global configuration mode
Command History
12.0(11)S This command was introduced.
Release
Modification
Usage Guidelines
The snmp-server ifIndex persist global configuration command will not override interface-specific configuration. Interface-specific configuration of ifIndex persistence is performed with the [no] snmp ifIndex persist and snmp ifIndex clear interface configuration command.
The [no] snmp-server ifIndex persist global configuration command enables and disables ifIndex persistence for all interfaces on the routing device using ifDescr and ifIndex entries in the ifIndex table of the IF-MIB.
Examples
In the following example, ifIndex persistence is enabled for all interfaces:
router(config)# snmp-server ifindex persist
In the following example, ifIndex persistence is disabled for all interfaces:
router(config)# no snmp-server ifindex persist
In the following example, ifIndex persistence is enabled for interface ethernet 0/1 only:
router(config)# interface ethernet 0/1 router(config-if)# snmp-server ifindex persist router(config-if)# exit
In the following example, ifIndex persistence is enabled for interface ethernet 0/1 only:
router(config)# interface ethernet 0/1 router(config-if)# no snmp-server ifindex persist
router(config-if)# exit
Related Commands
snmp ifIndex persist Enables or disables ifIndex values in the IF-MIB which persist across reboots (ifIndex persistence) only on a specific interface. snmp-server ifIndex clear Clears any interface-specific configuration of ifIndex persistence.
Command
Description
The following definitions are from RFC 2233, "The Interfaces Group MIB using SMIv2"1:
ifIndex ---"A unique value, greater than zero, for each interface. It is recommended that values are assigned contiguously starting from 1. The value for each interface sub-layer must remain constant at least from one re-initialization of the entity's network management system to the next re-initialization."
ifName---"The textual name of the interface. The value of this object should be the name of the interface as assigned by the local device and should be suitable for use in commands entered at the device's `console'. This might be a text name, such as `le0' or a simple port number, such as `1', depending on the interface naming syntax of the device. If several entries in the ifTable together represent a single interface as named by the device, then each will have the same value of ifName. If there is no local name, or this object is otherwise not applicable, then this object contains a 0-length string."
ifDescr---"A textual string containing information about the interface. This string should include the name of the manufacturer, the product name and the version of the interface hardware/software."
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Posted: Tue Jun 13 22:53:51 PDT 2000
Copyright 1989 - 2000©Cisco Systems Inc.