复习位置:计算机网络 → 第3章 数据链路层 → 以太网交换机 / 共享式以太网
这一部分的核心不是背定义,而是把下面这条逻辑链串起来:

集线器 Hub:大家共享一条路
         ↓
交换机 Switch:每个端口一条独立路
         ↓
交换机根据 MAC 地址学习“主机在哪个端口”
         ↓
已知目的地址精准转发,未知目的地址泛洪

408重点:交换机特点、MAC地址自学习、转发规则、冲突域/广播域、共享式与交换式以太网对比、CSMA/CD、STP。


一、以太网交换机到底是什么

以太网交换机工作在:

数据链路层

所以又称:

二层交换机

它本质上是:

一个多端口网桥

最重要的作用:

把一个大的冲突域
划分成多个更小的冲突域

二、为什么交换机比集线器效率高

先看集线器 Hub。

假设有4台主机:

A ─┐
B ─┼── Hub
C ─┼
D ─┘

Hub工作在物理层,只会:

收到电信号
-> 放大
-> 从其他端口全部转发

所以A和B通信时:

C、D也能“听到”

并且大家共享同一个介质。

结果:

同一冲突域
共享带宽
半双工
需要CSMA/CD

换成交换机

A ─┐
B ─┼── Switch
C ─┼
D ─┘

交换机可以识别:

MAC地址

并知道:

A在哪个端口
B在哪个端口

因此A发给B时,交换机可以只把帧送给B。

所以:

不同端口之间可以并行通信
每个端口拥有独立带宽
通常支持全双工

三、交换机的5个高频特点

教材这一页可以压成5条。

1. 交换机端口直接连接主机时通常全双工

例如:

主机A ←────→ 交换机

双方可以:

同时发送和接收

因此:

全双工交换式以太网
不需要CSMA/CD

2. 每个交换机端口都是独立冲突域

例如:

A ── port1
B ── port2
C ── port3

可以理解为:

port1 一个冲突域
port2 一个冲突域
port3 一个冲突域

因此:

交换机能够隔离冲突域

但注意:

普通二层交换机不能隔离广播域

这是408高频陷阱。


3. 交换机支持多对主机同时通信

例如:

A <----> B

同时

C <----> D

两对通信可以并行进行。

这叫:

交换机具有并行性

4. 交换机即插即用,会自学习

刚开机时:

MAC地址表可能为空

但它会根据收到的帧自动学习:

MAC地址 <-> 端口

不需要管理员手工把所有主机位置录进去。


5. 交换机内部交换速度快

交换机通常使用专用交换芯片,能够高速完成:

查表
转发
过滤

四、共享带宽 vs 独占带宽

假设链路速率均为:

10 Mb/s

集线器网络

如果有N台主机共享:

总带宽约10 Mb/s

平均下来:

每台主机只能分享其中一部分

交换机网络

每个端口都可以有:

10 Mb/s

例如一个N端口交换机:

端口1:10 Mb/s
端口2:10 Mb/s
...
端口N:10 Mb/s

因此交换机的总吞吐能力可以远大于共享式以太网。


五、交换机的两种转发方式

这一部分主要考:

直通交换
存储转发

六、直通交换:先看目的地址就转发

直通交换:

帧还没有完整收到
↓
交换机只要已经读到目的MAC地址
↓
立刻决定输出端口
↓
开始转发

流程:

收到帧头
   ↓
读目的MAC
   ↓
查交换表
   ↓
马上转发

优点

转发延迟小

因为:

不用等整帧到齐

缺点

交换机没有完整收到帧,因此可能:

来不及做完整FCS检验

结果:

坏帧也可能被转发出去

所以:

直通交换:
快,但可靠性相对低

七、存储转发:整帧收完再转

存储转发:

完整接收整个帧
↓
缓存
↓
做差错检测
↓
确认正确
↓
查目的MAC
↓
转发

优点

可靠性高

可以先:

检查FCS

还可以:

进行速率匹配
支持不同速率端口

例如:

100 Mb/s端口
        ↓
     交换机
        ↓
10 Mb/s端口

交换机可以先缓存,再以另一速率发送。

缺点

延迟更大

因为必须:

等待整帧接收完毕

八、直通 vs 存储转发

对比直通交换存储转发
什么时候转发读到目的MAC后收完整帧后
延迟小较大
差错检测不完整/较弱可以完整检测
坏帧可能转发可直接丢弃
速率匹配不适合支持
协议转换不适合可以支持

一句话:

直通:快

存储转发:稳

九、交换机最核心:MAC地址自学习

交换机内部有一张表:

MAC地址表 / 交换表

例如:

MAC地址端口
A1
B3

意思:

