STP协议,做为二层链路的防环协议,在上一代传统网络架构中起到了至关重要的作用,但是随着数据中心网络技术的发展,STP协议已经不再适用于当前数据中心网络架构。原因大概分为以下几点。
- 收敛速度慢:链路或者交换机出现故障,生成树需要重新计算,如果是根节点出现故障,还需要重新选举根交换机,在百兆或者千兆带宽的情况下,毫秒级或者秒级的收敛还算可以接受,但是目前数据中心多采用10G甚至40G的链路带宽,秒级的收敛造成的业务中断会丢失大量业务数据,显然是不可以接受的。
- 链路利用率低:STP始终会阻塞一部分链路来防止网络形成环路,只有正常转发的链路发生故障以后才会启用这些阻塞链路。
- 次优转发路径问题:有可能两个临近的交换机之间的链路被阻塞,造成数据包的次优转发路径。
- 不支持负载均衡:三层的路由协议支持ECMP等价路径转发,而STP没有类似的机制。
- 广播风暴:虽然说STP协议能够防止网络发生环路,但是在一些故障场景下还是有可能造成环路,三层的IP报文有TTL值可以抑制报文的无限传递,但是二层以太帧缺乏此类机制,会形成广播风暴。
- 缺乏双归接入机制:当服务器双归接入启用STP的两台交换机时,同样会阻塞端口,导致变成单归接入。
- 网络规模:由于VLAN个数的限制问题(4096),造成二层网络规模受限。