目录

简介

先决条件

要求

使用的组件

配置

网络图

测试

基本数据包流

QoS数据包流

验证

故障排除

相关信息

简介

本文档介绍一种方法，用于在配备管理引擎2T的Catalyst 6500或Catalyst 6880的转发引擎上捕获硬件交换数据包，并向用户显示转发/QoS决策。

注意：本文档中介绍的方法不能用于Catalyst 6500/Supervisor 720或旧版Supervisor。

先决条件

要求

本文档没有任何特定的要求。

使用的组件

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

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

配置

数据路径捕获基于在Lamira ASIC上触发的嵌入式逻辑分析器模块(ELAM)，该芯片负责在Catalyst 6500/Supervisor引擎2T和6880上做出第3层转发决策。 此芯片允许您跟踪数据包转发和QoS决策过程，而无需了解平台的内部架构以及正确设置ELAM所需的确切内部数据包流。

此捕获收集的信息可用于了解硬件决策过程。收集到的信息也是思科技术支持中心的良好输入数据，可在数据包转发或QoS出现任何问题时进行进一步分析。

注意：要生成转发输出，需要实际流量。例如，为触发器定义的数据包在执行捕获时必须流经设备。此方法不影响设备的性能，也不影响测试的流量。

使用此CLI配置数据包捕获：

6500#show platform datapath ?

all                Packet datapath trace for all features

cos                Packet ingress cos

ingress-interface  Packet ingress interface (port, subinterface,

service-instance)

last               Use data from the last datapath capture

lif                Packet ingress LIF from Eureka or shim header

packet-data        Packet header data specification

pkt-length         Packet length

qos                Packet QoS datapath trace

recirc             recirculated packet

release-elam       Release Elam

slot               Forwarding Engine slot

src-index          Packet ingress port source index

vty                Used for virtual terminal lines

|                  Output modifiers

有关最重要参数，请参阅以下定义：

- all — 配置数据包捕获以同时捕获基本转发和QoS转发决策（作为两个当前实施的流类型）。

- vty — 允许在用户通过Telnet/Secure Shell(SSH)记录时显示输出（从控制台运行命令时不需要这样做）。

- release-elam — 删除之前配置的触发器。

- ingress-interface/slot — 允许选择将捕获数据包的模块/接口。

- cos -允许您选择将捕获的数据包的COS值。

- pkt-length允许您指定将捕获的数据包的大小。

- 数据包数据 — 提供非常灵活的方式来选择需要捕获的数据包特征。

本示例设置在接口te1/4上接收的数据包的捕获。

show platform datapath ingress-interface te1/4

本示例设置在插槽2上接收的数据包的捕获。

show platform datapath slot 2

此示例设置触发器以捕获COS等于5的帧。

show platform datapath cos 5

此示例设置触发器以捕获长度为64字节的帧。

show platform datapath pkt-length 64

本示例设置触发器，以捕获IPv4/TCP帧，其中ACK标志集的源MAC地址为0000.0000.0001，源IP为10.0.0.1。

show platform datapath packet-data ipv4 src-address 10.0.0.1 tcp flags ack l2

src-mac 0000.0000.0001

网络图

测试流量在VLAN10中的中继Te1/4上接收，由Catalyst 6500路由到VLAN20，然后发送到端口Te2/1上VLAN20中的接收方。

请参阅以下场景：

测试

要捕获数据包，请输入以下命令：

show platform datapath vty all ingress-interface te1/4 packet-data ipv4

src-address 10.10.0.1

基本数据包流

这会将触发器设置为到达源IP地址为10.10.0.1的接口te1/4的IPv4数据包，并要求设备显示数据包转发和QoS决策。执行此命令后，此流量将到达设备并生成以下输出：

Capturing from TenGigabitEthernet1/4 src_index 3[0x3]

_______________________________________________________________

Basic Packet Flow

-----------------

Packet    TCP(6)[len=64]R: 10.10.0.1 -> 10.20.0.1

|             Ports: 1000 -> 2000 [ACK  0x10] Dscp/Tos 46/0xB8 Ttl 64

|       RouterMAC 0013.5f1c.0980 SMAC 0000.0000.1010

|       Vlan 10 CoS 5 1q 1

V

Te1/4[3]   Ingress Lif 0xA Vlan 10

|       ILM 0x6900A Lif_Sel 3 Lif_Base 0x69000

|       Cpp_en

V

Ingress    ACL: Permit (Default) Lbl_A 1

Features   QoS: Mark[16][4] AggPolice Tcam[Bank0][16376] Lbl 1

V

FIB-L3    Key: 10.20.0.1 [No VPN]

|       TCAM[30465] Adj 0x24001 dgt 0

V

Adjacency  [FIB] L3_Enable Dec_Ttl ADJ[IP][0x24001]

V

EgressLIF  0x14  Vlan 20 IpMtu 1518[17] Base 0x0

V

Egress     ACL: Permit (Default)

Features   QoS: Default (Tcam_Lkup_Disabled)

