Einleitung
In diesem Dokument werden die Gründe dafür beschrieben, dass für den Catalyst 9800 eine hohe CPU-Auslastung erwartet wird, wenn es sich um ein Datenflugzeug handelt.
Verwendete Komponenten
Hintergrundinformationen
Anders als die Modelle 9800-40 und 9800-L verfügen die Modelle 9800-CL und 9800-L nicht über einen Hardware-Datenflugzeug-Weiterleitungs-Chip. Daher wird das Datenflugzeug von einem Softwareprozess emuliert (der auf der CPU läuft).
Eine Besonderheit dieses Software-emulierten Datenflugzeugs ist, dass der Datenflugzeug-Prozess fast immer einen CPU-Kern zu 100 % verwendet, da seine einzige Aufgabe darin besteht, die Netzwerkschnittstelle ständig abzufragen, um zu sehen, ob ein Paket angekommen ist, auch wenn wenig bis kein Netzwerkverkehr vorhanden ist.
Symptome
Der Catalyst 9800 kann manchmal eine hohe CPU-Auslastung auf bestimmten CPU-Kernen anzeigen. Es ist sehr wichtig, festzustellen, ob es sich wirklich um ein Problem mit einer hohen CPU-Software oder ein Symptom eines Datenflugzeugs handelt, das Sie ignorieren können.
Die 9800 Web UI Homepage hat ein CPU Trend Widget, welches Ihnen die Auslastung jedes CPU Kerns anzeigt. Dieses Widget zeigt Ihnen auch, was der CPU-Kern gewidmet ist.
In diesem Beispiel wird eine OVA mit mittlerem Durchsatz von 9800 CL (nicht mit hohem Durchsatz) bereitgestellt, die über 4 Control Plane Core und 2 Data Plane Cores verfügt.
Wenn Core 4 und 5 in diesem Fall eine hohe Auslastung aufweisen, können Sie diese ignorieren.
CPU-Auslastungs-Widget auf der 9800-Webbenutzeroberfläche
In der CLI zeigt Ihnen der Befehl show platform software cpu alloc die Rolle an, die jedem CPU-Kern zugewiesen ist (wie im vorherigen Web UI-Widget gezeigt).
Der Befehl show process cpu platform sorted zeigt Ihnen die CPU-Auslastung jedes Core und der Top-Prozesse.
Der Prozess ucode_pkt_PPE0 ist der Softwareprozess, der das Datenflugzeug emuliert. Daher kann dieser Prozess von der Liste der Prozesse, die zur CPU-Nutzung beitragen, ignoriert werden.
Der 9800-L weist dem Datenflugzeug statisch die letzten 5 CPU-Kerne zu. In der Regel weist nur Core 7 eine hohe Auslastung auf (und wird erwartet), da der ucode_pkt_PPE0-Prozess darauf ausgeführt wird.
Hier ist ein Beispiel einer kleinen OVA mit 9800 CL, bei der Core 2 und 3 dem Datenflugzeug zugeordnet sind.
Der Prozess ucode_pkt_PPE0 weist eine sehr hohe Auslastung auf, die jedoch normal ist und auch bei geringem Netzwerkverkehr erwartet wird.
myc9800-CL#show processes cpu platform sorted
CPU utilization for five seconds: 4%, one minute: 5%, five minutes: 6%
Core 0: CPU utilization for five seconds: 2%, one minute: 2%, five minutes: 1%
Core 1: CPU utilization for five seconds: 2%, one minute: 2%, five minutes: 2%
Core 2: CPU utilization for five seconds: 2%, one minute: 1%, five minutes: 2%
Core 3: CPU utilization for five seconds: 99%, one minute: 99%, five minutes: 99%
Pid PPid 5Sec 1Min 5Min Status Size Name
--------------------------------------------------------------------------------
20268 19784 99% 99% 99% S 271872 ucode_pkt_PPE0
28292 8568 1% 1% 1% S 1087088 linux_iosd-imag
19801 19314 1% 1% 1% S 250064 fman_fp_image
32539 32538 0% 0% 0% S 1692 inet_gethost
32538 31946 0% 0% 0% S 364 inet_gethost
32507 29493 0% 0% 0% S 5592 confd-startup.s
Überprüfen der Auslastung des Datenfelds
Wenn die CPU-Auslastung auf dem Datenflugzeug immer hoch ist, fragen Sie sich vielleicht, wie Sie überprüfen können, ob der Catalyst 9800 vom Netzwerkverkehr überlastet ist. Hierfür gibt es spezielle Widgets und CLI-Befehle.
Gehen Sie in der Webbenutzeroberfläche zu Monitor->System->CPU-Auslastung. Auf der rechten Seite sehen Sie die Datapath-Nutzung.
Die wichtigste Kennzahl ist PP in Form eines Prozentsatzes. In diesem Beispiel ist der Datenpfad zu 99,56 % inaktiv und damit logisch zu 0,44 % mit dem Netzwerkpaketprozess ausgelastet, was sehr gering ist.
PP steht für Packet Processed (Paketverarbeitung), RX steht für die Zeit, die für den Empfang von Datenverkehr und TM für die Übertragung von Datenverkehr aufgewendet wurde. Idle ist im Grunde das Gegenteil von PP (100% - PP), das ist die Zeit, die das Datenflugzeug damit verbringt, auf etwas zu warten.
Datapath-Nutzung
Der entsprechende CLI-Befehl für dieses Dashboard lautet:
show platform hardware chassis active qfp datapath utilization sum