目录

  • 一、二层网络设计需求和问题
    • 1 广播风暴
    • 2 MAC地址表震荡
  • 二、STP概述
  • 三、STP操作
  • 四、BPDU Bridge Protocol Data Unit 桥协议数据单元
  • 五、BPDU类型
    • 1 配置 BPDU:Configuration
    • 2 拓扑变更通告 BPDU-TCN BPDU
      • 2.1 桥ID
      • 2.2 端口ID
      • 2.3 路径开销
      • 2.4 根路径开销
      • 2.5 链路开销标准
  • 六、STP选举过程
    • 1 根桥选举
    • 2 根端口选举
    • 3 指定端口选举
  • 七、STP端口状态
  • 八、STP计时器
  • 九、STP端口转换
  • 十、STP拓扑变化
  • 十一、STP配置

一、二层网络设计需求和问题

为了提高网络可靠性 交换网络中通常会使用冗余链路
然而冗余链路会给交换网络带来环路风险
并导致广播风暴以及MAC地址表不稳定等问题 进而会影响到用户的通信质量
生成树协议STP(Spanning Tree Protocol)
可以在提高可靠性的同时又能避免环路带来的各种问题
不像三层有TTL 纯二层的环路不会停下来

1 广播风暴

2 MAC地址表震荡

二、STP概述

STP:Spanning Tree Protocol 生成树协议

三、STP操作

通过构造一棵树来消除交换网络中的环路

根桥-根交换机
根端口-非根交换机上的一个端口
如果交换机上没有根端口 则肯定不是非根桥(非根交换机)

交换机的前身是网桥!
现在的桥就是交换机!

四、BPDU Bridge Protocol Data Unit 桥协议数据单元

使用组播:01-80-C2-00-00-00

修改STP模式:stp mode mstp/rstp/stp
查看STP详细信息:dis stp
默认MSTP

五、BPDU类型

1 配置 BPDU:Configuration

选举根交换机以及确定每个交换机的角色和状态(用来选举根桥)
在初始过程中 每个桥都主动发送配置BPDU
在网络拓扑稳定后 只有根桥主动发送配置BPDU
其他交换机在收到上游传来的配置BPDU后
才会发送自己的配置BPDU(根桥选出来后)
发送周期为Hello Time(默认值为2 2秒发一次)
老化时间为Max Age (20s)

2 拓扑变更通告 BPDU-TCN BPDU

下游交换机感知到拓扑变化时向上游发送的拓扑变化通知

BPDU Type: Topology Change Notification (0x80)
拓扑改变通知

2.1 桥ID

0-65535(2^16)
桥ID = 桥优先级 + 桥MAC地址
桥优先级 2B=16b
桥MAC地址 6B=48b
桥ID 8B=64b

2.2 端口ID


端口ID = 端口优先级 + 端口编号
端口优先级 1B=8b
端口编号 1B=8b

2.3 路径开销

2.4 根路径开销

2.5 链路开销标准


stp端口开销更改:stp cost 0-200000000
stp开销标准更改:stp pathcost-standard dot1d-1998/dot1t
现在华为用802.1t

六、STP选举过程

1 根桥选举

BID最小的成为根桥(先比优先级 再比MAC)

BID = Bridge ID = 桥优先级 + 桥MAC地址
桥优先级的取值范围:0-65535(216)
桥优先级的默认值:32768
如图中4096 < 32768 故SWA为根桥

2 根端口选举


根端口-非根桥的端口-到达根桥最近的端口-开销最小的端口
根端口选举依据:
先看该端口的根路径开销Root Path Cost-确定到达根桥的最短路径
到根桥路径上所有开销之和
如果根路径开销Root Path Cost相等 再比较对端BID-Bridge ID
-发送给自身的 BPDU里的BID
如果对端BID相同(即两者优先级相同 MAC相同(同一根交换机所发))
再比较PID-Port ID 先比较对端的PID 如果是同一类型端口
则肯定是数字编号较小的优先
如果对端PID相同(即根交换机连接一个集线器 再从集线器接一个交换机)
再比较本端PID 则肯定是数字编号较小的优先
查看根端口信息:dis stp brief
查看根路径开销ERPC:dis stp 或 dis stp int g0/0/0

3 指定端口选举


指定端口-负责每段链路上的数据发送
通常 根桥上的端口都是指定端口
一条链路上 根路径开销小的为指定端口
如果根路径开销相同 则比较BID
先比BID优先级 再看MAC地址 越小越优先 - 为指定端口
如果BID相同 则比较PID

根端口 RP
指定端口 DP
预备端口 AP(Alternative Port) - discarding 阻塞状态

七、STP端口状态


华为交换机主要以显示MSTP和RSTP的状态为主
Discarding阻塞状态是MSTP和RSTP的
Blocking阻塞状态是STP的

八、STP计时器


Disabled Blocking和Listening在RSTP中被打包在Discarding中
稳定状态:
Disabled
Blocking
Forwarding
过渡状态:
Listening
Learning

配置BPDU报文每经过一个交换机 Message Age都+1
如果Message Age大于Max Age 非根桥会丢弃该配置BPDU

九、STP端口转换

十、STP拓扑变化


50s = 20s阻塞->侦听 + 15s 侦听->学习 + 15s学习->转发
修改STP模式:stp mode stp/mstp/rstp
默认MSTP


解决方法:
1.等待MAC地址表老化300s
2.等待ARP缓存清空 重新广播获取MAC地址


拓扑变更通告 BPDU-TCN
下游交换机感知到拓扑变化时向上游发送的拓扑变化通知
(TCN告知上游交换机:我出现故障啦)会一直周期性发送TCN 直到收到确认
(TCA上游交换机收到TCN后回复下游交换机:我知道啦)
上游交换机继续向上发送TCN 直到根桥收到
根桥收到后 (TC根桥收到TCN后回复下游:我也知道啦)

3.引入TCN TCA TC机制
检测到拓扑改变的交换机通过根端口向根桥发送TCN 上游交换机收到TCN后回应TCA 然后下游交换机停止发送TCN 再通过根端口发送TCN直至根桥收到 根桥通过指定端口发送TC通知所有下游交换机把MAC地址表记录的老化时间从300s变为15s
使得链路切换与MAC地址表保持同步

传统二层交换的都会产生环路问题 一般用STP+VRRP解决
但是STP的致命缺陷是等待时间过长 在重要的项目中是等不起的
故有RSTP的产生 同时在大型项目中引入交换机堆叠和链路聚合
堆叠又称 多虚一(虚表示虚拟化) 或 集群
堆叠技术是厂商私有的

十一、STP配置


