1、当拓扑建立起来自后,所有网桥仍然从指定端口向外发送BPDU报文
2、如果某端口接收BPDU超时了,则该桥认为需要重新计算生成树,于是以自己为根桥,从所有端口向外发送BPDU报文
3、STP与RSTP的报文格式有所区别,STP包括TCN报文和configure报文,RSTP只有一种configure报文,该报文中携带的一个字节的标志位可以标志7种报文:TC、握手、端口类型(根端口、指定端口、替换端口、备份端口)、learning、forwarding、握手的ACK、TCA
4、RSTP的握手在拓扑改变的过程中进行。在拓扑改变的过程中,如果某网桥的discarding端口要变为forwarding状态,则通过与下面的网桥进行一次握手就可以实现。而对于STP来说,由blocking到forwarding只能通过等待2倍的forward delay实现,这也说明了为什么RSTP要比STP倒换的快。
5、握手过程:SWA端口向下发握手请求——SWB收到请求的网桥把自己所有forwarding的端口阻塞掉(边缘端口除外),然后响应该握手请求,向上发送握手ACK,同时把收到握手请求的端口置为forwarding——SWA收到握手ACK后,把端口状态置为forwarding——SWB通过阻塞掉的端口向下(SWC)发握手请求,如此循环,握手不断向下传播。
如果一个指定端口在发送握手请求后没有收到同意消息,它会缓慢地转为转发状态,回到802.1D监听-学习的次序。这可能是由于远方网桥不能识别RSTP BPDU,或者远端网桥的端口闭塞了。这个过程中会使用到learning状态。
6、对于STP,某个网桥发现拓扑改变(有端口由阻塞变转发、连接性丢失、端口转为闭塞状态)之后,主动向根桥发送拓扑改变TCN报文,根桥收到后发送TCA报文进行响应,并从所有指定端口发送TC报文,其他桥收到TC报文后,清FDB表并从所有指定端口转发TC报文。
7、对于RSTP,某个网桥发现拓扑改变(有端口由阻塞变转发)之后,从根端口发送带有TC标志的config报文并清FDB表,其他桥收到该报文后,清FDB表并从根端口和指定端口发送带有TC标志的config报文。
8、替换端口是,该端口收到了比自己发送到BPDU好的BPDU,但是不是收到的最后的BPDU,也可以说成该端口收到了第二号的BPDU。
9、备份端口,当一个交换机的两个端口连接下面的一台交换机时,这两个端口中有一个是备份端口,一个是指定端口。
原文是这样说的:如果一个端口收到同一个网桥的更好 BPDU,那么这个端口成为备份端。当两个端口被一个点到点链路的一个环路连在一起时,或者当一个交换机有两个或多个到共享局域网段的连接时,一个备份端口才能存在。
10、
间隔发送BPDU
STP的非根桥仅传递根桥生成的BPDU;RSTP的网桥不管是否收到来自根桥的BPDU,它每隔Hello time(默认2秒)时间发送本身的BPDU配置信息。 中CN、com
快速的老化信息
STP必须等到20秒的老花时间到时,才能更新BPDU;RSTP采用心跳的机制,当一台网桥在连续三次没有收到BPDU的情况下,网桥认为邻居的根和指定根已经丢失,立即老化自己的BPDU配置信息。
11、RSTP与STP的兼容
RSTP可以和旧版本的STP协议进行交互。然而,当它这样做时,它固有的快速收敛优点就会没有了。每个端口维护一个定义运行在对应网段的协议的变量。当端口UP起来时,迁移延迟计时器(migration delay timer,3秒)开始计时,此时与端口相关联的当前STP或RSTP模式就会被锁闭。当迁移延迟计时器一超时,端口适应与收到的下一个BPDU相对应的模式。
A————B————C
例如,上图,A和B运行RSTP,A为指定网桥。C是允许旧版本STP网桥,因为802.1D网桥会忽略RSTP BPDU以及丢弃它们,所以C认为在该网段上没有其它网桥了,开始发送它的次优802.1D格式BPDU。A收到这些BPDU,等待两倍hello-time时间后,只在该端口上改变模式为802.1D。因此,C现在能够理解A的BPDU了,接受A为该网段的指定网桥。