从 01 开始 从 01 开始
首页
  • 📚 计算机基础

    • 计算机简史
    • 数字电路
    • 计算机组成原理
    • 操作系统
    • Linux
    • 计算机网络
    • 数据库
    • 编程工具
    • 装机
  • 🎨 前端

    • Node
  • JavaSE
  • Java 高级
  • JavaEE

    • 构建、依赖管理
    • Ant
    • Maven
    • 日志框架
    • Junit
    • JDBC
    • XML-JSON
  • JavaWeb

    • 服务器软件
    • 环境管理和配置管理-科普篇
    • Servlet
  • Spring

    • Spring基础
  • 主流框架

    • Redis
    • Mybatis
    • Lucene
    • Elasticsearch
    • RabbitMQ
    • MyCat
    • Lombok
  • SpringMVC

    • SpringMVC 基础
  • SpringBoot

    • SpringBoot 基础
  • Windows 使用技巧
  • 手机相关技巧
  • 最全面的输入法教程
  • 最全面的浏览器教程
  • Office
  • 图片类工具
  • 效率类工具
  • 最全面的 RSS 教程
  • 码字工具
  • 各大平台
  • 校招
  • 五险一金
  • 职场规划
  • 关于离职
  • 杂谈
  • 自媒体
  • 📖 读书

    • 读书工具
    • 走进科学
  • 🌍 英语

    • 从零开始学英语
    • 英语兔的相关视频
    • Larry 想做技术大佬的相关视频
  • 🏛️ 政治

    • 反腐
    • GFW
    • 404 内容
    • 审查与自我审查
    • 互联网
    • 战争
    • 读书笔记
  • 💰 经济

    • 关于税
    • 理财
  • 💪 健身

    • 睡眠
    • 皮肤
    • 口腔健康
    • 学会呼吸
    • 健身日志
  • 🏠 其他

    • 驾驶技能
    • 租房与买房
    • 厨艺
  • 电影

    • 电影推荐
  • 电视剧
  • 漫画

    • 漫画软件
    • 漫画推荐
  • 游戏

    • Steam
    • 三国杀
    • 求生之路
  • 小说
  • 关于本站
  • 关于博主
  • 打赏
  • 网站动态
  • 友人帐
  • 从零开始搭建博客
  • 搭建邮件服务器
  • 本站分享
  • 🌈 生活

    • 2022
    • 2023
    • 2024
    • 2025
  • 📇 文章索引

    • 文章分类
    • 文章归档

晓林

