目录

简介

故障排除/Show命令

SifInfo

SifRacStatus

SifRacControl

SifExceptionInterruptA4

SifExceptionInterruptA8

其他堆叠寄存器

从Linux内核读取注册

在Dope.sh中更改ASIC

静默重新加载问题

第 1 步

步骤 2

步骤 3

步骤 4

堆叠成员超时/重新加载-案例研究

症状

缩写词

简介

本文档介绍如何针对与堆叠端口/电缆问题和静默重新加载特别相关的问题，对命令/寄存器进行故障排除。

故障排除/Show命令

收集和分析有用的寄存器（适用于每个ASIC和核心）。主要有三个方面：

- SifInfo

- SifRacStatus

- SifRacControl

show platform hardware fed switch active fwd-asic register read register-name <name>

SifInfo

第一位告诉我们asic是否可用。设置为0x1。如果设置为0x0，则存在转发问题。错误计数器或框无法正确恢复数据包。

Switch#sh platform hardware fed switch active fwd-asic register read register-name SifInfo

For asic 0 core 0

Module 0 - SifInfo[0][0]

available                 : 0x1 <---- should be 0x1 indicating balloting is completed

headerVersion             : 0x0

nodeAllLinksAvailable     : 0x1

nodeId                    : 0x4 <---- asic ID (unique across all asics in the stack)

numNodes                  : 0x8 <---- how many asics are there in whole stack

serdesSpeed               : 0x2

sifAllLinksAvailable      : 0x1

sifSupStall               : 0x0

wrappedAtRac0             : 0x0 <---- If a single stack port is down, 3 of 6 should wrap w/ value

wrappedAtRac1             : 0x0       of 0x1. Will appears in groups for 0, 2 and 4 or 1, 3 and 5.

wrappedAtRac2             : 0x0

wrappedAtRac3             : 0x0

wrappedAtRac4             : 0x0

wrappedAtRac5             : 0x0

注意：每根堆叠电缆都有六个机架环（环访问控制），三个传出/三个传入，每个均为40Gig。WrappedAtRac从0到5对应于任何堆栈链路是否关闭。如果一切正常，则显示为0x0（每个asic六个链路，三个传出链路，三个传入链路）。例如，奇数表示传出，偶数表示传入，反之亦然)。

SifRacStatus

要详细检查每个Racs，将显示要验证的关键方面；活动/linkOk/syncOk位，这些位告诉我们特定Rac是否已连接（如果OK，则显示为0x1）。

Switch#sh plat hardware fed sw active fwd-asic register read register-name SifRacStatus

For asic 0 core 0

Module 0 - SifRacStatus[0][0]

active                    : 0x1 <----

available                 : 0x1

copyOk                    : 0x1

disabled                  : 0x0

insertOk                  : 0x1

linkOk                    : 0x1 <----

messageOk                 : 0x1

noDataOnRing              : 0x0

pcsAlignmentOk            : 0x1

pcsCodewordSync           : 0xf

reOrderOk                 : 0x1

slapId                    : 0x0

stripOk                   : 0x1

syncOk                    : 0x1 <----

toPbcOk                   : 0x1

transmitOk                : 0x1

SifRacControl

查看Rac是否断电。检查greenPowerDisable参数。这显示所有Racs的0x0（至少对于Nyquist平台）。由于堆叠电缆本身的硬件限制，某些例外情况可能会出现Racs断电或greenPowerDisable参数显示为0x1，例如下端盒子的3650交换机。这样，堆栈电缆每个asic仅支持两个Racs。其余两个Rac已断电。

Switch#sh plat hardware fed sw active fwd-asic register read register-name SifRacControl

For asic 0 core 0

Module 0 - SifRacControl[0][0]

copyEn                    : 0x1

deployToken               : 0x0

disablePmaChecks          : 0x0

forceSync                 : 0x0

greenPowerDisable         : 0x0 <----

init                      : 0x0

initRacInfoLinkedList     : 0x0

