Troubleshooting the Software Configuration

This chapter describes how to identify and resolve software problems related to the Cisco IOS software on the switch. Depending on the nature of the problem, you can use the command-line interface (CLI), Device Manager, or Network Assistant to identify and solve problems.

Additional troubleshooting information, such as LED descriptions, is provided in the hardware installation guide.

Information About Troubleshooting the Software Configuration

Software Failure on a Switch

Switch software can be corrupted during an upgrade by downloading the incorrect file to the switch, and by deleting the image file. In all of these cases, there is no connectivity.Follow the steps described in the Recovering from a Software Failure section to recover from a software failure.

Lost or Forgotten Password on a Device

The default configuration for the device allows an end user with physical access to the device to recover from a lost password by interrupting the boot process during power-on and by entering a new password. These recovery procedures require that you have physical access to the device.


Note


On these devices, a system administrator can disable some of the functionality of this feature by allowing an end user to reset a password only by agreeing to return to the default configuration. If you are an end user trying to reset a password when password recovery has been disabled, a status message reminds you to return to the default configuration during the recovery process.



Note


You cannot recover encryption password key, when Cisco WLC configuration is copied from one Cisco WLC to another (in case of an RMA).


Ping

The device supports IP ping, which you can use to test connectivity to remote hosts. Ping sends an echo request packet to an address and waits for a reply. Ping returns one of these responses:

  • Normal response—The normal response (hostname is alive) occurs in 1 to 10 seconds, depending on network traffic.

  • Destination does not respond—If the host does not respond, a no-answer message is returned.

  • Unknown host—If the host does not exist, an unknown host message is returned.

  • Destination unreachable—If the default gateway cannot reach the specified network, a destination-unreachable message is returned.

  • Network or host unreachable—If there is no entry in the route table for the host or network, a network or host unreachable message is returned.

Refere the section Executing Ping to understand how ping works.

Layer 2 Traceroute

The Layer 2 traceroute feature allows the switch to identify the physical path that a packet takes from a source device to a destination device. Layer 2 traceroute supports only unicast source and destination MAC addresses. Traceroute finds the path by using the MAC address tables of the devices in the path. When the Device detects a device in the path that does not support Layer 2 traceroute, the Device continues to send Layer 2 trace queries and lets them time out.

The Device can only identify the path from the source device to the destination device. It cannot identify the path that a packet takes from source host to the source device or from the destination device to the destination host.

Layer 2 Traceroute Guidelines

  • Cisco Discovery Protocol (CDP) must be enabled on all the devices in the network. For Layer 2 traceroute to function properly, do not disable CDP.

    If any devices in the physical path are transparent to CDP, the switch cannot identify the path through these devices.

  • A device is reachable from another device when you can test connectivity by using the ping privileged EXEC command. All devices in the physical path must be reachable from each other.

  • The maximum number of hops identified in the path is ten.

  • You can enter the traceroute mac or the traceroute mac ip privileged EXEC command on a device that is not in the physical path from the source device to the destination device. All devices in the path must be reachable from this switch.

  • The traceroute mac command output shows the Layer 2 path only when the specified source and destination MAC addresses belong to the same VLAN. If you specify source and destination MAC addresses that belong to different VLANs, the Layer 2 path is not identified, and an error message appears.

  • If you specify a multicast source or destination MAC address, the path is not identified, and an error message appears.

  • If the source or destination MAC address belongs to multiple VLANs, you must specify the VLAN to which both the source and destination MAC addresses belong. If the VLAN is not specified, the path is not identified, and an error message appears.

  • The traceroute mac ip command output shows the Layer 2 path when the specified source and destination IP addresses belong to the same subnet. When you specify the IP addresses, the device uses the Address Resolution Protocol (ARP) to associate the IP addresses with the corresponding MAC addresses and the VLAN IDs.

    • If an ARP entry exists for the specified IP address, the device uses the associated MAC address and identifies the physical path.

    • If an ARP entry does not exist, the device sends an ARP query and tries to resolve the IP address. If the IP address is not resolved, the path is not identified, and an error message appears.

  • When multiple devices are attached to one port through hubs (for example, multiple CDP neighbors are detected on a port), the Layer 2 traceroute feature is not supported. When more than one CDP neighbor is detected on a port, the Layer 2 path is not identified, and an error message appears.

  • This feature is not supported in Token Ring VLANs.

  • Layer 2 traceroute opens a listening socket on the User Datagram Protocol (UDP) port 2228 that can be accessed remotely with any IPv4 address, and does not require any authentication. This UDP socket allows to read VLAN information, links, presence of particular MAC addresses, and CDP neighbor information, from the device. This information can be used to eventually build a complete picture of the Layer 2 network topology.

  • Layer 2 traceroute is enabled by default and can be disabled by running the no l2 traceroute command in global configuration mode. To re-enable Layer 2 traceroute, use the l2 traceroute command in global configuration mode.

