简介
本文档介绍如何对Cisco Nexus 7000系列交换机上的单向链路检测(UDLD)错误消息进行故障排除。
先决条件
要求
Cisco建议您了解以下主题的基本知识:
- Cisco Nexus操作系统(Cisco NX-OS)
- 基本UDLD操作
使用的组件
本文档中的信息基于以下软件和硬件版本:
- 思科 Nexus 7000 系列交换机
- 思科NX-OS版本6.2(10)
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
背景信息
UDLD检测进程执行时,端口交换UDLD数据包,包括发起方交换机ID和发起方端口ID。当收到UDLD数据包时,交换机将对等交换机ID和端口ID回显给对等设备。当交换机交换回应数据包时,形成双向关系。
当交换机未从其UDLD对等体收到预期信息时,存在UDLD错误情况。
本文档介绍以下UDLD错误情况以及如何排除这些错误:
- Empty-echo
- 发射 — 接收(Tx-Rx)环路
- 单向
- 邻居不匹配
- UDLD帧的突然停止
UDLD错误条件
本节介绍各种类型的UDLD错误情况以及一些可能的原因。
空回声
当交换机A从交换机B收到UDLD帧,但未收到交换机A交换机ID和端口ID的预期回声时,会出现此情况。
当检测到空回声时,UDLD将执行以下操作:
模式
|
操作
|
正常模式 |
错误禁用端口 |
积极模式 |
错误禁用端口 |
然后生成以下系统日志消息:
2015 Mar 19 11:57:56.155 N7kA ETHPORT-2-IF_DOWN_ERROR_DISABLED Interface Ethernet1/2
is down (Error disabled. Reason:UDLD empty echo)
2015 Mar 19 11:57:56.186 N7kA ETH_PORT_CHANNEL-5-PORT_INDIVIDUAL_DOWN individual port
Ethernet1/2 is down
2015 Mar 19 11:57:56.336 N7kA ETHPORT-2-IF_DOWN_ERROR_DISABLED Interface Ethernet1/2
is down (Error disabled. Reason:UDLD empty echo)
下面是造成这种情况的一些可能原因
- 交换机B上的UDLD双向关系已超时,因为它未收到来自交换机A的UDLD帧。
- 交换机B收到来自交换机A的UDLD帧,但未处理它们。
- 交换机A没有将UDLD帧发送到交换机B。
Tx-Rx环路
当在发送帧的同一端口上收到UDLD帧时,会出现这种情况。
当检测到Tx-Rx环路时,UDLD将执行以下操作:
模式
|
操作
|
正常模式 |
错误禁用端口 |
积极模式 |
错误禁用端口 |
然后生成以下系统日志消息:
2015 Mar 20 14:52:30 N7kA %ETHPORT-2-IF_DOWN_ERROR_DISABLED: Interface Ethernet17/5
is down (Error disabled. Reason:UDLD Tx-Rx Loop)
2015 Mar 20 14:52:30 N7kA %ETHPORT-2-IF_DOWN_ERROR_DISABLED: Interface Ethernet17/5
is down (Error disabled. Reason:UDLD Tx-Rx Loop)
以下是造成这种情况的一些可能原因:
- 可能存在布线错误或物理介质问题。
- 中间设备将帧反射回发送端口。
邻居不匹配
当交换机A上的端口A从与其已形成UDLD双向关系的端口以外的端口接收帧时,会出现此情况。
当检测到邻居不匹配时,UDLD将执行以下操作:
模式
|
操作
|
正常模式 |
错误禁用端口 |
积极模式 |
错误禁用端口 |
然后生成以下系统日志消息:
2015 Mar 21 10:23:05.598 N7kA %ETHPORT-2-IF_DOWN_ERROR_DISABLED: Interface Ethernet3/21
is down (Error disabled. Reason:UDLD Neighbor mismatch)
2015 Mar 21 10:24:07.065 N7kA %ETHPORT-2-IF_DOWN_ERROR_DISABLED: Interface Ethernet3/21
is down (Error disabled. Reason:UDLD Neighbor mismatch)
以下是造成这种情况的一些可能原因:
- 有问题的UDLD端口是端口通道的成员,其上的成员端口已更改状态。
- 在两个端口之间有一个中间设备,形成双向关系。
UDLD帧的突然停止
当间隔超时(默认情况下为50秒)时,形成双向关系的端口未收到UDLD帧时,会出现此情况。
检测到这种情况时,UDLD将执行以下操作:
模式
|
操作
|
正常模式 |
UDLD将端口标记为Undetermined,并且端口继续根据其生成树端口状态运行 |
积极模式 |
错误禁用端口 |
排除UDLD错误情况
本部分介绍如何进行故障排除以及如果遇到UDLD必须完成的步骤 error-disabled
端口。
由于UDLD错误指示物理层故障,因此适合在物理层进行故障排除。遇到UDLD错误消息时,请考虑以下问题:
- 如果更换了小型封装热插拔收发器(SFP),错误是否仍然存在?
- 如果更换了电缆,错误是否仍然存在?
- 如果将连接移至交换机上的其他物理端口,该错误是否仍然存在?
有用的命令
使用此命令可恢复已放置到的所有端口 error-disable
模式下的UDLD:
N7KA(config)# udld reset
使用此命令可验证双向关系:
N7KA-NORTH-AGG(config-if)# show udld eth 3/4
Interface Ethernet3/4
--------------------------------
Port enable administrative configuration setting: enabled
Port enable operational state: enabled
Current bidirectional state: bidirectional
Current operational state: advertisement - Single neighbor detected
Message interval: 7
Timeout interval: 5
Entry 1
----------------
Expiration time: 39
Cache Device index: 1
Current neighbor state: bidirectional
Device ID: JAF1620ABAB
Port ID: Ethernet3/12
Neighbor echo 1 devices: JAF1617BACD
Neighbor echo 1 port: Ethernet3/4
Message interval: 15
Timeout interval: 5
CDP Device name: N7KB-SOUTH-AGG(JAF1620ABAB)
Last pkt send on: 400096, Aug 6 13:58:52 2014
Probe pkt send on: 400096, Aug 6 13:58:52 2014
Echo pkt send on: 395799, Aug 6 13:58:43 2014
Flush pkt send on: None.
Last pkt recv on: 740333, Aug 6 13:58:52 2014
Probe pkt recv on: 740333, Aug 6 13:58:52 2014
Echo pkt recv on: 730454, Aug 6 13:58:43 2014
Flush pkt recv on: None.
Deep pkt inspections done: None.
Mismatched if index found: None.
Deep pkt inspection drops: None.
使用此命令验证物理接口上的错误计数器,用于确定是否由于物理层硬件故障而丢弃UDLD帧:
RTP-Agg1# show interface ethernet 4/1 | i error|CRC|discard|drop
0 runts 0 giants 0 CRC/FCS 0 no buffer
0 input error 0 short frame 0 overrun 0 underrun 0 ignored
0 watchdog 0 bad etype drop 0 bad proto drop 0 if down drop
0 input with dribble 0 input discard
0 output error 0 collision 0 deferred 0 late collision
0 lost carrier 0 no carrier 0 babble 0 output discard
使用此命令检查CPU利用率,确定CPU使用率高是否阻止UDLD帧的进程:
N7K-A# show system resources
Load average: 1 minute: 0.17 5 minutes: 0.25 15 minutes: 0.20
Processes : 1993 total, 1 running
CPU states : 0.18% user, 0.81% kernel, 98.99% idle
有用的TAC信息
本节介绍在恢复链接之前(如果情况允许)必须收集的输出。这有助于为思科技术支持中心(TAC)提供诊断UDLD设置为error-disabled模式的链路根本原因的最佳机会:
show tech-support lacp all
(如果故障接口是链路汇聚控制协议(LACP)portchannel的成员)
show tech-support module
(其中x是检测到UDLD错误的模块)
show tech-support ethpm
show tech-support udld
show udld internal event-history errors
show udld internal event-history msgs | grep -a 3 -b 3 L2_RX_DATA
show udld internal event-history ethernet
show log logfile | grep UDLD
show log logfile | grep Ethernet
show processes cpu history
show interface ethernet
show hardware internal errors module
show interface counters errors module
相关信息