insertEn                  : 0x1

messageEn                 : 0x1

reOrderEn                 : 0x1

stripEn                   : 0x1

toPbcEn                   : 0x1

transmitEn                : 0x1

SifExceptionInterruptA4

触发此事件是因为系统中存在链路更改（打开/关闭情况）。中断在软件级别处理。系统会对其进行处理以查看是否存在任何与链接相关的更改，然后将其发布（生成日志）。

Switch#sh plat hardware fed sw active fwd-asic register read register-name SifExceptionInterruptA4

For asic 0 core 0

Module 0 - SifExceptionInterruptA4[0][0]

sifRac0LinkOkChange       : 0x0

sifRac0LinkedListSpill    : 0x0

sifRac0SyncOkChange       : 0x1

sifRac0TransitFifoSpill   : 0x0

sifRac1LinkOkChange       : 0x0

sifRac1LinkedListSpill    : 0x0

sifRac1SyncOkChange       : 0x1

sifRac1TransitFifoSpill   : 0x0

sifRac2LinkOkChange       : 0x0

sifRac2LinkedListSpill    : 0x0

sifRac2SyncOkChange       : 0x1

sifRac2TransitFifoSpill   : 0x0

sifRac3LinkOkChange       : 0x0

sifRac3LinkedListSpill    : 0x0

sifRac3SyncOkChange       : 0x1

sifRac3TransitFifoSpill   : 0x0

sifRac4LinkOkChange       : 0x0

sifRac4LinkedListSpill    : 0x0

sifRac4SyncOkChange       : 0x1

sifRac4TransitFifoSpill   : 0x0

sifRac5LinkOkChange       : 0x0

sifRac5LinkedListSpill    : 0x0

sifRac5SyncOkChange       : 0x1

sifRac5TransitFifoSpill   : 0x0

SifExceptionInterruptA8

这是硬件中断，它会在投票完成后为我们提供详细信息（投票= asic初始化过程）。A8完成后，系统检查是否正确设置了asic可用位。否则，将再次运行投票。

注意：当达到最大数量时，交换机重新加载时出现一些错误，表示HW可用位未设置或投票未完成。

Switch#sh plat hardware fed sw active fwd-asic register read register-name SifExceptionInterruptA8

For asic 0 core 0

Module 0 - SifExceptionInterruptA8[0][0]

sifBallotDone             : 0x0

sifBallotOverallTimerExpires : 0x0

sifBallotPerStateTimerExpires : 0x0

sifBallotSpeedChangeNeeded : 0x0

sifBallotStart            : 0x1

sifDebugSent              : 0x0

sifEastNeighborChange     : 0x1

sifMessageReceiveBufferCreditsEmpty : 0x0

sifMessageReceived        : 0x1

sifMessageSent            : 0x1

sifNodeIdChanged          : 0x1

sifOob3in2DropCntOverflow : 0x0

sifOobFlushDropCntOverflow : 0x0

sifOobStackSifCreditDropCntOverflow : 0x0

sifOobStackSifMtuDropCntOverflow : 0x0

sifOobSupSifMtuDropCntOverflow : 0x0

sifRacInfoLinkedListInitDone0 : 0x1

sifRacInfoLinkedListInitDone1 : 0x1

sifRacInfoLinkedListInitDone2 : 0x1

sifRacInfoLinkedListInitDone3 : 0x1

sifRacInfoLinkedListInitDone4 : 0x1

sifRacInfoLinkedListInitDone5 : 0x1

sifSegmentBuffer0LinkedListSpill : 0x0

sifSegmentBuffer1LinkedListSpill : 0x0

sifSegmentBufferLinkedListInitDone0 : 0x1

sifSegmentBufferLinkedListInitDone1 : 0x1

sifStackTopologyChange    : 0x1

sifUnmappedDestIndex      : 0x0

sifWestNeighborChange     : 0x1

下一个命令显示涉及SDP消息和SIF管理消息的SIF计数器。关注失败消息（如果有）。

