Inhalt

Einführung

Voraussetzungen

Anforderungen

Verwendete Komponenten

Konventionen

Hintergrundinformationen

Fehlerbehebung bei häufigen Problemen mit hoher CPU-Auslastung

Hohe CPU aufgrund eines Sturms von IGMP-Leave-Nachrichten

Hohe CPU aufgrund eines GRE-Tunnels

Hohe CPU bei Konfigurationsänderungen

Hohe CPU aufgrund übermäßiger ARP-Anfragen

Hohe CPU aufgrund des IP-SNMP-Prozesses

Hohe CPU aufgrund von SDM-Vorlage

Hohe CPU durch richtlinienbasiertes Routing

Hohe CPU aufgrund übermäßiger ICMP-Umleitungen

Zugehörige Informationen

Einführung

In diesem Dokument werden die Ursachen für die hohe CPU-Auslastung der Cisco Catalyst Switches der Serie 3750 beschrieben. Ähnlich wie bei Cisco Routern verwenden Switches den Befehl show process cpu, um die CPU-Auslastung anzuzeigen, um die Ursachen für die hohe CPU-Auslastung zu ermitteln. Aufgrund der Unterschiede in der Architektur und den Weiterleitungsmechanismen zwischen Cisco Routern und Switches unterscheidet sich die typische Ausgabe des Befehls show process cpu erheblich. In diesem Dokument werden auch einige häufig auftretende Symptome aufgeführt, die zu einer hohen CPU-Auslastung bei den Catalyst Switches der Serie 3750 führen.

Voraussetzungen

Anforderungen

Für dieses Dokument bestehen keine speziellen Anforderungen.

Verwendete Komponenten

Die Informationen in diesem Dokument basieren auf Catalyst Switches der Serie 3750.

Die Informationen in diesem Dokument wurden von den Geräten in einer bestimmten Laborumgebung erstellt. Alle in diesem Dokument verwendeten Geräte haben mit einer leeren (Standard-)Konfiguration begonnen. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die potenziellen Auswirkungen eines Befehls verstehen.

Konventionen

Weitere Informationen zu Dokumentkonventionen finden Sie unter Cisco Technical Tips Conventions (Technische Tipps zu Konventionen von Cisco).

Hintergrundinformationen

Bevor Sie sich die Architektur zur Verarbeitung von CPU-Paketen ansehen und eine Fehlerbehebung für eine hohe CPU-Auslastung durchführen, müssen Sie die verschiedenen Möglichkeiten verstehen, wie hardwarebasierte Weiterleitungs-Switches und Cisco IOS® Software-basierte Router die CPU verwenden. Das allgemeine Missverständnis besteht darin, dass eine hohe CPU-Auslastung auf die Erschöpfung der Ressourcen auf einem Gerät und die Gefahr eines Absturzes hinweist. Ein Kapazitätsproblem ist eines der Symptome einer hohen CPU-Auslastung bei Cisco IOS-Routern. Ein Kapazitätsproblem ist jedoch fast nie ein Symptom einer hohen CPU-Auslastung bei hardwarebasierten Weiterleitungs-Switches.

Der erste Schritt zur Fehlerbehebung bei hoher CPU-Auslastung besteht darin, die Versionshinweise der Cisco IOS-Version Ihres Catalyst 3750-Switches auf mögliche bekannte IOS-Fehler zu überprüfen. Auf diese Weise können Sie den IOS-Fehler aus den Schritten zur Fehlerbehebung entfernen. Eine Liste der Versionshinweise für Catalyst Switches der Serie 3750 finden Sie in den Versionshinweisen der Cisco Catalyst Switches der Serie 3750.

Fehlerbehebung bei häufigen Problemen mit hoher CPU-Auslastung

In diesem Abschnitt werden einige der häufigsten Probleme bei der CPU-Auslastung des Catalyst 3750-Switches behandelt.

Hohe CPU aufgrund eines Sturms von IGMP-Leave-Nachrichten

