Introducción
Este documento describe cómo configurar y resolver problemas de QoS sobre GRE de túnel en el modelo Nexus 9300 (EX-FX-GX).
Prerequisites
Requirements
Cisco recomienda que tenga conocimiento sobre estos temas:
Componentes Utilizados
La información que contiene este documento se basa en las siguientes versiones de software y hardware.
- Hardware: N9K-C936C-FX2
- Versión: 9.3(8)
La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.
Antecedentes
Puede utilizar la encapsulación de enrutamiento genérico (GRE) como protocolo de portadora para diversos protocolos de pasajero.
En la imagen se puede ver que los componentes del túnel IP para un túnel GRE. El paquete de protocolo pasajero original se convierte en la carga útil GRE y el dispositivo agrega un encabezado GRE al paquete.
A continuación, el dispositivo agrega el encabezado del protocolo de transporte al paquete y lo transmite.
El tráfico se procesa en función de cómo se clasifica y de las políticas que se crean y aplican a las clases de tráfico.
Para configurar las funciones de QoS, siga estos pasos:
-
Se crean clases que clasifican los paquetes de entrada al nexus que coinciden con criterios como la dirección IP o los campos de QoS.
-
Crea directivas que especifican las acciones que se deben realizar en las clases de tráfico, como inspeccionar, marcar o descartar paquetes.
-
Aplique políticas a un puerto, canal de puerto, VLAN o subinterfaz.
Valores DSCP de uso común
Diagrama de la red
Configurar
El objetivo de la configuración de QoS sobre el túnel GRE es establecer un DSCP para que el tráfico de una VLAN determinada pase a través del túnel GRE entre N9K-EX1 y N9K-EX2.
El Nexus encapsula el tráfico y lo envía en el GRE del túnel sin pérdida de la marcación de QoS como hizo anteriormente en la VLAN para el valor DSCP; en este caso, el valor de DSCP AF-11 se utiliza para 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
Configuración de interfaces 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
Configuración de routing N9K-EX1
ip route 0.0.0.0/0 Tunnel
Configuración de QoS N9K-EX1
Debido a que QoS no es compatible con la interfaz de túnel GRE en NXOS, es necesario configurar y aplicar la política de servicio en la configuración de VLAN. Como puede ver, primero cree la ACL para que coincida con el origen y el destino, luego establezca la configuración de QoS con el DSCP deseado y, finalmente, utilice la política de servicio en la configuración de 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
Configuración de interfaces 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
Configuración de ruteo N9K-EX2
ip route 0.0.0.0/0 Tunnel
Troubleshoot
Verificación del túnel
Ambos comandos:
- show ip interface brief
- show interface tunnel 1 brief
Muestra si el túnel está activo.
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
Ambos comandos
- show interface tunnel 1
- show interface tunnel 1 counters
Muestra información similar, como paquetes recibidos y transmitidos.
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#
Capturas de tráfico
Capturas de SPAN
Esta imagen muestra la captura de la solicitud ARP en la entrada de la interfaz Ethernet 1/3 en el switch N9K-EX1. Puede ver que el tráfico aún no está marcado con el DSCP (AF11) que desea utilizar, ya que la captura está en la entrada del switch.
La imagen muestra la captura de la solicitud ARP en la entrada de la interfaz Ethernet 1/1 en el switch N9K-EX2. Puede ver que el tráfico ya tiene el valor DSCP AF11 que necesita utilizar. También observará que el paquete está encapsulado por el túnel configurado entre los dos Nexus.
La imagen muestra la captura de la respuesta ARP en la salida de la interfaz Ethernet 1/3 en el switch N9K-EX1. Puede ver que el tráfico aún tiene el valor DSCP AF11 que necesita utilizar. También observará que el paquete no está encapsulado por el túnel configurado entre los dos Nexus.
Esta imagen muestra la captura de la respuesta ARP en la salida de la interfaz Ethernet 1/1 en el switch N9K-EX2. Puede ver que el tráfico aún tiene el valor DSCP AF11 que necesita utilizar. También observará que el paquete está encapsulado por el túnel configurado entre los dos Nexus.
Es importante tener en cuenta que las capturas de paquetes no muestran la IP del túnel para la encapsulación, ya que Nexus utiliza las físicas. Este es el comportamiento natural del Nexus cuando utiliza la tunelización GRE, ya que utilizan las IP físicas para rutear los paquetes.
Captura de ELAM
La captura ELAM se utiliza en N9KEX-2 con in-select 9 para ver el encabezado l3 externo y el encabezado l3 interno. Debe filtrar por la IP de origen y de destino.
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
Puede verificar que Nexus reciba el paquete a través de la interfaz 1/1. Además, verá que el encabezado l3 externo es la dirección IP física de las interfaces que están conectadas directamente y que el encabezado interno l3 tiene las IP del host A y del 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:
Resolución de problemas de QoS
Puede verificar la configuración de QoS como se muestra .
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
Puede mostrar las políticas de QoS configuradas en la VLAN especificada y también los paquetes que coinciden con la ACL asociada al policy-map.
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
También puede borrar las estadísticas de QoS con el comando que se muestra aquí.
N9K-EX1# clear qos statistics
Verifique la ACL programada en el 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]
Verifique la ACL programada en el 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 el comando que se muestra aquí, puede verificar los puertos que están utilizando la VLAN. En este ejemplo, sería el ID de VLAN 9, y también puede observar la política de QoS que está en 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#