STP(生成树协议)

Posted SpaceX7_s

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STP(生成树协议)相关的知识,希望对你有一定的参考价值。

背景

在单核心网络中,单一链路可能存在较大的风险,为了高可靠性往往会设置备份链路,设置了备份链路就有可能出现二层环路(数据链路层)

危害

1.广播风暴

1.广播报文在二层网络洪泛,容易造成链路堵塞
2.交换机的CPU被大量占用,正常报文不发正常发送
3. 造成主机资源的浪费,大量CPU用来识别这些报文
4. 冲击网关设备CPU,对网关ip地址的ARP请求,经过链路多次转发,造成网关的CPU压力过大容易崩溃

2.MAC地址表震荡

因为环路,二层交换机发出源数据,其他端口同时会收到数据包,导致目MAC地址与端口的对应关系一直在发送改变

3.多帧复制

主机反复收到数据报,开销大量CPU来识别这些数据报

STP(生成树协议)

基本概念:

在一个物理成环的交换网络拓扑中,通过生成树协议,可以逻辑阻塞一个或多个端口,使之成为无环的树形结构,在网络中,如果主干链路出来故障,那么被被阻塞的端口会自动打开,保证链路的备份和冗余----生成树协议(自动监测)
工作原理:
配置BPDU:用于网络初始化时进行生成树的选举,当网络稳定时,也会周期性发送,主要用于链路的维护和监测----hello时间2s/次
TCN BPDU:用于网络拓扑链路变更时,当主链路故障或者新加一条链路

BPDU的四个重要字段
  1. 网桥ID
    (1)作用: 唯一表示交换机的身份信息
    (2)组成:8byte
    网桥优先级(2byte,2的16次方),mac地址(6byte)
    范围:0-65535,有效范围:0-61440,步长4096,默认值32768,优先级越小越优先
    先比较网桥,再比较mac地址
  2. 根网桥ID:指定是根交换机的身份信息
    所有交换机中,网桥ID最小的那个
    备注: 所有交换机刚启动时都以为自己是根网桥,因为还没有发送BPDU
  3. 端口ID:
    (1): 用来识别唯一识别交换机每个一个端口的身份信息
    端口优先级(1byte),端口号(1byte)
    范围:0-255,有效范围:0-240,步长16,默认值:128
    选优规则:
    先比较端口优先级,再比较端口号,都是越小越优
  4. 路径开销:
    指到达根网桥的路径开销(带宽越大开销越小)
    每种设备的路径开销都有规定,不需要计算
选举过程(核心工作原理)
  1. 根网桥
    在所以交换机中,网桥ID最小的那个
  2. 根端口
    作用:用来接收根网桥消息的端口
    选优规矩:
    每台非根网桥设备上只有一个根端口
    (1)选择端口到达根网桥开销最小的端口
    开销的根本:
    该端口发送数据报的BPDU好坏,数据到达该端口的最小开销,加上自身端口的开销,因为是发送出去的数据报所以需要加上自身端口的开销
    (2)选择发送网桥ID最小的(指对面的交换机网桥)
    (3)选择发送端口ID最小的(指对面发送给自己的那个端口ID)
  3. 指定端口
    作用:用来转发根网桥消息的端口
    开销的根本:
    该端口发送数据报的BPDU好坏,数据到达该端口的最小开销,加上自身端口的开销,因为是发送出去的数据报所以需要加上自身端口的开销
    (1)选择网桥到达根网桥开销最小的端口
    (2)选择发送网桥ID最小的(指自己所处的那个交换机的网桥)
    (3)选择发送端口ID最小的(
    )
    每一条链路都会存在一个指定端口
  4. 阻塞端口(非根非指定的端口)
端口的五种状态

Disabled:禁止转态
Blocking: 阻塞状态,可以接收BPDU,但不发送BPDU,不学习mac地址,不接收和转发数据报
Listenning:侦听转态,
learning:学习转态
Forwording:转发转态

圆圈表示根端口,三角形表示指定端口,剩下的为阻塞端口,逻辑性上等价与下图

收敛

直接收敛

当sw3的故障时,端口状态瞬间变为侦听状态 阻塞端口会发送一个TCN BPDU给sw2,sw2收到后会回一个TCA BPDU,告诉sw3已经收到TCN BPDU了不需要再发送,同时sw2会转发这个TCN BPDU给根网桥,sw1收到后会响应一个TCA BPDU给sw2,同时也会发送一个TC位为1的BPDU给sw2,sw2收到后mac地址表老化时间会从300秒变成15秒(mac地址表的老化是每一条都独立老化的),sw2同时也会也会转发这个TC位 1 的BPDU转发给sw3,sw3的mac地址表老化时间也会发送
变为15秒

间接收敛

sw2收不到sw1的BPDU ,隔离20秒后,以根网桥的身份给sw3发送数据报,告诉sw3主链路出现问题,然后从新开启阻塞端口

以上是关于STP(生成树协议)的主要内容,如果未能解决你的问题,请参考以下文章

STP生成树协议

思科生成树协议STP

STP——生成树协议

快速生成树MSTP及VRRP热备份路由选择协议

STP——生成树协议

STP 生成树协议