Einer der häufigen Gründe für eine hohe CPU-Auslastung besteht darin, dass die Catalyst 3750-CPU mit dem Verarbeitungssturm des IGMP (Internet Group Management Protocol) beschäftigt ist, der Nachrichten hinterlässt. Wenn ein Stack von Catalyst 3750-Switches, auf dem die Cisco IOS Software Version 12.1(14)EA1a ausgeführt wird, mit einem anderen Switch verbunden ist, z. B. einem Cat6500, der CatOS ausführt, der MAC-basierte IGMP-Abfragen mit IP-Optionen generiert, wird im IGMPSnooping-Prozess eine hohe CPU-Nutzung festgestellt. ... Dies ist das Ergebnis der MAC-basierten Abfragepakete, die im Stack schleifen. Sie sehen auch eine hohe CPU mit dem HRPC hl2mm Request Prozess. Wenn Sie für den Catalyst 3750-Stack mit der Cisco IOS-Softwareversion 12.1(14)EA1a EtherChannel konfiguriert haben, kann ein Sturm von IGMP-Ablassmeldungen erstellt werden.

Der Catalyst 3750 erhält viele IGMP-Anfragen. Dadurch wird der IGMP-Abfragezähler um Hunderte pro Sekunde angehoben. Dies führt zu einer hohen CPU im Catalyst 3750-Switch. Weitere Informationen finden Sie unter Cisco Bug ID CSCeg55298 (nur registrierte Kunden). Der Fehler wurde in der Cisco IOS Software-Version 12.1(14)EA1a entdeckt und ist in den Cisco IOS Software-Versionen 12.2(25)SEA und höher behoben. Die permanente Lösung besteht darin, ein Upgrade auf die neueste Cisco IOS-Version durchzuführen. Die vorübergehende Lösung besteht darin, IGMP-Snooping im Catalyst 3750-Stack zu deaktivieren oder eine MAC-basierte Abfrage auf dem Switch zu deaktivieren, der mit dem 3750-Stack verbunden ist.

Dies ist eine Beispielausgabe des Befehls show ip traffic, der IP-Pakete mit schlechten Optionen und Warnungen zeigt, die sich schnell erhöhen:

Switch#show ip traffic

Rcvd: 48195018 total, 25628739 local destination

0 format errors, 0 checksum errors, 10231692 bad hop count

0 unknown protocol, 9310320 not a gateway

0 security failures, 10231 bad options, 2640539 with options

Opts: 2640493 end, 206 nop, 0 basic security, 2640523 loose source route

0 timestamp, 0 extended security, 16 record route

0 stream ID, 0 strict source route, 10231 alert, 0 cipso, 0 ump

0 other

Frags: 16 reassembled, 0 timeouts, 0 couldn't reassemble

32 fragmented, 0 couldn't fragment

Bcast: 308 received, 0 sent

Mcast: 4221007 received, 4048770 sent

Sent: 25342014 generated, 20710669 forwarded

Drop: 617267 encapsulation failed, 0 unresolved, 0 no adjacency

0 no route, 0 unicast RPF, 0 forced drop

0 options denied, 0 source IP address zero

!--- Output suppressed.

Der Befehl show process cpu zeigt Informationen über die aktiven Prozesse im Switch und die entsprechenden CPU-Nutzungsstatistiken an. Dies ist eine Beispielausgabe des Befehls show process cpu, wenn die CPU-Auslastung normal ist:

switch#show processes cpu

CPU utilization for five seconds: 8%/4%; one minute: 6%; five minutes: 5%

PID  Runtime(ms)  Invoked  uSecs   5Sec  1Min     5Min  TTY   Process

1      384       32789     11  0.00%  0.00%   0.00%   0    Load Meter

2     2752        1179   2334  0.73%  1.06%   0.29%   0    Exec

3   318592        5273  60419  0.00%  0.15%   0.17%   0    Check heaps

4        4           1   4000  0.00%  0.00%   0.00%   0    Pool Manager

5     6472        6568    985  0.00%  0.00%   0.00%   0    ARP Input

6    10892        9461   1151  0.00%  0.00%   0.00%   0    IGMPSN

!--- CPU utilization at normal condition.

7    67388       53244   1265  0.16%  0.04%   0.02%   0    CDP Protocol

