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).
In questo documento viene descritto come risolvere i problemi relativi alle prestazioni sugli Extender Fabric (FEX) che possono essere collegati agli switch Nexus serie 5000 o 6000.
Nota: nessuno dei comandi introdotti in questo documento comporta interruzioni. È necessario avere uno switch Nexus 2000 collegato a uno switch serie 5000 o 6000.
Collegare a FEX per eseguire i comandi show sulla riga di comando FEX:
Nexus# attach fex fex
fex>
Immettere la modalità di debug su FEX per eseguire comandi avanzati e specificare il nome di base di FEX. Fare riferimento alla Tabella 1. per i nomi di base FEX.
fex# dbgexec [prt/woo/red/pri]
Per uscire dalla modalità di esecuzione debug, utilizzare la sequenza di tasti CTRL+C:
fex> [CTRL+C]
Per uscire dal fex, usare il comando exit:
uscita fex#
Hi sono le porte che si trovano di fronte ai server sul FEX. Queste sono comunemente note come porte anteriori. Ogni porta anteriore su un FEX ha un numero HI. Questo numero è in genere diverso dal numero della porta, ma viene utilizzato per risolvere i problemi relativi ai comandi che fanno riferimento a una porta. Ciascun elemento di base tabula le porte anteriori in modo diverso.
Le NI sono le porte di controllo FEX sullo switch FEX che si connettono nuovamente allo switch padre. Questi sono anche chiamati uplink di rete. A seconda del modello, questi elementi hanno un numero NI univoco.
Queste porte sono il lato switch padre del collegamento univoco al server FEX. Queste porte sono configurate con switchport mode fex-fabric e un comando fex association.
Ogni FEX è progettato con un ASIC diverso. L'abbreviazione del nome ASIC viene utilizzata nella modalità di debug per eseguire i comandi.
La maggior parte dei modelli FEX dispone di un ASIC, tuttavia il 2148 ne ha 6, ciascuno con 8 porte anteriori. Nei comandi per la risoluzione dei problemi, questi comandi sono denominati rmon.
I nomi ASIC e le relative abbreviazioni sono elencati per riferimento:
Tabella 1.
Modello FEX | Nome ASIC | Abreviazione |
N2K-C2148T-1GE | sequoia | riga |
N2K-C224TP-1GE N2K-C2248TP-1GE |
portola | porta |
N2K-C223PP-10GE N2K-C232TM-10GE |
bosco | woo |
N2K-C2248TP-E-1GE | principessa | pri |
B22 | bosco | woo |
N2K-C232TM-E-10GE | bosco | woo |
N2K-C2248PQ-10GE | bosco/belmont | woo |
N2K-C2348UPQ-10GE | tiburone | barra |
Per interagire con l'output del contatore dell'interfaccia può essere necessario convertire il numero della porta anteriore in un numero HI. La conversione dipende dal modello di chassis FEX.
Nell'esempio, alla porta anteriore 26 (chassis-id/1/26) è stato assegnato rmon 3 HI 0:
switch# attach fex id_chassis
fex-[chassis_id]# show platform software redwood sts
Nell'esempio, alla porta anteriore 10 (135/1/10) è stato assegnato HI 9:
switch# attach fex chassis_id
fex-[id_chassis]# dbgexec portola
porta> fp
Nell'esempio, alla porta anteriore 20 (135/1/20) è stato assegnato HI 19:
switch# attach fex id_chassis
fex-[chassis_id]# show platform software woodside sts
Nell'esempio, HI28 viene mappato alla porta anteriore 29:
Questo comando visualizza le informazioni SFP (Small Form-Factor Pluggable) per la porta.
fex# show platform software woodside sfp rmon 0 HI5
Nell'esempio, l'SFP di HI5 è un 10G-Base-SR (LC) prodotto da CISCO-AVAGO:
Nota: Se si esegue questo comando su un modulo FEX che utilizza porte in rame, si noteranno errori del comando. Ciò è previsto perché non è presente alcun SFP da interrogare. Il prompt restituirà no SFP trovato quando la porta è in fibra, ma non contiene attualmente un SFP.
I comandi show possono essere eseguiti al prompt FEX delle porte HI e NI per visualizzare i contatori di interfaccia sul lato FEX dei collegamenti della porta FEX Fabric.
Questo comando visualizza la verifica del contatore della porta, in modo simile al comando show int:
fex-128# show platform software woodside rmon 0 HI0 +----------------------+----------------------+-----------------+--------------------------+----------------------+-----------------+ | TX | Current | Diff | RX | Current | Diff | +----------------------+----------------------+-----------------+--------------------------+----------------------+-----------------+ | TX_PKT_LT64 | 0| 0| RX_PKT_LT64 | 0| 0| | TX_PKT_64 | 0| 0| RX_PKT_64 | 0| 0| | TX_PKT_65 | 0| 0| RX_PKT_65 | 0| 0| | TX_PKT_128 | 0| 0| RX_PKT_128 | 0| 0| | TX_PKT_256 | 0| 0| RX_PKT_256 | 0| 0|
Nota: rmon 0 viene utilizzato solo quando FEX dispone di un'interfaccia di base host. I modelli 2224, 2248 e 2232 hanno un solo basic. Il modello 2148 dispone di sei elementi di base, quindi verranno utilizzati i valori da 0 a 5. Per ulteriori informazioni, vedere la sezione Mappatura porta anteriore.
Questo comando visualizza i contatori delle porte per gli uplink di rete in modo simile a show int. Questo comando mostra il lato FEX del collegamento. Questo comando non visualizza il lato switch padre del collegamento.
fex-128# show platform software woodside rmon 0 NI0 +----------------------+----------------------+-----------------+--------------------------+----------------------+-----------------+ | TX | Current | Diff | RX | Current | Diff | +----------------------+----------------------+-----------------+--------------------------+----------------------+-----------------+ | TX_PKT_LT64 | 0| 0| RX_PKT_LT64 | 0| 0| | TX_PKT_64 | 0| 0| RX_PKT_64 | 0| 0| | TX_PKT_65 | 0| 0| RX_PKT_65 | 0| 0| | TX_PKT_128 | 0| 0| RX_PKT_128 | 0| 0| | TX_PKT_256 | 0| 0| RX_PKT_256 | 0| 0|
Le gocce storiche possono essere visualizzate con il comando gocce. Questo mostra tutte le cadute sul FEX da quando è stato acceso.
Questo comando mostra anche le cadute verso la CPU FEX che non rappresenta le cadute del traffico di dati con contatori DROP8. Questi elementi possono essere ignorati.
Nota: tail drop [8] e TAIL_DROP8 rappresentano i tail drop per la CPU FEX e non è rilevante per la risoluzione dei problemi di prestazioni in quanto ciò accade in condizioni normali.
prt> drops
PRT_SS_CNT_TAIL_DROP1 : 3 SS0
PRT_SS_CNT_TAIL_DROP1 : 6 SS1
PRT_SS_CNT_TAIL_DROP1 : 1 SS2
PRT_SS_CNT_TAIL_DROP1 : 25 SS3
PRT_SS_CNT_TAIL_DROP1 : 2 SS5
PRT_SS_CNT_TAIL_DROP8 : 142 SS0
PRT_SS_CNT_TAIL_DROP8 : 73 SS1
PRT_SS_CNT_TAIL_DROP8 : 11 SS2
PRT_SS_CNT_TAIL_DROP8 : 62048 SS3
PRT_SS_CNT_TAIL_DROP8 : 4613 SS4
PRT_SS_CNT_TAIL_DROP8 : 552 SS5
Gli interrupt inviati alla CPU includono le gocce di coda, ossia le gocce dovute a congestione e mancanza di spazio del buffer. Per visualizzarli, usare il comando show new_ints:
Nota: la versione 6.0 e successive del codice utilizza show new_ints all
Nell'esempio viene mostrato come la perdita di dettagli dei frame nel buffer SS1:
prt> show new_ints
|-----------------------------------------------|
| SS1 : ssx_int_norm_td
|--+---------+----------------------------------+
| 1 | 00001c98 | tail drop[1] | frames are being tail dropped.
| 2 | 00005cac | tail drop[2] | frames are being tail dropped.
| 8 | 0000012e | tail drop[8] | frames are being tail dropped.
L'esempio mostra che l'indice 3 riceve errori di simbolo:
| NI3 : nix_xe_INT_xg
|--+---------+----------------------------------+
|2 |00000005 | rx_local_fault | Link is in local fault state
|3 |00000007 | rx_remote_fault | Link is in remote fault state
|4 |00000004 | rx_code_violation | MAC received unexpected XGMII control characters.
|5 |00000004 | rx_err_symbol | MAC received an XGMII error character.
|16|00000001 | rx_local_fault_edge | Local fault state has changed.
|17|00000001 | rx_remote_fault_edge | Remote fault state has changed.
|-----------------------------------------------|
L'esempio mostra che la coda FEX scarta i fotogrammi che entrano in NI3:
| SS4 : ssx_int_err
|--+---------+----------------------------------+
|0 |00031aa9 | wo_cr[0] | frames rcvd without credit for pausable classes. Pause is missing.
|1 |00014e21 | wo_cr[1] | frames rcvd without credit for pausable classes. Pause is missing.
|2 |00018a9f | wo_cr[2] | frames rcvd without credit for pausable classes. Pause is missing.
|3 |00025efb | wo_cr[3] | frames rcvd without credit for pausable classes. Pause is missing.
|-----------------------------------------------|
Il comando rate genera statistiche sulla velocità del traffico in tempo reale per una porta. A differenza di show int, non è una media, è la velocità dei dati correnti non elaborati in quel secondo. In questo esempio, l'NI 3 riceve attualmente 2,96 kbps nella direzione Rete - Host. Un show int sullo switch Nexus padre corrispondente mostra 2,96 Kbps in direzione TX sull'uplink FEX Fabric collegato all'interfaccia Nexus 3.
Le cadute di coda sono causate dall'esaurimento del buffer. In genere, il buffer si esaurisce quando più server eseguono contemporaneamente l'burst negli HIF oppure i buffer di uscita dell'host non possono svuotare il traffico in uscita in modo sufficientemente rapido da rifornire i crediti nei NIF.
Sono disponibili diverse opzioni per ridurre tale perdita.
Spostare i server con flussi di traffico bursty, come array di storage ed endpoint video, da FEX e collegarli direttamente alle porte base dello switch padre. In questo modo i server frammentati non esauriranno il buffer e non saranno più interessati dal traffico proveniente da host meno frequentati.
Gli switch Nexus serie 5000 e 6000 dispongono di buffer più grandi rispetto ai modelli FEX; per connettere i server frammentati alle porte di base si riduce la perdita di memoria in quanto i buffer delle porte di base sono in grado di gestire una frammentazione molto più grande.
Alcuni modelli di FEX possono sbloccare ulteriore spazio di buffer quando vengono aggiunti più uplink dal FEX allo switch padre. Ciò può potenzialmente arrestare le cadute sugli uplink di rete.
Tabella 2.
Modello | Aumento Del Buffer Durante L'Aggiunta Di Uplink |
2148 | nessuna |
2224 | aumento del buffer fino a 2 uplink |
2248TP | aumento del buffer fino a 4 uplink |
2232 | aumento del buffer fino a 4 uplink |
2248TP-E | nessuna |
2248PQ | nessuna |
La maggior parte dei modelli FEX può trarre vantaggio dalla condivisione del buffer HI su tutte le porte host. Se si osservano cali nell'HI, la condivisione del buffer potrebbe ridurre tali cali.
Modificare globalmente il limite della coda FEX:
5k(config)# no fex queue-limit (si applica globalmente a tutti i fax su quel 5k)
Modificare il limite della coda FEX per i singoli FEX:
Coda fax
5k(config)# fex 100
5k(config-fex)# no hardware [model] queue-limit
Nexus 6000 dispone di un'opzione aggiuntiva per modificare l'algoritmo di bilanciamento del carico da HIF a NIF. Per impostazione predefinita, anche se i pacchetti arrivano su porte HIF diverse, potrebbero comunque essere accodati allo stesso NIF. Con la modalità di bilanciamento del carico uplink abilitata, questi file vengono distribuiti su più NIF e consentono un utilizzo più uniforme dei buffer di uscita NIF.
6k(config)# modalità di bilanciamento del carico con uplink N2248PQ