IP Traceroute

You can use IP traceroute to identify the path that packets take through the network on a hop-by-hop basis. The command output displays all network layer (Layer 3) devices, such as routers, that the traffic passes through on the way to the destination.

Your Device can participate as the source or destination of the traceroute privileged EXEC command and might or might not appear as a hop in the traceroute command output. If the Device is the destination of the traceroute, it is displayed as the final destination in the traceroute output. Intermediate devices do not show up in the traceroute output if they are only bridging the packet from one port to another within the same VLAN. However, if the intermediate Device is a multilayer Device that is routing a particular packet, this device shows up as a hop in the traceroute output.

The traceroute privileged EXEC command uses the Time To Live (TTL) field in the IP header to cause routers and servers to generate specific return messages. Traceroute starts by sending a User Datagram Protocol (UDP) datagram to the destination host with the TTL field set to 1. If a router finds a TTL value of 1 or 0, it drops the datagram and sends an Internet Control Message Protocol (ICMP) time-to-live-exceeded message to the sender. Traceroute finds the address of the first hop by examining the source address field of the ICMP time-to-live-exceeded message.

To identify the next hop, traceroute sends a UDP packet with a TTL value of 2. The first router decrements the TTL field by 1 and sends the datagram to the next router. The second router sees a TTL value of 1, discards the datagram, and returns the time-to-live-exceeded message to the source. This process continues until the TTL is incremented to a value large enough for the datagram to reach the destination host (or until the maximum TTL is reached).

To learn when a datagram reaches its destination, traceroute sets the UDP destination port number in the datagram to a very large value that the destination host is unlikely to be using. When a host receives a datagram destined to itself containing a destination port number that is unused locally, it sends an ICMP port-unreachable error to the source. Because all errors except port-unreachable errors come from intermediate hops, the receipt of a port-unreachable error means that this message was sent by the destination port.

Go to Example: Performing a Traceroute to an IP Host to see an example of IP traceroute process.

Time Domain Reflector Guidelines

You can use the Time Domain Reflector (TDR) feature to diagnose and resolve cabling problems. When running TDR, a local device sends a signal through a cable and compares the reflected signal to the initial signal.

TDR can detect these cabling problems:
  • Open, broken, or cut twisted-pair wires—The wires are not connected to the wires from the remote device.

  • Shorted twisted-pair wires—The wires are touching each other or the wires from the remote device. For example, a shorted twisted pair can occur if one wire of the twisted pair is soldered to the other wire.

    If one of the twisted-pair wires is open, TDR can find the length at which the wire is open.

Use TDR to diagnose and resolve cabling problems in these situations:

  • Replacing a device.

  • Setting up a wiring closet

  • Troubleshooting a connection between two devices when a link cannot be established or when it is not operating properly

When you run TDR, the device reports accurate information in these situations:

  • The cable for the gigabit link is a solid-core cable.

  • The open-ended cable is not terminated.

When you run TDR, the device does not report accurate information in these situations:

  • The cable for the gigabit link is a twisted-pair cable or is in series with a solid-core cable.

  • The link is a 10-megabit or a 100-megabit link.

  • The cable is a stranded cable.

  • The link partner is a Cisco IP Phone.

  • The link partner is not IEEE 802.3 compliant.

Go to Running TDR and Displaying the Results to know the TDR commands.

Debug Commands


Caution


