Questo documento spiega come risolvere i problemi di timeout e di errori del ping dell'infrastruttura su Cisco serie 12000 Internet Router. Tali errori sono indicati dai seguenti messaggi di errore:
%GRP-3-FABRIC_UNI: Unicast send timed out (3)
e
%GRP-3-COREDUMP: Core dump incident on slot 3, error: Fabric ping failure (seq:29192)
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
Non sono previsti prerequisiti specifici per questo documento.
Le informazioni fornite in questo documento si basano sulla versione hardware riportata di seguito.
Cisco serie 12000 Internet Router
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.
Il GRP e le schede di linea (LC) del Cisco serie 12000 Internet Router si connettono tramite un fabric switch crossbar, che fornisce un percorso fisico ad alta velocità per la maggior parte delle comunicazioni tra schede. Tra i messaggi scambiati tra il GRP e le schede di linea sul fabric dello switch vi sono i pacchetti effettivi instradati e ricevuti, le informazioni sull'inoltro, le statistiche sul traffico e la maggior parte delle informazioni di gestione e controllo. È quindi importante che il GRP garantisca il corretto funzionamento di questo percorso.
I ping dei fabric sono una delle quattro applicazioni in esecuzione tra il GRP e il fabric dello switch. Inter-Processor Communication (IPC), pacchetti di rete e download di codice sono gli altri. I ping dei fabric vengono implementati per fornire parte di un algoritmo di rilevamento degli errori e di un meccanismo keep-alive implementati utilizzando buffer sul bus di manutenzione (MBUS) e ping attraverso le interfacce fabric della scheda di linea.
I driver Cisco Cell Segmentation and Reassembly (CSAR) Fabric Interface sul GRP gestiscono i messaggi che devono essere inviati e ricevuti tra il fabric dello switch e il GRP. Compresi i ping per la struttura. I ping dei fabric vengono generati dal software e inviati dal GRP primario a ciascuna scheda di linea ogni sei secondi. Ogni volta che una scheda di linea riceve una richiesta ping dal GRP, il LC restituisce una risposta al GRP. Se il GRP non riceve alcuna risposta a cinque ping consecutivi sul fabric (30 secondi di tempo totale), dichiara la scheda di linea inattiva e la reimposta tramite il bus di manutenzione (MBUS).
Nella maggior parte dei casi, la scheda di linea è semplicemente troppo occupata per rispondere alle richieste ping dell'infrastruttura dal GRP. Questi errori di ping dell'infrastruttura possono essere causati anche da un'infrastruttura difettosa o da un bug nel software Cisco IOS®. Tutte le possibili cause degli errori di ping dell'infrastruttura sono descritte in dettaglio nella sezione seguente relativa alla risoluzione dei problemi.
I timeout di ping del fabric si verificano quando il Gigabit Route Processor (GRP) rileva che una richiesta ping è bloccata nella coda ToFab (verso il fabric dello switch) del circuito integrato specifico dell'applicazione (ASIC) Cisco Cell Segmentation and Reassembly (CSAR). Questo ASIC è responsabile della suddivisione dei pacchetti nelle celle Cisco prima di inviarli tramite il fabric dello switch alla scheda della linea di output (LC).
Gli errori di ping dell'infrastruttura si verificano quando una scheda di linea o il GRP secondario non risponde a una richiesta ping dell'infrastruttura dal GRP primario sull'infrastruttura dello switch. Tali fallimenti sono un sintomo problematico che dovrebbe essere studiato.
Come spiegato nella sezione Background, il GRP invia un ping fabric alle schede di linea ogni sei secondi e queste devono rispondere. Quando il GRP non riceve una risposta a cinque ping consecutivi dell'infrastruttura, reimposta la scheda di linea inviando un messaggio di richiesta tramite il bus di manutenzione (MBUS) e segnala un arresto anomalo forzato dal software, come mostrato nell'output del comando show context slot {#}.
Dai log della console o dal comando show log è possibile che vengano visualizzati i seguenti messaggi di errore prima del messaggio di errore ping dell'infrastruttura:
%GRP-3-FABRIC_UNI: Unicast send timed out (3) %GRP-3-FABRIC_UNI: Unicast send timed out (3) %GRP-3-FABRIC_UNI: Unicast send timed out (3)
dove il numero (3) rappresenta lo slot per scheda di linea verso cui il GRP primario ha tentato di inviare un ping sull'infrastruttura.
Questo messaggio indica che un pacchetto è bloccato nella coda ToFab dell'ASIC CSAR sul GRP primario. Se uno dei due buffer CSAR è bloccato per più di 100 millisecondi (msec), il buffer viene scaricato e viene generato un messaggio di timeout.
Se il GRP invia il messaggio di richiesta ping per l'infrastruttura, ma la scheda di linea non risponde oppure la scheda di linea risponde ma l'infrastruttura dello switch è difettosa, quindi il messaggio viene perso, questo messaggio non verrà visualizzato prima del messaggio di errore ping per l'infrastruttura. Pertanto, se viene visualizzato il messaggio di errore "%GRP-3-FABRIC_UNI", significa che per 100 o 200 millisecondi non è stato possibile trasmettere un messaggio a uno slot dell'infrastruttura. È possibile che, a causa di %GRP-3-FABRIC_UNI, non sia possibile inviare keep-alive al LC e che si verifichi un errore di ping dell'infrastruttura dopo, in questo caso, 30 secondi. Tuttavia, è possibile ottenere errori ping dell'infrastruttura senza "%GRP-3-FABRIC_UNI" e viceversa.
Il GRP primario può determinare che una scheda di linea o il GRP secondario è peggiorato al punto che un dump del core diagnostico è appropriato. A questo punto, il GRP invia un messaggio attraverso l'MBUS alla scheda di linea e chiede alla CPU della scheda di linea di arrestarsi in modo anomalo, in modo da ottenere un dump del core.
%LCINFO-3-CRASH: Line card in slot 3 crashed %GRP-3-COREDUMP: Core dump incident on slot 3, error: Fabric ping failure (seq:29192)
La scheda di linea crea il dump del core se è configurata con l'eccezione crashinfo e i comandi correlati (vedere Configurazione di un Core Dump su una scheda di linea GSR per informazioni specifiche sul GSR sulla configurazione dei dump del core). La stringa di qualificazione nell'output del comando show context slot {#} indica il motivo del ricaricamento. In caso di errore del ping della struttura, il motivo è sempre "crash forzato dal software".
CRASH INFO: Slot 1, Index 1, Crash at 00:42:45 KST Mon Mar 12 2001 VERSION: GS Software (GLC1-LC-M), Version 12.0(18)ST, EARLY DEPLOYMENT RELEASE SOFTWARE (fc1) TAC Support: http://www.cisco.com/tac Compiled Thu 09-Aug-01 22:06 by nmasa Card Type: 2 Ports OC3 Channelized to DS1/E1 , S/N CAT00400500 System exception: sig=23, code=0x24, ! --- SIG=23 indicates a software-forced crash. context=0x41303B04 System restarted by a Software forced crash STACK TRACE: -Traceback= 400C3970 400C1F90 40815D5C 407D3144 400C7488
Quando la scheda di linea si blocca, invia un messaggio iniziale per notificare il GRP primario. Il GRP attende quindi che la scheda di linea invii altre informazioni sull'incidente attraverso l'MBUS. Il GRP dovrebbe ricevere informazioni complete entro pochi millisecondi dalla ricezione del primo messaggio dalla scheda di linea. Nell'improbabile eventualità che i successivi messaggi con le informazioni di arresto anomalo non vengano ricevuti dal GRP entro un limite di tempo ragionevole (10 secondi), il GRP stampa un messaggio di errore e comunica al resto del software GRP che la scheda di linea si è bloccata.
Durante il normale funzionamento del router, il GRP primario effettua continuamente ping sulle schede di linea e queste rispondono. Gli errori di ping sono un sintomo di un altro problema su cui è necessario indagare. Tali problemi includono:
Nota: se l'errore può essere riprodotto, configurare no service auto-reset sul GRP. Questo comando disabilita il ricaricamento della scheda di linea al successivo errore di ping dell'infrastruttura e consente di connettersi alla scheda di linea utilizzando il comando attach <slot#> per acquisire i comandi show pertinenti.
La causa più probabile è un bug del software Cisco IOS in cui un processo disabilita gli interrupt per un tempo sufficiente a perdere cinque ping consecutivi sul fabric. Per evitare problemi risolti, prova ad aggiornare il tuo treno all'ultima versione del software Cisco IOS. Per assistenza sull'aggiornamento, vedere l'area Cisco Download Software.
È possibile che la scheda di linea stia esercitando una contropressione troppo lunga, quindi lo scheduler non consente la ricezione di traffico dal fabric dello switch. Questo sintomo suggerisce un problema di congestione dell'interfaccia. Utilizzare i seguenti comandi per confermare questi sintomi:
show controller frfab queue sulla scheda di linea. Cercare una coda libera non IPC con pochi buffer disponibili o senza buffer.
show controllers csar queue sul GRP. Cercare valori diversi da zero per "Max Length" e per "Max Length" in modo che equivalgano al valore "Length", come mostrato nell'output di esempio seguente:
router#show controllers csar queue 1190 Free Q Slot Length Max Length 0 0 7 1 0 2 2 70 70 ! -- CSAR queue for slot 2 is building and reaching max length. 3 0 2 4 0 3 5 0 0 ...
Il CSAR accoda fino a 50 pacchetti a una scheda di linea di destinazione. Dopo 50 pacchetti, solo i pacchetti ping dell'infrastruttura vengono accodati. Se il limite della coda sale a 70, il CSAR interrompe l'accodamento di tutti i pacchetti, inclusi i ping dell'infrastruttura, alla scheda di linea. Sia il GRP che tutte le schede di linea dispongono di buffer di segmentazione CSAR da 64k in cui memorizzare i messaggi. Se questi buffer sono occupati, il router utilizza una coda di attesa software per archiviare i messaggi. Imposta inoltre un timer per garantire che i messaggi ping dell'infrastruttura non rimangano in questa coda troppo a lungo.
Elevato utilizzo della CPU sulla scheda di linea - Comunemente rilevato durante il ricalcolo di una tabella Cisco Express Forwarding (CEF) di grandi dimensioni dopo una modifica consistente della tabella di routing o dopo un link flap e il reset della sessione BGP (Border Gateway Protocol). La CPU può essere elevata anche quando si commuta il traffico nel software. Questo avviene principalmente sulle schede di linea Engine 0 dove la maggior parte delle funzioni sono implementate nel software. In questo caso, è possibile controllare la configurazione della scheda di linea e rimuovere le funzionalità che potrebbero influire sulla CPU del LC del motore 0. Un elevato utilizzo della CPU può essere dovuto anche a un bug. Determinare l'utilizzo della CPU con il comando execute-on slot <slot#> show proc cpu o execute-on slot <slot#> show tech se il comando precedente non è supportato nella versione del software Cisco IOS in esecuzione sul router. Per risolvere i problemi noti, valutare l'opportunità di aggiornare il proprio treno all'ultima versione del software Cisco IOS.
La scheda di linea sta esaurendo i buffer IPC (Inter-Process Communication), utilizzati per scambiare messaggi di controllo tra le schede di linea e il GRP. Vedere la procedura per la risoluzione dei problemi in Risoluzione dei messaggi di errore relativi al CEF. Se la risoluzione dei problemi indica un problema con IPC, verificare che il router Internet Cisco serie 12000 esegua almeno il software Cisco IOS versione 12.0(18)S. Per migliorare la stabilità e la scalabilità della cache IPC, questa versione ha introdotto una dimensione predefinita maggiore, pari a 5000.
Problema hardware sulla scheda di linea. È importante notare che meno del 10% degli errori di ping del fabric è dovuto a un problema hardware. Prima di contattare Cisco TAC per richiedere hardware sostitutivo, provare la seguente procedura:
Cercare i messaggi di timeout IPC stampati prima dell'errore del ping dell'infrastruttura. Vedere anche la sezione IPC di seguito.
Ricollocare la scheda di linea.
Spegnere e riaccendere il router.
Se non si dispone di accesso fisico al router, eseguire il comando hw-module slot <slot #> reload per ricaricare manualmente la scheda di linea.
Il cuore del Cisco serie 12000 Internet Router è il circuito del fabric dello switch, che fornisce interconnessioni sincronizzate a velocità gigabit per le schede di linea e il protocollo GRP. I circuiti del fabric dello switch contengono due tipi di schede:
Schede orologio e programmazione (CSC)
Schede fabric switch (SFC)
Se si verifica un errore in una di queste schede, i messaggi ping non possono più passare attraverso la struttura. In questo caso, dovrebbero essere visualizzati anche altri messaggi che fanno riferimento al fabric difettoso, ad esempio:
%FABRIC-3-CRC: Switch card 18
Utilizzare il comando show controllers fia per determinare se si dispone di un CSC o di un SFC errato. Usare il comando execute-on all show controller fia per acquisire l'output da tutte le schede di linea. Confrontare l'output del GRP con quello delle schede di linea per determinare se una scheda di fabric di commutazione difettosa deve essere sostituita.
L'output di esempio che segue indica un problema con sfc0 nello slot 18. Provare prima a ricollocare la scheda, quindi richiedere una sostituzione se il contatore di errore crc16 continua ad aumentare.
Router#show controllers fia Fabric configuration: Full bandwidth redundant Master Scheduler: Slot 17 From Fabric FIA Errors ----------------------- redund FIFO parity 0 redund overflow 0 cell drops 1 crc32 lkup parity 0 cell parity 0 crc32 0 Switch cards present 0x001F Slots 16 17 18 19 20 Switch cards monitered 0x001F Slots 16 17 18 19 20 Slot: 16 17 18 19 20 Name: csc0 csc1 sfc0 sfc1 sfc2 -------- -------- -------- -------- -------- Los 0 0 0 0 0 state Off Off Off Off Off crc16 0 0 4334 0 0 ! --- Check the CRCs under SFC0 (slot 18) To Fabric FIA Errors ----------------------- sca not pres 0 req error 0 uni FIFO overflow 0 grant parity 0 multi req 0 uni FIFO undrflow 0 cntrl parity 0 uni req 0 crc32 lkup parity 0 multi FIFO 0 empty DST req 0 handshake error 0 cell parity 0
In alcuni rapporti di errori ping dell'infrastruttura, il router ha segnalato messaggi di errore CRC (Cyclic Redundancy Check) prima dell'errore. Controllare i CRC sulle schede fabric di switching utilizzando il comando show controller fia sul GRP e il comando execute-on all show controller fia sulle schede di linea. Gli errori CRC solo sul GRP (e non su qualsiasi scheda di linea) indicano un GRP difettoso. Provare innanzitutto a ricollocare il GRP e quindi richiedere una sostituzione se gli errori CRC continuano ad aumentare.
I problemi relativi al software Inter-Process Communication (IPC) in esecuzione tra il GRP e le schede di linea sono stati risolti in diverse versioni del software Cisco IOS versione 12.0S. In questo caso, dovrebbero essere visualizzati alcuni messaggi di errore relativi all'IPC nel registro, insieme ai messaggi di timeout del ping dell'infrastruttura. Provare a eseguire l'ultima versione del software Cisco IOS per risolvere i problemi noti relativi a IPC. Vedere anche l'area Cisco Download Software per assistenza nella selezione di una release.
Vedere Risoluzione dei messaggi di errore relativi al CEF se l'output del comando show log visualizza un messaggio relativo alla base di informazioni sull'inoltro del CEF (FIB) simile a quello riportato di seguito:
%FIB-3-FIBDISABLE: Fatal error, slot 2: IPC failure
Utilizzare i seguenti comandi debug e show per risolvere i problemi di timeout/errori del ping dell'infrastruttura sul Cisco serie 12000 Internet Router:
debug fabric events: stampa gli errori rilevati dal GRP. Questo debug genera pochi messaggi e solo in una condizione di errore.
debug fabric ping: stampa gli eventuali errori rilevati dal GRP nel processo ping dell'infrastruttura. Questo debug genera pochi messaggi e solo in una condizione di errore.
Acquisire i seguenti comandi per ciascuna scheda di linea di ripristino. Sostituire X con il numero di slot appropriato.
execute-on slot X debug fabric events - Stampa gli errori rilevati dalla scheda di linea nelle risposte ping. Questo comando genera pochi messaggi e solo in una condizione di errore.
exec slot X debug fabric ping: stampa un messaggio quando la scheda di linea riceve un ping fabric. Questo debug genera una riga di output al secondo per ciascuna scheda di linea su cui è abilitato.
Quando la scheda di linea si blocca, acquisire i seguenti comandi dalla console GRP:
mostra tutti i dettagli del contesto
mostra fabric
show controller
show controllers csar queue
esegui su tutti i file show controller
show tech
show log
Acquisire anche i seguenti comandi relativi allo stato della scheda di linea:
esecuzione nello slot <slot#> show proc CPU
esegui-on slot <slot#> show controller to fab queue
esecuzione nello slot <slot#> show controller to fab stat
esecuzione nello slot <slot#> show controller frfab queue
esecuzione nello slot <slot#> show controller frfab stat
esecuzione nello slot <slot#> show ipc stat
esegui-on slot <slot#> show ipc queue
esecuzione nello slot <slot#> show stack
esecuzione su slot <slot#> show tech
Se il problema persiste anche dopo aver eseguito tutte le procedure di risoluzione dei problemi, raccogliere tutte le informazioni richieste e contattare il rappresentante Cisco TAC per risolvere il problema.
Di seguito viene riportato l'output di alcuni utili comandi show:
router#show controllers csar From Fabric Error Stats ------------------------ 0 out of order, 0 unexpected first 0 unexpected last, 0 unknown rx type, 0 corrupted pak, 0 parity 0 first/last, 0 sequence, 0 cell avail, 0 reassembly, To Fabric Stats ------------------------ Slot Tx Pkts TX Th Pkts Rx Pkts Rx Th Pkts To Fab timeout 0 580278 490214 281061 1336470 0 1 18854 66592 18390 945419 0 2 6 50824 0 896290 0 3 0 0 0 0 0 4 0 51909 0 895430 0 5 0 0 0 0 0 6 0 35113 0 880247 0 7 0 52690 0 52690 0 8 0 0 0 0 0 9 0 0 0 0 0 10 0 0 0 0 0 11 0 0 0 0 0 12 0 0 0 0 0 13 0 0 0 0 0 14 0 0 0 0 0 15 0 0 0 0 0 0 too big, 1 Buf0 free, 1 Buf1 free 0 Copy fail Fabric access Error Stats -------------------------- 0 parity errors, 0 bad access size, 0 invalid address 0 queue full parity, 0 flushed buffer router#show controllers fia Fabric configuration: Full bandwidth, nonredundant fabric Master Scheduler: Slot 16 From Fabric FIA Errors ----------------------- redund fifo parity 0 redund overflow 0 cell drops 0 crc32 lkup parity 0 cell parity 0 crc32 0 Switch cards present 0x001D Slots 16 18 19 20 Switch cards monitored 0x001D Slots 16 18 19 20 Slot: 16 17 18 19 20 Name: csc0 csc1 sfc0 sfc1 sfc2 -------- -------- -------- -------- -------- los 0 0 0 0 0 state Off Off Off Off Off crc16 0 254 0 0 0 ! --- Check the CRC error here. In this case CSC1 in slot 17. To Fabric FIA Errors ----------------------- sca not pres 0 req error 0 uni FIFO overflow 0 grant parity 0 multi req 0 uni FIFO undrflow 0 cntrl parity 0 uni req 0 crc32 lkup parity 0 multi FIFO 0 empty dst req 0 handshake error 0 cell parity 0
Per ulteriori informazioni sul comando show controller fia, consultare il documento How To Read the Output of the Show Controller fia Command.
router#show fabric Dest ToFab FrFab Bad Seq Unexpected Slot Pkts Pkts Pkts ---------------------------------------------------- Slot0 26327 26327 0 0 Slot1 26325 26325 0 0 Slot2 26321 26321 0 0 Slot4 26315 26315 0 0 Slot6 26311 26311 0 0 Slot7 26334 26334 0 0 multicast timeout 0 failed pak 0 Current fabric timeout is 6000 fabric send fails 58
Per ulteriore assistenza dopo aver completato la procedura di risoluzione dei problemi descritta in precedenza e per creare una richiesta di assistenza con Cisco TAC, allegare le seguenti informazioni alla richiesta per risolvere i problemi di ping sull'infrastruttura sul Cisco serie 12000 Internet Router: |
---|
Nota: se possibile, non ricaricare o spegnere e riaccendere manualmente il router prima di raccogliere le informazioni di cui sopra, in quanto ciò potrebbe causare la perdita di informazioni importanti necessarie per determinare la causa principale del problema. |
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
15-Jan-2008 |
Versione iniziale |