想找A -> 从端口1出去
想找B -> 从端口3出去

问题是:

交换机怎么知道A在1号口?

答案:

自己学。

十、学习规则只有一句话

交换机收到一个帧:

源MAC = A
入端口 = 1

交换机会记:

A -> 1

所以核心口诀:

学源地址
查目的地址

这八个字非常重要。


十一、完整转发流程

收到一个以太网帧后:

第1步:学习源MAC

第2步:查询目的MAC

第3步:决定转发方式

十二、情况1:目的MAC已知

例如交换表:

A -> 1
B -> 3

现在:

A从端口1发给B

交换机收到:

源MAC = A
目的MAC = B
入端口 = 1

先学习:

A -> 1

再查:

B -> 3

所以:

只从端口3转发

这叫:

精准转发 / 单播转发

十三、情况2:目的MAC未知

假设表里只有:

A -> 1

A发给B,但交换机暂时不知道B在哪。

那么:

查不到B

怎么办?

交换机执行:

泛洪 Flooding

即:

除入端口外
向所有其他端口发送

例如:

从port1收到

则发往:

port2
port3
port4

十四、未知单播为什么要泛洪

因为交换机只知道:

“B不在我表里”

却不知道:

“B究竟在哪个端口”

所以最保险的方法:

所有可能出口都试一遍

只要B存在:

它就能收到

其他主机收到后发现:

目的MAC不是自己

便丢弃。


十五、A和B通信一次,交换机怎么学会两个人的位置

初始:

交换表为空

连接:

A -> port1
C -> port2
B -> port3
D -> port4

第一步:A发送给B

交换机收到:

源A
入端口1

立即学习:

A -> 1

此时不知道B:

未知单播

所以泛洪:

port2、port3、port4

最终:

B收到
C、D丢弃

第二步:B回复A

交换机收到:

源B
入端口3

学习:

B -> 3

现在查目的A:

A -> 1

因此:

只向port1精准转发

最终交换表:

A -> 1
B -> 3

这就是完整的:

自学习过程

十六、情况3:广播帧

广播MAC:

FF:FF:FF:FF:FF:FF

看到广播帧:

交换机不需要查表

直接:

除入端口外全部转发

即:

泛洪

十七、组播帧

教材基础题中,如果没有专门的组播转发表机制,可以先理解成:

通常执行类似泛洪处理

408基础题重点还是:

单播
广播
未知单播

十八、一个容易漏掉的特殊情况

假设:

目的MAC查表发现
目的主机也在入端口这一侧

那么交换机发现:

没有必要再从任何其他端口转发

于是:

过滤 / 丢弃该帧

经典情形:

交换机某端口连接Hub
Hub下面挂A、B

A发给B

交换机如果已经知道:

A和B都在同一个端口后面

就不会把帧转发到其他交换机端口。


十九、交换表为什么要老化

主机位置可能变化。

例如:

A原来接port1
后来拔线接到port4

如果交换机永远保留:

A -> 1

就错了。

因此交换表中的动态表项会有:

老化时间

长期没有更新:

自动删除

随后再次收到A的帧时重新学习。


二十、交换机不能解决什么:广播环路

交换机能够隔离:

冲突域

但不能天然隔离:

广播域

如果多个交换机之间存在冗余链路:

SW1 ----- SW2
 |         |
 └-- SW3 --┘

形成环路后,广播帧可能:

无限循环

导致:

广播风暴

二十一、STP是干什么的

STP:

Spanning Tree Protocol
生成树协议

目标:

保留物理冗余
但在逻辑上阻塞部分端口
形成一棵无环生成树

例如物理上:

SW1 ----- SW2
 |         |
 └-- SW3 --┘

逻辑上暂时阻塞一条:

SW1 ----- SW2
 |
 |
SW3

这样就没有环。

如果主链路故障:

STP可以重新激活备用链路

所以:

STP解决交换网络中的二层环路问题

二十二、共享式以太网是什么

共享式以太网通常以:

集线器 Hub

为中心。

例如:

      Hub
    /  |  \
   A   B   C

所有主机:

共享同一物理传输介质
共享总带宽
处于同一冲突域

二十三、Hub工作在哪一层

Hub:

物理层

它不理解:

MAC地址

也没有:

MAC转发表

收到比特流后只做:

放大
整形
转发到其他端口

所以它属于:

“无脑转发”

二十四、为什么Hub必须使用CSMA/CD

因为:

所有主机共享介质

假如A和B同时发送:

会发生碰撞

所以必须:

CSMA/CD

而且通信方式:

半双工

二十五、Hub的冲突域和广播域

一个Hub连接的所有主机:

整个网络 = 1个冲突域

同时:

也是1个广播域

