H3C stp配置
一个局域网通常由多台交换机互连而成,为了避免广播风暴,我们需要保证在网络中不存在路径回环,也就是说所有链路应该组成一颗无回环的树,交换机上的 STP 协议(生成树协议)就实现了这样的功能。
生成树协议有三种模式:
    STP:    STP 不能快速迁移。即使是在点对点链路或边缘端口,也必须等待 2 倍的 Forward delay 的时间延迟,端口才能迁移到转发状态。
    RSTP:   RSTP 可以快速收敛,但是和 STP 一样存在以下缺陷:局域网内所有网桥共享一棵生成树,不能按 VLAN 阻塞冗余链路,所有 VLAN 的报文都沿着一棵生成树进行转发。
    MSTP:   MSTP 可以弥补 STP RSTP 的缺陷,它既可以快速收敛,也能使不同 VLAN 的流量沿各自的路径分发,从而为冗余链路提供了更好的负载分担机制。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

             MSTP 设置 VLAN 映射表(即 VLAN 和生成树的对应关系表)把 VLAN 和生成树联系起来。同时它把一个交换网络划分成多个域,每个域内形成多棵生成树,生成树之间彼此独立。 MSTP 将环路网络修剪成为一个无环的树型网络,避免报文在环路网络中的增生和无限循环,同时还提供了数据转发的多个冗余路径,在数据转发过程中实现 VLAN 数据的负载均衡。

生成树协议 STP 端口状态:
    Disabled:
    Blocking:
    Listening:
    Learning:
    Forwarding:
生成树协议 RSTP 端口状态:
    Disabled:
    Discard:
    Forwarding:

 

