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).
L'ACI (Application Centric Infrastructure) di Cisco offre diverse opzioni per classificare il traffico da gestire in modo specifico all'interno del fabric. Queste regole sono generalmente note come QoS (Quality of Service). La funzionalità QoS viene ottenuta principalmente impostando alcuni valori sui pacchetti nell'intestazione Ethernet (layer 2) o IP (protocollo Internet, layer 3), nota rispettivamente come Class of Service (COS) e Differentiated Services Code Point (DSCP).
ACI consente inoltre all'utente di rispettare, ignorare o modificare queste indicazioni QOS sul traffico dati in entrata o in uscita dalla struttura. Le analizzeremo nei dettagli.
Per lo scopo di questo documento ci limiteremo a una singola installazione di Pod in un tessuto ACI.
I test e le acquisizioni sono stati eseguiti su hardware di seconda generazione nella versione 3.2.x.
Ai fini del presente documento, utilizzeremo la seguente configurazione (diagramma indicativo).
È disponibile una struttura con due gruppi di endpoint (EPG, End Point Group): EPG-1 ed EPG-2. Ogni EPG è collegato al proprio dominio Bridge (BD).
BD per EPG-1 ha subnet 10.0.1.254/24
BD per EPG-2 ha subnet 10.0.2.254/24
I punti finali di entrambi gli EPG sono presenti nella Foglia 1 e 2.
Per comodità, passeremo brevemente in rassegna le diverse configurazioni QOS che esamineremo in dettaglio:
Scenario 1
In questo scenario, la struttura non sarà soggetta a criteri QOS. In questo modo viene verificato il comportamento predefinito dell'infrastruttura quando si gestisce il traffico precontrassegnato con valori COS o/e DSCP diversi.
Scenario 2
In questo scenario verrà abilitata l'opzione 'Dot1p Preserve':
Verranno quindi ripetuti alcuni flussi di traffico dello scenario 1 e verrà confrontata la gestione del traffico da parte del fabric
Scenario 3
In questo scenario verrà utilizzata l'opzione 'Classe QoS' disponibile in EPG Policy e impostata sui diversi livelli disponibili. Quindi, ripetiamo i flussi di traffico e confrontiamo la gestione di questo traffico da parte della struttura.
Scenario 4
Si tratta di una ripetizione dello scenario 3 con l'opzione 'Dot1p Preserve' abilitata.
Scenario 5
In questo scenario definiremo 4 criteri QoS personalizzati e li chiameremo sulla nostra politica EPG.
Esempio di una di queste politiche:
Queste policy QoS personalizzate aiuteranno a comprendere i diversi modi di contrassegnare i dati COS / DSCP sul traffico dati.
In questo scenario viene osservato il comportamento predefinito per il traffico pre-contrassegnato con alcuni valori COS o DSCP.
Solo due comportamenti preoccupanti:
1) Il COS è preservato?
2) Il DSCP è protetto?
La CSS non viene mantenuta per default in alcuna condizione. Il valore viene perso quando l'intestazione VLAN viene rimossa in entrata e in uscita il valore cos non è contrassegnato (viene utilizzato il valore cos 0)
ESEMPIO 1
In questo caso, il traffico viene inviato da E1D1 a E1D11. Il traffico a E1D1 è contrassegnato con Cos = 4.
Il traffico proviene da Leaf-1 e viene ricevuto da E1D11, ma ha perso la sua marcatura di costo.
DSCP viene mantenuto per impostazione predefinita
ESEMPIO 2
In questo caso il traffico viene inviato da E1D1 a E1D2. Il traffico a E1D1 è contrassegnato con Cos = 2 e DSCP = 12
Il traffico esce dalla Foglia 2 con 0 Cos e lo stesso DSCP (12). L'intestazione esterna presenta DSCP (16), illustrato nelle sezioni seguenti.
'Dot1P' è l'abbreviazione di 'IEEE 801.1p' - un sistema per la definizione di priorità nella qualità del servizio; questo componente fa parte dello standard di rete "Dot1Q" IEEE 802.1Q, che supporta la VLAN
Intestazione Dot1Q:
TPID : Tag Protocol Identifier- impostato su un valore 0x8100 per identificare il frame come Dot1Q con tag
TCI : Informazioni sul controllo tag , contiene i seguenti sottocampi:
PCP: Priority Code Point, un campo a 3 bit che fa riferimento alla classe di servizio Dot1P ed esegue il mapping al livello di priorità del frame
DEI : Drop Eligibility Indicator, un campo a 1 bit che può essere utilizzato insieme a PCP per indicare i frame che possono essere eliminati durante la congestione.
VIDEO: ID VLAN , un campo a 12 bit che specifica la VLAN a cui appartiene il frame.
Per impostazione predefinita (con o senza 'Dot1p preserve') il valore COS di un pacchetto dati in ingresso (in entrata nella struttura) viene codificato nell'intestazione esterna (intestazione VXLAN) DSCP. I 6 bit di DSCP vengono mappati come segue (prima della versione 4.0):
3 bit significativi = valore cos
3 bit inferiori = classe utilizzata sul traffico (livello 3 per impostazione predefinita)
Di seguito è riportata una tabella con alcuni valori DSCP di esempio:
Quando 'Dot1p Preserve' è abilitato, il valore DSCP dell'intestazione esterna viene decodificato per trovare il valore COS originale sul traffico dati. Questo viene quindi scritto nella parte Dot1P dell'intestazione VLAN in uscita da Leaf.
ESEMPIO 3
In questo caso il traffico viene inviato da E1D1 a E2D2. Il traffico in E1D1 è contrassegnato con Cos = 1 e DSCP = 8. Se la conservazione dot1p è abilitata, entrambi i valori vengono mantenuti se controllati nella destinazione E2D2.
Il traffico EPG può essere contrassegnato con alcuni livelli QOS. Il contrassegno predefinito è Livello 3. Prima della 4.0 erano disponibili solo tre livelli configurabili dall'utente: Livello 1-3. Dopo la 4.0 sono disponibili 6 livelli.
Il livello è rappresentato sull'altra intestazione (intestazione iVXLAN) COS come segue:
Prima della versione 4.0:
Livello 1 | Cos 2 |
Livello 2 | Cos 1 |
Livello 3 | Cos 0 |
Post 4.0:
Le combinazioni COS + DEI non menzionate di seguito sono riservate per uso interno.
Livello 1 | Cos 2 | Dei 0 |
Livello 2 | Cos 1 | Dei 0 |
Livello 3 | Cos 0 | Dei 0 |
Livello 4 | Cos 2 | Dei 1 |
Livello 5 | Cos 3 | Dei 1 |
Livello 6 | Cos 5 | Dei 1 |
Nota Anche se viene utilizzato il bit DEI, le classi 4, 5 e 6 non sono automaticamente idonee a essere eliminate durante la congestione. Il campo viene utilizzato solo per perché è un modo pratico per aumentare le classi (essendo adiacente a PCP)
ESEMPIO 4
In questo caso il traffico viene inviato da E1D1 a E2D2. Il traffico viene contrassegnato all'origine con CoS = 1 e DSCP = 8, mentre EPG-1 utilizza la classe QOS 'Livello 1'.
- Il livello 1 si riflette sull'intestazione esterna come CoS 2.
- Poiché il valore del CoS originale è 1 e il livello è 1, il valore del DSCP dell'intestazione esterna è 001010 = 10
- Caveat = se l'opzione Conserva CoS NON è abilitata quando si utilizza un livello su EPG, il CoS originale del frame dati viene scartato e quello corrispondente al livello viene posizionato sul frame in uscita (questo è stato testato in 3.2.x)
In questo scenario verrà inoltre attivata la conservazione Dot1P insieme all'utilizzo di un'assegnazione di classe QoS su EPG-1.
ESEMPIO 5
Si tratta della stessa impostazione di EXAMPLE 4 con l'aggiunta dell'opzione Dot1P Preserve abilitata. Se l'opzione Preserva Dot1P è abilitata, non verranno visualizzati valori imprevisti nel CoS del frame di uscita.
In questo scenario verrà definita una classe QoS personalizzata che verrà applicata all'origine EPG, EPG-1. Se vengono utilizzate entrambe le classi QoS e QoS personalizzata, quest'ultima avrà la precedenza.
Anche all'interno dei criteri QoS personalizzati, se vengono utilizzati sia "Dot1P Classifiers" che "DSCP to Priority Map", la mappa DSCP ha la precedenza.
La classe personalizzata verrà definita come segue:
- Il valore CoS di 4 deve corrispondere. In caso affermativo, il traffico viene classificato al livello 2 con CoS pari a 3 e DSCP CS3 (24)
ESEMPIO 6
In questo caso il traffico verrà inviato da E1D1 a E1D2. Il traffico viene contrassegnato in E1D1 con CoS 4 e DSCP 0. L'EPG-1 utilizza il criterio QoS personalizzato sopra indicato.
- La classe (livello 2) è espressa come CoS 1 nell'intestazione esterna
- Il CoS riscritto (3) insieme alla Classe è codificato in DSCP = 011001 = 25
Anche in questo caso viene osservato lo stesso avvertimento: se l'opzione Preservazione Dot1P non è abilitata, il valore CoS corrispondente al livello 2 si riflette sul frame dei dati in uscita. Cioè, su E1D2 vedremo che il frame ha CoS 1 e DSCP 24.
È possibile ottenere il CoS effettivo previsto (3) utilizzando Dot1P Preserve: