📖 3.5.1 以太网交换机
🎯 课程摘要:本节课详细讲解以太网交换机的工作原理,包括自学习与转发帧流程、全双工/半双工自动切换、存储转发与直通交换两种交换方式的对比,并通过 408 考研真题演练直通交换最小转发时延的计算。
📝 详细笔记
1. 交换机本质与接口特性
- 概念定义:以太网交换机(以下简称交换机)本质上是一个多接口的网桥。
- 原理解析:
- 交换机自学习和转发帧的流程与网桥相同。
- 交换机使用生成树协议 STP 产生能够连通全网但不产生环路的通信路径。
- 交换机的每个接口可以连接计算机,也可以连接集线器或另一个交换机。
- 交换机一般具有多种速率的接口(10 Mbps、100 Mbps、1 Gbps 甚至 10 Gbps),大部分接口支持多速率自适应。
- ⚠️ 重点/考点:交换机内部可同时连通多对接口,使每一对相互通信的计算机都能像独占传输媒体那样无碰撞地传输数据。
2. 全双工与半双工的自动切换
- 概念定义:交换机接口根据所连设备类型自动选择工作方式。
- 原理解析:
- 当交换机接口连接计算机或交换机时,可工作在全双工方式,无需使用 CSMA/CD 协议。
- 当交换机接口连接集线器时,该接口只能使用 CSMA/CD 协议,并只能工作在半双工方式。
- 现在的交换机和计算机中的网卡都能自动识别上述两种情况,并自动切换到相应的工作方式。
- ⚠️ 重点/考点:连接集线器 → 半双工 + CSMA/CD;连接计算机/交换机 → 全双工 + 无碰撞。
3. 交换机自学习与转发帧流程
- 概念定义:交换机通过接收帧来自动学习源 MAC 地址与接口号的映射,并据此转发帧。
- 原理解析(以主机 A 给 B 发送帧为例):
- 交换机上电后转发表为空。
- 帧从某接口进入交换机,交换机首先进行自学习:将帧的源 MAC 地址及进入的接口号登记到转发表中。
- 然后进行转发:在转发表中查找帧的目的 MAC 地址。
- 找不到 → 盲目转发(除进入接口外的所有接口转发)。
- 找得到 → 按记录的接口号明确转发。
- 目的地址与源地址在同一接口 → 丢弃。
- ⚠️ 重点/考点:MAC 地址又称硬件地址或物理地址,物理地址属于数据链路层范畴,不要被"物理"二字误导为物理层。以太网交换机的 PDU 称为帧。
4. 存储转发交换 vs 直通交换
- 概念定义:
- 存储转发交换:交换机先将整个帧缓存后再处理转发,一般交换机都采用此方式。
- 直通交换(Cut-through):交换机在接收帧的同时,立即按帧的目的 MAC 地址决定转发接口,通过内部基于硬件的交叉矩阵转发,不必把整个帧先缓存。
- 原理解析:
- 直通交换时延非常小。
- 直通交换不检查差错就直接转发,可能将无效帧转发给其他主机。
- ⚠️ 重点/考点:直通交换以牺牲差错检测为代价换取低时延。
| 对比项目 | 存储转发交换 | 直通交换 |
|---|---|---|
| 缓存方式 | 先缓存整个帧再处理 | 边接收边转发,不缓存整个帧 |
| 差错检测 | 检查帧的完整性(含 FCS) | 不检查差错 |
| 转发时延 | 较大 | 非常小 |
| 无效帧处理 | 可丢弃无效帧 | 可能转发无效帧 |
| 实现复杂度 | 较高 | 基于硬件交叉矩阵,较低 |
5. 直通交换最小转发时延计算(408 真题)
- 题目背景:输出端口无排队,直通交换不包括前导码;物理层在发送以太网帧前会添加 8 字节的前导码。
- 原理解析:
- 直通交换只要接收完以太网帧的目的 MAC 地址(6 字节)就可直接转发到目的端口,不缓存帧、不检测帧。
- 引入的最小转发延迟 = 接收完目的 MAC 地址所耗费的时间。
- 计算公式:
$$ T_{\min} = \frac{6 \text{ 字节} \times 8 \text{ bit/字节}}{100 \times 10^{6} \text{ bit/s}} = \frac{48}{10^{8}} \text{ s} = 480 \text{ ns} $$
- ⚠️ 重点/考点:分子 6 字节为目的 MAC 地址长度,转换为比特(×8);分母为接口速率 100 Mbps 转换为 bit/s。答案为 480 ns(选项 B)。
💡 核心总结
- 交换机本质是多接口网桥,自学习转发流程与网桥相同,使用 STP 避免环路。
- 连计算机/交换机 → 全双工无碰撞;连集线器 → 半双工 + CSMA/CD;可自动切换。
- 存储转发查差错但时延大,直通交换时延小但不查差错。
- 直通交换最小转发时延 = 接收完目的 MAC 地址(6 字节)的时间。
❓ 课后思考 / 经典考题
- 交换机接口连接集线器时为何只能半双工并使用 CSMA/CD?
- MAC 地址为什么属于数据链路层范畴而非物理层?
- 【408 真题】直通交换方式的最小转发延迟如何计算?为何只需接收完目的 MAC 地址即可转发?
- 存储转发与直通交换各有何优缺点?分别适用于什么场景?