HCIP/HCIE RoutingSwitching / Datacom备考宝典系列(九)STP知识点全面总结(生成树协议)相关推荐

  1. HCIP/HCIE RoutingSwitching / Datacom备考宝典系列(一)OSPF知识点全面总结

    目录 一.OSPF状态机制 二.OSPF报文类型 三.OSPF邻居建立 四.LSDB同步 五.OSPF路由器类型 六.OSPF网络类型 七.OSPF DR/BDR 八.虚连接 九.OSPF数据包字段 ...

  2. HCIP/HCIE RoutingSwitching / Datacom备考宝典系列(十六)DHCP知识点全面总结(动态主机配置协议)

    目录 一.技术背景 二.DHCP概述 三.DHCP系统组成 四.DHCP报文结构 五.DHCP报文类型 六.DHCP工作流程 七.DHCP租期更新 50% 八.DHCP重绑定 87.5% = 7/8 ...

  3. HCIP/HCIE RoutingSwitching / Datacom备考宝典系列(十七)VPN知识点全面总结(虚拟专用网络)

    目录 一.VPN背景 二.VPN概述 三.VPN核心技术 隧道技术 四.VPN优点 五.VPN类型(根据建设单位划分) 六.VPN类型(根据建设单位划分) 七.VPN类型(根据实现层 协议划分) 八. ...

  4. HCIP/HCIE RoutingSwitching/Datacom备考宝典题库系列(一) OSPF题库(OSPF难理解题 易错题 易混题总结)

    OSPF 协议不同的网络类型都可以形成 FULL 状态的邻接关系 正确 下面关于 OSPF 的描述正确的是: 选B OSPF采用SPF算法 OSPF LSUpdate不是周期性更新 而是触发式更新 O ...

  5. hcip hcie认证该如何选择?

    hcip HCIE认证该如何选择?这个问题见仁见智,hcie和hcip在级别.含金量.性价比.考试难度.考试费用等方面都有差别,考生一般会根据自己的实际情况进行选择,今天小编就从这几个方面为大家详细介 ...

  6. 【分布式事务系列九】聊聊分布式事务

    为什么80%的码农都做不了架构师?>>>    #0 系列目录# 分布式事务 [分布式事务系列一]提出疑问和研究过程 [分布式事务系列二]Spring事务管理器PlatformTra ...

  7. 学习ASP.NET Core Razor 编程系列九——增加查询功能

    原文:学习ASP.NET Core Razor 编程系列九--增加查询功能 学习ASP.NET Core Razor 编程系列目录 学习ASP.NET Core Razor 编程系列一 学习ASP.N ...

  8. Exchange Server2013 系列九:常规配置

    Exchange Server2013 系列九:常规配置(一) 杜飞 经过前面的部署之后,我们的客户端访问角色和邮箱服务器角色都已经实现了高可用,但目前还不能正常使用,需要对服务器进行常规的配置,主要 ...

  9. 数学之美 系列九 -- 如何确定网页和查询的相关性

    数学之美 系列九 -- 如何确定网页和查询的相关性 [我们已经谈过了如何自动下载网页.如何建立索引.如何衡量网页的质量(Page Rank).我们今天谈谈如何确定一个网页和某个查询的相关性.了解了这四 ...

  10. JAVA面试常考系列九

    转载自 JAVA面试常考系列九 题目一 RMI架构层的结构是如何组成的? RMI体系结构由三层组成,分别是: 存根和骨架层(Stub and Skeleton Layer) 远程引用层(Remote ...

最新文章

  1. 再见了,收费的 Navicat!
  2. 为何计算机科学领域的女性不多?
  3. 這個日本味超濃的建築竟然是台灣的小學
  4. python 查看当前系统Python版本
  5. 《Python3网络爬虫开发实战(第二版)》上市了!!!!
  6. 用命令行的方式运行Spark平台的wordcount项目
  7. 丢失模式不联网有用吗_用眼过度,打开手机“护眼模式”真的有用吗?
  8. 开发人员kpi怎么写_为什么开发人员应该知道怎么写
  9. python raise语句_Python异常处理,告别xxxxError!
  10. 网易云音乐上线Beat交易平台 收益100%归制作人所有
  11. dbcp 连接都会被断开_科普帖:软件与数据库连接的机制是怎样的?
  12. S5PV210体系结构与接口10:MMU编程
  13. 中国特夫行业市场供需与战略研究报告
  14. 一文读懂 CI/CD 工具
  15. 正向运动学和反向运动学
  16. 玩转Metasploit系列(第二集)
  17. Android上使用MP3格式录制声音
  18. 全国计算机一级考试题库及答案(2018)
  19. matlab海龟交易策略,海龟交易策略
  20. Netty聊天室(2):从0开始实战100w级流量应用

热门文章

  1. js 实现文件下载——文档流形式和本地文件下载——基础积累
  2. 安全测试 switchport protected
  3. 第 9 章 Panel(面板)组件
  4. 二元置信椭圆r语言_医学统计与R语言:Meta 回归作图(Meta regression Plot)
  5. Spring+Mybatis+SpringMVC+Maven+MySql搭建实例
  6. 北航超算运行matlab,北航荣获世界大学生超算总决赛一等奖!超50万亿次,又破世界纪录...
  7. scratch编程我的世界3D史蒂夫
  8. 测试使用skywalking_APM工具Skywalking的使用和注意事项
  9. 无源贴片晶振四角引脚_如何区分贴片晶振的脚位方向
  10. mac电脑视频去水印