STP用来解决什么问题
STP协议主要作用就是用来解决由于交换机间应为冗余链路而导致的环路,实现二层架构下线路的冗余。
STP如何解决环路问题
假设两台交换机间连接两根链路,STP则是通过阻塞其中一条非最优路径,从而让交换机正常工作
为什么会产生环路
假设两台交换机连接两根链路,而此时假设其中一台交换机向另外一个交换机发送了一条报文,另一台交换机收到报文后则会泛洪扩散该数据包,从自身除了接收接口以外的其他接口发送这时,这时由于接了多跟级联链路,交换机A从链路A发出的数据又从链路B给发了回来,这时发回来的数据包又会被交换机A从链路A发回给交换机B,此时的数据包就会来来回回永无止境的发送下去。这就是环路。环路严重的情况下还会造成广播风暴的风险。
什么是广播风暴
当环路产生后,由于永无止境的转发数据包,最终导致接口带宽被消耗殆尽
STP在交换环境下的作用
1.阻塞交换机间的非最优冗余链路,保证两个节点之间的端到端通信有且只有一条路径可走
2.实时监控交换机的状态以及交换机间链路状态
华为思科的STP标准
华为
通用生成树协议:CST
------一台交换机创建VLAN后,不管有多少个VLAN,生成树进程有且只有一个。这一个进程确定了交换机间唯一的一组转发路径。思科
基于VLAN的生成树协议:PvST
-----可以针对每一个VLAN创建一个生成树进程。不同VLAN间的通信链路是可以不一样的。相互没有任何关联。可以通过这种方式线路数据层面的负载均衡
STP的三步选举
1.根桥选举 | 根桥有且只有一台,是整个STP域的中心,以中心出发去计算域内其他交换机的最优路劲 |
---|---|
2.根端口选举 | 一台非根桥去往根桥 |