Because debugging output is assigned high priority in the CPU process, it can render the system unusable. For this reason, use debug commands only to troubleshoot specific problems or during troubleshooting sessions with Cisco technical support staff. It is best to use debug commands during periods of lower network traffic and fewer users. Debugging during these periods decreases the likelihood that increased debug command processing overhead will affect system use.


All debug commands are entered in privileged EXEC mode, and most debug commands take no arguments.

System Report

System reports or crashinfo files save information that helps Cisco technical support representatives to debug problems that caused the Cisco IOS image to fail (crash). It is necessary to quickly and reliably collect critical crash information with high fidelity and integrity. Further, it is necessary to collect this information and bundle it in a way that it can be associated or identified with a specific crash occurrence.

The system does not generate reports in case of a reload.

During a process crash, the following is collected locally from the switch:

  1. Full process core

  2. Tracelogs

  3. IOS syslogs (not guaranteed in case of non-active crashes)

  4. System process information

  5. Bootup logs

  6. Reload logs

  7. Certain types of /proc information

This information is stored in separate files which are then archived and compressed into one bundle. This makes it convenient to get a crash snapshot in one place, and can be then moved off the box for analysis. This report is generated before the switch goes down to rommon/bootloader.

Except for the full core and tracelogs, everything else is a text file.

Use the request platform software process core fed active command to generate the core dump.

Switch# request platform software process core fed active
Process : fed main event (28155) encountered fatal signal 6
Process : fed main event stack :

SUCCESS: Core file generated.

h2-macallan1#dir bootflash:core
Directory of bootflash:/core/

178483  -rw-                1  May 23 2017 06:05:17 +00:00  .callhome
194710  drwx             4096  Aug 16 2017 19:42:33 +00:00  modules
178494  -rw-         10829893  Aug 23 2017 09:46:23 +00:00  switch_RP_0_fed_28155_20170823-094616-UTC.core.gz

Crashinfo Files

By default the system report file will be generated and saved into the /crashinfo directory. Ifit cannot be saved to the crashinfo partition for lack of space, then it will be saved to the /flash directory.

To display the files, enter the dir crashinfo: command. The following is sample output of a crashinfo directory:

System reports are located in the crashinfo directory in the following format:

system-report_[switch number]_[date]-[timestamp]-UTC.gz

After a switch crashes, check for a system report file. The name of the most recently generated system report file is stored in the last_systemreport file under the crashinfo directory. The system report and crashinfo files assist TAC while troubleshooting the issue.

The system report generated can be further copied using TFTP, HTTP and few other options.

Switch#copy crashinfo: ?
crashinfo:     Copy to crashinfo: file system 
flash:         Copy to flash: file system
ftp:           Copy to ftp: file system 
http:          Copy to http: file system 
https:         Copy to https: file system 
null:          Copy to null: file system
nvram:         Copy to nvram: file system
rcp:           Copy to rcp: file system
running-config Update (merge with) current system configuration
scp:           Copy to scp: file system
startup-config Copy to startup configuration
syslog:        Copy to syslog: file system
system:        Copy to system: file system
tftp:          Copy to tftp: file system
tmpsys:        Copy to tmpsys: file system

The general syntax for copying onto TFTP server is as follows:

Switch#copy crashinfo: tftp:
Source filename [system-report_1_20150909-092728-UTC.gz]?
Address or name of remote host []? 1.1.1.1
Destination filename [system-report_1_20150909-092728-UTC.gz]?

The tracelogs can be collected by issuing a trace archive command. This command provides time period options. The command syntax is as follows:

Switch#request platform software trace archive ?
last     Archive trace files of last x days
target   Location and name for the archive file

The tracelogs stored in crashinfo: or flash: directory from within the last 3650 days can be collected.

Switch# request platform software trace archive last ?
<1-3650> Number of days (1-3650)
Switch#request platform software trace archive last 3650 days target ?
crashinfo: Archive file name and location
flash:     Archive file name and location

Note


It is important to clear the system reports or trace archives from flash or crashinfo directory once they are copied out, in order to have space available for tracelogs and other purposes.


In a complex network it is difficult to track the origin of a system-report file. This task is made easier if the system-report files are uniquely identifiable. The hostname will be prepended to the system-report file name making the reports uniquely identifiable.