V

Rewrite    [FIB] L2_RW[0]: 0013.5f1c.0980 -> 0000.0000.1020 Dec_Ttl

|       CCC 4

|       RIT[0x24001]

V

_______________________________________________________________

数据包包含捕获的数据包的基本特征，包括第2层信息(MAC地址、VLAN、CoS、IEEE 802.1Q(Dot1Q)报头、数据包大小)、第3层信息(IP地址、差分服务代码点(DSCP)/服务类型(TOS)、生存时间(TOS)TTL))和第4层信息（端口、标志、协议名称）。

其余输出对应于转发决策数据，其描述如下：

- 功能(入口/出口) — 指定是否对数据包应用了任何ACL/QOS策略以及影响（在本例中，在入口上，ACL是默认值，QoS是标记，在出口上，会执行默认操作）。

- FIB-L3/邻接/重写 — 对应于对数据包做出的转发决策。在本示例中，存储在条目0x24001下的邻接条目表示TTL必须减少(Dec_Ttl)。 如果适用，MAC地址中的目标地址也会发生更改。

QoS数据包流

QoS Packet Flow

---------------

Packet    TCP(6)[len=64]R: 10.10.0.1 -> 10.20.0.1

|             Ports: 1000 -> 2000 [ACK  0x10] Dscp/Tos 46/0xB8 Ttl 64

|       RouterMAC 0013.5f1c.0980 SMAC 0000.0000.1010

|       Vlan 10 CoS 5 1q 1

V

Te1/4[3]   Ingress_Lif 0xA Vlan 10 Cos_In 5

|       Portmap [Trust Dscp Port_Acos_Id 0 Qos_En 1]

|       ILM 0x6900A Lif_Sel 3 Lif_base 0x69000

|       Qos_En 1 Plcr_Base 0 L2_Cos_Sel Cos(1)

V

Ingress   TCAM_IDX [16376] Label 1

Features   TCAM_RSLT: Lo 0x0021100B Hi 0x00002010

|       Mrking [Mark(Acos_Sel 4) Acos 16 Mark_En 1]

|       AgPlcr [Id 4096 Cfg_Id 1]

V

IFE PL    Acos 16 Mark_En RW(01)

|       AgPlcr: Id 4096 Cfg 1 Apply 1 Apply_Stats 1 Drop_En 0

|               Marking (Excd_Lo 0 Excd_Hi 0)

V

Adjacency   RI 3

V

EgressLif  Vlan 20

|       Qos_En 0 Plcr_Base 0 L2_Cos_Sel Cos(1)

V

Egress    Default (QoS Disabled)

Features

V

RIT      Cos 2 Acos 16 Dscp/Tos 16/0x40

|       CCC L3_REWRITE(4)

V

_______________________________________________________________

请参阅设备接收且CoS=5和Dscp=46的数据包。数据包以CoS=2和DSCP=16的形式发送，并执行重写数据包中DSCP数据的操作(L3_REWRITE)。 此更改由指向数据包注释活动（标记Acos=16,Mark_En 1）和ID=4096的默认监察器(AgpPlcr = 4096)的入口功能完成。

进一步的检查表明，此默认监察器不对流量进行管制，而是转发DSCP=16的所有已接收数据包，该数据包通过称为MAP的策略映射完成。

6500#show platform qos ip te1/4

[In] Policy map is MAP   [Out] Default.

QoS Summary [IPv4]: (* - shared aggregates, Mod - switch module, E - service instance)

(^ - class-copp keyword)

Int Mod Dir  Class-map DSCP  Agg  Trust Fl      AgForward      AgPoliced

Id         Id

-------------------------------------------------------------------------------

Te1/4  1  In class-defa   16 4096     No  0       25561664              0

注意：此示例显示基本数据包转发场景。如果有更高级的流，将显示处理这些特定场景的其他部分/字段。

验证

当前没有可用于此配置的验证过程。

故障排除

本部分提供了可用于对配置进行故障排除的信息。

命令输出解释程序工具（仅限注册用户）支持某些 show 命令。使用输出解释器工具来查看 show 命令输出的分析。

注意：使用 debug 命令之前，请参阅有关 Debug 命令的重要信息。

- all — 配置数据包捕获以同时捕获基本转发和QoS转发决策（作为两个当前实施的流类型），

- vty — 允许在用户通过telnet/ssh记录时显示输出（从控制台运行命令时不需要这样做）

- release-elam — 删除之前配置的触发器

- ingress-interface/slot — 允许选择将捕获数据包的模块/接口。

- cos -允许您选择将捕获的数据包的COS值。

- pkt-length允许您指定要捕获的数据包的大小。

- 数据包数据 — 提供非常灵活的方法来选择需要捕获的数据包特征。

相关信息

- 带管理引擎720 ELAM程序的Catalyst 6500系列交换机

- BRKCRS-4143 - Cisco Catalyst 6500/6800系列交换机故障排除（2014年旧金山） — 2小时

- 技术支持和文档 - Cisco Systems