生成树协议配置消息( BPDU :
BPDU 配置消息是以以太网数据帧的格式进行传递的,它采用一个周知的多播 MAC 地址 01-80-C2-00-00-00 作为目的 MAC 地址,网络中所有的网桥收到该地址后都能够判断出该报文是生成树协议报文。源 MAC 地址域中填的是本网桥的 MAC 。数据链路层报头中的 SAP 值是 01000010 0x42

     树根 ID (以以太网交换机的优先级表示),根路径开销,指定交换机 ID (以以太网交换机的优先级表示),指定端口 ID (以端口号表示)
              (RootID,PortPathCost,DesignatedBridgeID,PortPriority)

     RootID:   主要以交换机的优先级表示。 BridgePriority.+BridgeMacAddress
             BridgePriority: 默认( 32768 ),根( 0 ),步长( 4096
             树根注意由 BridgePriority 决定。当优先级相同时,以 BridgeMacAddress 小的为根。
     PortPathCost:  端口对应链路的路径开销(注意到根的开销)。
              Port Cost : Config=auto / Active=200 (默认 100m 此参数可决定环路断点。
    DesignatedBridgeID: 主要以交换机的优先级表示。 BridgePriority+BridgeMacAddress
              CIST Bridge : 4096.00e0-fc5d-4d6e 此参数可决定环路断点。
         PortPriority: 主要以交换机的端口优先级表示。 PortPriority.+Portindex
                   Desg. Bridge/Port   :0.000f-e28c-f2c7 / 128.2
PortPriority: 默认( 128 )。当交换机相连时,此参数可决定环路断点。
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
配置消息的比较原则是:

l               树根 ID 较小的配置消息优先级高;

l               若树根 ID 相同,则比较根路径开销,比较方法为:用配置消息中的根路径开销加上本端口对应的路径开销之和(设为 S ),则 S 较小的配置消息优先级较高;

l               若根路径开销也相同,则依次比较指定交换机 ID 、指定端口 ID 、接收该配置消息的端口 ID 等。

           交换 机有三个时间参 数: Forward Delay Hello Time Max Age
                 缺省情况下, Forward Delay 时间为 1500 厘秒(即 15 秒), Hello Time 时间为 200 厘秒(即 2 秒), Max Age 时间为 2000 厘秒(即 20 秒)。

                 根交换机的 Hello Time Forward Delay 以及 Maximum Age 三个时间参数取值之间应该满足如下公式,否则网络会频繁震荡:

2 × (forward-delay 1 second) >= maximum-age

maximum-age >= 2 × (hello time+ 1 second)

 

    边缘端口:

             对于直接与终端相连的端口,请将该端口设置为边缘端口,同时启动BPDU 保护功能。这样既能够使该端口      快速迁移到转发状态,也可以保证网络的安全。
         说明: 用户如果将某个端口指定为边缘端口,那么当该端口由堵塞状态向转发状态迁移时,这个端口可以实现快速迁移,而无需等待延迟时间。用户只能将与终端链接的端口设置为边缘端口。在交换机没有使能 BPDU 保护的情况下,如果被设置为边缘端口的端口上收到来自其它端口的 BPDU 报文,则该端口会重新变为非边缘端口。如果交换机使能了 BPDU 保护,则该端口会被关闭。该参数对所有生成树实例有效,也就是说,当端口被配置为边缘端口或非边缘端口时,该端口在所有生成树实例上都被设置为边缘端口或非边缘端口。在交换机没有使能 BPDU 保护的情况下,当端口收到 BPDU 后,即使用户设置为边缘端口,实际运行值也会变为非边缘端口。

缺省情况下,交换机所有以太网端口均被配置为非边缘端口。

 

                 支持 MSTP 的交换机提供 BPDU 保护功能、 Root 保护功能和环路保护功能。

    对于接入层设备,接入端口一般直接与用户终端(如 PC 机)或文件服务器相连,此时接入端口被设置为边缘端口以实现这些端口的快速迁移;当这些端口接收到配置消息( BPDU 报文)时系统会自动将这些端口设置为非边缘端口,重新计算生成树,引起网络拓扑的震荡。这些端口正常情况下应该不会收到生成树协议的配置消息。如果有人伪造配置消息恶意***交换机,就会引起网络震荡。 BPDU 保护功能可以防止这种网络***。

    生成树的根交换机及备份交换机应该处于同一个域内,特别是对于 CIST 的根交换机和备份交换机,由于网络设计时一般会把 CIST 的根交换机和备份交换机放在一个高带宽的核心域内。但是由于维护人员的错误配置或网络中的恶意***,网络中的合法根交换机有可能会收到优先级更高的配置消息,这样当前根交换机会失去根交换机的地位,引起网络拓扑结构的错误变动。这种不合法的变动,会导致原来应该通过高速链路的流量被牵引到低速链路上,导致网络拥塞。 Root 保护功能可以防止这种情况的发生。

    依靠不断接收上游交换机发送的 BPDU ,交换机可以维持根端口和其他阻塞端口的状态。但是由于链路拥塞或者单向链路故障,这些端口会收不到上游交换机的 BPDU 。此时交换机会重新选择根端口,根端口会转变为指定端口,而阻塞端口会迁移到转发状态,从而交换网络中会产生环路。环路保护功能会抑制这种环路的产生。在启动了环路保护功能后,根端口的角色不会迁移,阻塞端口会一直保持在 Discarding 状态,不转发报文,从而不会在网络中形成环路。

    可以通过下面的命令来配置交换机的保护功能。

    交换机上启动了 BPDU 保护功能以后,如果边缘端口收到了配置消息,系统就将这些端口关闭,同时通知网管这些端口被 MSTP 关闭。被关闭的端口只能由网络管理人员恢复。

    对于设置了 Root 保护功能的端口,其在所有实例上的端口角色只能保持为指定端口。一旦这种端口上收到了优先级高的配置消息,即其将被选择为非指定端口时,这些端口的状态将被设置为侦听状态,不再转发报文(相当于将此端口相连的链路断开)。当在足够长的时间内没有收到更优的配置消息时,端口会恢复原来的正常状态。

    在对一个端口进行配置的时候,在 Loop保护功能,Root保护功能或者边缘端口设置三个配置中,同一时刻只能有一个配置生效。

    缺省情况下,交换机不启动 BPDU 保护功能、 Root 保护功能和环路保护功能。

           总之,直接与终端相连的端口设为边缘端口,根交换机设为Root保护功能,次汇聚交换机设为环路保护功能。

例1:有三台交换机相连,形成环路,启用STP,没做任何配置。如何选择根?

      默认交换机优先级为32768,交换机MAC小的为根。可以通过改变优先级来指定root.

例2:有三台相同交换机(指端口速度)相连,形成环路,启用STP。如何指定Discarding端口?

      根交换机选定后,主要依据PortPathCost来确定根端口和指定端口。Cost值大(到根交换机的Cost的和)的端口为Discarding端口。

例3:有三台相同交换机(指端口速度)相连,形成环路,启用STP。RoodID,Cost相同,如何指定Discarding端口?

      当RoodID,Cost相同,交换机MAC大的端口为Discarding端口。

      如果,RoodID,Cost,DesignatedBridgeID相同,说明是两个交换机间有两根以上的线相连。

例4:有三台相同交换机(指端口速度)相连,形成环路,启用STP。

      

<H3C>dis stp
-------[CIST Global Info][Mode MSTP]-------
CIST Bridge         :0.000f-e28c-f2c7
Bridge Times        :Hello 2s MaxAge 20s FwDly 15s MaxHop 20
CIST Root/ERPC      :0.000f-e28c-f2c7 / 0
CIST RegRoot/IRPC   :0.000f-e28c-f2c7 / 0
CIST RootPortId     :0.0
BPDU-Protection     :disabled
Bridge Config-            
Digest-Snooping     :disabled
TC or TCN received  :37
Time since last TC  :0 days 4h:17m:50s
----[Port1(GigabitEthernet1/0/1)][FORWARDING]----
 Port Protocol       :enabled
 Port Role           :CIST Designated Port
 Port Priority       :128
 Port Cost(Legacy)   :Config=auto / Active=200
 Desg. Bridge/Port   :0.000f-e28c-f2c7 / 128.1
 Port Edged          :Config=disabled / Active=disabled 
 Point-to-point      :Config=auto / Active=true
 Transmit Limit      :10 packets/hello-time
 Protection Type     :None
 MST BPDU Format     :Config=auto / Active=legacy
 Port Config-            
 Digest-Snooping     :disabled
 Rapid transition    :true
 Num of Vlans Mapped :1
 PortTimes           :Hello 2s MaxAge 20s FwDly 15s MsgAge 0s RemHop 20
 BPDU Sent           :9431            
          TCN: 0, Config: 0, RST: 0, MST: 9431
 BPDU Received       :178            
          TCN: 0, Config: 0, RST: 0, MST: 178
----[Port2(GigabitEthernet1/0/2)][FORWARDING]----
 Port Protocol       :enabled
 Port Role           :CIST Designated Port
 Port Priority       :128
 Port Cost(Legacy)   :Config=auto / Active=200
 Desg. Bridge/Port   :0.000f-e28c-f2c7 / 128.2
 Port Edged          :Config=disabled / Active=disabled 
 Point-to-point      :Config=auto / Active=true
 Transmit Limit      :10 packets/hello-time
 Protection Type     :None
 MST BPDU Format     :Config=auto / Active=legacy
 Port Config-            
 Digest-Snooping     :disabled
 Rapid transition    :true
 Num of Vlans Mapped :1
 PortTimes           :Hello 2s MaxAge 20s FwDly 15s MsgAge 0s RemHop 20
 BPDU Sent           :9095            
          TCN: 0, Config: 0, RST: 0, MST: 9095
 BPDU Received       :10            
          TCN: 0, Config: 0, RST: 0, MST: 10
               
----[Port3(GigabitEthernet1/0/3)][DOWN]----
                
<H3C>dis stp
-------[CIST Global Info][Mode MSTP]-------
CIST Bridge         :0.000f-e28c-f2c7
Bridge Times        :Hello 2s MaxAge 20s FwDly 15s MaxHop 20
CIST Root/ERPC      :0.000f-e28c-f2c7 / 0
CIST RegRoot/IRPC   :0.000f-e28c-f2c7 / 0
CIST RootPortId     :0.0
BPDU-Protection     :disabled
Bridge Config-            
Digest-Snooping     :disabled
TC or TCN received  :37
Time since last TC  :0 days 4h:19m:27s
----[Port1(GigabitEthernet1/0/1)][FORWARDING]----
 Port Protocol       :enabled
 Port Role           :CIST Designated Port
 Port Priority       :128
 Port Cost(Legacy)   :Config=auto / Active=200
 Desg. Bridge/Port   :0.000f-e28c-f2c7 / 128.1
 Port Edged          :Config=disabled / Active=disabled 
 Point-to-point      :Config=auto / Active=true
 Transmit Limit      :10 packets/hello-time
 Protection Type     :None
 MST BPDU Format     :Config=auto / Active=legacy

<H3C>dis stp brief
 MSTID      Port                         Role  STP State     Protection
   0        GigabitEthernet1/0/1         DESI  FORWARDING    NONE
   0        GigabitEthernet1/0/2         DESI  FORWARDING    NONE
<H3C>dis stp root 
 MSTID  Root Bridge ID        ExtPathCost IntPathCost Root Port
   0    0.000f-e28c-f2c7      0           0                                      
[H3C]dis stp ?
  abnormal-port         Display abnormal ports
  brief                 Brief information
  down-port             Port infomation of protocol down
  history               Root or alternate port history
  instance              Spanning tree instance
  interface             Specify interface
  region-configuration  Region configuration
  root                  Display status and configuration of the root bridge
  tc                    Port TC count
  <cr>                 
     
<Quidway>dis stp bri
 MSTID      Port                  Role  STP State     Protection
   0        Ethernet0/1           ROOT  FORWARDING      NONE
   0        Ethernet0/2           ALTE  DISCARDING      NONE
<Quidway>dis stp
-------[CIST Global Info][Mode MSTP]-------
CIST Bridge         :32768.000f-e222-b649
Bridge Times        :Hello 2s MaxAge 20s FwDly 15s MaxHop 20
CIST Root/ERPC      :0.000f-e28c-f2c7 / 200
CIST RegRoot/IRPC   :32768.000f-e222-b649 / 0
CIST RootPortId     :128.1
BPDU-Protection     :disabled
Bridge Config
Digest Snooping     :disabled
TC or TCN received: 62
----[Port1(Ethernet0/1)][FORWARDING]----
 Port Protocol       :enabled
 Port Role           :CIST Root Port
 Port Priority       :128
 Port Cost           :Config=auto / Active=200
 Desg. Bridge/Port   :0.000f-e28c-f2c7 / 128.1
 Port Edged(Admin)   :disabled 
 Point-to-point      :Config=auto / Active=true
 Transit Limit       :3 packets/hello-time
 Protection Type     :None
 Port Config
 Digest Snooping     :disabled           
 Num of Vlans Mapped :1
 PortTimes           :Hello 2s MaxAge 20s FwDly 15s RemHop 0
 BPDU Sent           :178
          TCN: 0, Config: 0, RST: 0, MST: 178
 BPDU Received       :9524
          TCN: 0, Config: 0, RST: 0, MST: 9524
----[Port2(Ethernet0/2)][DISCARDING]----
 Port Protocol       :enabled
 Port Role           :CIST Alternate Port
 Port Priority       :128
 Port Cost           :Config=auto / Active=200
 Desg. Bridge/Port   :4096.00e0-fc5d-4d6e / 128.2
 Port Edged(Admin)   :disabled 
 Point-to-point      :Config=auto / Active=true
 Transit Limit       :3 packets/hello-time
 Protection Type     :None
 Port Config
 Digest Snooping     :disabled
 Num of Vlans Mapped :1
 PortTimes           :Hello 2s MaxAge 20s FwDly 15s RemHop 1
 BPDU Sent           :1600
                                         
[Quidway]dis stp inst ?
  INTEGER<0-16>  Identifier of spanning tree instance
[Quidway]dis stp inst 0 ?
  brief      Brief information
  interface  Specify interface
  slot       Slot Number
  <cr>      
[Quidway]dis stp inst 0
-------[CIST Global Info][Mode MSTP]-------
CIST Bridge         :32768.000f-e222-b649
Bridge Times        :Hello 2s MaxAge 20s FwDly 15s MaxHop 20
CIST Root/ERPC      :0.000f-e28c-f2c7 / 200
CIST RegRoot/IRPC   :32768.000f-e222-b649 / 0
CIST RootPortId     :128.1
BPDU-Protection     :disabled
Bridge Config
Digest Snooping     :disabled
TC or TCN received: 62
----[Port1(Ethernet0/1)][FORWARDING]----
 Port Protocol       :enabled
 Port Role           :CIST Root Port
 Port Priority       :128
 Port Cost           :Config=auto / Active=200
 Desg. Bridge/Port   :0.000f-e28c-f2c7 / 128.1
 Port Edged(Admin)   :disabled 
 Point-to-point      :Config=auto / Active=true
 Transit Limit       :3 packets/hello-time
 Protection Type     :None
 Port Config