The following example displays system-report files with the hostname prepended:

Switch#dir flash:/core | grep HOSTNAME
40486  -rw-        108268293  Oct 21 2019 16:07:50 -04:00  HOSTNAME-system-report_20191021-200748-UTC.tar.gz
40487  -rw-            17523  Oct 21 2019 16:07:56 -04:00  HOSTNAME-system-report_20191021-200748-UTC-info.txt
40484  -rw-         48360998  Oct 21 2019 16:55:24 -04:00  HOSTNAME-system-report_20191021-205523-UTC.tar.gz
40488  -rw-            14073  Oct 21 2019 16:55:26 -04:00  HOSTNAME-system-report_20191021-205523-UTC-info.txt

Onboard Failure Logging on the Switch

You can use the onboard failure logging (OBFL) feature to collect information about the device. The information includes uptime, temperature, and voltage information and helps Cisco technical support representatives to troubleshoot device problems. We recommend that you keep OBFL enabled and do not erase the data stored in the flash memory.

By default, OBFL is enabled. It collects information about the device and small form-factor pluggable (SFP) modules. The device stores this information in the flash memory:

  • CLI commands—Record of the OBFL CLI commands that are entered on a standalone device.

  • Message—Record of the hardware-related system messages generated by a standalone device .

  • Temperature—Temperature of a standalone deicev .

  • Uptime data—Time when a standalone device starts, the reason the device restarts, and the length of time the device has been running since it last restarted.

  • Voltage—System voltages of a standalone device .

You should manually set the system clock or configure it by using Network Time Protocol (NTP).

When the device is running, you can retrieve the OBFL data by using the show logging onboard privileged EXEC commands. If the device fails, contact your Cisco technical support representative to find out how to retrieve the data.

When an OBFL-enabled device is restarted, there is a 10-minute delay before logging of new data begins.

Possible Symptoms of High CPU Utilization

Excessive CPU utilization might result in these symptoms, but the symptoms might also result from other causes, some of which are the following:

  • Spanning tree topology changes

  • EtherChannel links brought down due to loss of communication

  • Failure to respond to management requests (ICMP ping, SNMP timeouts, slow Telnet or SSH sessions)

  • UDLD flapping

  • IP SLAs failures because of SLAs responses beyond an acceptable threshold

  • DHCP or IEEE 802.1x failures if the switch does not forward or respond to requests

How to Troubleshoot the Software Configuration

Recovering from a Software Failure

Before you begin

This recovery procedure requires that you have physical access to the switch.

This procedure uses boot loader commands and TFTP to recover from a corrupted or incorrect image file.

Procedure


Step 1

From your PC, download the software image file (image.bin ) from Cisco.com.

Step 2

Load the software image to your TFTP server.

Step 3

Connect your PC to the switch Ethernet management port.

Step 4

Power down the switch.

Step 5

Reconnect the power and press Ctrl-C when the device is preparing to autoboot. This brings the device to rommon mode.

Example:

Last reset cause: SoftwareResetTrig
ESS9300 platform with 16777216 Kbytes of main memory

Preparing to autoboot. [Press Ctrl-C to interrupt]  3    (interrupted)
switch: 
switch: 

Step 6

From the bootloader prompt, ensure that you can ping your TFTP server.

  1. Set switch IP address: set IP_ADDRESS ip_address

    Example:

    switch: set IP_ADDRESS 192.168.2.123
    
    
  2. Set switch subnet mask: set IP_SUBNET_MASK subnet_mask

    Example:

    switch: set IP_SUBNET_MASK 255.255.255.0
    
    
  3. Set default gateway: set DEFAULT_GATEWAY ip_address

    Example:

    switch: set DEFAULT_ROUTER 192.168.2.1
    
    
  4. Verify that you can ping the TFTP server

Example:

switch: ping 192.168.2.15 
ping 192.168.2.1 with 32 bytes of data...
Host 192.168.2.1 is alive.
switch:

Step 7

Verify that you have a recovery image in your recovery partition.

Example:


switch: dir <partition>:

Size            Attributes      Name
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
21680202        -rw-            ess9300-recovery.SSA.bin
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Step 8

