【二层环路】交换机二次原路排查思路

以太网交换网络中为了提高网络可靠性,通常会采用冗余设备和冗余链路,然而现网中由于组网调整、配置修改、升级割接等原因,经常会造成数据或协议报文环形转发,不可避免的形成环路。如图1所示,三台设备两两相连就会形成环路。当设备未部署环路保护协议或者组网配置发生变更时,环形组网中就可能会产生广播风暴。

图1 以太网交换网络冗余链路组网图

【二层环路】交换机二次原路排查思路_第1张图片

二层环路最大的危害就是会产生广播风暴,以太网是一个支持广播的网络,在没有环路的环境中,广播包在网络中以泛洪的形式被送达到网络的每一个角落,以保证每个设备都能够接受到它。在带宽允许的情况下,每个网桥在接收到广播报文以后,都会向除接收端口以外的其他所有接口转发这个广播包,一旦网络中有环路,这种简单的广播机制就会引发灾难性后果。

环路中一个广播报文被反复转发了千万次,产生了广播风暴并且很快达到或接近端口线速,并迅速消耗链路带宽。根据转发规则,这些广播报文不仅仅只是在环路上无限转发,环路设备还会向其他端口转发一份,这样整个网络中都充斥着大量重复广播报文。如果全网络都采用千兆端口互连,那么几乎每一条链路上都充斥着1000M/s的广播报文,正常的数据报文将很难再获得转发的机会。

二层网络设备处于同一个广播域下,广播报文在环路中会反复持续传送,无限循环,形成广播风暴,引发MAC地址表不稳定等故障现象,进而影响正常业务,导致用户通信质量较差,甚至通信中断。

为防止环路出现,并保证网络的可靠性,交换机设备上通常会部署一些破环协议。目前S系列交换机支持的二层环路破环协议主要有:

  • STP/RSTP/MSTP
  • RRPP
  • SEP
  • Smart Link
  • ERPS

除了二层环路破环协议,S系列交换机同时支持环路检测技术,主要的环路检测技术有:

  • Loop Detection
  • Loopback Detection

本文将主要介绍如何识别二层网络的环路问题以及常见处理方法。

总体思路

所有故障皆“事出有因”,故障的发生一定是在一个稳定的正常运行的网络中,某一网络环节发生了变化而引起的,这些诱发网络产品生故障的变化包括:

  • 网络调整:包括但不限于组网调整、配置修改、升级割接等操作;
  • 网络环境发生变化:包括但不限于网络风暴、特定节日/促销活动/智能终端导致用户行为变化,网络设备电源/温度环境发生变化、传输光缆被切断、夏令时跳变、微波受大雨/大雾等其后影响、洪水/火灾/地震/雷击等外界不可抗力;
  • 网络设备发生故障:包括但不限于软件发生缺陷、硬件老化故障(单板异常、光纤光模块故障)等。

所有这些诱发故障的内在因素绝大多数都有其“外在异常表现”,具体会反映在特定网元的告警、日志、流量统计、端口状态等信息中。因此故障快速定位的关键在于,如何有效而快速的通过事发时间、影响范围、所做操作及故障网络范围的网元基本信息的查看,快速发现这些“外在异常表现”所在的点,进而锁定故障网元节点,找出问题根因。

如下图所示,网络中出现二层环路通常会有如下现象,如果分析现网问题发现存在以下异常表现中的一个或者多个,则网络中存在二层环路可能性较大。

图2 二层环路常见异常表现

【二层环路】交换机二次原路排查思路_第2张图片

环路故障诊断步骤

判断网络中是否存在二层环路,一般可以使用查看接口带宽流量、查看MAC漂移告警、部署环路检测、查看CPU占用率四种方法进行确认。这四种方法没有严格的操作顺序,为更加准确判断故障属性,可以使用其中的一种或多种方法来进行问题定位。

图3 环路故障诊断步骤

【二层环路】交换机二次原路排查思路_第3张图片

