EqLlyHJ5w6,694hQRgLWm

交换机江湖故事之如何轻松定位STP故障

来源:济南磐龙笔记本交换机维修作者:济南磐龙华为交换机维修网址:http://www.pldtwx.com

交换机江湖故事之如何轻松定位STP故障



作为IEEE标准协议,STP具有兼容性好、网络规划要求低、配置简单等优势,被广泛应用于二层网络中当然,用得多了大家碰到的问题也就多了,STP有哪些故障现象呢,这些故障又是怎么排除的呢?小编这次就结合几个实际的STP故障,和大家分享一下STP故障解决之道。

交换机江湖故事之如何轻松定位STP故障小贴士

小伙伴们注意啦,本文中所指的STP是指广义的STP哦,包括STP协议、RSTP协议、MSTP协议。当需要对三者进行区分时,分别会叙述为STP模式、RSTP模式、MSTP模式。


交换机江湖故事之如何轻松定位STP故障故障现象1:使能STP的网络拓扑中出现链路故障或链路故障恢复后,业务流量恢复需要超过30秒,即端口无法快速收敛

定位思路

  • 遇到这种问题时,小编给大家总结了如下的定位思路:
  • 确认对端端口是否使能STP;
  • 检查端口是否工作在STP模式
  • 检查端口的链路类型是否为点对点
  • 定位步骤
  • 具体的定位步骤,请小伙伴们往下瞅:

    步骤1:确认对端端口是否使能STP

  • 终端、服务器都不支持STP协议,如果这些设备和交换机连接,建议在交换机的端口上执行命令stp edged-port enable 开启边缘端口属性或执行命令stp disable去使能STP。
  • 否则,当用户插拔链路连接介质,或先执行shutdown,再执行undo shutdown,重启端口后,因对端端口不会发送STP的协议报文进行协商,导致交换机上的端口经过2倍的Forward Delay(默认为15秒)时间后才能正常转发报文。
  • 步骤2:检查端口是否工作在STP模式

  • 全局配置为RSTP/MSTP模式的设备,当端口接收到STP模式报文后,端口可以自动迁移到STP模式下工作。
  • 通过命令display stp interface查看端口实际的工作模式(查看Port STP Mode字段哦)
  • 交换机江湖故事之如何轻松定位STP故障
  • 由于STP模式不能提供快速迁移机制,端口状态变化后,需要等待2倍的Forward Delay(默认15秒才能迁移到转发状态。
  • 可以通过在交换机端口配置stp no-agreement-check命令来避免端口连接的上游设备模式为RSTP或者与MSTP实现存在私有性差异的厂商设备时,上游桥设备不能快速迁移问题。
  • 当端口自动迁移到STP兼容工作模式后,以下情况端口无法自动迁移回原来的RSTP/MSTP模式,导致与其他运行RSTP/MSTP模式的设备无法互通。
  • 运行STP模式的设备关机或移走;
  • 运行STP模式的设备修改为运行RSTP/MSTP模式。
  • 因此需要在端口上执行stp mcheck命令,将端口手动迁移到RSTP/MSTP模式。

  • 步骤3:检查端口链路类型是否为点对点
  • RSTP/MSTP模式提供了端口快速迁移机制:当两端均使能STP而且链路类型为点对点时,才能实现端口状态的快速迁移。
  • 可以通过stp point-to-point { auto | force-false | force-true }命令配置链路类型,端口的链路类型默认为auto,即由RSTP/MSTP来检测与端口相连的链路是否是点对点链路,两端均工作在全双工模式是才可能成为点对点链路。
  • 通过display stp interface查看端口的链路类型:
  • 交换机江湖故事之如何轻松定位STP故障
  • Config=auto表示使用stp point-to-point命令配置的值为auto,Active=true表示当前工作在点对点链路类型。
  • 步骤4:如果以上步骤还不能解决问题,小伙伴们莫急,可以收集相关信息联系华为工程师处理。
  • 交换机江湖故事之如何轻松定位STP故障小贴士

    在这里提醒下小伙伴们,在使能STP之前,别忘了检查参与STP计算的端口是否使能了bpdu enable命令具体的请参见下面的表格。

    交换机江湖故事之如何轻松定位STP故障

    另外,小伙伴们需要关注这种场景:因为中间设备或者传输的问题导致STP报文不能透传,这个可以通过display stp interface interface-type interface-number命令判断,查看BPDU Received计数。如果计数一直为零或者没有增加,则有可能是中间设备或者传输导致收不到STP报文。

    交换机江湖故事之如何轻松定位STP故障故障现象2使能STP的网络中,流量业务时断时续,设备CPU占用率高

    定位思路

  • 同样滴,小编给大家总结了如下的定位思路
  • 端口是否持续收到TC报文;
  • 端口是否收到多种STP报文
  • 设备是否存在报文攻击。
  • 定位步骤
  • 具体的定位步骤,请小伙伴们继续往下瞅:

  • 步骤1:端口是否持续收到TC报文
  • 执行命令display cpu-usage查看设备整机或接口板上占用CPU较高的任务,如果交换机接口板的PPI任务(适配层任务,维护芯片中各个接口的状态)CPU使用率较高,则排查端口是否持续收到大量TC报文。如果CPU利用率较高的任务中没有PPI任务,则按照步骤3进行处理。

  • 通过如下命令行可查看端口收、发TC报文的情况:
  • display stp tc-bpdu statistics:该命令从框式V100R006版本,盒式V100R005版本开始支持
  • 交换机江湖故事之如何轻松定位STP故障
  • display stp topology-change: 该命令从框式V100R006版本,盒式V100R005版本开始支持    交换机江湖故事之如何轻松定位STP故障
  • 如果通过以上排查,确认端口持续收到大量TC报文,小伙伴们可以通过使用stp tc-protection命令,使能交换机对TC报文的保护功能,实现对TC报文的限制,以达到对设备进行保护的目的。另外,还可以通过stp tc-protection threshold命令指定Hello Time时间内处理TC类型STP报文的次数。
  • 在收到TC报文转发刷新转发表项时,STP的收敛方式不同,交换机对ARP表项的处理方式不同,建议配置为normal
  • 如果STP的收敛方式配置为fast,交换机将ARP表中的相关表项直接删除。
  • 如果STP的收敛方式配置normal交换机将ARP表中相关表项的剩余存活时间置为0,对这些表项进行老化处理。
  • 如果使能TC保护、修改STP收敛方式后,PPI任务的CPU利用率仍然较高,小伙伴们莫着急,请继续按照步骤2进行处理。

  • 步骤2:端口是否收到多种STP报文
  • 可以通过display stp history命令查看端口角色计算的历史记录,如果端口的角色不断更新,表明端口收到来自不同设备的报文,说明组网存在问题:
  • 交换机江湖故事之如何轻松定位STP故障
  • 同时,打开以下STP debug开关,采集故障期间交互的STP报文事件信息,排除非法的STP报文。

  • 交换机江湖故事之如何轻松定位STP故障

  • 交换机江湖故事之如何轻松定位STP故障

  • 步骤3设备是否存在报文攻击
  • 网络中出现链路故障或报文攻击,可能导致端口长时间接收不到对端发送的STP协议报文,发生STP切换状态,例如会产生如下日志
  • Jul 26 2012 02:26:40 Switch %%01MSTP/6/SET_PORT_DISCARDING(l):In MSTP process 0 instance 0, MSTP set port GigabitEthernet4/0/10 state as discarding.
  • Jul 26 2012 02:26:43 Switch %%01MSTP/6/SET_PORT_FORWARDING(l):In MSTP process 0 instance 0, MSTP set port GigabitEthernet4/0/10 state as forwarding.

  • IFNET/4/LINK_STATE:The line protocol [line-protocol] on the interface [interface-name] has entered the [state] state.

  • 如果链路正常,通过display stp interface interface-type interface-number查看BPDU Received计数。
  • 交换机江湖故事之如何轻松定位STP故障
  • 如果计数没有周期增长,且端口下BPDU配置正确,则在端口入方向绑定流策略对STP报文进行流量统计,以确认对端设备是否周期发送了STP协议报文。配置和查看方法如下:
  • 配置流策略:
  • 交换机江湖故事之如何轻松定位STP故障
  • 查看流量统计:
  • 交换机江湖故事之如何轻松定位STP故障
  • 如果通过流量统计查看到STP报文计数在周期增加,但使用命令display stp interface interface-type interface-number查看BPDU Received计数没有增加,那么需要再使用命令display cpu-defend statistics all查看是否有其他大量报文在上送CPU处理
  • 交换机江湖故事之如何轻松定位STP故障
  • 交换机江湖故事之如何轻松定位STP故障小贴士
  • 小伙伴们注意啦:在不同形态、不同版本的交换机上,使用display cpu-defend statistics all命令查看到的报文类型可能不同
  • 交换机通过CPCAR机制对上送控制平面的报文进行业务细化,分别进行限速与队列调度,以保护控制平面的安全。如果某些协议报文已经超过CPCAR的阈值出现丢包,通过命令display cpu-defend configuration all查看这些协议报文所在的队列是否与STP报文在同一队列:
  • 交换机江湖故事之如何轻松定位STP故障
  • 步骤4:如果以上步骤还不能解决问题,小伙伴们可以收集相关信息联系华为工程师处理哦。
  • 交换机江湖故事之如何轻松定位STP故障

    本期的故障定位招数已经给大家分享完了,相信小伙伴们再遇到STP故障时,可以轻松应对了。以后再有类似故障,小编再给大家分享哦,拜拜。~~~


EqLlyHJ5w6