STP
生成树协议
用处
1、解决二层环路[广播风暴] 2、解决MAC地址表震荡
STP相关概念
BPDU 定义:
桥协议数据单元,用于传递STP协议相关报文
BPDU 分类:
配置 BPDU,用于传递STP的配置信息 TCN BPDU,用于通告拓扑变更信息
STP的选举机制
1.首先在所有的交换机中选出一台作为根网桥Root bridge
选举规则:Bridge-id小的优先,其中,优先级出厂设置默认为32768,必须是4096的倍数。
Brideg-id:桥ID,BID,用来标识交换机身份
2.每台非根网桥(交换机)选举出一个根端口Root port
选举规则: 到达根网桥开销小的优先选择 对端交换机BID小的优先选择 端口ID小的优先
开销(Cost):代表路径耗费的代价和成本,带宽越大,开销越小
3.在每个物理段(每根网线)上选举出一个指定端口Designated port
选举规则:基本和选举根端口相似 到达根网桥开销小的优先选择 本地BID小的优先选择 端口ID小的优先选择
4.生效的没有角色的端口就是阻塞端口BBlocked Port
STP初始化流程
交换机端口状态: 一共有五种状态
- disable:禁用状态,被关闭的端口
- blocking:阻塞状态
- listening:监听状态
- learning:学习状态
- forwarding:转发状态
blocking[阻塞状态]:接收BPDU,但不发送BPDU,不学习MAC地址,不转发数据。
listening[监听状态]:接收并发送BPDU,不学习MAC地址,不转发数据,持续15秒。
learning[学习状态]:接收并发送BPDU,进行MAC地址学习,不转发数据,持续15秒。
forwarding[转发状态]:接收并发送BPDU,进行MAC地址学习,转发数据。
STP计时器
Hello time :2秒,配置BPDU的发送周期 Max age[最大生成时间]:20秒,判断链路故障时间,10个hello time周期 Forwarding delay[转发延迟]:15秒,状态切换延迟
STP拓扑变更机制
1.当MAX age超时、有接口变更为转发状态,判断为拖布发送变化,向根网桥发送TCN BPDU。 2.收到TCN BPDU后,交换机会继续向根网桥转发TCN BPDU,直到到达根网桥为止。 3.当根网桥收到TCN BPDU后,向所有端口发起TC配置BPDU 4.最后交换机收到TC配置BPDU后,MAC地址表的老化时间缩短到15秒。
STP的问题
1.收敛速度慢,故障切换时间过长 2.网络中大量的主机频繁上下线,会导致TCN BDPU以及TC配置BPDU大量发送,从而阻塞网络,浪费资源。