所以:

Hub既不隔离冲突域
也不隔离广播域

二十六、交换机的冲突域和广播域

交换机:

每个端口一个冲突域

所以:

隔离冲突域

但是普通二层交换机:

所有端口仍属于一个广播域

所以:

不隔离广播域

如果要隔离广播域,通常想到:

路由器
VLAN

二十七、Hub vs Switch:408核心表

对比Hub共享式以太网Switch交换式以太网
工作层物理层数据链路层
是否识别MAC否是
转发表无有
通信模式半双工通常全双工
带宽共享每端口独占
CSMA/CD需要全双工时不需要
冲突域所有端口一个每端口一个
广播域一个仍然一个
普通单播向其他端口全部复制查表精准转发
并行通信不支持支持
安全性较低相对较高

二十八、一个特殊陷阱:交换机端口连接Hub

教材专门强调了这个情况。

A ─┐
B ─┼── Hub ─── Switch
C ─┘

虽然网络里有交换机,但:

Hub这一侧

A、B、C仍然:

共享一个冲突域

所以:

仍然需要CSMA/CD
仍然只能半双工

因此不要机械记:

“有交换机就永远没有冲突”

真正应该判断:

交换机端口后面直接连一台主机?
还是接了共享式设备Hub?

二十九、MAC自学习题的固定解题模板

408遇到交换机转发表题,只做三步:

① 学源

② 查目的

③ 决定转发

具体:

收到:
源MAC = S
目的MAC = D
入端口 = P

第一步:

更新:

S -> P

第二步查:

D在不在MAC表?

第三步:

已知D
-> 指定端口转发

未知D
-> 除入端口外泛洪

广播D
-> 除入端口外泛洪

D对应的端口就是入端口
-> 不向其他端口转发

三十、这部分最容易出现的思维漏洞

漏洞1:交换机收到帧先查目的地址

顺序不完整。

交换机应该先利用:

源MAC

学习主机位置。

固定:

先学源
再查目的

漏洞2:未知目的MAC就丢弃

错。

未知单播:

泛洪

而不是:

直接丢弃

漏洞3:交换机隔离广播域

错。

普通二层交换机:

隔离冲突域
不隔离广播域

漏洞4:交换机网络一定不需要CSMA/CD

不严谨。

如果:

交换机端口直接连接主机
并采用全双工

不需要。

但交换机端口如果连接:

Hub

Hub侧仍然是:

共享介质
半双工
需要CSMA/CD

漏洞5:Hub和交换机只是速度不同

错。

根本区别是:

Hub不识别MAC,只复制比特

Switch识别MAC,可以学习和选择性转发

三十一、教材标注的408高频方向

你这几页教材已经标出了主要真题方向:

2009:
交换机基于MAC地址转发

2013:
直通交换转发时延

2014 / 2016 / 2021:
MAC地址自学习过程

2015:
交换机特点

2016:
共享式和交换式以太网区别

2020 / 2022:
网络设备对冲突域、广播域的影响

因此强化阶段优先级建议:

第一:
MAC自学习 + 转发

第二:
Hub / Switch
冲突域 / 广播域

第三:
全双工 + CSMA/CD

第四:
直通 / 存储转发

第五:
STP

三十二、最后压成一张脑图

                 以太网
                   |
        ┌──────────┴──────────┐
        |                     |
      Hub                   Switch
    共享式                  交换式
        |                     |
     物理层                数据链路层
        |                     |
   不认识MAC                认识MAC
        |                     |
   全端口复制              MAC表转发
        |                     |
  一个冲突域              每端口冲突域
        |                     |
   半双工                 通常全双工
        |                     |
 CSMA/CD必须             全双工不需要
        |                     |
        └──── 都不天然隔离广播域 ────┘

交换机内部再记:

收到帧
  ↓
学习源MAC
  ↓
查目的MAC
  ↓
┌───────────────┐
│ 已知 -> 精准转发 │
│ 未知 -> 泛洪     │
│ 广播 -> 泛洪     │
└───────────────┘

三十三、考前30秒版本

Hub:
物理层、半双工、共享带宽、
一个冲突域、需要CSMA/CD、
收到就向其他端口复制。

Switch:
数据链路层、通常全双工、
每端口独立带宽、隔离冲突域、
不隔离广播域。

交换机转发:
先学源MAC,再查目的MAC。

目的已知:
精准转发。

目的未知:
除入端口外泛洪。

广播:
除入端口外泛洪。

直通:
快,但可能转坏帧。

存储转发:
慢一点,但能检错、支持速率匹配。

STP:
解决二层交换网络环路。

只要这套逻辑真正串起来,这部分选择题基本就是判断题。

更多推荐