理解STP的基本概念
*
读懂BPDU,并理解报文中各个字段的含义
*
理解STP的几种计时器及其作用
*
理解STP拓补计算过程
*
理解STP的各种接口状态及其含义
*
掌握STP的基础配置
10.1STP
*
冗余性对商用网络而言非常重要。冗余性设计包含两个方面:关键设备冗余和关键链路冗余
*
STP是早期生成树协议,在IEEE 802.1D中定义。IEEE 802.1w中定义了RSTP,后来IEEE802.1s中定义的MSTP逐渐成为传统园区网杜绝二层环路的重要手段之一。MSTP能够兼容STP以及RSTP
10.1.1STP基本概念
*
桥ID 共8byte 优先级16bit MAC地址48bit
*
根桥 拥有最小的桥ID STP一系列计算均已根桥为参考点
*
开销与根路径开销 接口默认开销除了与速率,工作模式有关还和使用的STP cost计算方法有关
*
接口ID 特定场景下选举指定接口 长度为16bit 4bit接口优先级与14bit接口编号 默认优先级为128 必须16倍数
10.1.2STP的基本操作过程
四个步骤
一:在交换网络中选举一个根桥
注:根桥的地位具有可抢占性的,新增优先级更高的设备时,STP重新收敛及计算网络拓补,可能会引发网络震荡对业务流量正常转发造成影响
二:在每个非根桥上选举一个根接口
实际上是非根桥上所有接口中收到最优BPDU的接口
三:选举指定接口
是该网段内所有接口中到达根桥的最优接口,此外还负责向该网段发送BPDU。非根桥使用自己接受的最优BPDU,为本设备上的其他接口计算一个BPDU,比较BPDU的优先级选举指定接口
注:对于非根桥而言,跟接口的选举就是将自己收到的所有BPDU进行比较,而制定接口就是非根桥用自己计算出的BPDU跟别的设备发过来的比较
四:阻塞非指定接口,打破二层环路
不会发送BPDU,但是会持续侦听BPDU,以便感知网络拓补的变更情况
10.1.3STP报文
两种类型:配置BPDU和TCN BPDU
被直接封装在以太网数据帧中,目的MAC地址为组播地址0180-0c200-0000
配置BPDU:初始化过程中,每台交换机都会从自己激活了STP的接口向外发送配置BPDU,STP收敛完成后只有根桥在hello时间周期性发送配置BPDU,而非根桥在根端口上收到上游发送来的BPDU并立即出发而产生自己的配置BPDU,然后从自己的指定端口发送出去
TCN BPDU:当拓补稳定时,只会出现配置BPDU,当发生变更时,STP会使用TCN BPDU,以及两种特殊的BPDU。
(1)TCN BPDU:从拓补变更的交换机传递到根桥,而两者之间可能隔着多台交换机,感知到拓补变化的交换机会从其跟接口发送TCN BPDU
(2)“标志”字段中TCA比特位被设置为1的配置BPDU:当交换机收到下游发送上来的TCN BPDU后,需要使用标志字段中TCA比特位被设置为1的配置BPDU回应对方并向自己上游发送TCN BPDU,持续到根桥收到该TCN BPDU
(3)“标志”字段中TC比特位被设置为1的配置BPDU:根桥收到TCN BPDU,意识到拓补发生了变化,要将改变话通知到全网,它将向网络中泛洪“标志”字段中TC比特位被设置为1的配置BPDU,交换机收到后会立即将其MAC地址表的老化时间从原有的值调整为一个较小的值(该值等于转发延迟时间),使MAC地址表能够尽快刷新
10.1.4STP的时间参数
STP定义了三个重要的时间参数
(1)hello time:交换机发送配置BPDU的时间间隔,默认为2s。如需更改,必须在根桥上修改,非根桥会自动对齐
(2)forward delay(转发延迟):接口状态从侦听状态进入学习状态,或从学习状态进入转发状态的延迟时间,默认为15s。意味着一个被阻塞的接口被选举为跟接口或指定接口后,进入转发状态之前至少要经历30s的时间
(3)max age(最大生存时间):BPDU的最大生存时间,也被称为老化时间,默认为20s。非根桥的跟接口保存来自上游的最优BPDU,老化时间内收再一次收到BPDU,老化时间会被重置,如果没有收到将会老化,此时设备将会重新在接口上选择最优的BPDU,也就是重新进行跟接口的选举
10.1.5BPDU的比较原则
STP按照如下顺序选择BPDU:
1.
最小的桥ID
2.
最小的RPC
3.
最小的网桥ID
4.
最小的接口ID
第一条主要用于选举根桥,其余主要用于选举跟接口和指定接口
10.1.6BPDU的交互与拓补计算
两者都认为自己是根桥,根桥ID字段填写都是自己的桥ID,RPC写0,网桥ID写该BPDU发送者的桥ID,接口ID则是发送该BPDU的接口的接口ID
*
两者收到后进行比较,sw1比sw2更优,sw1忽略sw2的BPDU,并周期性的发送BPDU
*
sw2则开始选举跟接口,由于接口3和接口4收到的BPDU都比自己本地的BPDU更优,因此使用对方的BPDU更新自己本地的BPDU,比较自己所有接口上的BPDU拥有最优的接口成为其根接口 。
*
跟接口选举出来后,使用当前在跟接口上保存的最优BPDU为其他接口计算BPDU
10.1.7STP接口状态
接口被激活后,从禁用状态自动进入阻塞状态,如果被选举为跟接口或指定接口,进入侦听状态,并停留15s(转发延迟状态)。
10.1.8STP的基础配置‘
stp mode stp 修改交换机的工作模式
stp enable 激活生成树(缺省情况下,生成树已被激活)
stp root primary 使交换机为网络中的主根桥 stp priority 0
stp second primary 使交换机称为次根桥 stp priority 4096
display stp 查看stp的状态
display stp brief 查看接口stp状态