8   145520      166455    874  0.40%  0.29%   0.29%   0    IP Background

9     3356        1568   2140  0.08%  0.00%   0.00%   0    BOOTP Server

10       32        5469      5  0.00%  0.00%   0.00%   0    Net Background

11    42256      163623    258  0.16%  0.02%   0.00%   0    Per-Second Jobs

12   189936      163623   1160  0.00%  0.04%   0.05%   0    Net Periodic

13     3248        6351    511  0.00%  0.00%   0.00%   0    Net Input

14      168       32790      5  0.00%  0.00%   0.00%   0    Compute load avgs

15   152408        2731  55806  0.98%  0.12%   0.07%   0    Per-minute Jobs

16        0           1      0  0.00%  0.00%   0.00%   0    HRPC hI2mm reque

!--- Output suppressed.

Dies ist eine Beispielausgabe des Befehls show process cpu, wenn die CPU-Auslastung aufgrund des IGMP-Snooping-Prozesses hoch ist:

switch#show processes cpu

CPU utilization for five seconds: 8%/4%; one minute: 6%; five minutes: 5%

PID  Runtime(ms)  Invoked  uSecs   5Sec  1Min     5Min  TTY   Process

1        384       32789     11  0.00%  0.00%   0.00%   0    Load Meter

2       2752        1179   2334  0.73%  1.06%   0.29%   0    Exec

3     318592        5273  60419  0.00%  0.15%   0.17%   0    Check heaps

4          4           1   4000  0.00%  0.00%   0.00%   0    Pool Manager

5       6472        6568    985  0.00%  0.00%   0.00%   0    ARP Input

6      10892        9461   1151    100    100     100   0    IGMPSN

!--- Due to high CPU utilization.

7      67388       53244   1265  0.16%  0.04%   0.02%   0    CDP Protocol

8     145520      166455    874  0.40%  0.29%   0.29%   0    IP Background

9       3356        1568   2140  0.08%  0.00%   0.00%   0    BOOTP Server

10         32        5469      5  0.00%  0.00%   0.00%   0    Net Background

11      42256      163623    258  0.16%  0.02%   0.00%   0    Per-Second Jobs

12     189936      163623   1160  0.00%  0.04%   0.05%   0    Net Periodic

13       3248        6351    511  0.00%  0.00%   0.00%   0    Net Input

14        168       32790      5  0.00%  0.00%   0.00%   0    Compute load avgs

15     152408        2731  55806  0.98%  0.12%   0.07%   0    Per-minute Jobs

16          0        2874      0    100    100     100   0    HRPC hI2mm reque

!--- Output suppressed.

Hohe CPU aufgrund eines GRE-Tunnels

Der GRE-Tunnel (General Routing Encapsulation) wird von den Cisco Catalyst Switches der Serie 3750 nicht unterstützt. Obwohl diese Funktion mit CLI konfiguriert werden kann, können die Pakete weder durch Hardware noch durch Software geswitcht werden, wodurch die CPU-Auslastung erhöht wird.

Hinweis: Für das Multicast-Routing im Catalyst 3750 werden nur Tunnelschnittstellen des Distance Vector Multicast Routing Protocol (DVMRP) unterstützt. Auch hierfür können Pakete nicht mit Hardware gewechselt werden. Die über diesen Tunnel weitergeleiteten Pakete müssen durch Software gewechselt werden. Die höhere Anzahl an Paketen, die durch diesen Tunnel weitergeleitet werden, erhöht die CPU-Auslastung.

Für dieses Problem gibt es keine Lösung. Dies ist eine Hardware-Einschränkung für die Catalyst Switches der Serie 3750.

Hohe CPU bei Konfigurationsänderungen

Wenn Catalyst Switches der Serie 3750 in einem Stack verbunden sind und an einem Switch Konfigurationsänderungen vorgenommen wurden, wird der Konfigurationsvorgang mit der laufenden Konfiguration gestartet und eine neue Kopie der aktuellen Konfiguration generiert. Anschließend werden alle Switches im Stack übermittelt. Die neue aktuelle Konfiguration ist CPU-intensiv. Daher ist die CPU-Auslastung hoch, wenn ein neuer Konfigurationsprozess erstellt und die neuen Konfigurationen an andere Switches weitergeleitet werden. Diese hohe CPU-Auslastung sollte jedoch nur so lange vorhanden sein, wie es dauert, den Buildkonfigurationsschritt des Befehls show running-configuration auszuführen.