Switch#show platform software sif switch active r0 counters

Stack Interface (SIF) Counters

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

Stack Discovery Protocol (SDP) Messages

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

Message                 Tx Success    Tx Fail       Rx Success    Rx Fail

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

Discovery               0             0             0             0

Neighbor                0             0             0             0

Forward                 455966        0             1355818       107

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

SIF Management Messages

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

Message                 Success       Fail

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

Link Status             16            0

Link Management         0             0

Chassis Num             1             0

Topo Change             3             0

Active Declare          1             0

Template set            2             0

还有一个附加命令可在中断超过阈值时运行，并且只显示信息。命令为show platform software sif switch active R0 exceptions。 以下是中断上不存在问题的输出：

Switch#

Switch#show platform software sif switch active R0 exceptions

Switch#

如果存在中断，则输出类似于下一个脚本。请记住，在某些场景中（启动、插拔/断开等）会出现中断，因此，如果确实存在问题并且中断持续，请反复执行命令几秒/分钟。

Switch#show platform software sif switch active r0 exceptions

*******************************

Asicnum: 0

SIF INT : SIFEXCEPTIONINTERRUPTA1_SIFRAC5PMARECEIVEFIFOSPILL3_FIELD_IDX

Occurred count: 1

First Time: Fri May 18 08:03:23 2018

Last Time: Fri May 18 08:03:23 2018

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

SIF INT : SIFEXCEPTIONINTERRUPTA1_SIFRAC5PMARECEIVEFIFOSPILL2_FIELD_IDX

Occurred count: 1

First Time: Fri May 18 08:03:23 2018

Last Time: Fri May 18 08:03:23 2018

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

SIF INT : SIFEXCEPTIONINTERRUPTA1_SIFRAC5PMARECEIVEFIFOSPILL1_FIELD_IDX

Occurred count: 1

First Time: Fri May 18 08:03:23 2018

Last Time: Fri May 18 08:03:23 2018

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

SIF INT : SIFEXCEPTIONINTERRUPTA1_SIFRAC5PMARECEIVEFIFOSPILL0_FIELD_IDX

Occurred count: 1

First Time: Fri May 18 08:03:23 2018

Last Time: Fri May 18 08:03:23 2018

下表详细说明了show platform software sif switch active R0 exceptions中最常见的SIF异常：

异常编号

字段名称

严重级别

使用率

描述

0

sifRac{0:5}PmaTransmitFifoSpill{0:3}

重大

统计信息

如果系统时钟和串行时钟之间的推拉FIFO溢出，则会触发此情况。这不可能发生。如果是，则可能表示已禁用Serdes时钟（通过编程或错误Serdes）。 如果这不是由编程问题引起的，则是一个重大问题。但SIF会自我康复。小问题的最终结果是丢失数据段或在极端情况下重新初始化。如果这不是一个小问题，并且它仍在发生，那么在处理完此CHIEF后，它会再次激发，告诉您此时此情况仍在发生。此传输链路为toast。

1

sifRac{0:5}PmaReceiveFifoSpill{0:3}

重大

统计信息

如果系统时钟和串行时钟之间的推拉FIFO溢出，则会触发此情况。这不可能发生。如果是，则可能表示已禁用Serdes时钟（通过编程或错误Serdes）。 如果这不是由编程问题引起的，则是一个重大问题。但SIF会自我康复。小问题的最终结果是丢失数据段或在极端情况下重新初始化。如果这不是一个小问题，并且它仍在发生，那么在处理完此CHIEF后，它会再次激发，告诉您此时此情况仍在发生。此传输链路为toast。

2

sifRac{0:5}SerdesLossOfLock{0:3}

重大

统计信息

用于与sifRac{0:5}PmaReceiveFifoSpill{0:3}关联，以通知所接收的Serdes时钟的状况（含正常操作条件）。如果它们不符合规范，则IdleDensity计时器无法补偿差异。一般而言，这是问题检查器，用于确保接收方Serdes工作正常这一假设是真实的。