程序猿,自由职业者,博主,英语爱好者,健身达人
首页
  • 📚 计算机基础

    • 计算机简史
    • 数字电路
    • 计算机组成原理
    • 操作系统
    • Linux
    • 计算机网络
    • 数据库
    • 编程工具
    • 装机
  • 🎨 前端

    • Node
  • JavaSE
  • Java 高级
  • JavaEE

    • 构建、依赖管理
    • Ant
    • Maven
    • 日志框架
    • Junit
    • JDBC
    • XML-JSON
  • JavaWeb

    • 服务器软件
    • 环境管理和配置管理-科普篇
    • Servlet
  • Spring

    • Spring基础
  • 主流框架

    • Redis
    • Mybatis
    • Lucene
    • Elasticsearch
    • RabbitMQ
    • MyCat
    • Lombok
  • SpringMVC

    • SpringMVC 基础
  • SpringBoot

    • SpringBoot 基础
  • Windows 使用技巧
  • 手机相关技巧
  • 最全面的输入法教程
  • 最全面的浏览器教程
  • Office
  • 图片类工具
  • 效率类工具
  • 最全面的 RSS 教程
  • 码字工具
  • 各大平台
  • 校招
  • 五险一金
  • 职场规划
  • 关于离职
  • 杂谈
  • 自媒体
  • 📖 读书

    • 读书工具
    • 走进科学
  • 🌍 英语

    • 从零开始学英语
    • 英语兔的相关视频
    • Larry 想做技术大佬的相关视频
  • 🏛️ 政治

    • 反腐
    • GFW
    • 404 内容
    • 审查与自我审查
    • 互联网
    • 战争
    • 读书笔记
  • 💰 经济

    • 关于税
    • 理财
  • 💪 健身

    • 睡眠
    • 皮肤
    • 口腔健康
    • 学会呼吸
    • 健身日志
  • 🏠 其他

    • 驾驶技能
    • 租房与买房
    • 厨艺
  • 电影

    • 电影推荐
  • 电视剧
  • 漫画

    • 漫画软件
    • 漫画推荐
  • 游戏

    • Steam
    • 三国杀
    • 求生之路
  • 小说
  • 关于本站
  • 关于博主
  • 打赏
  • 网站动态
  • 友人帐
  • 从零开始搭建博客
  • 搭建邮件服务器
  • 本站分享
  • 🌈 生活

    • 2022
    • 2023
    • 2024
    • 2025
  • 📇 文章索引

    • 文章分类
    • 文章归档
  • 计算机简史

  • 数字电路

  • 计算机组成原理

  • 操作系统

  • Linux

  • 计算机网络

    • 计算机网络微课堂

      • 课程概述
      • 1-1 计算机网络在信息时代的作用
      • 1-2 因特网概述
      • 1-3 三种交换方式
      • 1-4 计算机网络的定义和分类
      • 1-5 计算机网络的性能指标
      • 1-6 计算机体系结构
      • 2-1 物理层的基本概念
      • 2-2 物理层下面的传输媒体
      • 2-3 传输方式
      • 2-4 编码与调制
      • 2-5 信道的极限容量
      • 3-1 概述
      • 3-2 封装成帧
      • 3-3 差错检测
      • 3-4 可靠传输
      • 3-5 点对点协议 PPP
      • 3-6 媒体接入控制的基本概念
      • 3-7 MAC 地址
      • 3-7 IP 地址
      • 3-7 ARP 协议
      • 3-8 集线器与交换机的区别
      • 3-9 以太网交换机自学习和转发帧的流程
      • 3-10 以太网交换机的生成树协议 STP
      • 3-11 虚拟局域网 VLAN
      • 4-1 网络层概述
      • 4-2 网络层提供的两种服务
      • 4-3 IPv4 地址
      • 4-4 IP 数据报的发送和转发过程
      • 4-5 静态路由配置及其可能产生的路由环路问题
      • 4-6 路由选择
      • 4-7 IPv4 数据报的首部格式
      • 4-8 网际控制报文协议 ICMP
      • 4-9 虚拟专用网 VPN 与网络地址转换 NAT
      • 5-1 运输层概述
      • 5-2 运输层端口号、复用与分用的概念
      • 5-3 UDP 和 TCP 的对比
      • 5-4 TCP 的流量控制
      • 5-5 TCP 的拥塞控制
      • 5.6 TCP 超时重传时间的选择
      • 5-7 TCP 可靠传输的实现
      • 5-8 TCP 的运输连接管理
      • 5-9 TCP 报文段的首部格式
      • 6-1 应用层概述
      • 6-2 客户—服务器方式和对等方式
      • 6-3 动态主机配置协议 DHCP
      • 6-4 域名系统 DNS
      • 6-5 文件传送协议 FTP
      • 6-6 电子邮件
      • 6-7 万维网 WWW
    • 计算机网络微课堂-实验手册

    • 从零开始学计算机网络

  • 数据库

  • 编程工具

  • 装机

  • 计算机基础
  • 计算机网络
  • 计算机网络微课堂
2023-11-16

3-10 以太网交换机的生成树协议 STP

# 391.3-10 以太网交换机的生成树协议 STP

我们介绍以太网交换机生成树协议的基本概念。

请大家思考一下,应该如何提高以太网的可靠性呢?例如如图所示的以太网,由三台交换机互联而成,每个交换机上都连接有一些主机,为了简单起见,我们只画出了每个交换机上连接的一台主机,如果交换机 A 与 B 之间的链路出现了故障,则交换机 B 上连接的所有主机,既无法与交换机 A 上连接的所有主机进行通信,也无法与交换机 C 上连接的所有主机进行通信。

如果交换机 A 与交换机 B 和 C 之间的链路都出现了故障,则原来的以太网变成了三个独立的较小的以太网,他们之间无法通信。相信很多同学已经想到了,可以通过添加冗余链路的方法来提高以太网的可靠性。

‍

例如在本例中,我们给交换机 B 和 C 之间添加一条冗余链路后,即使交换机 A 和 B 之间的链路出现了故障,整个网络还是联通的,但是冗余链路也会带来负面效应,那就是形成网络环路。如图所示,网络环路会带来一些问题。例如广播风暴,我们来举例说明,假设主机 H1 发送了一个广播帧,交换机 B 收到该帧号,将其从自己的其他所有接口转发出去,交换机 A 收到交换机 B 转发来的该帧后,将其从自己的其他所有接口转发出去。

