首页/计算机网络/03-data-link/以太网交换机原理 🔗 在 Obsidian 中打开
计算机网络 · 03-data-link

以太网交换机原理

重要度 ⭐⭐⭐⭐⭐ 计算机网络/数据链路层交换机MAC地址表转发自学习
速查
交换机 = 多端口网桥,工作于数据链路层,按 MAC 地址表转发帧。收到帧时学习源 MAC→入端口;目的 MAC 已知→单播转发,未知或广播→泛洪;源/目的同端口→丢弃。每端口是独立冲突域。三种交换方式:存储转发 / 直通 / 无碎片

核心概念

交换机的本质

  • 多端口网桥,工作在数据链路层
  • 根据 MAC 地址转发帧
  • 每个端口是独立的冲突域
特性集线器 Hub交换机 Switch
工作层次物理层数据链路层
冲突域所有端口同一域每端口独立域
转发方式广播按 MAC 地址转发
带宽共享独占
双工半双工全双工

工作原理

MAC 地址表自学习

  1. 收到帧时,记录源 MAC 地址入端口的映射
  2. 查找目的 MAC 地址在表中的对应端口
  3. 根据查找结果决定转发行为

表项格式:MAC地址 | 端口号 | 老化时间,如 AA-AA-...-AA | 1 | 300s

转发决策

收到帧(入端口 P,目的 MAC=D):

  • 查到 D,端口为 Q:
    • Q == P → 丢弃(源和目的在同一端口)
    • Q != P → 从端口 Q 单播转发
  • 未找到 D / D 为广播地址 FF:FF:FF:FF:FF:FF → 泛洪(向除入端口外所有端口转发)

学习过程示例

初始:MAC 地址表为空

1. A(端口1) → C(未知):
   学习 A→端口1;查找 C 未找到;泛洪到端口2,3,4
2. C(端口2) → A(端口1):
   学习 C→端口2;查找 A 端口1;从端口1 单播转发
3. B(端口1) → D(端口3):
   学习 B→端口1;查找 D 端口3;从端口3 单播转发

三种交换方式

1. 存储转发(Store-and-Forward)

完整接收帧 → CRC 校验 → 正确则转发,错误则丢弃。优点:不转发错误帧、可靠性高;缺点:延迟大(要收完整个帧)。现代交换机默认方式

2. 直通交换(Cut-Through)

读取目的 MAC(前 6 字节)即立即转发。优点:延迟小;缺点:可能转发错误帧和超短帧。

3. 无碎片交换(Fragment-Free)

收到 64 字节(最小帧长)后转发,避免转发冲突碎片。延迟介于前两者之间。

MAC 地址表管理

老化机制

  • 每个表项有老化时间(默认 300 秒
  • 每次收到该 MAC 的帧时刷新老化时间
  • 超时未收到则删除表项,防止表项无限增长
表项来源说明
动态学习收到帧时自动学习源 MAC
静态配置管理员手动添加
丢弃老化超时或手动删除

交换机与冲突域 / 广播域

域的划分
  • 冲突域:交换机每个端口是独立冲突域;分隔冲突域;全双工模式下无冲突
  • 广播域:交换机所有端口在同一广播域,广播帧被泛洪到所有端口;路由器分隔广播域;VLAN 可逻辑分隔广播域

常见考法

考点说明
MAC 地址表自学习源 MAC 学习,目的 MAC 查找
转发决策单播 / 泛洪 / 丢弃的条件
交换方式对比存储转发 / 直通 / 无碎片
冲突域与广播域交换机分隔冲突域,不分隔广播域

易错点

注意
  • 学习的是源 MAC 地址,不是目的 MAC 地址
  • 目的 MAC 与入端口相同时要丢弃,不是泛洪
  • 泛洪是因为目的 MAC不在表中,不是因为目的端口忙
  • 全双工交换式以太网不需要 CSMA/CD

核心结论

必背
  1. 交换机通过自学习建立 MAC 地址表
  2. 已知目的端口则单播转发,未知则泛洪
  3. 每个端口是独立冲突域,带宽独占
  4. 存储转发是最可靠的交换方式(默认)

记忆卡片

交换机学习的是什么地址?
源 MAC 地址(与入端口的映射)。
什么情况下交换机会泛洪?
目的 MAC 不在地址表中,或目的 MAC 是广播地址
交换机分隔什么域?
冲突域(每个端口独立冲突域);默认不分隔广播域。
三种交换方式?
存储转发(最可靠)、直通(最快)、无碎片(折中)。

图示 · 转发决策流程

收到帧(入端口 P,目的 MAC D) ① 学习 源MAC→P ② 查表找 D 找到 未找到/广播 Q==P ? 丢弃 端口Q 单播 泛洪(除P) ① 总是先学习源 MAC;② 仅当目的未知或广播时泛洪;③ 同端口则丢弃。
图:交换机转发决策——学源 MAC、查目的 MAC,已知单播、未知/广播泛洪、同端口丢弃。

交互动画 · 交换机 MAC 表学习与转发

待播放
主机 A端口1 主机 B端口2 主机 C端口3 主机 D端口4 交换机 SWMAC 地址表(自学习)(动态维护) MAC 地址表 A → 端口1 C → 端口3 目的未知 → 广播(除源端口外) 目的已知 → 单播定向转发
演示交换机 MAC 地址表学习 / 转发 / 广播的完整过程。
学习源端口;已知单播,未知广播。

相关知识点

ethernet bridge-and-switch vlan-detail

↑ 站内 HTML 相对链接(纯网页可浏览);本页右上「在 Obsidian 中打开」跳回源笔记。