3

sifRac{0:5}ClockLossOfLock{0:3}

重大

统计信息

用于与sifRac{0:5}PmaReceiveFifoSpill{0:3}关联，以通知所接收的Serdes时钟的状况（含正常操作条件）。如果它们不符合规范，则IdleDensity计时器无法补偿差异。一般而言，这是问题检查器，用于确保接收方Serdes工作正常这一假设是真实的。

4

sifRac{0:5}syncOkChange

minor（轻微）

监控

链路抖动指示

sifRac{0:5}linkOkChange

minor（轻微）

监控

链路抖动指示

sifRac{0:5}linkedListSpill

重大

监控

作为重新排序算法一部分的Rac链接列表已超过最大条目数。这是非常糟糕的情况，这意味着重新排序现在正在此RAC上拖尾数据段和OOB消息。除非堆叠配置错误或链接列表遇到软错误，否则不会出现这种情况。请参阅例外9和10。

sifRac{0:5}transitFifoSpill

重大

统计信息

负责通过SIF将数据移动到其他节点的transitFifo溢出可能是因为IdleDensityTimer w.r.t.配置错误，导致此交换机与其邻居的实际Serdes clock ppm（百万分比）偏移。

5

sifRac{0:5}missingToken

重大

统计信息

Stack海螺壳已丢失、损坏、重新分解等。这可能表示堆栈上的某个位命中击中了SifTokenDesc。这不太可能发生。可以将SIF配置为以不同方式处理此问题。重新投票并重新开始、重新部署令牌或允许SIF重新部署。

sifRac{0:5}duplicateToken

重大

统计信息

sifRac{0:5}令牌已部署

信息

统计信息

6

sifRac{0:5}RwCrcErrorCntOverflow

minor（轻微）

统计信息

堆栈电缆或邻居盒可能的所有指示灯都损坏。展开此详细信息主要是为了进行调试。在正常操作过程中，syncOkChange和linkOkChange是您需要知道的所有信息。在收集LONG-TERM-BER时，计数器翻过来时必须监控并统计这些值，以便正确统计位错误。当存在invalidRw或pcsCodeWordError时，可能未检查CRC。这样您就可以为BER汇总所有这些寄存器。

sifRac{0:5}DataCrcErrorCntOverflow

minor（轻微）

统计信息

sifRac{0:5}InvalidRwErrorCntOverflow

minor（轻微）

统计信息

sifRac{0:5}PcsCodeWordErrorCntOverflow

minor（轻微）

统计信息

7

sifRac{0:5}RdispErrorCntOverflow

minor（轻微）

统计信息

sifRac{0:5}PrbsUnLockErrorCntOverflow

信息

统计信息

提供统计信息，用于帮助查找IBM HSS宏的最佳配置，从而找到最佳编程。

sifRac{0:5}PrbsBitErrorCntOverflow

信息

统计信息

sifRac{0:5}ErrorCaptureCntOverflow

信息

实验

调出用于捕获错误ringWords形式的统计信息，以供检查以查看堆栈上发生的情况。

8

sifRacInfoLinkedListInitDone{0:5}

信息

监控

RAC链接列表的HW初始化已完成。

sifDroppedSegmentCntOverflow

信息

统计信息

sifPbcInconsistentSopEopCntOverflow

信息

统计信息

最坏的情况。根据PBC提供的协议表单检查数据是否到达。

sifPbcErrorCntOverflow

信息

统计信息

sifSupInconsistentSopEopCntOverflow

信息

统计信息

最坏的情况。按照SUP (OOBM)中的协议表检查数据是否到达。

sifSupErrorCntOverflow

信息

统计信息

sifReorderInconsistentSopEopCntOverflow

信息

统计信息

表示缺少的段指示器已回滚。

sifDebugSent

信息

实验

显示将调试段插入堆栈的指示。

sifMessageSent

信息

