In questo documento vengono descritte le condizioni in cui un router incrementa l'errore ignorato nell'output del comando show interface atm. Viene inoltre illustrato come risolvere il problema.
Quando arriva una cella, questa viene prima memorizzata nella cella FIFO (Cell First-In First-Out) del framer. Quindi, si sposta nel buffer delle celle di segmentazione e riassemblaggio ATM (SAR) e viene riassemblato utilizzando il buffer dei pacchetti host sul bus PCI (Peripheral Component Interconnect). Una volta completato un pacchetto, il driver host ne viene informato ed elaborato. Mentre le interruzioni e i sovraccarichi indicano la mancanza di buffer FIFO di ricezione rispettivamente nei chip framing e SAR, gli errori ignorati indicano la mancanza di buffer di memoria del pacchetto. In genere, gli errori ignorati si verificano quando una o più interfacce di output relativamente lente contengono tutti i buffer di input allocati all'PA-A3. Gli errori ignorati aumentano anche quando la CPU è molto utilizzata e non sono disponibili cicli durante i quali rifornire l'anello di ricezione dei buffer di pacchetto di un'interfaccia.
Questo output di esempio del comando show interface ATM è stato acquisito su un router Cisco serie 7500 con un adattatore della porta PA-A3, conosciuto anche come Enhanced ATM PA:
router#show interface atm1/0/0 ATM1/0/0 is up, line protocol is up Hardware is cyBus ENHANCED ATM PA MTU 4470 bytes, sub MTU 4470, BW 44209 Kbit, DLY 190 usec, rely 255/255, load 1/255 Encapsulation ATM, loopback not set, keepalive not set Encapsulation(s): AAL5 AAL3/4 4096 maximum active VCs, 1 current VCCs VC idle disconnect time: 300 seconds Last input never, output 00:03:14, output hang never Last clearing of "show interface" counters never Queueing strategy: fifo Output queue 0/40, 0 drops; input queue 0/75, 0 drops 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 588 packets input, 7430 bytes, 0 no buffer Received 0 broadcasts, 0 runts, 0 giants 0 input errors, 0 CRC, 0 frame, 0 overrun, 45 ignored, 0 abort 5 packets output, 560 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets 0 output buffers copied, 0 interrupts, 0 failures
Nessun requisito specifico previsto per questo documento.
Per la stesura del documento, sono stati usati router Cisco serie 7200 e 7500.
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.
Sui router Cisco serie 7200, i buffer di trasmissione derivano dai buffer di ricezione di proprietà di altre schede di porta. Questa progettazione si applica anche ai router serie 7500 quando il pacchetto viene commutato localmente su un altro PA sullo stesso Versatile Interface Processor (VIP).
Il software Cisco IOS® limita il numero di buffer host di ricezione per interfaccia. In origine, al PA-A3 erano stati assegnati 400 buffer host quando veniva utilizzato con un NPE-150 dotato di 1 MB di SRAM. Per visualizzare il numero di buffer dell'host di interfaccia, usare il comando show controller atm.
7200#show controller atm 3/0 Interface ATM3/0 is up Hardware is ENHANCED ATM PA - DS3 (45Mbps ) Lane client mac address is 0030.7b1e.9054 Framer is PMC PM7345 S/UNI-PDH, SAR is LSI ATMIZER II Firmware rev: G119, Framer rev: 1, ATMIZER II rev: 3 idb=0x61499630, ds=0x6149E9C0, vc=0x614BE940 slot 3, unit 2, subunit 0, fci_type 0x005B, ticks 73495 400 rx buffers: size=512, encap=64, trailer=28, magic=4 Curr Stats: rx_cell_lost=0, rx_no_buffer=0, rx_crc_10=0 rx_cell_len=0, rx_no_vcd=0, rx_cell_throttle=0, tx_aci_err=0 [output omitted]
La serie 7200 generalmente memorizza i pacchetti in buffer di particelle private, allocati dal pool di memoria I/O. I buffer di particelle privati riducono il conflitto per le risorse del buffer. I pool privati sono statici e vengono allocati con un numero fisso di buffer durante l'inizializzazione del software Cisco IOS. Impossibile creare nuovi buffer su richiesta per questi pool. PA-A3 è considerato l'adattatore della porta ad ampia larghezza di banda per 7200. Quando si installa il modulo, consultare le linee guida per la configurazione hardware della scheda di porta Cisco serie 7200.
Se il pacchetto non può essere elaborato completamente al momento dell'interrupt, il driver di interfaccia "riunisce" il pacchetto in un buffer contiguo nella DRAM nel pool pubblico e prepara il pacchetto per la commutazione di contesto.
Il comando show buffers visualizza sia il pool pubblico che quello privato.
7200#show buffers Buffer elements: 499 in free list (500 max allowed) 886005 hits, 0 misses, 0 created [output omitted] Private particle pools: ATM2/0 buffers, 512 bytes (total 400, permanent 400): 0 in free list (0 min, 400 max allowed) 400 hits, 0 fallbacks 400 max cache size, 0 in cache 14 buffer threshold, 1 threshold transitions
Oltre ai pool di interfacce pubbliche e private, Cisco IOS crea anche speciali strutture di controllo del buffer, chiamate anelli, nella memoria I/O. IOS e i driver di interfaccia utilizzano questi anelli per controllare i buffer utilizzati per ricevere e trasmettere i pacchetti ai supporti. Gli anelli sono in realtà una struttura di controllo comune utilizzata da molti tipi di media controller per gestire la memoria dei pacchetti in attesa di essere ricevuti o trasmessi. Gli anelli stessi sono una lista collegata circolare di puntatori alle particelle. IOS crea questi anelli per conto dei media controller e quindi li gestisce insieme ai driver di interfaccia.
Ogni interfaccia ha una coppia di anelli:
Anello di ricezione per la ricezione dei pacchetti.
Un anello di trasmissione per la trasmissione dei pacchetti.
Questi anelli hanno dimensioni fisse determinate da diversi fattori, e in alcuni casi dalla configurazione dell'utente.
Sulla piattaforma serie 7200, i buffer del pacchetto dell'anello di trasmissione provengono dall'anello di ricezione dell'interfaccia di origine di un pacchetto commutato o da un pool pubblico se il pacchetto è stato originato da IOS. Vengono deallocati dall'anello di trasmissione e restituiti al pool originale dopo la trasmissione dei dati del payload.
Sui router Cisco serie 7500, i pacchetti in arrivo possono essere commutati localmente all'indirizzo VIP o commutati dal Route Switch Processor (RSP). Il VIP archivia i pacchetti in particelle di memoria PCI nella SRAM. La quantità di memoria PCI varia a seconda del modello VIP. Ad esempio, un VIP con una memoria PCI da 512 kB può supportare un singolo PA-A3 con alcuni circuiti virtuali (VC) che presentano burst occasionali. Una maggiore quantità di memoria PCI consente all'PA-A3 di sostenere picchi di pacchetti più lunghi. Per ulteriori informazioni, consultare le guide alla configurazione di Versatile Interface Processor.
Gli errori ignorati indicano che il PA-A3 sta esaurendo i buffer dei pacchetti host dell'interfaccia. Questi buffer vengono visualizzati nell'output del comando show buffers.
In genere, l'PA-A3 esaurisce i buffer dell'host di interfaccia quando alimenta un'interfaccia di uscita o VC relativamente più lenta. In questa configurazione, PA-A3 può sovraccaricare l'interfaccia in uscita a causa di una mancata corrispondenza delle velocità di interfaccia. Poiché l'interfaccia di uscita a velocità più lenta non può restituire i buffer alla stessa velocità alla quale PA-A3 li sta rimuovendo dalla coda alla coda di attesa dell'output, un ritardo nella restituzione del buffer causa l'esaurimento dei buffer di input in entrata. Quando si verifica questa condizione, il contatore PA-A3 viene ignorato. Questo problema è più visibile nei vecchi Network Processing Engine (NPE), come NPE-150.
In altre parole, un'interfaccia in uscita più lenta rallenta la velocità di rifornimento dei crediti in ricezione dell'interfaccia ATM in entrata. Questo flusso di pacchetto interrompe il presupposto che l'interfaccia in uscita restituisca il buffer alla velocità del tempo di gestione del buffer.
Tuttavia, il contatore ignorato può aumentare anche quando sono disponibili buffer host. Tali errori aumentano quando il driver della scheda di rete della porta inizia a limitare uno o più VC e interrompe l'accettazione di nuovi pacchetti. Lo scopo di tali cadute è quello di impedire a un VC "aggressivo" di allocare troppi buffer di pacchetto e alla fine affamare gli altri VC di risorse di buffer.
Utilizzare il comando show controller atm per determinare se la condizione di limitazione è attiva. L'ATM show controller visualizza due valori importanti:
rx_ threshold - Definisce il numero massimo di particelle di ricezione che il PA-A3 può contenere, dopo il quale il microcodice inizia a regolare l'uso delle particelle di ricezione tra i VC.
rx_count - Definisce il numero corrente di particelle di ricezione mantenute dal driver PA-A3.
In questo output di esempio di show controller atm, rx_threshold è uguale a rx_count.
Control data: rx_max_spins=73, max_tx_count=35, tx_count=8 rx_threshold=1600, rx_count=1600, tx_threshold=4608 tx bfd write indx=0x349, rx_pool_info=0x609EE860
Quando rx_count supera rx_threshold, il pacchetto successivo ricevuto da PA-A3 viene controllato per verificare se un VC occupa troppi buffer di pacchetto. In tal caso, PA-A3 scarta questo pacchetto in entrata fino a quando il numero totale di particelle di ricezione detenute da questa VC che viola la quota non scende al di sotto. Per impostazione predefinita, a un VC viene assegnato un limite di credito in ricezione per VC che deriva dal supporto di una frammentazione fino a 10 ms per pacchetti da 64 byte o almeno due pacchetti di dimensioni MTU. Il limite di ricezione viene inoltre ridimensionato in modo da supportare le dimensioni massime di burst (MBS) delle celle dal lato di trasmissione. Usare il comando show atm pvc per visualizzare il valore calcolato.
Durante la risoluzione dei problemi relativi agli errori ignorati in aumento, raccogliere queste informazioni prima di contattare il supporto tecnico Cisco:
Quali altre interfacce risiedono sul router? Queste interfacce sono interfacce ad alta o bassa velocità?
Che tipo di motore di elaborazione di rete o di servizi di rete è installato?
Qual è lo schema del traffico attraverso le interfacce? Un'interfaccia ATM veloce alimenta un'interfaccia in uscita lenta?
Qual è la quantità di traffico (e il numero di pacchetti) che viene presentata al router quando il contatore ignorato aumenta?
Oltre al contatore ignorato, aumentano anche altri contatori degli errori di input?
Verificare se il router dispone di memoria sufficiente per supportare le schede e le funzionalità della porta configurate. Eseguire questi comandi più volte e cercare un modello:
show process cpu
mostra riepilogo memoria
Gli errori ignorati possono essere risolti regolando i valori sull'interfaccia in uscita, su VC o sull'interfaccia PA-A3 in entrata.
Di seguito vengono descritte le tecniche di tuning per l'interfaccia in uscita:
Limitare il numero di buffer che le interfacce in uscita possono contenere utilizzando la coda FIFO con dimensioni di coda limitate. Fare riferimento a questo esempio utilizzando un'interfaccia seriale:
interface Serial1/0 no fair-queue hold-queue x out
Per impostazione predefinita, la coda di attesa di output è impostata su 40. Se la coda di attesa è stata aumentata, reimpostare il valore su 40, ma evitare di configurare un valore inferiore a quello predefinito. Per eseguire la regolazione di base del buffer, fare riferimento a Regolazione buffer per tutti i router Cisco.
Usare il comando tx-ring-limit per ridurre le dimensioni dell'anello di trasmissione sull'interfaccia in uscita. La dimensione dell'anello di trasmissione deve essere sufficientemente piccola da evitare l'introduzione della latenza dovuta all'accodamento e deve essere sufficientemente grande da evitare cadute e un conseguente impatto sul flusso basato su TCP. Per ulteriori informazioni, fare riferimento a Comprensione e ottimizzazione del valore limite di anello tx.
Se il PA-A3 alimenta un VC in uscita, aumentare la frequenza cellulare del VC in uscita. Fare riferimento alla sezione Risoluzione dei problemi di input e output sugli adattatori porte ATM PA-A3 per uno scenario e le linee guida.
Implementazione del traffic shaping ATM di output per ridurre la quantità di buffer sull'interfaccia di uscita. Per ulteriori informazioni, fare riferimento a Descrizione della categoria di servizi VBR-nrt e del Traffic Shaping ATM per VC ATM.
Se i contatori ignore aumentano a causa di un elevato utilizzo della CPU, consultare il documento sulla risoluzione dei problemi di un elevato utilizzo della CPU sul router Cisco.
Si consideri l'opportunità di aggiornare PA-A6 per migliorare le prestazioni rispetto all'adattatore della porta PA-A3 ATM. PA-A6 fornisce prestazioni di velocità di linea utilizzando pacchetti da 128 byte sui router Cisco serie 7200 che utilizzano i motori di elaborazione NPE-400 e NSE-1.
L'ID bug Cisco CSCdp96197 (solo utenti registrati) ha introdotto la possibilità di regolare il limite degli anelli di ricezione con il comando rx-limit. Questa tecnica è efficace solo quando il problema è causato da uno o più VC che violano la loro allocazione individuale di buffer.
Il comando rx-limit consente di specificare la percentuale del totale dei buffer di ricezione allocati a un determinato VC. Un valore di limite rx più elevato consente al VC (che agisce come interfaccia logica di input) di archiviare un numero maggiore di buffer in attesa nelle code di uscita delle interfacce più lente o dei VC in uscita più lenti.
Verificare la configurazione con il comando show atm vc <vcd> o show atm pvc <vpi>/<vci>, come mostrato di seguito:
7200#show atm pvc 1/100 ATM1/0.1: VCD: 14, VPI: 1, VCI: 100 UBR, PeakRate: 149760 AAL5-LLC/SNAP, etype:0x0, Flags: 0xC20, VCmode: 0x0 OAM frequency: 0 second(s), OAM retry frequency: 1 second(s), OAM retry frequency: 1 second(s) OAM up retry count: 3, OAM down retry count: 5 OAM Loopback status: OAM Disabled OAM VC state: Not Managed ILMI VC state: Not Managed Rx Limit: 25 percent InARP frequency: 15 minutes(s) Transmit priority 4 InPkts: 0, OutPkts: 0, InBytes: 0, OutBytes: 0 InPRoc: 0, OutPRoc: 0 InFast: 0, OutFast: 0, InAS: 0, OutAS: 0 InPktDrops: 0, OutPktDrops: 0 CrcErrors: 0, SarTimeOuts: 0, OverSizedSDUs: 0, LengthViolation: 0, CPIErrors: 0 Out CLP=1 Pkts: 0 OAM cells received: 0 F5 InEndloop: 0, F5 InSegloop: 0, F5 InAIS: 0, F5 InRDI: 0 F4 InEndloop: 0, F4 InSegloop: 0, F4 InAIS: 0, F4 InRDI: 0 OAM cells sent: 0 F5 OutEndloop: 0, F5 OutSegloop: 0, F5 OutRDI: 0 F4 OutEndloop: 0, F4 OutSegloop: 0, F4 OutRDI: 0 OAM cell drops: 0 Status: UP
Aumentare il numero di buffer host allocati all'appliance PA-A3, in base al motore di elaborazione di rete o al motore dei servizi di rete installato nel router serie 7200. L'ID bug Cisco CSCdt74722 (solo utenti registrati) aumenta il numero di buffer host disponibili per l'uso da parte dell'AP-A3 per la ricezione dei dati in arrivo. I buffer host aggiuntivi sono un'allocazione statica. Ciò significa che il software Cisco IOS non esegue alcun recupero dinamico basato sull'aggiunta o sulla rimozione di schede di porta.
La nuova generazione ATM port adapter PA-A6 ATM fornisce supporto per un massimo di 8191 VC rispetto ai 4096 VC per la PA-A3 ATM port adapter. L'adattatore della porta PA-A6 ATM consente inoltre di migliorare le prestazioni rispetto all'adattatore della porta PA-A3 ATM. PA-A6 fornisce prestazioni di velocità di linea utilizzando pacchetti da 128 byte sui router Cisco serie 7200 che utilizzano i motori di elaborazione NPE-400 e NSE-1.
Nota: l'adattatore della porta PA-A6 ATM non è attualmente supportato sui router Cisco serie 7500. Inoltre, non è al momento disponibile su Cisco 7600 FlexWAN.
Questa tabella fornisce il numero predefinito di particelle nel pool di interfacce private per gli adattatori di porte ATM PA-A3 e PA-A6.
Network Processing o Services Engine | Dimensioni delle particelle | Particelle predefinite ( Valore buffer di input) |
---|---|---|
NPE-225 e versioni successive | 512 | 1200 |
NPE-300 e NSE-1 | 512 | 2400 |
NPE-400 | 512 | 4000 |
NPE-G1 | 512 | 4000 |
Usare il comando show controller atm e il comando show buffer per visualizzare il numero di buffer di ricezione allocati all'appliance PA-A3.
router#show controller atm 5/0 Interface ATM5/0 is up Hardware is ENHANCED ATM PA - OC3 (155000Kbps) Framer is PMC PM5346 S/UNI-155-LITE, SAR is LSI ATMIZER II Firmware rev: G127, Framer rev: 0, ATMIZER II rev: 3 idb=0x62948598, ds=0x6294FEA0, vc=0x6297F940 slot 5, unit 2, subunit 0, fci_type 0x0056, ticks 120012 1200 rx buffers: size=512, encap=64, trailer=28, magic=4 [output omitted] router# show buffer [output omitted] Private particle pools: Serial4/0 buffers, 512 bytes (total 192, permanent 192): 0 in free list (0 min, 192 max allowed) 192 hits, 0 fallbacks 192 max cache size, 128 in cache 10 buffer threshold, 0 threshold transitions Serial4/1 buffers, 512 bytes (total 192, permanent 192): 0 in free list (0 min, 192 max allowed) 192 hits, 0 fallbacks 192 max cache size, 128 in cache 10 buffer threshold, 0 threshold transitions Serial4/2 buffers, 512 bytes (total 192, permanent 192): 0 in free list (0 min, 192 max allowed) 192 hits, 0 fallbacks 192 max cache size, 128 in cache 10 buffer threshold, 0 threshold transitions Serial4/3 buffers, 512 bytes (total 192, permanent 192): 0 in free list (0 min, 192 max allowed) 192 hits, 0 fallbacks 192 max cache size, 128 in cache 10 buffer threshold, 0 threshold transitions ATM5/0 buffers, 512 bytes (total 1200, permanent 1200): 0 in free list (0 min, 1200 max allowed) 1200 hits, 1 misses
Nell'output del comando show buffers, 0 in free list indica che tutti i buffer del pool di particelle private sono gestiti dal driver di interfaccia. Utilizzare i contatori packet and drop nell'output show interface per verificare se il PA-A3 o il PA-A6 hanno memoria sufficiente.
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
05-Jun-2005 |
Versione iniziale |