In questo documento vengono fornite informazioni sull'output del comando show processes cpu quando si esegue il comando sugli switch Cisco Catalyst 4500/4000, 2948G, 2980G e 4912G con software Catalyst OS (CatOS). Questo documento descrive come identificare le cause di un elevato utilizzo della CPU su questi switch. Nel documento vengono inoltre elencati alcuni scenari comuni di rete o configurazione che causano un elevato utilizzo della CPU sugli switch Catalyst serie 4500.
Nota: se si eseguono switch Catalyst serie 4500/4000 basati su software Cisco IOS, fare riferimento all'utilizzo elevato della CPU sugli switch Catalyst serie 4500/4000 basati su software Cisco IOS.
Nota: in questo documento, i termini switch e switch si riferiscono agli switch Catalyst 4500/4000, 2948G, 2980G e 4912G.
Come i router Cisco, gli switch usano il comando show processes cpu per mostrare l'utilizzo della CPU per il processore Supervisor Engine dello switch. Tuttavia, a causa delle differenze nell'architettura e nei meccanismi di inoltro tra i router e gli switch Cisco, l'output tipico del comando show PROCESSES cpu differisce in modo significativo. Anche il significato dell'output è diverso.
Il presente documento chiarisce tali differenze. Nel documento viene descritto l'uso della CPU sugli switch e come interpretare l'output del comando show processes cpu.
Nessun requisito specifico previsto per questo documento.
Le informazioni fornite in questo documento si basano sulle versioni software e hardware di:
Switch Catalyst 4500/4000 con CatOS
Catalyst 2948G switch
Switch Catalyst 2980G e 2980G-A
Catalyst 4912G Switch
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
I router basati su software Cisco utilizzano il software per elaborare e instradare i pacchetti. L'utilizzo della CPU su un router Cisco tende ad aumentare quando il router esegue una maggiore elaborazione e routing dei pacchetti. Di conseguenza, il comando show processes cpu può fornire un'indicazione abbastanza precisa del carico di elaborazione del traffico sul router.
Gli switch Catalyst 4500/4000 con switch CatOS, 2948G, 2980G e 4912G non usano la CPU allo stesso modo. Questi switch prendono le decisioni relative all'inoltro nell'hardware, non nel software. Pertanto, quando gli switch prendono la decisione di inoltro o di commutazione per la maggior parte dei frame che passano attraverso lo switch, il processo non coinvolge la CPU Supervisor Engine.
Al contrario, la CPU Supervisor Engine esegue altre importanti funzioni. Le funzioni eseguite includono:
Assistenza nell'apprendimento e nell'invecchiamento degli indirizzi MAC
Nota: l'apprendimento dell'indirizzo MAC è anche chiamato impostazione del percorso.
Esegue protocolli e processi che forniscono il controllo della rete
Gli esempi includono Spanning Tree Protocol (STP), Cisco Discovery Protocol (CDP), VLAN Trunk Protocol (VTP), Dynamic Trunking Protocol (DTP) e Port Aggregation Protocol (PAgP).
Gestisce il traffico di gestione della rete destinato alle interfacce sc0 o me1 dello switch
Gli esempi includono il traffico Telnet, HTTP o SNMP (Simple Network Management Protocol).
Il comando show PROCESSES cpu fornisce informazioni sulla CPU del Supervisor Engine; l'hardware dello switch che prende le decisioni di inoltro non fornisce queste informazioni. Pertanto, l'output del comando non è direttamente correlato alle prestazioni di switching o al carico del traffico degli switch.
È possibile individuare potenziali problemi e correzioni se:
Eseguire il comando show-tech support o il comando show processes cpu dal dispositivo Cisco.
Usare lo strumento Output Interpreter (solo utenti registrati).
In alcuni casi, anche uno switch con traffico ridotto o nullo segnala un utilizzo della CPU superiore a quello tipico di altri switch con CatOS. L'output del comando show processes cpu mostra questo elevato utilizzo della CPU.
Nota: tra gli switch con CatOS sono inclusi gli switch Catalyst serie 5500/5000 e 6500/6000.
Su uno switch Catalyst 4003, 4006, 2948G, 2980G o 4912G, l'utilizzo tipico della CPU è dell'1-30%. Su uno switch Catalyst 4006 su cui sono stati installati uno o più moduli WS-X4148-RJ45V, l'utilizzo tipico è maggiore. L'utilizzo tipico è generalmente del 20-50%. L'utilizzo è maggiore perché questi moduli eseguono un monitoraggio aggiuntivo delle porte per rilevare i telefoni IP collegati. I moduli devono rilevare i telefoni collegati in modo da poter applicare l'alimentazione, se necessario.
Di norma, queste percentuali non aumentano in proporzione alla quantità di traffico che passa attraverso lo switch. Pertanto, se lo switch è completamente inattivo o supera grandi quantità di traffico, le percentuali medie di utilizzo della CPU non cambiano in modo significativo.
In genere, i processi con la percentuale di utilizzo più elevata sono i processi Cambio sovraccarico e Admin sovraccarico. Nell'esempio viene mostrato l'output del comando show processes cpu su uno switch Catalyst 4006 con Supervisor Engine II con CatOS:
Nota: alcuni output sono stati soppressi per maggiore chiarezza.
Console> (enable) show processes cpu CPU utilization for five seconds: 43.72% one minute: 43.96% five minutes: 34.17% PID Runtime(ms) Invoked uSecs 5Sec 1Min 5Min TTY Process --- ----------- ---------- -------- ------- ------- ------- --- --------------- 1 143219346 0 0 74.28% 56.04% 65.83% -2 Kernel and Idle 3 5237943 1313358 330000 2.84% 2.00% 2.00% -2 SynConfig 13 4378417 92798429 2000 1.97% 1.00% 1.00% -2 gsgScpAggregati 19 2692969 8548403 14000 1.23% 1.00% 1.00% -2 SptBpduRx 84 6702117 92798314 9000 2.77% 2.00% 2.00% 0 Console 97 9382372 16190292 12499 4.26% 4.22% 4.31% 0 Packet forwardi 98 23438905 7904296 9352 16.64% 19.57% 17.50% 0 Switching overh 99 2271479 1443242 57968 1.19% 1.04% 0.98% 0 Admin overhead Console> (enable)
Il sovraccarico di commutazione è in realtà un processo costituito da diversi sottoprocessi. I sottoprocessi gestiscono le seguenti attività:
Apprendimento degli indirizzi per nuovi indirizzi MAC
Nota: l'apprendimento dell'indirizzo MAC è anche chiamato impostazione del percorso.
Invecchiamento normale dell'host e invecchiamento rapido dovuto alla ricezione di STP Topology Change Notification (TCN) Bridge Protocol Data Unit (BPDU)
Elaborazione dei pacchetti per il controllo del traffico, ad esempio BPDU STP, CDP, VTP, DTP e PAgP
Elaborazione dei pacchetti per il traffico di gestione, ad esempio Telnet, SNMP e HTTP, nonché pacchetti broadcast e multicast nelle subnet sc0 o me1
Il sovraccarico amministrativo è un processo per la gestione dell'hardware dello switch. Il sovraccarico di amministrazione gestisce le seguenti attività:
Circuito integrato specifico dell'applicazione (ASIC) dello switch fabric e altra gestione dell'hardware
Gestione ASIC scheda di linea
Monitoraggio delle porte
Come indicato nella sezione Utilizzo tipico dei comandi della CPU da parte dei processi di visualizzazione di questo documento, l'utilizzo tipico della CPU sugli switch Catalyst serie 4500/4000 è più elevato che su altri switch con CatOS. Questi altri switch includono Catalyst 5500/5000 e 6500/6000.
Tuttavia, in alcuni casi, l'utilizzo della CPU del Supervisor Engine può superare l'intervallo previsto. L'utilizzo della CPU può superare gli intervalli tipici sullo switch per i seguenti motivi:
Apprendimento dell'indirizzo: il primo frame di qualsiasi flusso da un indirizzo MAC di origine a un indirizzo MAC di destinazione viene reindirizzato alla CPU del Supervisor Engine. Con questo reindirizzamento è possibile eseguire l'apprendimento degli indirizzi. Una volta che la CPU ha impostato il percorso nell'hardware, i frame successivi che usano gli stessi indirizzi MAC di origine e destinazione vengono commutati nell'hardware. La CPU non è coinvolta. Pertanto, se la CPU deve apprendere un numero elevato di indirizzi MAC in un breve periodo di tempo, l'utilizzo della CPU può aumentare. L'utilizzo aumenta durante la configurazione dei percorsi. Lo switch deve acquisire un elevato numero di indirizzi MAC in un breve periodo, ad esempio all'inizio della giornata lavorativa o subito dopo il pranzo. In questi casi, molti utenti accendono i sistemi o accedono alla rete.
TCN STP nella rete: i BPDU TCN fanno sì che lo switch esegua un invecchiamento rapido sugli indirizzi MAC appresi dallo switch. Come risultato tipico, molti frame vengono inviati alla CPU per l'apprendimento degli indirizzi e la configurazione dei percorsi. È quindi necessario individuare la causa principale dei TCN e impedire che si verifichi. Queste sono alcune delle possibili cause:
Una porta nella rete che lampeggia
Host che eseguono l'accensione e lo spegnimento su porte su cui non è abilitato STP PortFast
Ricezione di traffico di broadcast eccessivo sulle interfacce di gestione (sc0 o me1): le trasmissioni nelle subnet di gestione/VLAN devono essere aumentate a un livello sufficientemente alto sullo stack di protocolli dello switch per determinare se il Supervisor Engine è il destinatario previsto del traffico. Alcuni esempi di traffico che può aumentare l'utilizzo della CPU sullo switch sono:
Protocollo RIP/SAP (Internetwork Packet Exchange (IPX) Routing Information Protocol/Service Advertising Protocol)
Traffico di controllo AppleTalk
Frame NetBIOS (Broadcast Network Basic Input/Output System)
Applicazioni IP legacy che utilizzano il broadcast
Traffico di gestione eccessivo: alcuni tipi di traffico di gestione possono causare un elevato utilizzo della CPU sullo switch. Un esempio di questo tipo di polling è rappresentato dai protocolli SNMP, particolarmente frequenti.
Traffico commutato tramite software: quando si utilizza il modulo di layer 3, tenere presente che tutto il traffico che raggiunge il router sulla VLAN nativa viene instradato tramite software. Questa situazione influisce negativamente sulle prestazioni dello switch. Il microcodice del WS-X4232-L3 non elabora i pacchetti 802.1Q che vengono inviati sulla VLAN nativa senza tag. Al contrario, i pacchetti vengono inviati alla CPU, che li elabora. Questo processo determina un elevato utilizzo della CPU se la CPU riceve pacchetti senza tag a una velocità elevata sulle sottointerfacce VLAN native. Pertanto, creare una VLAN fittizia (che non contiene alcun traffico utente) come VLAN nativa.
Nota: creare una VLAN fittizia come VLAN nativa sui collegamenti trunk tra il router e lo switch. La CPU instrada nel software tutto il traffico che invia sulla VLAN nativa, con effetti negativi sulle prestazioni dello switch. Creare una VLAN aggiuntiva che non si utilizzi in nessun altro punto della rete e impostare questa VLAN come VLAN nativa per i collegamenti trunk tra il router e lo switch.
Un altro errore è che la latenza di risposta ping è il risultato di un elevato utilizzo della CPU sul Supervisor Engine dello switch. La latenza di risposta si verifica quando si esegue il ping sull'interfaccia dello switch sc0. Latenza risposta superiore a 10 ms.
L'elaborazione delle richieste e delle risposte ICMP (Internet Control Message Protocol) è un'attività a bassa priorità sul Supervisor Engine. Molte attività più importanti hanno la precedenza sulla generazione delle risposte ping. Di conseguenza, i tempi di risposta del ping, compresi tra 7 e 10 ms, sono tipici, anche su uno switch completamente inattivo. Su uno switch particolarmente occupato, i tempi di risposta possono essere anche più lunghi.
Tuttavia, i ping attraverso lo switch vengono in genere inoltrati nell'hardware. In questi casi, lo switch considera la richiesta echo ICMP e la risposta come semplici frame di dati. La latenza di risposta è costituita da:
Il ritardo di inoltro di andata e ritorno sullo switch
Di solito si tratta di un ritardo molto breve, nell'ordine dei microsecondi.
Latenza degli stack IP nel processo e risposta alle richieste e risposte ping
Qualsiasi altro ritardo nella rete che i pacchetti ICMP devono attraversare
Un esempio di tale ritardo è dato da più hop di router.
Reindirizzamenti IP non necessari a causa dell'uso esteso del routing statico
L'utilizzo della CPU del Supervisor Engine non riflette le prestazioni di inoltro hardware dello switch. È comunque necessario basare e monitorare l'utilizzo della CPU del Supervisor Engine.
Basare l'utilizzo della CPU del Supervisor Engine per lo switch in una rete allo stato stabile con modelli di traffico e carico normali.
Prendere nota dei processi che generano il massimo utilizzo della CPU.
Per la risoluzione dei problemi relativi all'utilizzo della CPU, considerare le domande seguenti:
Quali processi generano il massimo utilizzo? Questi processi sono diversi dalla previsione?
La CPU è costantemente elevata rispetto alla linea di base? O ci sono picchi di utilizzo elevato, quindi un ritorno ai livelli di base?
Ci sono CN nella rete? Oppure i collegamenti ridondanti sono configurati correttamente con i parametri Spanning Tree per evitare loop?
Nota: lo svuotamento delle porte o delle porte host con la funzionalità PortFast STP disabilitata causa i TCN.
Il traffico broadcast o multicast nelle subnet di gestione/VLAN è eccessivo?
Sullo switch è presente un traffico di gestione eccessivo, ad esempio il polling SNMP?
Se possibile, isolare la VLAN di gestione dalle VLAN con il traffico di dati dell'utente, in particolare con il traffico di broadcast.
Esempi di questo tipo di traffico includono RIP/SAP IPX, AppleTalk e altro traffico broadcast. Tale traffico può influire sull'utilizzo della CPU del Supervisor Engine e, in casi estremi, può interferire con il normale funzionamento dello switch.
Considerare l'aggiornamento di uno switch.
Per i Supervisor Engine e gli switch Catalyst serie 4500/4000 con CatOS, valutare l'opportunità di aggiornare lo switch alla versione 5.5(7) o successive.
Queste versioni integrano diverse ottimizzazioni relative alla CPU, in particolare nell'area dei sottoprocessi Switching Overhead.
In CatOS release 6.4.4 e successive, è presente un'estensione del periodo di timeout della richiesta di gestione. L'estensione del periodo di timeout può impedire molti timeout dei pacchetti di controllo temporanei che possono essere causati da una CPU occupata.
Nota: la versione 6.1(1) e successive supportano Catalyst 2980G-A.
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
30-Aug-2005 |
Versione iniziale |