Für dieses Problem ist keine Lösung erforderlich. In diesen Situationen ist die CPU-Auslastung normalerweise hoch.

Dies ist eine Beispielausgabe des Befehls show process cpu, wenn die CPU-Auslastung aufgrund des hulc running-Prozesses hoch ist:

switch#show processes cpu

CPU utilization for five seconds: 63%/0%; one minute: 27%; five minutes: 23%

PID Runtime(ms) Invoked   uSecs   5Sec   1Min   5Min   TTY   Process

1      384      32789      11  0.00%  0.00%   0.00%   0    Load Meter

2     2752       1179    2334  0.73%  1.06%   0.29%   0    Exec

3   318592       5273   60419  0.00%  0.15%   0.17%   0    Check heaps

4        4          1    4000  0.00%  0.00%   0.00%   0    Pool Manager

5     6472       6568     985  0.00%  0.00%   0.00%   0    ARP Input

6    10892       9461    1151  0.00%  0.00%   0.00%   0    IGMPSN

7    67388      53244    1265  0.16%  0.04%   0.02%   0    CDP Protocol

8   145520     166455     874  0.40%  0.29%   0.29%   0    IP Background

9     3356       1568    2140  0.08%  0.00%   0.00%   0    BOOTP Server

10       32       5469       5  0.00%  0.00%   0.00%   0    Net Background

11    42256     163623     258  0.16%  0.02%   0.00%   0    Per-Second Jobs

12   189936     163623    1160  0.00%  0.04%   0.05%   0    Net Periodic

13     3248       6351     511  0.00%  0.00%   0.00%   0    Net Input

14      168      32790       5  0.00%  0.00%   0.00%   0    Compute load avgs

15   152408       2731   55806  0.98%  0.12%   0.07%   0    Per-minute Jobs

16        0          1       0  0.00%  0.00%   0.00%   0    HRPC h12mm reque

17    85964        426  201793 55.72% 12.05%   5.36%   0    hulc running

!--- Output suppressed.

Hohe CPU aufgrund übermäßiger ARP-Anfragen

Eine hohe CPU-Auslastung des Address Resolution Protocol (ARP)-Eingabeprozesses tritt auf, wenn der Router eine übermäßige Anzahl von ARP-Anfragen generieren muss. ARP-Anfragen für dieselbe IP-Adresse sind alle zwei Sekunden auf eine Anfrage beschränkt. Aus diesem Grund muss eine übermäßige Anzahl von ARP-Anfragen für verschiedene IP-Adressen generiert werden. Dies kann auftreten, wenn eine IP-Route konfiguriert wurde und auf eine Broadcast-Schnittstelle zeigt. Ein offensichtliches Beispiel ist eine Standardroute, z. B.:

ip route 0.0.0.0 0.0.0.0 Fastethernet0/0

In diesem Fall generiert der Router eine ARP-Anfrage für jede IP-Adresse, die nicht über spezifischere Routen erreichbar ist. Das bedeutet, dass der Router eine ARP-Anfrage für fast jede Adresse im Internet generiert. Weitere Informationen zur Konfiguration der nächsten Hop-IP-Adresse für statisches Routing finden Sie unter Angeben einer Next-Hop-IP-Adresse für statische Routen.

Alternativ kann eine übermäßige Anzahl von ARP-Anfragen durch einen schädlichen Datenverkehrsstrom verursacht werden, der über lokal angeschlossene Subnetze scannt. Ein Hinweis auf einen solchen Datenstrom ist das Vorhandensein einer sehr hohen Anzahl unvollständiger ARP-Einträge in der ARP-Tabelle. Da eingehende IP-Pakete, die ARP-Anfragen auslösen, verarbeitet werden müssen, entspricht die Fehlerbehebung für dieses Problem im Wesentlichen der Behebung einer hohen CPU-Auslastung im IP Input-Prozess.

