赞
踩
IEEE 802.1D中定义的STP,是一个比较古老的标准,在现今的交换网络中,几乎已经很少能够见到它的部署了。原因是STP存在诸多短板,比如收敛慢(一个端口从block到forward需要30~50s)、端口状态定义繁冗、对拓扑变化的感知依赖计时器等。
IEEE 802.1w中定义的RSTP (Rapid Spanning Tree Protocol,快速生成树协议)可以视为STP的改进版本,RSTP在许多方面对STP进行了优化,它的收敛速度更快,而且能够兼容STP。
RSTP在STP的基础上,增加了两种接口角色:替代(Alternate )接口和备份(Backup)接口。因此,在RSTP中,共有4种接口角色:根接口、指定接口、替代接口和备份接口。
如下图所示的网络拓扑中,SW1是网络中的根桥,对于SW3而言,它有两个接口接入了该网络,由于从GE0/0/22接口到达根桥的RPC更小,因此该接口成为该设备的根接口。而GE0/0/23则由于收到了SW2所发送的BPDU,并且经SW3计算、比较后决定阻塞,成为该设备的替代接口。
此时在SW3上执行display stp brief命令能看到如下输出:
ALTE指的是Alternate,也即替代。
如下图所示的网络中,SW1是网络中的根桥,对于SW2而言,它的GE0/0/20及GE0/0/21接口形成了自环,RSTP能够检测到这个环路,并且在这两个接口中选择一个进行阻塞。(缺省时,由于GE0/0/20接口的接口ID更小,因此该接口成为指定接口,而GE0/0/21接口则成为备份接口,备份接口将被阻塞。)
此时在SW2上执行display stp brief命令应该能看到如下输出:
BACK指的是Backup,也即备份。
如下图所示的拓扑场景中,SW2使用两个接口连接在同一台集线器(Hub)上,由于集线器在一个接口上收到的数据会被拷贝到其他所有接口(一个Hub就是一个广播域,而且它并不支持STP/RSTP ),因此SW2从GE0/0/20接口发出的BPDU会被集线器接收并发往SW2的GE0/0/21接口,反之亦然。当SW2的指定接口GE0/0/20发生故障时,备份接口GE0/0/21将继续它的工作,负责与相应的网段实现数据交互。
STP定义了五种接口状态,它们分别是禁用、阻塞、侦听、学习和转发,而RSTP简化了接口状态,将STP的禁用、阻塞及侦听状态简化为丢弃(Discarding)状态,RSTP与STP的接口状态对比如下表所示。
RSTP的配置BPDU被称为RST BPDU (Rapid Spanning Tree BPDU),它的格式与STP的配置BPDU大体相同,只是其中个别字段做了修改.以便适应新的工作机制和特性。对于RST BPDU来说,
比特位含义如下:
RSTP与STP不同,在网络稳定后,无论是根桥还是非根桥,都将周期性地发送配置BPDU,也就是说对于非根桥而言,它们不用在根接口上收到BPDU之后,才被触发而产生自己的配置BPDU,而是自发地、周期性发送BPDU。
运行STP的交换机在每个接口上保存一份BPDU,对于根接口及非指定接口而言,交换机保存的是发送自上游交换机的BPDU,而对于指定接口而言,交换机保存的是自己根据根接口的BPDU所计算出的BPDU。
如果接口收到一份BPDU,而且该接口当前所保存的BPDU比接收的BPDU更优,那么后者对于前者而言,就是次优 BPDU。
在STP中:
在RSTP中:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。