From the bootloader prompt, initiate the boot command that assists you in recovering the software image on your switch.

WARNING: The emergency install command will erase your entire boot flash!

Alternatively, you can copy the image from TFTP to local flash through Telnet or Management port and then boot the device from local flash.


Preventing Autonegotiation Mismatches

The IEEE 802.3ab autonegotiation protocol manages the device settings for speed (10 Mb/s, 100 Mb/s, and 1000 Mb/s, excluding SFP module ports) and duplex (half or full). There are situations when this protocol can incorrectly align these settings, reducing performance. A mismatch occurs under these circumstances:

  • A manually set speed or duplex parameter is different from the manually set speed or duplex parameter on the connected port.

  • A port is set to autonegotiate, and the connected port is set to full duplex with no autonegotiation.

To maximize the device performance and ensure a link, follow one of these guidelines when changing the settings for duplex and speed:

  • Let both ports autonegotiate both speed and duplex.

  • Manually set the speed and duplex parameters for the ports on both ends of the connection.


Note


If a remote device does not autonegotiate, configure the duplex settings on the two ports to match. The speed parameter can adjust itself even if the connected port does not autonegotiate.


Troubleshooting SFP Module Security and Identification

Cisco small form-factor pluggable (SFP) modules have a serial EEPROM that contains the module serial number, the vendor name and ID, a unique security code, and cyclic redundancy check (CRC). When an SFP module is inserted in the device, the device software reads the EEPROM to verify the serial number, vendor name and vendor ID, and recompute the security code and CRC. If the serial number, the vendor name or vendor ID, the security code, or CRC is invalid, the software generates a security error message and places the interface in an error-disabled state.

If you are using a non-Cisco SFP module, remove the SFP module from the device, and replace it with a Cisco module. After inserting a Cisco SFP module, use the errdisable recovery cause gbic-invalid global configuration command to verify the port status, and enter a time interval for recovering from the error-disabled state. After the elapsed interval, the device brings the interface out of the error-disabled state and retries the operation. For more information about the errdisable recovery command, see the command reference for this release.

If the module is identified as a Cisco SFP module, but the system is unable to read vendor-data information to verify its accuracy, an SFP module error message is generated. In this case, you should remove and reinsert the SFP module. If it continues to fail, the SFP module might be defective.

Monitoring SFP Module Status

You can check the physical or operational status of an SFP module by using the show interfaces transceiver privileged EXEC command. This command shows the operational status, such as the temperature and the current for an SFP module on a specific interface and the alarm status. You can also use the command to check the speed and the duplex settings on an SFP module. For more information, see the show interfaces transceiver command in the command reference for this release.

Executing Ping

If you attempt to ping a host in a different IP subnetwork, you must define a static route to the network or have IP routing configured to route between those subnets.

IP routing is disabled by default on all devices.


Note


Though other protocol keywords are available with the ping command, they are not supported in this release.

Use this command to ping another device on the network from the device:

Command

Purpose

ping ip host | address


Device# ping 192.168.52.3

Pings a remote host through IP or by supplying the hostname or network address.

Monitoring Temperature

The Device monitors the temperature conditions and uses the temperature information to control the fans.

Monitoring the Physical Path

You can monitor the physical path that a packet takes from a source device to a destination device by using one of these privileged EXEC commands:

Table 1. Monitoring the Physical Path
Command Purpose

tracetroute mac [interface interface-id] {source-mac-address} [interface interface-id] {destination-mac-address} [vlan vlan-id] [detail]

Displays the Layer 2 path taken by the packets from the specified source MAC address to the specified destination MAC address.

tracetroute mac ip {source-ip-address | source-hostname}{destination-ip-address | destination-hostname} [detail]

Displays the Layer 2 path taken by the packets from the specified source IP address or hostname to the specified destination IP address or hostname.

Executing IP Traceroute


Note


Though other protocol keywords are available with the traceroute privileged EXEC command, they are not supported in this release.


Command

Purpose

traceroute ip host

Device# traceroute ip 192.51.100.1

Traces the path that packets take through the network.

Running TDR and Displaying the Results

To run TDR, enter the test cable-diagnostics tdr interface interface-id privileged EXEC command.

To display the results, enter the show cable-diagnostics tdr interface interface-id privileged EXEC command.

Redirecting Debug and Error Message Output

By default, the network server sends the output from debug commands and system error messages to the console. If you use this default, you can use a virtual terminal connection to monitor debug output instead of connecting to the console port .

Possible destinations include the console, virtual terminals, internal buffer, and UNIX hosts running a syslog server. The syslog format is compatible with 4.3 Berkeley Standard Distribution (BSD) UNIX and its derivatives.


Note


Be aware that the debugging destination you use affects system overhead. When you log messages to the console, very high overhead occurs. When you log messages to a virtual terminal, less overhead occurs. Logging messages to a syslog server produces even less, and logging to an internal buffer produces the least overhead of any method.

For more information about system message logging, see Configuring System Message Logging.


Using the show platform Command

The output from the show platform privileged EXEC command provides some useful information about the forwarding results if a packet entering an interface is sent through the system. Depending upon the parameters entered about the packet, the output provides lookup table results and port maps used to calculate forwarding destinations, bitmaps, and egress information.

Most of the information in the output from the command is useful mainly for technical support personnel, who have access to detailed information about the device application-specific integrated circuits (ASICs). However, packet forwarding information can also be helpful in troubleshooting.

Using the show debug command

The show debug command is entered in privileged EXEC mode. This command displays all debug options available on the switch.

To view all conditional debug options run the command show debug condition The commands can be listed by selecting either a condition identifier <1-1000> or all conditions.

To disable debugging, use the no debug all command.


Caution


Because debugging output is assigned high priority in the CPU process, it can render the system unusable. For this reason, use debug commands only to troubleshoot specific problems or during troubleshooting sessions with Cisco technical support staff. Moreover, it is best to use debug commands during periods of lower network traffic and fewer users. Debugging during these periods decreases the likelihood that increased debug command processing overhead will affect system use.


Configuring OBFL


Caution


We recommend that you do not disable OBFL and that you do not remove the data stored in the flash memory.


Troubleshooting Packet Loss

If your system exhibits partial or full loss of network connectivity or packet loss, perform basic troubleshooting procedures to eliminate the common causes. The common causes include:

  • Bad cabling

  • A bad port

  • Speed and Duplex mismatch

  • Network interface card (NIC) issues

  1. If you troubleshoot these common reasons and you are not able to narrow down the problem, enter the show platform hardware iomd 1/0 data-path command to check the packet loss. If there are symptoms of packet loss, enter the reload command to soft reset the switch.

  2. If the reload results in supervisor module diagnostic failure, power cycle the switch.

  3. Enter the Generic On Line Diagnostics (GOLD) show diagnostic bootup command to determine if diagnostics fail.

    If diagnostics fail again, the problem is most likely the hardware.

    Contact Cisco Technical Support for further assistance.

  4. If the supervisor module passes the diagnostic tests without any failure after the power cycle in Step 2, perform these steps:

    1. Collect the output from the show tech-support command.

    2. Remove all power supplies from the box, and collect the serial numbers, Cisco part number, and manufacturer of the power supplies.

    3. Contact Cisco Technical Support with the information that you collected.

Troubleshooting Interface Problems

If you see an error mentioned in the output of the command, show interface command, the reason could be:

  • A physical layer problem, such as a faulty cable or NIC

  • A configuration problem, such as a speed and duplex mismatch

  • A performance problem, such as an oversubscription.

To understand and troubleshoot thses problems, refer the Troubleshooting Switch Port and Interface Problems at http://www.cisco.com/en/US/products/hw/switches/ps708/products_tech_note09186a008015bfd6.shtml

Troubleshooting when a Workstation Is Unable to Log In to the Network

If you observe that a workstation is unable to log into the network during startup or unable to obtain the DHCP address when you have powered up a client machine or rebooted, an initial connectivity delay that the switch introduced could be the problem. To verify this, check the following:

  • Microsoft network client displays "No Domain Controllers Available".

  • DHCP reports "No DHCP Servers Available".

  • A Novell Internetwork Packet Exchange (IPX) network workstation does not have the Novell login screen upon bootup.

  • An AppleTalk network client displays, "Access to your AppleTalk network has been interrupted. In order to reestablish your connection, open and close the AppleTalk control panel." The AppleTalk client chooser application can either fail to display a zone list or display an incomplete zone list.

  • IBM Network stations can have one of these messages:

    • NSB83619—Address resolution failed

    • NSB83589—Failed to boot after 1 attempt

    • NSB70519—Failed to connect to a server

