我们上篇数据网络自愈的文章介绍了802.1D 的 Spanning Tree Protocol 协议。但是以太网的 STP 协议标准是在局域网广泛采用之前所定义的,设计目标是能够在 1 分钟内将冗余路径进行收敛,这对以太网的初期应用是足够的。
但是当以太网发展到了今天,人们发现以太网应用不仅仅是小型的局域网,并且大量运用在大型的企业网络、园区网络和近年来兴起的城域网络。网络的规模比以往大得多,意味着网络的拓扑将会越来越复杂,同时用户对网络的可靠性和冗余性需求也比以往来得迫切。大量的网络设计采用了环形拓扑和星型拓扑的结构,或者是环形和星型的混合设计,人们发现在二层以太网链路上采用 802.1d的收敛越来越满足不了用户的需求: 在主干链路上希望有快速切换地功能、当PC机连入交换机希望快速地上网,针对传统的 STP 收敛慢这一弱点,一些网络设备供应商开发了针对性的 STP增强协议,而 IEEE 正是看到了这一广泛的需求,才致力于制定标准的 802.1w协议,这一协议针对的是传统 802.1d收敛慢而作的改进,它使得以太网的环路收敛得以在1秒到10秒之中完成,所以 802.1w 又被称为快速 STP(RSTP - Rapid Spanning Tree Protocol)。从某种意义上说,802.1w 只是 802.1d 的改进和补充,而非一个创新的技术。
同时,由于目前三层交换机的大量应用和基于 802.1q协议的 VLAN 设计的需要,网络设计人员迫切需要能够针对某一个 VLAN 而制定的 STP 来独立完成这一虚拟网络的二层设计,从而保证不同虚拟网络之间不会有相互的干扰,这一需求也未在 802.1d 和 802.1q 协议中体现,所以在交换机实现 802.1q 的初始阶段,大部分厂商将整个交换机置于同一个 STP 进程之中,当然用户更希望当一个 VLAN 在发生环路的情况下导致端口被封锁的同时,这一端口的其他 VLAN 的通信不会被封锁。这就使以后大部分厂商开发了可在每一个 VLAN 中单独运行 STP 算法的协议。由于交换机资源的因素,如果在单台交换机上实现几千个 VLAN ,那么要运行几千个独立的 STP 算法显然会对设备的性能和资源提出严峻的挑战,并且由于要区分不同 VLAN 和 VLAN 之间的 STP 协议,各个厂商的做法尚未存在标准,设备的互操作性存在问题。针对以上这些因素,IEEE 着手制定 802.1s 的协议,目的是既能够实现同一台交换机内运行不同 STP 算法的协议,同时又考虑到可以将相同属性的 VLAN 归纳成组,在一个 VLAN 组内采用单一的 STP 算法,现在已有一些厂商实现了这一功能。
需要指出的是,802.1w 和 802.1s 的协议是可以共存的,在城域网络设计中,在利用 802.1s 来实现 VLAN 组设计的同时,可以将每个 VLAN 组内的 STP 采用 802.1w 的算法,从而发挥快速收敛的功效。