实验

由于OOBM的自动化性质，这些功能实际上仅在实验室环境中有用。

sifMessageReceived

信息

实验

sifMessageDropped

信息

实验

sifMessageReceiveBuffercreditsEmpty

minor（轻微）

监控

如果触发此功能，请刷新积分。信用级别受到主动监控，因此不会中断。

sifUnmappedDestIndex

minor（轻微）

统计信息

在Copy/Strip期间，它无法映射destIndex，并且portCopy设置为“0”，portStrip设置为“1”。这表示存在配置问题。

sifSegmentBuffer{0:1}linkedListSpill

重大

监控

作为重新排序一部分的段链接列表已超过最大条目数。这表示重新排序现在是尾部丢弃数据段和OOB消息。除非堆叠配置错误或链接列表遇到软错误，否则不会出现这种情况。请参阅例外9和10。

sifSegmentBufferLinkedListInitDone{0:1]

信息

监控

分段链接列表的HW初始化已完成。

sifPoliceDone

信息

监控

“指示投票”已完成。

sifVoiceSpeedChangeNeeded

信息

监控

自上次成功投票以来，堆栈链路上需要新的速度。这意味着节点已进入堆栈，堆栈速度的动态性已更改。如果速度比当前速度慢，堆栈就必须向下调整。或者比以前更快。这可能是新的较短电缆所导致的结果。

sifEastNeighborChange

信息

监控

监控堆栈启动、合并和封装场景。

sifWestNeighborChange

信息

监控

sifNodeIdChanges

信息

监控

表示作为上次投票的结果，SifInfo.nodeId已更改。

sifStackTopologyChange

信息

监控

监控堆栈启动、合并和封装场景。

9

sifRacInfoBuffer{0:5}EccCorrected

重大

监控

sifRacInfoBuffer{0:5}发生软错误。这种情况很糟糕，但最坏的结果是出口数据路径中存在一些无序数据包或稍后丢弃的数据包。此处不需要重置Doppler。

sifRacInfoBuffer{0:5}EccDetected

重大

监控

sifRacInfoLinkedListBuffer{0:5}EccCorrected

重大

监控

sifRacInfoLinkedListBuffer{0:5}发生软错误。根据此SW负载的拱上HA指南，您需要重置多普勒。这会导致SifReorder出现性能问题。

sifRacInfoLinkedListBuffer{0:5}EccDetected

重大

监控

sifSegmentLinkedListBuffer{0:1}EccCorrected

重大

监控

sifRacInfoLinkedListBuffer{0:5}发生软错误。根据此SW负载的拱上HA指南，您需要重置多普勒。这会导致SifReorder出现性能问题。

sifSegmentLinkedListBuffer{0:1}EccDetected

重大

监控

10

DestinationIndexTableParityError

重大

监控

内存中发生奇偶校验错误。重新加载内容，并识别某些数据包可能因此被错误复制/剥离。可能不需要重置多普勒。

GlobalToLocalPorttable

重大

监控

CpuIndexTable

重大

监控

HashTableA

重大

监控

HashTableB

重大

监控

MessageQueueFifo

重大

监控

消息控制存储器发生软错误。这是一个临时问题，可能导致转发错误或无序的OOB。这可以自行恢复，并且不需要多普勒重置，因为此处条目的新用户可以覆盖旧条目。

MessageQueueLinkBuffer

重大

监控

可以在EDCS-757121：NG3K SIF驱动程序软件功能规范中找到此信息。

其他堆叠寄存器

- SifRacStatus

- Sif统计信息

- SifRacInsertedCnt

- SifRacCopiedCnt

- SifRacPmaControl

- SifVoiceWatchDogTimer

- SifPbcSifErrorCnt

- SifMessageStatus

- SifControl

- SupStack接口控制

- SifSifPbcCnt0

- SifSifPbcCnt1

- SifSifPbcDroppedCnt

- SifSerdesHssMacroStatus

- SifSerdesHssChannelStatusRx

