目录

简介

先决条件

要求

使用的组件

背景信息

网络图

配置

故障排除

隧道验证

流量捕获

SPAN捕获

ELAM捕获

排除QoS故障

简介

本文档介绍如何在Nexus 9300 (EX-FX-GX)模型中配置隧道GRE上的QoS并对其进行故障排除。

先决条件

要求

Cisco 建议您了解以下主题：

- QoS

- 隧道GRE

- Nexus 9000

使用的组件

本文档中的信息基于以下软件和硬件版本：

- 硬件：N9K-C9336C-FX2

- 版本：9.3(8)

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您的网络处于活动状态，请确保您了解所有命令的潜在影响。

背景信息

您可以使用通用路由封装(GRE)作为各种乘客协议的承载协议。

您将在图中看到GRE隧道的IP隧道组件。原始乘客协议数据包将成为GRE负载，并且设备会将GRE报头添加到数据包。

然后，设备将传输协议报头添加到数据包并传输。

根据您对流量的分类方式以及您创建并应用于流量类的策略来处理流量。

要配置QoS功能，请执行以下步骤：

1. 创建分类将入口数据包分类到匹配条件（如IP地址或QoS字段）的nexus。

2. 创建指定要对流量类执行的操作的策略，例如监视、标记或丢弃数据包。

3. 将策略应用于端口、端口通道、VLAN或子接口。

常用的DSCP值

网络图

配置

通过隧道GRE配置QoS的目的是为特定VLAN的流量设置DSCP，使其通过N9K-EX1和N9K-EX2之间的GRE隧道。

Nexus会封装流量并将其发送到隧道GRE上，而不会像您之前在VLAN中为DSCP值所做的一样，因为在这种情况下，DSCP AF-11的值用于VLAN 9。

主机A

interface Ethernet1/3

switchport

switchport access vlan 9

no shutdown

interface Vlan9

no shutdown

ip address 192.168.9.9/24

主机B

interface Ethernet1/3

switchport

switchport access vlan 18

no shutdown

interface Vlan18

no shutdown

ip address 192.168.18.18/24

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

N9K-EX1路由配置

ip route 0.0.0.0/0 Tunnel

N9K-EX1 QoS配置

由于NXOS中的GRE隧道接口不支持QoS，因此需要在VLAN配置中配置和应用服务策略。您可以看到，首先创建ACL以匹配源和目标，然后使用所需的DSCP设置QoS配置，最后使用服务策略配置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

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

N9K-EX2路由配置

ip route 0.0.0.0/0 Tunnel

故障排除

隧道验证

两个命令：

- show ip interface brief

- show interface tunnel 1 brief

显示隧道是否已启用。

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

两个命令

- show interface tunnel 1

- show interface tunnel 1 counters

显示类似信息，例如接收和传输的数据包。

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#

流量捕获

SPAN捕获

下图显示了ARP请求在N9K-EX1交换机上的接口Ethernet 1/3的条目处的捕获。您可以看到，由于捕获在交换机的输入处，因此流量尚未标有您想要使用的DSCP (AF11)。

下图显示了ARP请求在N9K-EX2交换机上的接口Ethernet 1/1的条目处捕获的情况。您可以看到流量已具有需要使用的DSCP AF11值。您还会发现，数据包由在两个Nexus之间配置的隧道进行封装。

下图显示了N9K-EX1交换机上接口Ethernet 1/3输出的ARP应答捕获。您可以看到流量仍具有您需要使用的DSCP AF11值。您还会发现，数据包未由在两个Nexus之间配置的隧道进行封装。

下图显示了N9K-EX2交换机上接口Ethernet 1/1输出的ARP应答捕获。您可以看到流量仍具有您需要使用的DSCP AF11值。您还会发现，数据包由在两个Nexus之间配置的隧道进行封装。

请务必注意，由于Nexus使用物理隧道IP，因此数据包捕获不显示用于封装的隧道IP。这是使用GRE隧道时Nexus的自然行为，因为它们使用物理ip来路由数据包。

ELAM捕获

将N9KEX-2上的ELAM捕获与in-select 9一起使用可查看外部l3和内部l3报头。必须按源和目标IP过滤。

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

您可以检验Nexus是否通过接口1/1接收数据包。此外，您会看到外部l3报头是直连接口的物理IP地址，并且l3内部报头具有主机A和主机B的IP。

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:

排除QoS故障

您可以按如下所示检查QoS配置。

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

您可以显示指定VLAN上配置的QoS策略，以及与与策略映射相关联的ACL匹配的数据包。

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

您还可以使用此处显示的命令清除QoS统计信息。

N9K-EX1# clear qos statistics

验证软件中编程的ACL。

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]

验证硬件中编程的ACL。

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]

使用此处显示的命令，您可以检验使用VLAN的端口。在本例中，它是VLAN ID 9，您还可以记录正在使用的QoS策略。

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#