Il software Cisco IOS® supporta diversi meccanismi per facilitare l'inoltro del traffico con un ritardo minimo e un'elevata velocità di trasmissione. Questo documento spiega come determinare il percorso di switching o inoltro dei pacchetti Cisco IOS.
Nota: in questo documento vengono illustrati la commutazione di contesto, la commutazione rapida e solo Cisco Express Forwarding (CEF).
I lettori di questo documento devono essere a conoscenza dei seguenti argomenti:
Software Cisco IOS
Piattaforme Cisco serie 1600, 2500 e 3600
Il documento può essere consultato per tutte le versioni software o hardware.
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
Lo switching Cisco IOS definisce il flusso di pacchetto attraverso il router. In particolare, determina la velocità con cui il pacchetto può essere inoltrato attraverso il router e anche in quali buffer fisici vengono memorizzati i pacchetti.
Durante la storia di Cisco IOS, sono stati sviluppati diversi metodi di commutazione. Alcuni metodi sono supportati solo su piattaforme specifiche. Il metodo di commutazione più recente è il CEF. Quando il CEF è abilitato a livello globale (comportamento predefinito), viene abilitato anche il comando ip route-cache cef specifico dell'interfaccia. Questo comando assicura che la commutazione CEF venga eseguita per i pacchetti che entrano in questa interfaccia. In alcuni casi, se è necessario disabilitare il protocollo CEF su una sola interfaccia, viene aggiunto il comando no ip route-cache cef. In questo modo, la commutazione CEF viene disabilitata solo per l'interfaccia interessata. Cisco IOS non aggiunge da solo il comando no ip route-cache a running-config quando viene forzato a disabilitare il protocollo CEF. È stato introdotto su molte piattaforme della linea principale Cisco IOS 12.0, in particolare sulle piattaforme di fascia bassa e media come Cisco serie 1600, 2500 e 3600.
Quando un router riceve un pacchetto su un'interfaccia di routing, rimuove prima le informazioni del frame di layer 2 (L2). Infine, memorizza il pacchetto di layer 3 (L3) nella memoria di input/output (I/O). L'operazione da eseguire successivamente dipende dal percorso di commutazione del pacchetto.
Questa procedura può essere usata per verificare che i pacchetti seguano il percorso di commutazione CEF:
Confermare che l'opzione CEF sia abilitata a livello globale e su una particolare interfaccia.
router#show ip cef %CEF not running
Usare il comando ip cef in modalità di configurazione globale per abilitare il protocollo CEF (centrale).
Nota: sui Cisco serie 7200, CEF è il metodo di commutazione Cisco IOS predefinito in una delle prossime versioni di Cisco IOS.
Usare il comando show ip cef prefix per verificare che i prefissi siano elencati.
router#show ip cef Prefix Next Hop Interface 0.0.0.0/32 receive 192.168.0.0/30 attached Serial2/0/0:1 192.168.0.0/32 receive
Confermare che il CEF sia abilitato su un'interfaccia specifica.
Usare il comando show cef interface x/x per cercare "switching IP CEF abilitato" o "switching IP distributed CEF (dCEF) abilitato".
router#show cef interface fastEthernet 0/0/0 FastEthernet0/0/0 is up (if_number 2) Internet address is 192.168.1.253/24 ICMP redirects are always sent Per packet loadbalancing is disabled Inbound access list is not set Hardware idb is FastEthernet0/0/0 Fast switching type 1, interface type 18 IP Distributed CEF switching enabled Fast flags 0x0. ifindex 1(1) Slot 0 Slot unit 0 VC -1 Hardware transmit queue ptr 0x48001A00 (0x48001A00) Transmit limit accumulator 0x48001A02 (0x48001A02) IP MTU 1500
Usare il comando show ip interface per visualizzare i metodi di commutazione Cisco IOS abilitati.
router#show ip interface fastethernet 1/0/0.1 FastEthernet1/0/0.1 is up, line protocol is up IP fast switching is enabled IP fast switching on the same interface is enabled IP Flow switching is disabled IP CEF switching is enabled IP Distributed switching is enabled IP Fast switching turbo vector IP Normal CEF switching turbo vector IP multicast fast switching is enabled IP multicast distributed fast switching is disabled IP route-cache flags are Fast, Distributed, No CEF
In questo output, il flag "No CEF" indica che il CEF è stato disabilitato a causa del comando no ip route-cache cef su una particolare interfaccia. Il flag "CEF" indica che il CEF viene eseguito. In uno stato stazionario, entrambi i flag non devono essere visualizzati. L'ID bug Cisco CSCdr80269 (solo utenti registrati) risolve alcune rare condizioni che possono causare la visualizzazione di entrambi i flag. Per ulteriori informazioni sugli ID dei bug, consultare il Bug Toolkit (solo utenti registrati).
Confermare che la maggior parte dei pacchetti che passano attraverso il router sono a commutazione CEF.
Usare il comando show interface x/x stat per determinare il numero di pacchetti e byte che il router ha inoltrato tramite "Processore" anziché tramite "Route cache". Notare che la "Route cache" include sia pacchetti a commutazione rapida che pacchetti a commutazione CEF.
router#show interface stats FastEthernet0/0 Switching path Pkts In Chars In Pkts Out Chars Out Processor 95084 26211621 33493 3386174 Route cache 24581 1132797 24542 13297583 Distributed cache 0 0 0 0 Total 119665 27344418 58035 16683757
Utilizzare il comando show ip cache per determinare se esiste una voce della cache IP e se il pacchetto segue il percorso di commutazione veloce. La commutazione rapida si basa su una cache route su richiesta per accelerare l'inoltro dei pacchetti tramite un router. Il codice del driver in esecuzione sull'hardware dell'interfaccia trasferisce temporaneamente il controllo al codice di commutazione veloce, che cerca nella cache route un frame e altre informazioni create da un pacchetto trasmesso in precedenza. Se la cache dei percorsi contiene una voce, il codice di commutazione veloce cerca di inviare il pacchetto direttamente all'interfaccia di destinazione.
router#show ip cache IP routing cache 0 entries, 0 bytes 0 adds, 0 invalidates, 0 refcounts Minimum invalidation interval 2 seconds, maximum interval 5 seconds, quiet interval 3 seconds, threshold 0 requests Invalidation rate 0 in last second, 0 in last 3 seconds Prefix/Length Age Interface Next Hop
Queste procedure descrivono una procedura più specifica per verificare che i pacchetti vengano inoltrati usando il CEF.
Abilitare CEF con il comando ip cef.
Eseguire il comando clear ip cache per cancellare le voci della cache a commutazione rapida.
Avvia il flusso del traffico.
Eseguire il comando show ip cache. Confermare che non vengano visualizzate voci nella cache a commutazione rapida poiché i pacchetti sono a commutazione CEF.
Eseguire il comando show interface status e confermare gli accessi incrementali alla cache route in ingresso.
Nota: il contatore della cache route include sia i pacchetti a commutazione rapida che i pacchetti a commutazione CEF.
Disabilitare CEF con il comando no ip route-cache cef sull'interfaccia in entrata.
Eseguire il comando show interface stats e confermare gli accessi incrementali alla cache route.
Eseguire il comando show ip cache e confermare che le voci siano visibili dopo che Cisco IOS è tornato indietro al passaggio rapido.
Eseguire il comando no ip route-cache sull'interfaccia in uscita per disabilitare l'opzione di commutazione veloce. I pacchetti sull'interfaccia in entrata corrispondente vengono commutati in base al processo.
Nota: si consiglia di non configurare la commutazione di contesto in una rete a traffico elevato.
Se il protocollo CEF è abilitato sull'interfaccia di un router e si è determinato che la maggior parte dei pacchetti non è commutata dal protocollo CEF, acquisire i comandi quando si segnala il problema al Cisco Technical Assistance Center (TAC).
Nota: consultare le informazioni importanti sui comandi di debug prima di usare i comandi di debug.
show cef interface x/x: visualizza le informazioni sull'interfaccia CEF.
show ip cef prefix: visualizza la voce di prefisso nella base di informazioni per l'inoltro (FIB, Forwarding Information Base).
show adiacency interface detail - Visualizza i prefissi diretti e ricorsivi risolti tramite l'adiacenza.
show cef not-cef-switched: visualizza i pacchetti non commutati CEF.
debug ip cef drop: visualizza le informazioni di debug per i pacchetti CEF-drop.
L'interfaccia di input determina il percorso di switching di Cisco IOS utilizzato da un pacchetto. Quando si attivano o disattivano i metodi di commutazione su una particolare interfaccia, prendere in considerazione queste regole pratiche.
Interfaccia in ingresso | Interfaccia in uscita | Metodo di commutazione |
---|---|---|
CEF | Processo | CEF |
Processo | CEF | Veloce |
Processo | Fast Switching (cache route IP) | Fast Switching |
CEF | Fast Switching | CEF |
In altre parole, è necessario che il protocollo CEF sia abilitato sull'interfaccia in arrivo per far sì che i pacchetti vengano commutati dal protocollo CEF. Poiché il CEF decide l'inoltro dell'input, usare il comando no ip route-cache cef sull'interfaccia in entrata per disabilitare il CEF. Al contrario, poiché Cisco IOS crea una voce di cache a commutazione rapida dopo aver commutato un pacchetto, un pacchetto che arriva a un'interfaccia a commutazione di contesto e si spegne tramite un'interfaccia a commutazione rapida viene commutato rapidamente, usare il comando no ip route-cache sull'interfaccia in uscita per disabilitare la commutazione veloce. I seguenti tipi di traffico non sono commutati CEF:
Pacchetti per i quali non vi sono voci nella cache di commutazione
Pacchetti destinati al router
Traffico broadcast
Pacchetti IP con opzioni
Pacchetti che richiedono la traduzione del protocollo
Traffico crittografato
Il termine "punt" viene definito da Cisco per descrivere l'azione eseguita dal driver di dispositivo di un'interfaccia per inviare un pacchetto "verso il basso" al successivo livello di commutazione più veloce. L'elenco definisce l'ordine dei metodi di commutazione Cisco IOS preferiti (dal più veloce al più lento).
CEF distribuito
CEF
Switching rapido
Commutazione dei processi
Una punt si verifica nelle seguenti condizioni:
Il livello inferiore successivo non ha prodotto un percorso valido o, nel caso del CEF, un adiacente valido. In altre parole, se il processo di ricerca CEF non riesce a trovare una voce valida nella base delle informazioni di inoltro, il pacchetto viene indirizzato al successivo percorso di commutazione disponibile o viene scartato.
Una particolare funzione o incapsulamento di livello 2 non è supportato al livello più basso. Se il CEF supporta una particolare funzione, la proprietà di un pacchetto viene trasferita attraverso una serie di routine software nel "percorso della funzione" del CEF.
Una feature richiede una gestione speciale.
Quando alcune funzioni di output non sono supportate in CEF, viene installata una punt adiacency in CEF. Il filtro CEF attiva la modalità di commutazione migliore per tutti i pacchetti che vanno in tale adiacenza, al fine di commutarli tutti.
center#show ip cef 45.0.0.0 45.0.0.0/8, version 184, 0 packets, 0 bytes via 1.1.1.1, Tunnel0, 0 dependencies next hop 1.1.1.1, Tunnel0 valid punt adjacency CEF Packets passed on to next switching layer Slot No_adj No_encap Unsupported Redirect Receive Bad_ttl Options RP 0 0 0 0 5700 0 0 2 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0
Se l'adiacenza è incompleta, CEF considera che il router nel suo complesso (inclusi tutti gli altri percorsi di commutazione) non sappia come raggiungere il nodo adiacente. I pacchetti vengono punt per elaborare la commutazione in modo da avviare alcuni protocolli di risoluzione come il protocollo Address Resolution Protocol (ARP), che si conclude in seguito. In questa condizione, il CEF reindirizza un pacchetto ogni due secondi al percorso di commutazione successivo per evitare un flusso di pacchetti. Pertanto, in questa condizione, il ping all'indirizzo IP potrebbe avere esito negativo per circa il 50% e verrà visualizzato il messaggio "!.!.!.!.!" schema ping. Questa condizione si verifica anche quando la tabella CEF è danneggiata, come indicato da una differenza tra le informazioni del comando show ip route e le informazioni del comando show ip cef per un particolare indirizzo IP.
Nota: sul GSR (Gigabit Switch Router), la scheda di linea (LC) genera risposte echo ICMP (Internet Control Message Protocol) dall'interno del CEF. Se il pacchetto non è destinato a uno degli indirizzi locali dei GSR, non è coinvolto alcun processo. È commutato direttamente nell'hardware o sotto interrupt in dCEF, a seconda del LC usato.
Sul GSR, le funzioni di commutazione veloce e commutazione di contesto non sono disponibili. Se non è possibile risolvere un prefisso di destinazione in una voce di inoltro nelle tabelle LC in entrata, il pacchetto viene scartato. Solo i pacchetti che corrispondono a un'adiacenza di guancia vengono indirizzati al Gigabit Routing Processor (GRP). Inoltre, sul GSR, la CPU LC non reindirizza i pacchetti al GRP per le funzionalità e invia un messaggio ICMP non raggiungibile (purché il comando no ip unreachables non sia configurato). Sul GSR, l'unico traffico puntato al GRP sono i pacchetti destinati a un'interfaccia sul router o i pacchetti provenienti dal router.
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
28-May-2007 |
Versione iniziale |