- SifSerdesHssChannelStatusTx

了解每个寄存器的详细信息。

用于监控堆栈端口运行状况的CLI：

show platform hardware fed switch <> fwd-asic register read register-name SifSerdesHssMacroStatus

show platform hardware fed switch <> fwd-asic register read register-name SifInfo

show platform hardware fed switch <> fwd-asic register read register-name SifRacStatus

show platform hardware fed switch <> fwd-asic register read register-name SifRacControl

show platform hardware fed switch <> fwd-asic register read register-name SifExceptionInterruptA8

show platform hardware fed switch <> fwd-asic register read register-name SifExceptionInterruptA4

show platform hardware fed switch <> fwd-asic register read register-name SifStatistics

show platform hardware fed switch <> fwd-asic register read register-name SifRacInsertedCnt

show platform hardware fed switch <> fwd-asic register read register-name SifRacCopiedCnt

show platform hardware fed switch <> fwd-asic register read register-name SifRacPmaControl

show platform hardware fed switch <> fwd-asic register read register-name SifVoiceWatchDogTimer

show platform hardware fed switch <> fwd-asic register read register-name SifPbcSifErrorCnt

show platform hardware fed switch <> fwd-asic register read register-name SifMessageStatus

show platform hardware fed switch <> fwd-asic register read register-name SifControl

show platform hardware fed switch <> fwd-asic register read register-name SupStackInterfaceControl

show platform hardware fed switch <> fwd-asic register read register-name SifSifPbcCnt0

show platform hardware fed switch <> fwd-asic register read register-name SifSifPbcCnt<>

show platform hardware fed switch <> fwd-asic register read register-name SifSifPbcDroppedCnt

show platform hardware fed switch <> fwd-asic register read register-name SifSerdesHssChannelStatusRx

show platform hardware fed switch <> fwd-asic register read register-name SifSerdesHssChannelStatusTx

show platform hardware fed switch <> fwd-asic register read register-name SifRacDataCrcErrorCnt

show platform hardware fed switch <> fwd-asic register read register-name SifgRacRwCrcErrorCnt

show platform software sif switch <> R0 counters

show platform software sif switch <> R0 exceptions

从Linux内核读取寄存器

.

进入Linux Shell后，继续执行下一个脚本：

[Switch_2_RP_0:~]$ dope.sh Num Asics: 0 Cat9300 platform dope vft **************************************************** DOPpler Examiner http://wwwin-dopplersdk.cisco.com **************************************************** Detecting number of asics...found 1 asics asic-0: phy_addr=0x87f80000000 virt_addr=0x7f84d746f000 Loading Library : libasd2_DL.so ... Success. (null) ASIC Layer libraries successfully loaded!!! ASIC version: 0x448 Starting ASIC Driver create Driver and Device Init Completed. dope[0,0]> rdsp SifControl <------- rdsp <register name>

在Dope.sh中更改ASIC

上一个脚本正在读取交换机1，asic 0。执行此脚本时更改此设置：

dope[0,0]> asic 1 <--- changes to asic 1

dope[1,0]>

注意：Dope.sh(Doppler shell)是硬件编程中的最低级别。这是直接从硬件读取环值的方式。在rdsp命令之后，使用上一个脚本中的其他堆叠寄存器以获得最精细的数据（如果需要）。

静默重新加载问题

每当进行无提示重新加载(不生成crashdump/system_report)时，都会有显示某些特定文件的崩溃跟踪日志，以获取有关可能导致事件的原因的详细信息。

第 1 步

我们可以首先查看stack_mgr_R0，然后从它的角度查看重新加载的原因。例如：

步骤 2

我们现在可以转到pvp日志。使用从stack_mgr_R0提取的时间戳（具体在重新加载发生时），并查看pvp_F0和pvp_R0，以确定在执行所有重新加载协调序列之前，进程终止序列何时启动。例如：

注意：它可以显示pvp_F0和pvp_R0。

