Introduzione
Questo documento descrive come configurare e risolvere i problemi di QoS sul GRE del tunnel nel modello Nexus 9300 (EX-FX-GX).
Prerequisiti
Requisiti
Cisco raccomanda la conoscenza dei seguenti argomenti:
- QoS
- Tunnel GRE
- Nexus 9000
Componenti usati
Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:
- Hardware: N9K-C9336C-FX2
- Versione: 9.3(8)
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.
Premesse
È possibile usare il GRE (Generic Routing Encapsulation) come protocollo vettore per una varietà di protocolli passeggeri.
Nell'immagine vengono mostrati i componenti del tunnel IP per un tunnel GRE. Il pacchetto del protocollo passeggeri originale diventa il payload GRE e il dispositivo aggiunge un'intestazione GRE al pacchetto.
Il dispositivo aggiunge quindi l'intestazione del protocollo di trasporto al pacchetto e lo trasmette.
Il traffico viene elaborato in base alla classificazione e ai criteri creati e applicati alle classi di traffico.
Per configurare le funzionalità QoS, attenersi alla seguente procedura:
-
Vengono create classi che classificano i pacchetti in entrata nel nexus che soddisfano criteri quali l'indirizzo IP o i campi QoS.
-
Crea criteri che specificano le azioni da eseguire sulle classi di traffico, ad esempio monitoraggio, contrassegno o eliminazione dei pacchetti.
-
Applicazione dei criteri a una porta, a un canale di porta, a una VLAN o a una sottointerfaccia.
Valori DSCP di uso comune
Esempio di rete
Configurazione
Lo scopo della configurazione di QoS sul GRE del tunnel è impostare un DSCP per il traffico di una determinata VLAN da passare attraverso il tunnel GRE tra l'N9K-EX1 e l'N9K-EX2.
Il Nexus incapsula il traffico e lo invia sul GRE del tunnel senza perdere il contrassegno QoS, come è stato fatto in precedenza nella VLAN per il valore DSCP, in questo caso il valore di DSCP AF-11 viene usato per la VLAN 9.
Host-A
interface Ethernet1/3
switchport
switchport access vlan 9
no shutdown
interface Vlan9
no shutdown
ip address 192.168.9.9/24
Host-B
interface Ethernet1/3
switchport
switchport access vlan 18
no shutdown
interface Vlan18
no shutdown
ip address 192.168.18.18/24
Configurazione delle interfacce N9K-EX1
interface Ethernet1/1
ip address 10.10.10.1/30
no shutdown
interface Ethernet1/3
switchport
switchport access vlan 9
no shutdown
interface Tunnel1
ip address 172.16.1.1/30
tunnel source Ethernet1/1
tunnel destination 10.10.10.2
no shutdown
interface Vlan9
no shutdown
ip address 192.168.9.1/24
Configurazione del routing N9K-EX1
ip route 0.0.0.0/0 Tunnel
Configurazione QoS N9K-EX1
Poiché QoS non è supportato sull'interfaccia del tunnel GRE in NXOS, è necessario configurare e applicare i criteri del servizio nella configurazione VLAN. Come si può vedere, prima creare l'ACL in modo che corrisponda all'origine e alla destinazione, quindi impostare la configurazione QoS con il DSCP desiderato, infine utilizzare il criterio del servizio per la configurazione VLAN.
ip access-list TAC-QoS-GRE
10 permit ip any 192.168.18.0/24
class-map type qos match-all CM-TAC-QoS-GRE
match access-group name TAC-QoS-GRE
policy-map type qos PM-TAC-QoS-GRE
class CM-TAC-QoS-GRE
set dscp 10
vlan configuration 9
service-policy type qos input PM-TAC-QoS-GRE
Configurazione delle interfacce N9K-EX2
interface Ethernet1/1
ip address 10.10.10.2/30
no shutdown
interface Ethernet1/3
switchport
switchport access vlan 18
no shutdown
interface Tunnel1
ip address 172.16.1.2/30
tunnel source Ethernet1/1
tunnel destination 10.10.10.1
no shutdown
interface Vlan18
no shutdown
ip address 192.168.18.1/24
Configurazione del routing N9K-EX2
ip route 0.0.0.0/0 Tunnel
Risoluzione dei problemi
Verifica tunnel
Entrambi i comandi:
- show ip interface brief
- show interface tunnel 1 brief
Visualizza se il tunnel è attivo.
N9K-EX1# show ip interface brief
IP Interface Status for VRF "default"(1)
Interface IP Address Interface Status
Vlan9 192.168.9.1 protocol-up/link-up/admin-up
Tunnel1 172.16.1.1 protocol-up/link-up/admin-up
Eth1/1 10.10.10.1 protocol-up/link-up/admin-up
N9K-EX1# show interface tunnel 1 brief
--------------------------------------------------------------------------------
---------------------------
Interface Status IP Address
Encap type MTU
--------------------------------------------------------------------------------
---------------------------
Tunnel1 up 172.16.1.1/30
GRE/IP 1476
Entrambi i comandi
- show interface tunnel 1
- show interface tunnel 1 counters
Visualizza informazioni simili, ad esempio i pacchetti ricevuti e trasmessi.
N9K-EX1# show interface tunnel 1
Tunnel1 is up
Admin State: up
Internet address is 172.16.1.1/30
MTU 1476 bytes, BW 9 Kbit
Tunnel protocol/transport GRE/IP
Tunnel source 10.10.10.1 (Ethernet1/1), destination 10.10.10.2
Transport protocol is in VRF "default"
Tunnel interface is in VRF "default"
Last clearing of "show interface" counters never
Tx
3647 packets output, 459522 bytes
Rx
3647 packets input, 459522 bytes
N9K-EX1# show interface tunnel 1 counters
--------------------------------------------------------------------------------
--
Port InOctets InUcastPk
ts
--------------------------------------------------------------------------------
--
Tunnel1 459522 36
47
--------------------------------------------------------------------------------
--
Port InMcastPkts InBcastPk
ts
--------------------------------------------------------------------------------
--
Tunnel1 --
--
--------------------------------------------------------------------------------
--
Port OutOctets OutUcastPk
ts
--------------------------------------------------------------------------------
--
Tunnel1 459522 36
47
--------------------------------------------------------------------------------
--
Port OutMcastPkts OutBcastPk
ts
--------------------------------------------------------------------------------
--
Tunnel1 --
--
N9K-EX1#
Acquisizioni traffico
Acquisizioni SPAN
Questa immagine mostra come viene acquisita la richiesta ARP all'ingresso dell'interfaccia Ethernet 1/3 sullo switch N9K-EX1. È possibile notare che il traffico non è contrassegnato con il DSCP (AF11) che si desidera utilizzare, poiché l'acquisizione si trova all'ingresso dello switch.
L'immagine mostra l'acquisizione della richiesta ARP all'ingresso dell'interfaccia Ethernet 1/1 sullo switch N9K-EX2. Potete vedere che il traffico ha già il valore DSCP AF11 che dovete usare. Inoltre, il pacchetto è incapsulato dal tunnel configurato tra i due Nexus.
L'immagine mostra l'acquisizione della risposta ARP all'uscita dell'interfaccia Ethernet 1/3 sullo switch N9K-EX1. Potete vedere che il traffico ha ancora il valore DSCP AF11 che dovete usare. Inoltre, il pacchetto non è incapsulato dal tunnel configurato tra i due Nexus.
Questa immagine mostra l'acquisizione della risposta ARP all'output dell'interfaccia Ethernet 1/1 sullo switch N9K-EX2. Potete vedere che il traffico ha ancora il valore DSCP AF11 che dovete usare. Inoltre, il pacchetto è incapsulato dal tunnel configurato tra i due Nexus.
È importante notare che le acquisizioni del pacchetto non mostrano l'IP del tunnel per l'incapsulamento, in quanto il Nexus usa quelli fisici. Questo è il comportamento naturale del Nexus quando usa il tunneling GRE in quanto usano gli ip fisici per instradare i pacchetti.
Acquisizione ELAM
Usate l'acquisizione ELAM su N9KEX-2 con in-select 9 per visualizzare l'intestazione l3 esterna e l3 interna. È necessario filtrare in base all'indirizzo IP di origine e di destinazione.
debug platform internal tah elam
trigger init in-select 9
reset
set inner ipv4 src_ip 192.168.9.9 dst_ip 192.168.18.18
start
report
È possibile verificare che il Nexus riceva il pacchetto tramite l'interfaccia 1/1. Inoltre, si vede che l'intestazione l3 esterna è l'indirizzo IP fisico delle interfacce che sono collegate direttamente e l'intestazione interna l3 ha gli IP dell'host A e dell'host B.
SUGARBOWL ELAM REPORT SUMMARY
slot - 3, asic - 1, slice - 0
============================
Incoming Interface: Eth1/1
Src Idx : 0x41, Src BD : 4433
Outgoing Interface Info: dmod 2, dpid 10
Dst Idx : 0x3, Dst BD : 18
Packet Type: IPv4
Outer Dst IPv4 address: 10.10.10.2
Outer Src IPv4 address: 10.10.10.1
Ver = 4, DSCP = 10, Don't Fragment = 0
Proto = 47, TTL = 255, More Fragments = 0
Hdr len = 20, Pkt len = 108, Checksum = 0x3d7a
Inner Payload
Type: IPv4
Inner Dst IPv4 address: 192.168.18.18
Inner Src IPv4 address: 192.168.9.9
L4 Protocol : 47
L4 info not available
Drop Info:
----------
LUA:
LUB:
LUC:
LUD:
Final Drops:
Risoluzione dei problemi QoS
È possibile controllare la configurazione QoS come mostrato.
N9K-EX1# show running-config ipqos
!Command: show running-config ipqos
!Running configuration last done at: Thu Apr 4 11:45:37 2024
!Time: Fri Apr 5 11:50:54 2024
version 9.3(8) Bios:version 08.39
class-map type qos match-all CM-TAC-QoS-GRE
match access-group name TAC-QoS-GRE
policy-map type qos PM-TAC-QoS-GRE
class CM-TAC-QoS-GRE
set dscp 10
vlan configuration 9
service-policy type qos input PM-TAC-QoS-GRE
È possibile visualizzare i criteri QoS configurati sulla VLAN specificata e anche i pacchetti corrispondenti all'ACL associato alla mappa dei criteri.
N9K-EX1# show policy-map vlan 9
Global statistics status : enabled
Vlan 9
Service-policy (qos) input: PM-TAC-QoS-GRE
SNMP Policy Index: 285219173
Class-map (qos): CM-TAC-QoS-GRE (match-all)
Slot 1
5 packets
Aggregate forwarded :
5 packets
Match: access-group TAC-QoS-GRE
set dscp 10
È inoltre possibile cancellare le statistiche QoS con il comando mostrato di seguito.
N9K-EX1# clear qos statistics
Verificare l'ACL programmato nel software.
N9K-EX1# show system internal access-list vlan 9 input entries detail
slot 1
=======
Flags: F - Fragment entry E - Port Expansion
D - DSCP Expansion M - ACL Expansion
T - Cross Feature Merge Expansion
N - NS Transit B - BCM Expansion C - COPP
INSTANCE 0x2
---------------
Tcam 1 resource usage:
----------------------
LBL B = 0x1
Bank 2
------
IPv4 Class
Policies: QoS
Netflow profile: 0
Netflow deny profile: 0
Entries:
[Index] Entry [Stats]
---------------------
[0x0000:0x0000:0x0700] permit ip 0.0.0.0/0 192.168.18.0/24 [5]
Verificare l'ACL programmato nell'hardware.
N9K-EX1# show hardware access-list vlan 9 input entries detail
slot 1
=======
Flags: F - Fragment entry E - Port Expansion
D - DSCP Expansion M - ACL Expansion
T - Cross Feature Merge Expansion
N - NS Transit B - BCM Expansion C - COPP
INSTANCE 0x2
---------------
Tcam 1 resource usage:
----------------------
LBL B = 0x1
Bank 2
------
IPv4 Class
Policies: QoS
Netflow profile: 0
Netflow deny profile: 0
Entries:
[Index] Entry [Stats]
---------------------
[0x0000:0x0000:0x0700] permit ip 0.0.0.0/0 192.168.18.0/24 [5]
Con il comando mostrato qui, è possibile verificare le porte che stanno utilizzando la VLAN. Nell'esempio, questo valore è l'ID VLAN 9 e si può anche notare la policy QoS in uso.
N9K-EX1# show system internal ipqos vlan-tbl 9
Vlan range asked: 9 - 9
=================================================
Vlan: 9, pointer: 0x132e3eb4, Node Type: VLAN
IfIndex array:
alloc count: 5, valid count: 1, array ptr : 0x13517aac 0: IfI
ndex: 0x1a000400 (Ethernet1/3) Policy Lists (1): Flags: 01
Type: INP QOS, Name: PM-TAC-QoS-GRE, Ghost Id: 0x45001c7, Real Id: 0x450
01c8
Defnode Id: 0x45001c9
=================================================
N9K-EX1#