The reason for these symptoms can be an interface delay that either Spanning Tree Protocol (STP), EtherChannel, trunking, or an autonegotiation delay causes.

Verifying Troubleshooting of the Software Configuration

Displaying OBFL Information

Example: Verifying the Problem and Cause for High CPU Utilization

To determine if high CPU utilization is a problem, enter the show processes cpu sorted privileged EXEC command. Note the underlined information in the first line of the output example.


Device# show processes cpu sorted
CPU utilization for five seconds: 8%/0%; one minute: 7%; five minutes: 8%
PID Runtime(ms) Invoked uSecs 5Sec 1Min 5Min TTY Process 
309 42289103 752750 56180 1.75% 1.20% 1.22% 0 RIP Timers 
140 8820183 4942081 1784 0.63% 0.37% 0.30% 0 HRPC qos request 
100 3427318 16150534 212 0.47% 0.14% 0.11% 0 HRPC pm-counters 
192 3093252 14081112 219 0.31% 0.14% 0.11% 0 Spanning Tree 
143 8 37 216 0.15% 0.01% 0.00% 0 Exec 
...
<output truncated>

This example shows normal CPU utilization. The output shows that utilization for the last 5 seconds is 8%/0%, which has this meaning:

  • The total CPU utilization is 8 percent, including both time running Cisco IOS processes and time spent handling interrupts.

  • The time spent handling interrupts is zero percent.

Table 2. Troubleshooting CPU Utilization Problems

Type of Problem

Cause

Corrective Action

Interrupt percentage value is almost as high as total CPU utilization value.

The CPU is receiving too many packets from the network.

Determine the source of the network packet. Stop the flow, or change the switch configuration. See the section on “Analyzing Network Traffic.”

Total CPU utilization is greater than 50% with minimal time spent on interrupts.

One or more Cisco IOS process is consuming too much CPU time. This is usually triggered by an event that activated the process.

Identify the unusual event, and troubleshoot the root cause. See the section on “Debugging Active Processes.”

Configuration Examples for Troubleshooting Software

Example: Pinging an IP Host

This example shows how to ping an IP host:


Device# ping 192.168.52.3

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echoes to 192.168.52.3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
Device#
Table 3. Ping Output Display Characters

Character

Description

!

Each exclamation point means receipt of a reply.

.

Each period means the network server timed out while waiting for a reply.

U

A destination unreachable error PDU was received.

C

A congestion experienced packet was received.

I

User interrupted test.

?

Unknown packet type.

&

Packet lifetime exceeded.

To end a ping session, enter the escape sequence (Ctrl-^ X by default). Simultaneously press and release the Ctrl, Shift, and 6 keys and then press the X key.

Example: Performing a Traceroute to an IP Host

This example shows how to perform a traceroute to an IP host:


Device# traceroute ip 192.168.2.10

Type escape sequence to abort.
Tracing the route to 192.168.2.10

  1 192.168.2.1 0 msec 0 msec 4 msec
  2 192.168.2.203 12 msec 8 msec 0 msec
  3 192.168.2.100 4 msec 0 msec 0 msec
  4 192.168.2.10 0 msec 4 msec 0 msec
   

The display shows the hop count, the IP address of the router, and the round-trip time in milliseconds for each of the three probes that are sent.

Table 4. Traceroute Output Display Characters

Character

Description

*

The probe timed out.

?

Unknown packet type.

A

Administratively unreachable. Usually, this output means that an access list is blocking traffic.

H

Host unreachable.

N

Network unreachable.

P

Protocol unreachable.

Q

Source quench.

U

Port unreachable.

To end a trace in progress, enter the escape sequence (Ctrl-^ X by default). Simultaneously press and release the Ctrl, Shift, and 6 keys and then press the X key.