Hohe CPU aufgrund des IP-SNMP-Prozesses

In den neuesten Cisco IOS-Versionen für Catalyst 3750 werden SNMP-Anfragen (Simple Network Management Protocol) von der SNMP ENGINE bearbeitet. Aufgrund dieses SNMP ENGINE-Prozesses ist es normal, dass die CPU hoch ist. Der SNMP-Prozess hat eine niedrige Priorität und sollte keine Funktionen auf dem Switch beeinträchtigen.

Weitere Informationen zur durch den SNMP ENGINE-Prozess verursachten hohen CPU-Auslastung finden Sie unter IP Simple Network Management Protocol (SNMP) Causes High CPU Utilization (IP Simple Network Management Protocol).

Hohe CPU aufgrund von SDM-Vorlage

Das Switch Database Management (SDM) auf den Catalyst Switches der Serie 3750 verwaltet die Switching-Informationen für Layer 2 und Layer 3, die im Ternary Content Addressable Memory (TCAM) gespeichert werden. Die SDM-Vorlagen werden verwendet, um Systemressourcen im Switch zu konfigurieren, um die Unterstützung bestimmter Funktionen zu optimieren. Dies hängt davon ab, wie der Switch im Netzwerk verwendet wird. Die SDM-Vorlagen können ausgewählt werden, um eine maximale Systemnutzung für einige Funktionen bereitzustellen, oder um die Ressourcen mithilfe der Standardvorlage auszugleichen. Die Vorlagen priorisieren Systemressourcen, um die Unterstützung für folgende Funktionen zu optimieren:

- Routing - Die Routing-Vorlage maximiert Systemressourcen für Unicast-Routing, das normalerweise für einen Router oder einen Aggregator in der Netzwerkmitte erforderlich ist.

- VLANs: Die VLAN-Vorlage deaktiviert das Routing und unterstützt die maximale Anzahl von Unicast-MAC-Adressen. Dies wird in der Regel für einen Layer-2-Switch ausgewählt.

- Access (Zugriff): Die Zugriffsvorlage maximiert die Systemressourcen für Zugriffskontrolllisten (ACLs), um eine große Anzahl von ACLs zu unterstützen.

- Default (Standard): Die Standardvorlage stellt einen Ausgleich für alle Funktionen bereit.

Jede Vorlage ist in zwei Versionen erhältlich: eine Desktop-Vorlage und eine Aggregator-Vorlage.

Hinweis: Die Standardvorlage für Desktop-Switches ist die Standard-Desktop-Vorlage. Die Standardvorlage für Catalyst 3750-12S ist die Aggregatorvorlage.

Wählen Sie eine geeignete SDM-Vorlage aus, die die maximale Systemnutzung für die verwendete Funktion bereitstellt. Eine ungeeignete SDM-Vorlage kann die CPU überlasten und die Switch-Leistung erheblich beeinträchtigen.

Geben Sie den Befehl show platform tcam Usage ein, um zu sehen, wie viel TCAM jetzt verwendet wurde und wie viel verfügbar ist.

Switch#show platform tcam utilization

CAM Utilization for ASIC# 0                      Max            Used

Masks/Values    Masks/values

Unicast mac addresses:                        784/6272         12/26

IPv4 IGMP groups + multicast routes:          144/1152          6/26

IPv4 unicast directly-connected routes:       784/6272         12/26

IPv4 unicast indirectly-connected routes:     272/2176          8/44

IPv4 policy based routing aces:                 0/0             0/0

IPv4 qos aces:                                528/528          18/18

IPv4 security aces:                          1024/1024         27/27

Note: Allocation of TCAM entries per feature uses

a complex algorithm. The above information is meant

to provide an abstract view of the current TCAM utilization

Wenn die TCAM-Auslastung für einen der Parameter nahe der Höchstwerte liegt, prüfen Sie, ob eine der anderen Vorlagenfunktionen für diesen Parameter optimiert werden kann.

show sdm prefer access | default | dual-ipv4-and-ipv6 | routing | vlan

Switch# show sdm prefer routing

"desktop routing" template:

