STP技术
环路引起的问题
1、广播风暴
2、mac地址表不稳定
环路的危害总结
环路的现象
1、交换机端口指示灯以相同的频率快速闪烁
2、交换机mac地址表震荡
环路的危害
1、链路堵塞
广播报文在二层网络中不断泛洪,所有链路都被大量的广播报文充斥
2、主操作系统响应迟缓
主机网卡接收到大量的广播报文,操作系统调用大量的cpu进程资源来识别这些广播报文
3、二层交换机管理缓慢
大量二层协议广播需要二层交换机cpu处理,浪费大量资源,对正常的请求无法响应
4、冲击网关设备的cpu
对网关ip地址的arp请求报文,经过环路的复制转发,不断地发送到网关设备,网关设备的cpu 压力不断增大,甚至崩溃
STP的概念及应用场景
stp全称为生成树协议(spanning tree protocol)是用于在局域网中消除数据链路层物理环路的协 议
通过在桥之间交换BPDU(bridge protocol data unit,桥协议数据单元),来保证设备完成生成树的 计算过程
stp的作用
1、通过阻断冗余链路来消除桥接网络中可能存在的路径环路
2、当前路径发生故障时,激活冗余备份链路,回复网络连通性
802.1D生成树的原理
生成树工作原理
配置了生成树的交换机之间通过传递配置BPDU,比较报文中携带的参数,完成以下工作:
1、在一组运stp的交换机中选出一个根网桥
2、每个非根交换机选择一个根端口
3、每个交换网段选择一个除根端口之外的转发端口----指定端口
4、堵塞其他(非根非指定端口即阻塞端口)端口
生成树基本计算过程----选举根交换机
方法:比较优先级,在比较mac地址,最小mac地址为根桥。
特性:
1、根桥交换机所有接口永远不会出现阻塞状态。
2、根桥的所有端口都是指定端口,指定端口被标记为转发端口
选举非根交换机的端口
按如下顺序选举,满足条件即停止:
1、计算非根交换机到达根桥的链路开销
2、比较非根交换机的上行交换机桥id(由优先级与mac地址决定)
3、上行交换机的最小端口号所连接的非交换机的端口为根端口
选举网段的指定端口
配置BPDU参数
网桥id由交换机的优先级与mac地址组成
网桥优先级取值范围0-65535(默认32768),必须是4096的倍数
端口id由发送端口的优先级与端口号组成
端口优先级取值范围0-255(默认128),必须是16的倍数
路径开销(path cost)衡量桥与桥之间的路径优劣,端口类型和带宽决定了该端口的路径开销
根交换机的根路径开销为零。其他交换机收到BPDU后,把报文中的跟路径开销加上接收端口路径 开销,得到该端口的“根路径开销”(root path cost),根路径开销反映了某端口到根交换机的远近
STP协议报文
BPDU的优劣
配置BPDU的比较
交换机遵从下面的比较原则,比较各个端口接收或缓存的BPDU,选择最优BPDU
1、先比较根网桥ID,越小越好
2、如果根网桥ID相等,根路径开销越小越好
3、如果根网桥id和根路径开销相等,发送网桥id越小越好
4、如果根网桥id、根路径开销和发送网桥id相等,发送端口id越小越好
BPDU报文处理
BPDU在网络中的中继过程
网络起始,stp启动,交换机都认为自己是根网桥,发送BPDU
网络稳定,根网桥发送BPDU,其他交换机中继根网桥的BPDU。
STP端口判定
1、选举根网桥,比较网桥ID,根网桥上的所有端口都是指定端口。
2、先择根端口,以此比较根路径开销、发送方网桥id,发送方端口id
3、选择指定端口,依次比较根路径开销,发送方网桥id、发送方端口id
STP端口状态描述
端口状态 | 描述 |
---|---|
disabled端口没有启用 | 此状态下端口不转发数据帧,不学习mac地址表,不参加生成树的计算 |
blocking阻塞状态 | 在此状态下端口不转发数据帧,不学习mac地址表,在此状态下端口接受并处理BPDU,但是不向外发送BPDU |
listening侦听状态 | 此状态下端口不转发数据帧,不学习mac地址表,只参与生成树计算,接受并发送BPDU |
learning学习状态 | 此状态下不转发数据帧,但是学习mac地址表,参与计算生成树,接受并发送BPDU |
forwarding转发状态 | 此状态下端口正常转发数据帧,学习mac地址表,参与计算生成树,接受并发送BPDU |
STP端口状态转移
stp计时器
---hello timer(hello时间)
根网桥发送配置BPDU的周期,默认为2秒
---forward delay(转发时延)
配置BPDU传播到全网的最大时延,默认为15秒
---message age(消息老化时间)
配置BPDU从根网桥生成开始,到当前为止所经过的时间
---max message age(最大老化时间)
配置BPDU存活的最大时间
stp默认为20秒(10个hello周期)
stp端口状态迁移
阻塞端口
1、一直停留在阻塞状态
2、在最大老化时间(20秒)之内没有收到BPDU,就会成指定端口,然后切换成监听状态,重 新进行网络收敛。
网络拓扑变化---stp网络收敛
直接收敛与间接收敛