La documentazione per questo prodotto è stata redatta cercando di utilizzare un linguaggio senza pregiudizi. Ai fini di questa documentazione, per linguaggio senza di pregiudizi si intende un linguaggio che non implica discriminazioni basate su età, disabilità, genere, identità razziale, identità etnica, orientamento sessuale, status socioeconomico e intersezionalità. Le eventuali eccezioni possono dipendere dal linguaggio codificato nelle interfacce utente del software del prodotto, dal linguaggio utilizzato nella documentazione RFP o dal linguaggio utilizzato in prodotti di terze parti a cui si fa riferimento. Scopri di più sul modo in cui Cisco utilizza il linguaggio inclusivo.
Cisco ha tradotto questo documento utilizzando una combinazione di tecnologie automatiche e umane per offrire ai nostri utenti in tutto il mondo contenuti di supporto nella propria lingua. Si noti che anche la migliore traduzione automatica non sarà mai accurata come quella fornita da un traduttore professionista. Cisco Systems, Inc. non si assume alcuna responsabilità per l’accuratezza di queste traduzioni e consiglia di consultare sempre il documento originale in inglese (disponibile al link fornito).
Questo documento descrive il processo generale utilizzato per eseguire un controllo dello stato del sistema sulle piattaforme degli switch Cisco Nexus serie 3500 con sistema operativo Nexus (NX-OS) versione 6.0(2).
Per ottenere una panoramica dell'utilizzo della CPU e della memoria del sistema, immettere il comando show system resources:
switch# show system resources
Load average: 1 minute: 0.32 5 minutes: 0.13 15 minutes: 0.10
Processes : 366 total, 2 running
CPU states : 5.5% user, 12.0% kernel, 82.5% idle
CPU0 states : 10.0% user, 18.0% kernel, 72.0% idle
CPU1 states : 1.0% user, 6.0% kernel, 93.0% idle
Memory usage: 4117064K total, 2614356K used, 1502708K free
Switch#
Per ulteriori informazioni sui processi che utilizzano cicli della CPU o memoria, immettere i comandi show process cpu sort e show system internal kernel memory usage:
switch# show process cpu sort
PID Runtime(ms) Invoked uSecs 1Sec Process
----- ----------- -------- ----- ------ -----------
3239 55236684 24663045 2239 6.3% mtc_usd
3376 776 7007 110 2.7% netstack
15 26592500 178719270 148 0.9% kacpid
3441 4173060 29561656 141 0.9% cfs
3445 7646439 6391217 1196 0.9% lacp
3507 13646757 34821232 391 0.9% hsrp_engine
1 80564 596043 135 0.0% init
2 6 302 20 0.0% kthreadd
3 1064 110904 9 0.0% migration/0
<snip>
switch# show system internal kernel memory usage
MemTotal: 4117064 kB
MemFree: 1490120 kB
Buffers: 332 kB
Cached: 1437168 kB
ShmFS: 1432684 kB
Allowed: 1029266 Pages
Free: 372530 Pages
Available: 375551 Pages
SwapCached: 0 kB
Active: 1355724 kB
Inactive: 925400 kB
HighTotal: 2394400 kB
HighFree: 135804 kB
LowTotal: 1722664 kB
LowFree: 1354316 kB
SwapTotal: 0 kB
SwapFree: 0 kB
Dirty: 12 kB
Writeback: 0 kB
AnonPages: 843624 kB
Mapped: 211144 kB
Slab: 98524 kB
SReclaimable: 7268 kB
SUnreclaim: 91256 kB
PageTables: 19604 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 2058532 kB
Committed_AS: 10544480 kB
VmallocTotal: 284664 kB
VmallocUsed: 174444 kB
VmallocChunk: 108732 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 2048 kB
DirectMap2M: 1787904 kB
switch#
L'output mostra che la regione di memoria alta è utilizzata da NX-OS, mentre la regione di memoria bassa è utilizzata dal kernel. I valori MemTotal e MemFree forniscono la memoria totale disponibile per lo switch.
Per generare avvisi sull'utilizzo della memoria, configurare lo switch come segue:
switch(config)# system memory-thresholds minor 50 severe 70 critical 90
Nota: Per questo documento, i valori 50, 70 e 90 vengono utilizzati solo come esempi; scegliere i limiti di soglia in base alle proprie esigenze.
Per controllare lo stato di diagnostica dell'hardware, immettere il comando show diagnostic result all. Verificare che tutti i test siano stati superati e che il risultato della diagnostica generale sia positivo.
switch# show diagnostic result all
Current bootup diagnostic level: complete
Module 1: 48x10GE Supervisor SerialNo : <serial #>
Overall Diagnostic Result for Module 1 : PASS
Diagnostic level at card bootup: complete
Test results: (. = Pass, F = Fail, I = Incomplete, U = Untested, A = Abort)
1) TestUSBFlash ------------------------> .
2) TestSPROM ---------------------------> .
3) TestPCIe ----------------------------> .
4) TestLED -----------------------------> .
5) TestOBFL ----------------------------> .
6) TestNVRAM ---------------------------> .
7) TestPowerSupply ---------------------> .
8) TestTemperatureSensor ---------------> .
9) TestFan -----------------------------> .
10) TestVoltage -------------------------> .
11) TestGPIO ----------------------------> .
12) TestInbandPort ----------------------> .
13) TestManagementPort ------------------> .
14) TestMemory --------------------------> .
15) TestForwardingEngine ----------------> .
<snip>
Immettere il comando show hardware profile status per controllare il profilo hardware corrente configurato sullo switch e l'utilizzo della tabella hardware:
switch# show hardware profile status
Hardware table usage:
Max Host Entries = 65535, Used = 341
Max Unicast LPM Entries = 24576, Used = 92
Max Multicast LPM Entries = 8192, Used (L2:L3) = 1836 (1:1835)
Switch#
Verificare che l'utilizzo delle voci host e delle voci Unicast/Multicast Longest Prefix Match (LPM) rientri nel limite specificato.
Nota: Per prestazioni ottimali dello switch, è importante scegliere il modello di profilo hardware appropriato.
Se si desidera che lo switch generi un syslog a un livello di soglia specifico, configurare lo switch in modo simile al seguente:
switch(config)# hardware profile multicast syslog-threshold ?
<1-100> Percentage
switch(config)# hardware profile unicast syslog-threshold ?
<1-100> Percentage
Nota: Il valore di soglia predefinito è 90% sia per unicast che multicast.
Per ulteriori informazioni, fare riferimento all'articolo Configurazione di PIM Cisco, che fornisce i dettagli della configurazione in base alla licenza installata e alle funzionalità abilitate. Inoltre, per ottimizzare la tabella di inoltro, fare riferimento agli switch Cisco Nexus serie 3000: Comprendere, configurare e ottimizzare l'articolo Cisco Forwarding Table.
Il monitoraggio attivo del buffer (ABM) fornisce i dati granulari sull'occupazione del buffer, che consentono una migliore comprensione dei punti critici di congestione. Questa funzione supporta due modalità di funzionamento: Modalità unicast e multicast.
In modalità Unicast, ABM controlla e gestisce i dati sull'utilizzo del buffer per buffer-block e l'utilizzo del buffer unicast per tutte le 48 porte. In modalità Multicast, controlla e gestisce i dati di utilizzo del buffer per blocco-buffer e l'utilizzo del buffer multicast per blocco-buffer.
Nota: Per ulteriori informazioni, fare riferimento all'articolo Cisco Nexus 3548 Active Buffer Monitoring (Monitoraggio del buffer attivo). La Figura 4 dell'articolo mostra che l'utilizzo del buffer ha raggiunto il picco di 22:15:32 ed è durato fino a 22:15:37. Inoltre, l'istogramma fornisce la prova di picchi improvvisi nell'utilizzo e mostra la velocità con cui il buffer viene svuotato. Se è presente un ricevitore lento (ad esempio, un ricevitore a 1 Gbps tra i ricevitori a 10 Gbps), per evitare la perdita dei pacchetti è necessario includere una configurazione simile alla seguente: porta <x>di ricezione lenta multicast basata sul profilo hardware.
Per monitorare la perdita di traffico, immettere il comando show interface ethernet x/y. L'output di questo comando fornisce informazioni di base sulla velocità del traffico e anche errori/perdite a livello di porta.
switch# show interface eth1/10
Ethernet1/10 is up
Dedicated Interface
Belongs to Po1
Hardware: 100/1000/10000 Ethernet, address: 30f7.0d9c.3b51
(bia 30f7.0d9c.3b51)
MTU 1500 bytes, BW 10000000 Kbit, DLY 10 usec
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation ARPA
Port mode is trunk
full-duplex, 10 Gb/s, media type is 10G
Beacon is turned off
Input flow-control is off, output flow-control is off
Rate mode is dedicated
Switchport monitor is off
EtherType is 0x8100
Last link flapped 3d21h
Last clearing of "show interface" counters never
14766 interface resets
30 seconds input rate 47240 bits/sec, 68 packets/sec
30 seconds output rate 3120720 bits/sec, 3069 packets/sec
Load-Interval #2: 5 minute (300 seconds)
input rate 50.18 Kbps, 52 pps; output rate 3.12 Mbps, 3.05 Kpps
RX
4485822 unicast packets 175312538 multicast packets 388443 broadcast
packets
180186040 input packets 9575683853 bytes
0 jumbo packets 0 storm suppression bytes
1 runts 0 giants 1 CRC 0 no buffer
2 input error 0 short frame 0 overrun 0 underrun 0 ignored
0 watchdog 0 bad etype drop 0 bad proto drop 0 if down drop
0 input with dribble 260503 input discard
0 Rx pause
TX
159370439 unicast packets 6366799906 multicast packets 1111 broadcast
packets
6526171456 output packets 828646014117 bytes
0 jumbo packets
0 output errors 0 collision 0 deferred 0 late collision
0 lost carrier 0 no carrier 0 babble 0 output discard
0 Tx pause
switch#
Se i dati di input o output vengono scartati e mostrano valori diversi da zero, determinare se i pacchetti scartati sono unicast e/o multicast:
switch# show queuing interface ethernet 1/10
Ethernet1/10 queuing information:
TX Queuing
qos-group sched-type oper-bandwidth
0 WRR 100
RX Queuing
Multicast statistics:
Mcast pkts dropped : 0
Unicast statistics:
qos-group 0
HW MTU: 1500 (1500 configured)
drop-type: drop, xon: 0, xoff: 0
Statistics:
Ucast pkts dropped : 0
switch#
L'output indica che il traffico eliminato non è dovuto a QoS (Quality of Service). A questo punto è necessario controllare le statistiche degli indirizzi MAC dell'hardware:
switch# show hardware internal statistics device mac ?
all Show all stats
congestion Show congestion stats
control Show control stats
errors Show error stats
lookup Show lookup stats
pktflow Show packetflow stats
qos Show qos stats
rates Show packetflow stats
snmp Show snmp stats
Quando si esegue una risoluzione dei problemi di perdita di traffico, le opzioni chiave da controllare sono congestione, errori e qos. L'opzione pktflow fornisce statistiche del traffico nelle direzioni RX e TX, con intervalli di dimensioni del pacchetto specifici.
switch# show hardware internal statistics device mac errors port 10
|------------------------------------------------------------------------|
| Device: L2/L3 forwarding ASIC Role:MAC |
|------------------------------------------------------------------------|
Instance:0
ID Name Value Ports
-- ---- ----- -----
198 MTC_MB_CRC_ERR_CNT_PORT9 0000000000000002 10 -
508 MTC_PP_CNT_PORT1_RCODE_CHAIN3 0000000000000002 10 -
526 MTC_RW_EG_PORT1_EG_CLB_DROP_FCNT_CHAIN3 000000000054da5a 10 -
3616 MTC_NI515_P1_CNT_TX 0000000000000bed 10 -
6495 TTOT_OCT 000000000005f341 10 -
7365 RTOT 0000000000000034 10 -
7366 RCRC 0000000000000001 10 -
7374 RUNT 0000000000000001 10 -
9511 ROCT 00000000000018b9 10 -
10678 PORT_EXCEPTION_ICBL_PKT_DROP 000000000003f997 10 -
Nota: Il valore esadecimale 0x3f997 è uguale a 260503 in formato decimale.
switch# show interface eth1/10
Ethernet1/10 is up
<snip> 0 input with dribble
260503 input discard
<snip>
Nell'output, il messaggio di errore PORT_EXCEPTION_ICBL_PKT_DROP indica che il traffico ricevuto sulla porta ha un tag Dot1Q per una VLAN non abilitata sullo switch.
Di seguito è riportato un altro esempio di calo del traffico causato da QoS:
switch# show interface ethernet 1/11
Ethernet1/11 is up
<snip>
TX
<snip>
0 output errors 0 collision 0 deferred 0 late collision
0 lost carrier 0 no carrier 0 babble 6153699 output discard
0 Tx pause
switch#
switch# show queuing interface ethernet 1/11
Ethernet1/11 queuing information:
TX Queuing
qos-group sched-type oper-bandwidth
0 WRR 100
RX Queuing
Multicast statistics:
Mcast pkts dropped : 0
Unicast statistics:
qos-group 0
HW MTU: 1500 (1500 configured)
drop-type: drop, xon: 0, xoff: 0
Statistics:
Ucast pkts dropped : 6153699
Nota: L'output indica che i pacchetti 6153699 sono stati scartati nella direzione di ricezione, il che è fuorviante. Fare riferimento all'ID bug Cisco CSCuj20713.
switch# show hardware internal statistics device mac all | i 11|Port
(result filtered for relevant port)
ID Name Value Ports
<snip>
5596 TX_DROP 00000000005de5e3 11 - <--- 6153699 Tx Drops in Hex
<snip>
10253 UC_DROP_VL0 00000000005de5e3 11 - <--- Drops for QoS Group 0 in Hex
<snip>
Di seguito sono riportati i comandi utilizzati per acquisire le perdite di pacchetti:
Control Plane Policing (CoPP) protegge il control plane per garantire la stabilità della rete. Per ulteriori informazioni, consultare l'articolo Configurazione di Control Plane Policing di Cisco.
Per monitorare le statistiche CoPP, immettere il comando show policy-map interface control-plane:
switch# show policy-map interface control-plane
Control Plane
service-policy input: copp-system-policy
class-map copp-s-ping (match-any)
match access-group name copp-system-acl-ping
police pps 100 , bc 0 packets
HW Matched Packets 30
SW Matched Packets 30
class-map copp-s-l3destmiss (match-any)
police pps 100 , bc 0 packets
HW Matched Packets 76
SW Matched Packets 74
class-map copp-s-glean (match-any)
police pps 500 , bc 0 packets
HW Matched Packets 103088
SW Matched Packets 51544
<snip>
Nell'output, i pacchetti hardware (HW) e software (SW) corrispondenti per copp-s-ping sono gli stessi. Ciò significa che la quantità di pacchetti conteggiata dall'hardware è 30 (tutti inviati al driver della CPU in banda) e il software conta lo stesso numero di pacchetti prima di inviarli alla CPU. Ciò indica che il protocollo CoPP non rifiuta alcun pacchetto, in quanto rientra nel limite configurato di 100 p/s.
Se si controlla la classe copp-s-glean, che corrisponde ai pacchetti destinati all'indirizzo IP per cui non è presente la voce di cache ARP (Address Resolution Protocol), il numero di pacchetti visualizzati dall'HW è 103.088, mentre il SW corrisponde solo a 51544. Ciò indica che il CoPP ha scartato 51544 (103088-51544) pacchetti, perché di questi pacchetti supera i 500 p/s.
I contatori SW vengono ottenuti dal driver in banda della CPU e i contatori HW vengono ricavati dall'elenco di controllo di accesso (ACL, Access Control List) programmato nell'hardware. Se i pacchetti corrispondenti al software sono uguali a zero e per tali pacchetti è presente un valore diverso da zero, nell'hardware non sarà presente alcun ACL, il che può essere normale. È inoltre importante notare che questi due contatori potrebbero non essere sottoposti a polling contemporaneamente ed è consigliabile utilizzare i valori dei contatori solo se la differenza è significativa.
Le statistiche CoPP potrebbero non essere correlate direttamente ai pacchetti a commutazione di hardware, ma sono comunque rilevanti se i pacchetti che devono essere inviati tramite lo switch vengono puntati alla CPU. Un packet-punt è causato da vari motivi, come quando si esegue un'adiacenza di glean.
Tieni presente che esistono tre tipi di politiche CoPP: Predefinito, livello 2 (L2) e livello 3 (L3). Scegliere il criterio appropriato in base allo scenario di distribuzione e modificare il criterio CoPP in base alle osservazioni. Per perfezionare il CoPP, controllarlo regolarmente e controllare dopo aver ottenuto nuovi servizi/applicazioni o dopo una riprogettazione della rete.
Nota: Per cancellare i contatori, immettere il comando clear copp statistics.
Per eseguire un controllo dello stato sul file system bootflash, immettere il comando bootflash del controllo dello stato del sistema:
switch# system health check bootflash
Unmount successful...
Checking any file system errors...Please be patient...
Result: bootflash filesystem has no errors
done.
Remounting bootflash ...done.
switch#
Attenzione: Il file system viene smontato quando si esegue il test e viene rimontato al termine del test. Verificare che non sia possibile accedere al file system durante l'esecuzione del test.
Attenzione: Assicurarsi che il sistema non subisca reimpostazioni o arresti anomali del processo e non generi file di base o log di processo quando si tenta di utilizzare i comandi menzionati in questa sezione.
Immettere questi comandi per raccogliere i core di sistema e i log di processo:
switch# show cores
Module Instance Process-name PID Date(Year-Month-Day Time)
------ -------- --------------- -------- -------------------------
switch#
switch# show process log
Process PID Normal-exit Stack Core Log-create-time
--------------- ------ ----------- ----- ----- ---------------
ethpc 4217 N N N Tue Jun 4 01:57:54 2013
Nota: Fare riferimento all'articolo Recupero dei file di base dalle piattaforme di switching Cisco Nexus per ulteriori dettagli su questo processo.