注意：请务必检查两者，因为您会看到linux_iosd_image进程在pvp_R0中终止，但pvp_F0中的另一个进程之前已终止。这是一个关键因素，因为第一个进程被终止。然后，它可以指出问题的触发因素。

步骤 3

在pvp_F0和pvp_R0中，也有一个在进程停止/被抑制后提供的退出代码。对于实际进程崩溃，使用退出代码129等。pvp就是这样感知的：需要创建crashdump/system_report。如果没有crashdump/system_report，则退出代码通常为零。例如：

步骤 4

确定责任进程后，转至进程相关的btrace日志并检查更多详细信息。

堆叠成员超时/重新加载-案例研究

在两台交换机之间使用一根错误电缆可能导致堆叠中的任何交换机由于丢失keepalive而重新加载。

症状

主动遇到问题的堆叠跟踪或交换机会产生以下错误：

- 9300-1# show platform software trace message stack-mgr switch active R0 | inc not responding

- 2018 <tel：2018>/05/10 13:57:30.397 [stack_mgr] [24459]： UUID： 0、ra： 0、TID： 0（注意）：对等体4无响应，适用于8000 <tel：8000>毫秒。Bookkeep=3EFDD last_msg = 3EFD5

- 2018 <tel：2018>/05/10 13:57:29.396 [stack_mgr] [24459]： UUID： 0、ra： 0、TID： 0（注意）：对等体6无响应，适用于8000 <tel：8000>毫秒。Bookkeep=3EFDC last_msg = 3EFD4

记帐会每秒检查一次，以查找堆栈中每台交换机上次收到的信息（从运行记帐的交换机的角度）。在8000毫秒的无keepalive数据包之后，我们开始打印对等体未被侦听到的跟踪。在16000毫秒处，有问题的交换机重新加载以确认丢失keepalive。

9300-1#sh switch stack-ports sum Load for five secs: 8%/4%; one minute: 9%; five minutes: 9% Time source is NTP, 11:53:11.196 EDT Thu May 17 2018 Sw#/Port# Port Status Neighbor Cable Length Link OK Link Active Sync OK #Changes to LinkOK In Loopback ------------------------------------------------------------------------------------------------------------------- 1/1 OK 2 100cm Yes Yes Yes 2 No 1/2 OK 8 300cm Yes Yes Yes 143 No <----------- 2/1 OK 3 50cm Yes Yes Yes 1 No 2/2 OK 1 100cm Yes Yes Yes 1 No 3/1 OK 4 50cm Yes Yes Yes 1 No 3/2 OK 2 50cm Yes Yes Yes 1 No 4/1 OK 5 50cm Yes Yes Yes 1 No 4/2 OK 3 50cm Yes Yes Yes 1 No 5/1 OK 6 50cm Yes Yes Yes 1 No 5/2 OK 4 50cm Yes Yes Yes 1 No 6/1 OK 7 50cm Yes Yes Yes 1 No 6/2 OK 5 50cm Yes Yes Yes 1 No 7/1 OK 8 50cm Yes Yes Yes 1 No 7/2 OK 6 50cm Yes Yes Yes 1 No 8/1 DOWN NONE 300cm No No Yes 116 No <---------------- 8/2 OK 7 50cm Yes Yes Yes 1 No

在交换机之间的堆叠链路中存在大量不稳定时，也会出现此超时，最终导致一台交换机认为堆叠端口已启动并且能够传递流量，而另一台认为该端口已关闭。

堆栈环在顺时针和逆时针方向上运行。环上的流量可以采用任一路径，而不管其目的地如何。这意味着，如果交换机2要向交换机1发送keepalive数据包，它可以通过交换机3、4、5、6、7、8然后是1，或者从2直接发送到1。从交换机1到交换机2的流量如果碰巧散列到交换机8，则会被丢弃，导致上一个脚本中出现超时。

缩写词

- OOB：带外

- SIF：堆栈接口

- RAC：环接入控制器