The selected template optimizes the resources in

the switch to support this level of features for

8 routed interfaces and 1024 VLANs.

number of unicast mac addresses:             3K

number of igmp groups + multicast routes:    1K

number of unicast routes:                    11K

number of directly connected hosts:        3K

number of indirect routes:                 8K

number of policy based routing aces:         512

number of qos aces:                          512

number of security aces:                     1K

Geben Sie den Befehl sdm prefer (Globaler Konfigurationsbefehl) ein, um die SDM-Vorlage festzulegen, die auf dem Switch verwendet werden soll.

Hinweis: Zur Verwendung der neuen SDM-Vorlage muss der Switch neu geladen werden.

Hohe CPU durch richtlinienbasiertes Routing

Die Implementierung von Policy Based Routing (PBR) in Cisco Catalyst Switches der Serie 3750 weist einige Einschränkungen auf. Wenn diese Einschränkungen nicht befolgt werden, kann dies zu einer hohen CPU-Auslastung führen.

- Sie können PBR auf einem gerouteten Port oder einer SVI aktivieren.

- Der Switch unterstützt keine Route-Map-Deny-Anweisungen für PBR.

- Der Multicast-Datenverkehr wird nicht durch Richtlinien geroutet. PBR gilt nur für Unicast-Datenverkehr.

- Ordnen Sie keine ACLs zu, die Pakete für eine lokale Adresse zulassen. Der PBR leitet diese Pakete weiter, was einen Ping- oder Telnet-Ausfall oder ein Flapping des Routing-Protokolls verursachen kann.

- Geben Sie ACLs nicht mit deny ACEs ab. Pakete, die einem deny ACE entsprechen, werden an die CPU gesendet, was eine hohe CPU-Auslastung verursachen kann.

- Um PBR zu verwenden, müssen Sie zunächst die Routing-Vorlage aktivieren, wobei der Befehl sdm es vorzieht, den globalen Konfigurationsbefehl weiterzuleiten. PBR wird vom VLAN oder der Standardvorlage nicht unterstützt.

Eine vollständige Liste finden Sie in den PBR-Konfigurationsrichtlinien.

Hohe CPU aufgrund übermäßiger ICMP-Umleitungen

Sie können ICMP-verworfene Umleitungen erhalten, wenn ein VLAN (oder ein beliebiger Layer-3-Port) ein Paket empfängt, bei dem sich die Quell-IP in einem Subnetz befindet, die Ziel-IP in einem anderen Subnetz und der nächste Hop im selben VLAN oder Layer-3-Segment.

Hier ein Beispiel:

Diese Meldung wird im Anzeigeprotokoll angezeigt:

51w2d: ICMP-Q:Dropped redirect disabled on L3 IF: Local Port Fwding

L3If:Vlan7 L2If:GigabitEthernet2/0/13 DI:0xB4, LT:7, Vlan:7

SrcGPN:65, SrcGID:65, ACLLogIdx:0x0, MacDA:001a.a279.61c1,

MacSA: 0002.5547.3bf0  IP_SA:64.253.128.3 IP_DA:208.118.132.9 IP_Proto:47

TPFFD:EDC10041_02C602C6_00B0056A-000000B4_EBF6001B_0D8A3746

Dies tritt auf, wenn das Paket in VLAN 7 mit der Quell-IP 64.253.128.3 empfangen wird und versucht, 208.118.132.9, die Ziel-IP, zu erreichen. Wie Sie sehen, befindet sich der nächste Hop, der im Switch konfiguriert wurde (in diesem Fall 64.253.128.41), ebenfalls im gleichen VLAN 7.

Zugehörige Informationen

- Erkennung von EtherChannel-Inkonsistenzen

- Multicast funktioniert in Catalyst Switches nicht im gleichen VLAN.

- CPU-Auslastung bei Catalyst Switches der Serien 4500/4000, 2948G, 2980G und 4912G, die CatOS-Software ausführen

- Catalyst 6500/6000-Switch Hohe CPU-Auslastung

- Support-Seiten für LAN-Produkte

- Support-Seite für LAN-Switching

- Technischer Support und Dokumentation - Cisco Systems