最近有粉丝在后台留言。
说分不清STP/RSTP/eRSTP。
今天就来说说这三个长得很像的词~
弄清他们的区别,首先应该了解什么是广播风暴。
广播风暴
电脑大A说我想找电脑大C,但是我不知道具体哪个是大C,于是身边的交换机小a说:“大哥别慌,我可以发动我的交换机兄弟们一起寻找大C。”
小a把消息发送给小b后,小b会转发给小c,小c又会转发给小a(它并不知道消息是小a发出的)。
同时小a也会发消息给小c,小c转发给小b,小b又转发给小a,小a继续发消息给小c,引发帧的无限循环。
于是就形成了这种现象,寻找大C的消息在三台交换机之间行成了两条无限循环信息传递(如下图)。
三台交换机之间的局域网络长时间被这两条无限循环的消息传送所占用,于是网络连接就变得很慢,无法再传递其他信息。
这种现象就属于广播风暴的一种。
STP
因为广播风暴的出现影响了网络的使用,所以需要采取措施解决网络风暴的问题。
关闭通讯线路3后,三台交换机之间就不会出现信息无限循环传播,同时也不影响三台交换机之间传递信息。
但是当线路1或线路2出现物理中断时,原先关闭的线路3就会开启,让三台交换机之间可以进行通讯连接。
这种解决方案就是靠STP(Spanning Tree Protocol,也称生成树协议)实现的。
RSTP
虽然STP成功解决了广播风暴的问题,但也有其自身的缺点:当其他两条线路发生物理中断时,故障恢复时间较久。那么这样的后果会是什么呢?
交换机a与交换机b之间的线路中断后,设备终端大A并不知道线路中断了,还是不断地向设备终端大B发送信息,假设每秒发送10个数据包,那么中断的时间越长,丢失的数据包越多。STP线路故障恢复的时间约100秒,这对于办公网络来说都不可以接受,更不用提工业网络了。
为了减少数据包的丢失,(严格来说是提高故障恢复性能)RSTP(Rapid Spanning Tree Protocol,又称快速生成树协议)产生,把故障修复时间缩短为10秒。
eRSTP
即使RSTP把故障恢复时间缩短为10秒,对于工业中大多数实时控制应用程序来说还是太慢,且RSTP不支持超过40个交换机的大环尺寸。(下图是由三个交换机的组成的小环)
为了改进RSTP,于是就衍生了eRSTP,eRSTP是建立在RSTP的标准基础之上的,并从下面两个方面做了增强:
缩短故障恢复时间。(每跳不到5ms的故障恢复时间)改进大型环形网络拓扑的性能。(可以处理多达160个交换机的环)此外,eRSTP与标准RSTP可以兼容,这样有利于与商业交换机进行互操作。
eRSTP性能示例
对于环形拓扑中由15个以太网交换机(即S1-S15)组成的网络,我们可以期望优于5ms/跳的故障恢复性能:
预期故障恢复时间<75ms(即5ms×15个交换机),但测试结果表明实际最慢的故障恢复时间<26ms!
对于高达80个交换机的环网来说,5ms/跳是一个非常保守预测,而实际的故障恢复时间一般比这个要快。