STP选举过程与案例

STP选举过程

根交换选举

选举过程

  1. 交换机开启STP之后,会自动发送STP数据帧,数据帧中包括BPDU数据,其中有识别唯一交换机的BID,BID中有优先级+MAC地址
  2. 根据交换机发送的STP数据帧中BID的优先级选举根交换,BID中优先级数字越小越优先
  3. 如果有交换机的优先级最小且一致,则比较交换机的MAC地址大小,MAC地址越小越优先
  4. 如果有交换机的MAC地址也一致,则比较交换机的PID(端口ID),STP数据帧中PID的大小是按顺序的

图示

alt 根交换选举-BID

非根交换的根端口选举

根端口选举过程

  1. 首先,比较非根交换机所有端口的RPC(Root Port Cost),就是各个端口到根交换的开销,开销越小越优先
  2. 如果交换机有端口到根交换的开销是一致的,则比较交换机对端(对端指的发送端端口的STP数据帧)的BID(包括优先级+MAC地址)
  3. 如果对端的BID一致,则比较对端PID;PID越小越优先
  4. 如果对端PID一致,则比较本端的PID,PID越小越优先

图示

alt 根端口选举

指定端口选举

选举过程

  1. 根交换机的端口都是指定端口
  2. 首先,比较交换机除了根段端口以外的端口的RPC(Root Port Cost),该端口发送出去的STP数据帧中的RPC,值越小越优先
  3. 如果RPC一致,比较交换机除了根段端口以外的端口的BID(优先级+MAC地址),越小越优先
  4. 如果BID一致,比较交换机除了根段端口以外的端口的PID(Port Identifier),越小越优先

图示

alt 非根交换指定端口选举

STP案例

案例一

图示

alt 选举案例一

分析

  1. 根交换
    • 确定SW1为根交换
    • 比较三个交换的BID
    • 首先比较优先级,三个交换的优先级一样都是缺省值32768
    • 然后比较三个交换的MAC地址,SW1的MAC地址最小,确定为根交换
  2. 非根交换的根端口
    • SW2的根端口是F0/24、SW3的根端口是F0/23
    • SW2与根交换之间是100M带宽,F0/24的RPC值为200000,F0/23的RPC值为400000,所以F0/24为根端口
    • SW3与跟交换之间是100M带宽,F0/23的RPC值为200000,F0/24的RPC值为400000,所以F0/23为根端口
  3. 指定端口
    • 根交换的端口都是指定端口,所以SW1的F0/23和F0/24两个端口都是指定端口
    • SW2的F0/23与SW3的F0/24口进行选举,因为SW2与SW3之间带宽是100M,SW2的F0/23发送STP数据帧时的RPC为200000,SW3的F0/24发送STP数据帧时的RPC也是200000
    • 比较SW2的F0/23与SW3的F0/24口的BID,优先级的值都是默认值32768,比较MAC,SW2的F0/23的MAC的值小,所以SW2的F0/23为指定端口,SW3的F0/24口为阻塞端口

案例二

图示

alt STP选举案例二

分析

  1. 根交换
    • 根交换是SC
    • 比较四个交换的BID,SC的优先级的值为0000,最小,所以SC为根交换
  2. 非根交换的根端口
    • SA交换的根端口为F0/0
    • SA的Fa0/0端口到根交换的带宽是Fa(100M),所以RPC值为200000
    • SA到根交换的路径中带宽有Gi(1000M)与Fa(100M),根据图上的路径,RPC值为20000+200000+200000=420000
    • SB交换的根端口是Fa0/3
    • SB交换的Fa0/3端口到根交换的带宽有Fa(100M) 与Gi(1000M),根据图上的路径,RPC的值为20000+200000=220000
    • SB交换的Fa0/2端口到根交换的带宽是Fa(100M),所以RPC为200000+200000=40000
    • SD交换的根端口是Gi0/9
    • SD交换Gi0/9端口到跟交换的带宽是Gi(1000M),所以RPC的值为20000
    • SD交换Gi0/1端口到跟交换的带宽是Fa(100M),所以RPC的值为200000+200000+200000=600000
  3. 指点端口
    • 根交换的端口是指定端口,所以SC的Gi0/1与Gi0/10是指定端口
    • SA交换的Fa0/1端口发送STP数据帧时的RPC值为200000
    • SB交换的Fa0/2端口发送STP数据帧时的RPC值为200000
    • SA交换的Fa0/1端口发送STP数据帧时的RPC值为200000,而SB交换的Fa0/2端口发送STP数据帧时的RPC值是20000+200000=220000,所以SA交换的Fa0/1端口为指点端口
    • SD换的Gi0/1端口发送STP数据帧时的RPC值为20000,所以是指点端口
    • 四个交换中只有SB交换的Fa0/2端口是阻塞端口

案例三

图示

alt STP选举案例三

分析

  1. 根交换
    • SC为根交换
    • SC与SA、SB、SD三个交换的BID进行比较,SC交换的优先级的值为0000,最小,所以SC为根交换
  2. 非根交换的根端口
    • SA交换的根端口为10Gb/s线连接的端口,10Gb/s线连接的端口的RPC值为2000,1Gb/s线连接的端口的RPC值为20000+20000=40000,所以,10Gb/s线连接的端口为根端口
    • SB交换的根端口是斜着的1Gb/s线连接的端口,斜着的1Gb/s线连接的端口的RPC的值为20000,直的1Gb/s线连接的端口的RPC值为2000+20000=22000,所以斜着1Gb/s线连接的端口
    • SD交换机的根端口是直着的1Gb/s线连接的端口,直着的1Gb/s线连接的端口的RPC值为20000,斜着的1Gb/s线连接的端口的RPC值为2000+20000=22000
  3. 指定端口
    • 根交换的口都是指定端口
    • SA剩余的口是指定端口,因为它发送STP数据帧中的RPC值为2000
    • SD与SB剩余的口是阻塞端口,虽然它发送STP数据帧中的RPC值与SD发送STP数据帧中的RPC值一致,但是它的优先级的值更小

案例四

图示

alt STP选举案例四

分析

吴超 wechat
subscribe to my blog by scanning my public wechat account