Configuring SNMP and MIB Support
This chapter describes how to configure Simple Network Management Protocol (SNMP) and Management Information Base (MIB) support for Cisco CMTS routers. It includes the following sections:
Determining MIB Support for Cisco IOS Releases
Use one of the following procedures to determine which MIBs are included in the Cisco IOS release running on your router.
Cisco MIBs Supported By Product
The Cisco MIBS Locator tool provides information on the SNMP capabilities that are contained in most Cisco IOS software images. To access this web site, use the following procedure:
Step 1 Go to the Cisco MIBs Locator page:
http://tools.cisco.com/ITDIT/MIBS/MainServlet
Step 2 Select the release, platform, and feature set to display a list of MIBs that are supported on the router.
Step 3 Scroll through the list to view the MIBs supported in a Cisco IOS software release.
Using the MIBs in Images Mail Service
The MIBs in Images (MII) mail service allows you to send an e-mail containing one or more Cisco IOS software images to a software database that is maintained by Cisco. The mail service checks the software database for the listed software images, and if it finds the images you supplied, it returns an e-mail to you with the list of MIBs that are supported in each software image.
To access the MII mail service, use the following procedure:
Step 1 Use the show version command to display the filename for the Cisco IOS image your router is running. The line that shows the filename starts with “System image file”. For example, the following sample output shows that the Cisco IOS image filename is “ ubr7200-ik8s-mz.122-15.BC1.bin
”.
Step 2 Send an e-mail to the e-mail address mii@external.cisco.com that includes the image filename by itself in the body of the e-mail text. (Do not include the location of the file, which could be a device name, such as “slot0:”, or a TFTP URL.)
Step 3 After a few minutes, the MIBs in Images Mail service sends back an e-mail listing the MIBs contained in this particular Cisco IOS software release. (For more help on using the MIBs In Images mail service, send a blank e-mail to mii@external.cisco.com with the word “help” in the subject line.)
Tip You can also display an abbreviated list of the MIBs that are supported on a router running a particular Cisco IOS software release by logging in to the privileged EXEC prompt and giving the following command:Router#
show subsys | include mibs
Downloading and Compiling MIBs
The following sections provide information about how to download and compile MIBs for the router:
Considerations for Working with MIBs
While working with MIBs, consider the following:
- Mismatches on datatype definitions might cause compiler errors or warning messages. For example, the OLD-CISCO-CPU-MIB, OLD-CISCO-MEMORY-MIB, and OLD-CISCO-SYSTEM-MIB each define the following OID differently:
To eliminate MIB compiler errors or warning messages for mismatched definitions, edit one of the MIB definitions to match the other. Other types of mismatches include:
- Many MIBs import definitions from other MIBs. If your management application requires MIBs to be loaded, and you experience problems with undefined objects, try loading the following MIBs in this order:
SNMPv2-SMI.my
SNMPv2-TC.my
SNMPv2-MIB.my
RFC1213-MIB.my
IF-MIB.my
CISCO-SMI.my
CISCO-PRODUCTS-MIB.my
CISCO-TC.my
- To see a particular MIB’s dependencies, use the “View and Download MIBs” tool, which is part of the SNMP Object Navigator on the Cisco IOS MIB Tools page, which is MIB Locator at the following URL:
http://tools.cisco.com/ITDIT/MIBS/servlet/index - For information about trap definitions, alternative size definitions, and null OIDs, follow the link:
ftp://ftp.cisco.com/pub/mibs/app_notes/mib-compilers - For listings of OIDs assigned to MIB objects, follow the link:
ftp://ftp.cisco.com/pub/mibs/oid
Downloading MIBs
To download the MIBs onto your system, if they are not already there, use the following procedure:
Step 1 Go to the Cisco IOS MIB Tools page at the following URL:
http://tools.cisco.com/ITDIT/MIBS/servlet/index
If the MIB you want to download is not there, try one of the URLs in Step 2 .
Step 2 Click the link for the MIB Locator tool. You can use the MIB Locator tool to show a particular MIB or to show all MIBs for a particular platform or for a particular software release. You can also download industry-standard MIBs from the following URLs:
- http://www.ietf.org
- http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml
- http://www.broadband-forum.org/
Compiling MIBs
If you plan to integrate the Cisco CMTS with an SNMP-based management application, you must also compile the MIBs for that platform. Some SNMP managers do this automatically when you place all of the MIBs in a specific location, while others require you to do this manually. For instructions, see the documentation for that particular manager.
Enabling SNMP Support
The following procedure summarizes how to configure the Cisco CMTS for SNMP support. Note that these basic configuration commands are issued for SNMPv2c. For SNMPv3, you must also set up SNMP users and groups.
Step 1 Set up your basic SNMP configuration through the command-line interface (CLI). (For command and setup information, see the list of documents that follows this procedure.)
Step 2 Define SNMP read-only and read-write communities:
Step 3 Configure SNMP views (to limit the range of objects accessible to different SNMP user groups):
Step 4 If you plan to enable a number of traps, especially if you plan to enable traps for SYSLOG events and alarms, increase the trap queue size from its default of 10:
The value of queue-size can range from 1 to 1000 traps. We recommend a size of at least 100 for systems that are sending traps for SYSLOG events. The default is 10.
Step 5 See the “Enabling Notifications” section for information on how to enable traps.
For detailed information about SNMP commands, see the following Cisco documents:
- “System Management” section of the Cisco IOS Configuration Fundamentals Configuration Guide, Release 12.2, available at :
http://www.cisco.com/en/US/docs/ios/12_2/configfun/configuration/guide/ffun_c.html - “System Management” section of the Cisco IOS Configuration Fundamentals Command Reference, Release 12.2, available at:
http://www.cisco.com/en/US/docs/ios/fundamentals/command/reference/cf_book.html
High CPU Usage When Polling Routing ARP Tables
Using SNMP to poll large routing tables and Address Resolution Protocol (ARP) tables can cause performance problems on the Cisco routers. This section provides background information about the issue and how to avoid the problem.
An SNMP network management station can query a router to learn about other networks. The management station uses this routing information to find other routers and query them about the networks around them. This allows the management station to learn the topology of the entire network.
The router stores the routing table in hash format, which allows the router to quickly and efficiently search the table. However, RFC 1213 requires that SNMP return the routes in lexicographical order, which means they are listed by their OIDs, in the order in which they occur in the OID tree.
This means that for each SNMP request for routing information, the router must sort entries into the OID order before it builds the response protocol data unit (PDU). As the size of the routing table increases, the router must take a proportionately longer time, along with higher CPU processing levels, to sort the table entries.
Note The number of CPU cycles needed to respond to a request for the entire routing table depends on the size of the table (more routes require more CPU cycles). Therefore, even if your router does not currently exhibit CPU spikes, it might begin to do so as the size of the routing table increases.
To the CPU scheduler, SNMP is a low-priority process. This means that the CPU processes non-SNMP requests before it processes SNMP requests. Therefore, any CPU spikes that might occur during SNMP route polling should not affect router performance.
To avoid the performance problems that can occur when SNMP is used to retrieve the routing table or the ARP table, configure the router as described in either of the following sections:
For additional information about controlling SNMP traffic, see the application note, IP Simple Network Management Protocol (SNMP) Causes High CPU Utilization, at the following URL:
http://www.cisco.com/en/US/tech/tk648/tk362/technologies_tech_note09186a00800948e6.shtml
For information about other causes of high CPU usage, see the Cisco Technical Support document at the following URL:
http://www.cisco.com/en/US/products/hw/routers/ps133/products_tech_note09186a00800a70f2.shtml
Enabling CEF Fast Switching on the Router
To avoid the performance problems that can occur when SNMP GET-NEXT requests are used to retrieve the routing table or the ARP table, enable Cisco Express Forwarding (CEF) fast switching on the router. This is because the router processes SNMP requests differently, depending on whether fast switching is enabled:
- When fast switching is not enabled, the router uses information in the Routing Information Base (RIB) to respond to SNMP requests for the routing table or the ARP table. Entries in the RIB are not sorted by their OID, so the router must first sort these tables by their OID values, resulting in higher CPU usage.
- When fast switching is enabled, the router uses information in the Forwarding Information Base (FIB) to respond to SNMP requests for the routing table or the ARP table. FIB entries are stored in lexicographical order, listed by the router OID. Therefore, the router does not have to sort the routing tables before replying to SNMP requests, improving response time and reducing CPU usage.
Using snmp-server view Commands
Another way to avoid performance issues is to use SNMPv3 views to force the router to prematurely end queries for the route table and to respond instead with a complete message. This blocks requests to retrieve the route table (ipRouteTable) and the ARP table (ipNetToMediaTable), but allows all other requests.
The following command example creates a view named cutdown that blocks requests for the route table and the ARP table, but allows all other requests. Note that you need to substitute your own view name and community strings when you enter these commands on your router.
This configuration prevents the router from returning the IP route table or the ARP table as part of an SNMP request. This prevents SNMP network discoveries from creating CPU spikes on the router, but it also removes a degree of manageability from the router.
Background Synchronization
In earlier Cisco IOS Releases, SNMP queries sent to the Cisco CMTS were handled using the interprocess communication (IPC). The Cisco CMTS router would send an IPC request to fetch the data between the line card and the route processor (RP). This resulted in an increase in the SNMP response time.
To improve SNMP perfromance, Cisco IOS Release 12.2(33)SCG introduces the background synchronization feature that synchronizes the SNMP MIB information between the line card and the RP. When SNMP queries are sent to the Cisco CMTS routers, the Cisco CMTS router retrieves the data from the route processor. IPC is not used to retrieve the information, thus improving SNMP performance.
The following SNMP MIB objects are synchronized during background synchronization.
Using SNMP MIBs in DOCSIS 3.0 Downstream Solution
Cisco IOS Release 12.3(22)SCC and later releases support several MIBs on the Cisco uBR10012 router, Cisco shared port adaptor (SPA), and Cisco SPA interface processors (SIPs) for DOCSIS 3.0 Downstream Solution.
The following MIBs are supported in Cisco IOS Release 12.3(21)BC and later for the Cisco uBR10012 router and SIPs:
The following MIBs are supported in Cisco IOS Release 12.3(21)BC and later for the Cisco uBR10012 router and the Wideband SPA:
Cisco IOS Release 12.3(23)BC introduced support for DOCSIS 3.0 Downstream Solution on the Cisco uBR10012 router and Cisco SIP and SPA. The following MIBs are introduced or enhanced further in Cisco IOS Release 12.3(23)BC for DOCSIS 3.0 Downstream Solution on the Cisco CMTS:
- CISCO-CABLE-SPECTRUM-MIB
- CISCO-CABLE-WIDEBAND-MIB
- CISCO-DOCS-EXT-MIB
- DOCS-DSG-IF-MIB
- DOCS-IF-MIB
- DTI-MIB
- DOCS-BPI-PLUS-MIB
- DOCS-CABLE-DEVICE-MIB
- DOCS-CABLE-DEVICE-TRAP-MIB
- ENTITY-MIB
- IF-MIB
Using the Cisco MIB Locator
To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use the Cisco MIB Locator found at the following URL:
http://tools.cisco.com/ITDIT/MIBS/servlet/index
To access Cisco MIB Locator, you must have an account on Cisco.com. If you have forgotten or lost your account information, send a blank e-mail to cco-locksmith@cisco.com. An automatic check verifies that your e-mail address is registered with Cisco.com. If the check is successful, account details with a new random password is e-mailed to you. Qualified users can establish an account on Cisco.com by following the directions found at the following URL:
Additional References
Additional information is available in these separate documents on Cisco.com:
http://www.cisco.com/en/US/docs/cable/cmts/wideband/solution/guide/release_1.0/wb_solu.html
http://www.cisco.com/en/US/docs/interfaces_modules/shared_port_adapters/install_upgrade/uBR10012/b_10k_sip_spa_hig.html
http://www.cisco.com/en/US/docs/interfaces_modules/shared_port_adapters/configuration/ubr10012/12.3_23_bc/sipsp_d3.html