同样的交换机 C 收到交换机 B 转发来的该证号,将其从自己的其他所有接口转发出去;交换机 C 收到交换机 A 转发来的该帧后,将其从自己的其他所有接口转发出去。

同样的,交换机 A 收到交换机 C 转发来的该帧后,将其从自己的其他所有接口转发出去。交换机 B 收到交换机 C 转发来的该帧后,将其从自己的其他所有接口转发出去。

同样的,交换机 B 收到交换机 A 转发来的盖章后,将其从自己的其他所有接口转发出去。 ‍ 很显然该广播帧将在各交换机之间反复转发,分别按顺时针和逆时针方向同时兜圈,这就是所谓的广播风暴,广播风暴会大量消耗网络资源,使得网络无法正常转发其他数据帧,也会使主机反复收到广播帧,大量消耗主机资源,还会使交换机的帧交换表震荡(漂移),如图所示,这是交换机 B 的帧交换表,这是其各接口的接口号。为了简单起见,假设各主机的名称也可作为其 MAC 地址,当交换机 B 收到主机 H1 发送的广播帧后进行登记工作,将帧的源 MAC 地址 H1 和帧进入交换机 B 的接口号 1 登记到帧交换表中,这条记录是正确的。

当交换机 B 再次收到交换机 C 转发来的该广播帧后进行登记工作,将帧的源 MAC 地址 H1 和帧进入交换机 B 的接口号 2,这条错误记录登记到帧交换表中,并删除原先正确的记录。

当交换机 B 再次收到交换机 A 转发来的该广播帧号进行登记工作,将帧的源 MAC 地址 H1 和帧进入交换机 B 的接口号 3,这条错误记录登记到帧交换表中,并删除原先错误的记录。

当交换机 B 再次收到交换机 C 转发来的该广播帧后进行登记工作,将帧的源 MAC 地址 H1 和帧进入交换机 B 的接口号 2,这条错误记录登记到帧交换表中,并删除原先错误的记录。很显然有关 MAC 地址 H1 的记录将在这两个错误记录之间反复震荡。

​​


为了可以在增加冗余链路来提高网络可靠性的同时,又避免网络环路带来的各种问题。以太网交换机使用生成树协议,其英文缩写词为 STP 不论交换机之间采用怎样的物理连接,使用生成树协议的交换机都能够自动计算,并构建出一个逻辑上没有环路的网络,其逻辑拓扑结构必须是树形的,也就是没有逻辑环路。

我们来举例说明,如图所示,为了提高可靠性,5 台交换机之间进行了冗余连接,冗余链路不止一条,网络环路也不止一个。为了简单起见,各交换机上连接的主机没有画出。我们用绿色的小圆圈表示交换机的接口状态为正常状态,用橙色的小方块表示交换机的接口状态为阻塞状态,用红色的叉表示出现了故障,如果各交换机的各接口都处于正常状态,则会存在多个网络环路。实际上各交换机之间按照生成树协议中规定的生成树算法,交互一些参数后,就可以判断出自己应该阻塞自己的哪些接口。例如图中所示,这样就会形成一个逻辑上没有环路的网络,如图所示。

​​

当然这个逻辑上没有环路的网络,一定要确保联通整个网络,否则就没有意义了。当首次连接交换机或网络物理拓扑发生变化时,这有可能是人为改变造成的,也有可能是出现故障造成的,交换机都将进行生成树的重新计算。例如假设这段链路出现了故障,相关交换机检测到该故障后,重新计算生成树,决定将自己之前阻塞的接口恢复为正常状态,这样就会形成一个新的逻辑上没有环路的网络。

需要说明的是,生成树协议所使用的生成树算法,以超出本系列课程的教学大纲,对生成树算法感兴趣的同学,可以参看我们的另一个系列课程,计算机网络简明教程和仿真实验。

​​

上次更新: 2025/6/3 09:31:54
3-9 以太网交换机自学习和转发帧的流程
3-11 虚拟局域网 VLAN

← 3-9 以太网交换机自学习和转发帧的流程 3-11 虚拟局域网 VLAN→

最近更新
01
学点统计学:轻松识破一本正经的胡说八道
06-05
02
2025 年 5 月记
05-31
03
《贫穷的本质》很棒,但可能不适合你
05-27
更多文章>
Theme by Vdoing | Copyright © 2022-2025 | 粤 ICP 备 2022067627 号 -1 | 粤公网安备 44011302003646 号 | 点击查看十年之约
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式