目录

简介

先决条件

要求

使用的组件

背景信息

拓扑

选项1.使用Flow-id的ERSPAN设置

步骤1. ESPAN目标设置

第 2a 步：为直接连接到SRC的流量创建Span源

步骤2b.为直接连接到DST的流量创建SPAN源

步骤3.快速Wireshark分析

选项2.平台计数器

清除平台计数器

使用低数据包或零数据包确定数据包大小

跟踪流量

相关信息

简介

本文档介绍如何使用数据包着色技术跟踪网络流。

先决条件

要求

- ACI基础知识

- 终端组和合同

- Wireshark基础知识

使用的组件

本文档不限于特定的硬件和软件版本。

使用的设备：

- 运行版本5.3(2)的思科ACI

- Span目标

- 第2代交换机

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

背景信息

如何在Wireshark中创建过滤器。

打开capture。使用封装远程交换机数据包中的帧，选择SpanID行并右键单击。

选择Apply as Filter > Selected，如图所示：

拓扑

选项1.使用Flow-id的ERSPAN设置

如果目标服务器能够处理所有流量，则ERSPAN报头包含用于定义流ID的选项。可以配置此流ID以标识到交换矩阵的传入流量，也可以为传出流量设置不同的流ID。

步骤1. ESPAN目标设置

一个目标组的流ID为1

在Fabric > Access Policies > Policies > Troubleshooting > SPAN > SPAN Destination Groups下

在第二个目标组上，将flow-id配置为2:

第 2a 步：为直接连接到SRC的流量创建SPAN源

在Fabric > Access Policies > Policies > Troubleshooting > SPAN > SPAN Source Groups下

通过添加路径和EPG来过滤更多流量。实验室示例是Tenant jr Application Profile ALL和EPG应用。

步骤2b.为直接连接到DST的流量创建SPAN源

在Fabric > Access Policies > Policies > Troubleshooting > SPAN > SPAN Source Groups下

通过不仅添加路径，而且添加EPG数据库，可以更好地过滤流量：

步骤3.快速Wireshark分析

在本示例中，您将验证ICMP请求数据包的数量与ICMP响应数据包的数量匹配，确保ACI交换矩阵内没有丢包。

在wireshark上打开捕获，使用与SRC和DST IP一起配置的SPAN ID /Flow-ID创建过滤器：

(erspan.spanid ==

and

) && (ip.src==

and ip.dst ==

)

用于实验室测试流程的过滤器：

(erspan.spanid == 1 and icmp) && (ip.src== 10.1.2.1 and ip.dst == 10.1.1.1)

验证Displayed数据包是否与发送的数据包相同：

下一个SPAN ID必须具有相同的数量；如果没有，则数据包在交换矩阵内被丢弃。

过滤器：

(erspan.spanid == 2 and icmp) && (ip.src== 10.1.2.1 and ip.dst == 10.1.1.1)

选项2.平台计数器

此方法利用Nexus跟踪具有不同数据包大小的各个接口的性能，但该方法要求至少队列具有很低的流量（如果不是零的话）。

清除平台计数器

进入单个交换机并清除连接到设备的单个接口。

Switch#vsh_lc -c “clear platform internal counters port

”

LEAF3# vsh_lc -c “clear platform internal counters port 6”

LEAF1# vsh_lc -c “clear platform internal counters port 45”

LEAF2# vsh_lc -c “clear platform internal counters port 45”

使用低数据包或零数据包确定数据包大小

查找在所有RX和TX枝叶中可能没有计数器的数据包大小：

vsh_lc -c ‘show platform internal counters port

’ | grep X_PKT

在下一个示例中，数据包大小大于512且小于1024:

LEAF101# vsh_lc -c "show platform internal counters port 45 " | grep X_PKT

RX_PKTOK          1187

RX_PKTTOTAL       1187

RX_PKT_LT64          0

RX_PKT_64            0

RX_PKT_65         1179

RX_PKT_128           8

RX_PKT_256           0

RX_PKT_512           0 <<

RX_PKT_1024          0

RX_PKT_1519          0

RX_PKT_2048          0

RX_PKT_4096          7

RX_PKT_8192          43

RX_PKT_GT9216        0

TX_PKTOK          3865

TX_PKTTOTAL       3865

TX_PKT_LT64          0

TX_PKT_64            0

TX_PKT_65         3842

TX_PKT_128          17

TX_PKT_256           6

TX_PKT_512           0 <<

TX_PKT_1024          10

TX_PKT_1519          3

TX_PKT_2048          662

TX_PKT_4096          0

TX_PKT_8192          0

TX_PKT_GT9216        0

此步骤需要在转发数据包的链路中执行。

跟踪流量

从服务器10.1.2.1发送1000个数据包，数据包大小为520。

在枝叶103接口1/6上验证，RX上的流量在此接口上发起：

MXS2-LF103# vsh_lc -c "show platform internal counters port 6 " | grep X_PKT_512

RX_PKT_512        1000

TX_PKT_512         647

1000个数据包RX，但只有647个数据包作为应答发送。

下一步是检查其他服务器的传出接口：

对于Leaf102:

MXS2-LF102# vsh_lc -c "show platform internal counters port 45 " | grep X_PKT_512

RX_PKT_512           0

TX_PKT_512        1000

交换矩阵未丢弃请求。

对于枝叶101,RX数据包647，与ACI TX的数据包数量相同。

MXS2-LF101#  vsh_lc -c "show platform internal counters port 45 " | grep X_PKT_512

RX_PKT_512        647

TX_PKT_512          0

相关信息

排除ACI交换矩阵内转发故障 — 间歇丢弃