
生成树协议(STP)
常用带宽和路径成本关系:
先配置交换机和路由器设置: SW1:
SW2:
SW3:
R1:
下面配置交换机MSTP: 将SW1作为vlan10的根网桥,SW2作为vlan20的根网桥
SW3配置类似SW2,区别于设置的根网桥相反
发布日期:2021-05-06 15:10:53
浏览次数:27
分类:技术文章
本文共 1332 字,大约阅读时间需要 4 分钟。
文章目录
1. 交换网路的回环
交换机A,B,C形成回环。
交换机网络形成回环会造成以下问题:
- 广播风暴的形成 当主机A与主机B通信是,为获取主机B的Mac地址需要发送广播消息,此时会向交换机3的端口e0/0/1发送,在转发到主机B;但同时也会向交换机1发送广播信息,在通过交换机1的e0/0/1转发至交换机3的e0/0/2口,最后转至主机B;所有当交换机接入更多的主机时,就会形成广播风暴;
- 多帧复制 当主机A向主机B发送数据时,在交换机2出,走不同的口e00/1和e0/0/2;主机B最终将收到主机2和主机1的数据帧,数据内容相同
- MAC地址表混乱 当主机A与B通信是,会记录相应MAC地址可对应接口的关系;当回环存在时,会记录一个MAC地址对应多个接口
2. STP
STP:生成树协议
作用: 逻辑上断开环路,防止广播风暴的产生 当线路故障,阻塞接口被激活,恢复通信,器备份线路作用2.1 生成树算法
2.1.1 网桥ID(BID)
- 网桥ID
- 是唯一
- 选择交换网络中网桥ID最小的交换机成为根网桥
组成:
网桥优先级 | 网桥的MAC地址 |
---|---|
2字节 | 6字节 |
取值范围 | 0-65535 |
缺省值 | 32768 |
2.1.2 根端口(Root Ports)
选择根端口的依据:
- 到根网桥最低的根路径成本
- 直连的网桥ID最小
- 端口ID最小
根路径成本:
网桥到跟网桥的路径上所有链路的成本之和
链路带宽(Mbps) | 路径成本 |
---|---|
10 | 100 |
100 | 19 |
1000 | 4 |
10000 | 2 |
端口ID:
端口优先级 | 端口编号 |
---|---|
8字节 | 8字节 |
取值范围 | 0-255 |
缺省值 | 128 |
-
根网桥上的端口全是指定端口;
-
在每个网段上,选择一个指定端口
-
在非根桥上的指定端口,选择顺序:
- 根路径成本较低
- 所在交换机的网桥ID的值较小
- 端口ID的值较小
2.2 BPDU(桥协议数据单元)
- 使用组播发送BPDU
- BDU类型:
- 配置BPDU
- 拓扑变更通告BPDU
- BPDU报文字段
- 根网桥ID
- 根路径成本
- 发送网桥ID
- 端口ID
STP利用BPDU选择根网桥:
1.当交换机启动时,假定本机就是根网桥,向外发送的BPDU中根网桥ID字段填写自己的网桥ID 2.当接收到其他交换机发出的BPDU后,比较网桥ID,选择较小的添加到跟网桥ID中交换机端口的STP状态:
状态 | 用途 |
---|---|
禁用(Disabled) | 强制关闭 |
阻塞(Blocking) | 直接收BPDU |
侦听(Listening) | 构建“活动”拓扑 |
学习(Learning) | 构建网桥表 |
转发(Forwarding) | 发送/接收用户数据 |
STP计时器:
- hello时间
- 转发延迟
- 最大老化时间
3. MSTP配置
IEEE通用生成树(CST)不考虑VLAN,会导致相应VLAN链路被断开
MSTP:多生成树协议,可为每个vlan或多个vlan为一组,构造一个生成树,实现网络的负载分担。
以下图为例:





SW2配置:


发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2025年04月02日 03时05分59秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Java面向对象
2019-03-04
JAVA带标签的break和continue
2019-03-04
(C++11/14/17学习笔记):线程启动、结束,创建线程多法、join,detach
2019-03-04
A Guide to Node.js Logging
2019-03-04
HTML 和 CSS 简单实现注册页面
2019-03-04
892 三维形体的表面积(分析)
2019-03-04
875 爱吃香蕉的珂珂(二分查找)
2019-03-04
Dijkstra算法的总结
2019-03-04
Vue实现选项卡功能
2019-03-04
vue中接收后台的图片验证码并显示
2019-03-04
趣谈win10常用快捷键
2019-03-04
王爽 《汇编语言》 读书笔记 三 寄存器(内存访问)
2019-03-04
JDK 内置的多线程协作工具类的使用场景
2019-03-05
Java 中哪些对象可以获取类对象
2019-03-05
11.2.6 时间值的小数秒
2019-03-05
Redis源码分析(七)--- zipmap压缩图
2019-03-05
自定义Hive Sql Job分析工具
2019-03-05
【MySQL】(九)触发器
2019-03-05