查看接口带宽流量

  1. 检查端口带宽流量简要信息。

    通过display interface brief命令,查看所有接口下的流量,存在环路的接口上InUi和OutUi两个计数会逐步增加至端口速率上限。

    第一次查询:

     display interface brief | include up 
    
    PHY: Physical                                                                   
    *down: administratively down                                                    
    ^down: standby                                                                  
    ~down: LDT down                                                                 
    #down: LBDT down                                                                
    (l): loopback                                                                   
    (s): spoofing                                                                   
    (E): E-Trunk down                                                               
    (b): BFD down                                                                   
    (e): ETHOAM down                                                                
    (dl): DLDP down                                                                 
    (d): Dampening Suppressed                                                       
    (ld): LDT block                                                                 
    (lb): LBDT block                                                                
    InUti/OutUti: input utility/output utility 
    Interface                   PHY   Protocol  InUti OutUti   inErrors  outErrors  
    Ethernet0/0/0/0             up    up        0.01%  0.01%          0          0  
    GigabitEthernet0/0/2        up    up        0.01%  0.01%          0          0 
    GigabitEthernet0/0/16       up    up        0.01%  0.56%          0.56%      0
    GigabitEthernet1/0/12       up    up        0.01%  0.56%          0.56%      0

    最后一次查询:

     display interface brief| include up  
    
    PHY: Physical                                                                   
    *down: administratively down                                                    
    ^down: standby                                                                  
    ~down: LDT down                                                                 
    #down: LBDT down                                                                
    (l): loopback                                                                   
    (s): spoofing                                                                   
    (E): E-Trunk down                                                               
    (b): BFD down                                                                   
    (e): ETHOAM down                                                                
    (dl): DLDP down                                                                 
    (d): Dampening Suppressed                                                       
    (ld): LDT block                                                                 
    (lb): LBDT block                                                                
    InUti/OutUti: input utility/output utility 
    Interface                   PHY   Protocol  InUti OutUti   inErrors  outErrors  
    Ethernet0/0/0/0             up    up        0.01%  0.01%          0          0  
    GigabitEthernet0/0/2        up    up        0.01%  0.01%          0          0 
    GigabitEthernet0/0/16       up    up          76%    76%          0          0
    GigabitEthernet1/0/12       up    up          76%    76%          0          0

    一般情况下,使用此命令查询只能看到当前网络的流量结果,此结果需要和网络的正常业务流量进行比较,业务流量的带宽可以从网管设备上的网络流量监控图中获取。

    • 通过下面简单的判断,可以初步确定有没有环路存在。
      • 如果当前网络流量远大于正常业务,可能存在二层环路。
      • 如果当前网络流量正常,且没有部署广播抑制(接口下未配置命令broadcast-suppression percent-value | cir cir-value [ cbs cbs-value ] | packets packets-per-second }),则没有二层环路。
      • 如果当前网路流量比正常流量稍大,且部署了广播抑制,则需要通过查看MAC地址漂移进一步判断。
    • 通过观察设备流量大的端口个数和流量出入方向,也可以进行如下初步判断。
      • 如果只有一台设备的一个端口出入方向流量较大,可能属于交换机单端口自环出现环路。
      • 如果只有一台设备的两个端口流量较大,可能属于交换机双端口环路导致协议震荡。
      • 如果某端口只有单方向流量较大,即只有出方向流量大或者只有入方向流量较大,则需要重点排查,因为环路有可能在该端口的上下游设备,属于下游设备报文转发异常导致伪环路问题。

      上述步骤在确认可能是环路的情况下,可以通过如下步骤进一步判断确认环路是否的确存在。

  2. 查看带宽异常的接口详细信息。

    为排除先前报文统计数对故障判断的影响,在征询客户同意的前提下,您可以在用户视图执行命令reset counters interface [ interface-type interface-number ] ],先清除指定接口的统计信息。

    任意视图下执行命令display interface interface-type [ interface-number ] ],或接口视图下执行命令display this interface,查看接口当前运行状态详细信息。具体可查看回显信息中的BroadcastMulticast和字段,以观察接口出入方向是否有大量的广播和组播报文计数。

    如果存在某些接口的收发广播/组播报文数明显大于同一设备其他接口的收发广播/组播报文数,则存在环路的可能性很大;否则,请执行查看MAC地址漂移进一步判断。

     display interface XGigabitEthernet 2/0/1                                           
    XGigabitEthernet2/0/1 current state : UP                                        
    Line protocol current state : UP                                                
    Description:                                                                    
    Switch Port, PVID :    1, TPID : 8100(Hex), The Maximum Frame Length is 9216    
    IP Sending Frames' Format is PKTFMT_ETHNT_2, Hardware address is 00e0-fc01-38f9 
    Last physical up time   : 2010-12-15 14:24:47 UTC-03:00                         
    Last physical down time : 2010-12-15 14:23:54 UTC-03:00                         
    Current system time: 2010-12-15 19:13:33-03:00                                  
    Port Mode: COMMON FIBER, Transceiver: 10GBASE_SR_SFP                            
    Speed : 10000,  Loopback: NONE                                                  
    Duplex: FULL,   Negotiation: DISABLE                                            
    Mdi   : NORMAL, Flow-control: DISABLE                                           
    Last 300 seconds input rate 1432 bits/sec, 1 packets/sec                        
    Last 300 seconds output rate 1272 bits/sec, 1 packets/sec                       
    Input peak rate 12390544 bits/sec, Record time: 2010-12-15 14:31:02             
    Output peak rate 11624 bits/sec, Record time: 2010-12-15 14:24:48               
                                                                                    
    Input:  3804624 packets, 578247577 bytes                                        
      Unicast:                    3784099,  Multicast:                       20524  
      Broadcast:                        1,  Jumbo:                               0  
      Discard:                          0,  Pause:                               0  
      Frames:                           0                                           
                                                                                    
      Total Error:                      0                                           
      CRC:                              0,  Giants:                              0  
      Jabbers:                          0,  Fragments:                           0  
      Runts:                            0,  DropEvents:                          0  
      Alignments:                       0,  Symbols:                             0  
      Ignoreds:                         0                                           
                                                                                    
    Output:  19396 packets, 2796198 bytes                                           
      Unicast:                          9,  Multicast:                       19386  
      Broadcast:                        1,  Jumbo:                               0  
      Discard:                          0,  Pause:                               0  
                                                                                    
      Total Error:                      0                                           
      Collisions:                       0,  ExcessiveCollisions:                 0  
      Late Collisions:                  0,  Deferreds:                           0  
      Buffers Purged:                   0                                           
                                                                                    
        Input bandwidth utilization threshold : 90.00%                              
        Output bandwidth utilization threshold: 90.00%                              
        Input bandwidth utilization  :    0%                                        
        Output bandwidth utilization :    0%   

你可能感兴趣的:(网络,服务器,运维)