下面整理的是“IEEE 802.3标准”至“高速以太网”之前的全部内容,涵盖 CSMA/CD、监听策略、二进制指数后退算法,以及局域网网桥互连。全文仅使用 DokuWiki 原生标题、表格、列表、粗体和等宽文本语法。
IEEE 802.3标准
一、本节知识结构
本节主要介绍传统共享式以太网的介质访问控制,以及局域网之间的网桥互连技术。
IEEE 802.3标准
│
├─ CSMA/CD协议
│ ├─ 载波监听
│ ├─ 多路访问
│ ├─ 冲突检测
│ ├─ 干扰信号
│ └─ 随机后退
│
├─ 二进制指数后退算法
│ ├─ 冲突次数
│ ├─ 随机数
│ ├─争用期
│ └─ 最大重传次数
│
└─ 局域网互连
├─ 透明网桥
│ ├─ 帧转发
│ ├─ 地址学习
│ └─ 生成树
│
└─ 源路由网桥
├─ 源站选择路径
└─ 路由信息写入帧头
二、IEEE 802.3概述
IEEE(Institute of Electrical and Electronics Engineers,电气电子工程师学会)制定的IEEE 802系列标准用于规范局域网和城域网技术。
IEEE 802.3主要规范以太网的:
- 物理层;
- 数据链路层的介质访问控制子层;
- 帧格式;
- 共享介质访问方法;
- 相关物理传输介质。
传统共享式以太网采用:
CSMA/CD(Carrier Sense Multiple Access with Collision Detection,载波监听多路访问/冲突检测)
三、共享信道与冲突
1. 共享信道
早期以太网中的多个站点共享同一条通信介质。
在共享信道中:
- 任意站点都可能发送数据;
- 一个站点发送的信号能够到达其他站点;
- 同一时刻通常只能有一个站点成功发送;
- 多个站点同时发送会造成信号叠加;
- 信号叠加后接收方无法正确恢复原始帧。
多个站点同时发送造成的现象称为:
Collision(冲突或碰撞)
2. 为什么信道空闲仍可能发生冲突
站点监听到信道空闲,并不代表整个网络中绝对没有站点正在发送。
原因是信号传播需要时间。
例如:
- 远端站点A开始发送;
- A的信号尚未传播到站点B;
- B监听时仍认为信道空闲;
- B也开始发送;
- 两个信号在传输介质中相遇;
- 发生冲突。
另一种情况是两个站点几乎同时监听到信道空闲,并同时开始发送,也会发生冲突。
核心结论:载波监听只能降低冲突概率,不能彻底避免冲突。
四、CSMA基本原理
1. 缩写含义
CSMA(Carrier Sense Multiple Access,载波监听多路访问)
缩写可拆分为:
- Carrier Sense:载波监听;
- Multiple Access:多个站点共同访问同一传输介质。
2. 基本工作过程
站点发送数据之前,先监听信道上是否存在其他站点的载波信号。
准备发送数据
↓
监听共享信道
↓
信道是否空闲?
├─ 否:按照监听策略等待
└─ 是:按照监听策略决定是否立即发送
CSMA需要解决两个基本问题:
- 如果信道空闲,站点是否立即发送?
- 如果信道忙,站点是否继续监听?
不同的处理规则形成不同的CSMA监听策略。
五、CSMA监听策略
1. 1-坚持CSMA
1-Persistent CSMA(1-坚持载波监听多路访问)的工作规则是:
- 如果信道空闲,立即发送;
- 如果信道忙,持续监听;
- 一旦信道变为空闲,立即发送;
- 如果发生冲突,则随机后退后重新监听。
其中“1”表示信道空闲时立即发送的概率为1。
监听信道
↓
信道空闲?
├─ 是:立即发送
└─ 否:持续监听
↓
一旦空闲立即发送
优点:
- 信道空闲后能够很快被利用;
- 低负载时等待时间短;
- 实现方法简单。
缺点:
- 多个站点可能同时等待信道;
- 信道一旦空闲,多个站点会同时发送;
- 网络负载较高时冲突概率较大。
2. 非坚持CSMA
Non-Persistent CSMA(非坚持载波监听多路访问)的工作规则是:
- 如果信道空闲,立即发送;
- 如果信道忙,不持续监听;
- 随机等待一段时间;
- 等待结束后重新监听信道。
监听信道
↓
信道空闲?
├─ 是:立即发送
└─ 否:随机等待
↓
重新监听
优点:
- 多个等待站点不会在信道刚空闲时全部同时发送;
- 冲突概率通常低于1-坚持CSMA;
- 高负载情况下稳定性较好。
缺点:
- 即使信道已经空闲,站点也可能仍处于后退状态;
- 可能造成信道空闲时间增加;
- 平均等待时间较长。
3. p-坚持CSMA
p-Persistent CSMA(p-坚持载波监听多路访问)通常用于时间被划分为时隙的信道。
工作规则是:
- 如果信道忙,继续监听;
- 如果信道空闲,以概率
p发送; - 以概率
1-p推迟到下一个时隙; - 到下一个时隙后重复上述过程;
- 如果发生冲突,则执行随机后退。
检测到信道空闲
↓
生成随机判断
↓
┌───────┴────────┐
│概率p:立即发送 │
│概率1-p:等待一个时隙│
└────────────────┘
优点:
- 可以在冲突概率与等待时间之间进行折中;
- 比1-坚持策略更容易控制高负载下的冲突;
- 比非坚持策略更充分地利用信道。
缺点:
- 需要合理选择概率
p; - 实现和参数设计相对复杂;
p选择不当会降低性能。
4. 三种策略比较
| 比较项目 | 1-坚持CSMA | 非坚持CSMA | p-坚持CSMA |
|---|---|---|---|
| 信道空闲时 | 立即发送 | 立即发送 | 以概率p发送 |
| 信道忙时 | 持续监听 | 随机等待后重听 | 持续监听 |
| 冲突概率 | 较高 | 较低 | 可通过p调节 |
| 信道利用速度 | 快 | 可能较慢 | 介于两者之间 |
| 高负载稳定性 | 较差 | 较好 | 取决于p |
| 适用信道 | 连续时间信道 | 连续时间信道 | 分时隙信道 |
六、CSMA/CD协议
1. 基本概念
单纯使用CSMA仍然不能消除冲突。
以太网在CSMA基础上增加冲突检测,形成:
CSMA/CD(Carrier Sense Multiple Access with Collision Detection,载波监听多路访问/冲突检测)
CSMA/CD的基本原则通常概括为:
- 先听后发;
- 边发边听;
- 冲突停止;
- 随机后退。
2. 完整工作流程
站点准备发送帧
↓
监听信道
↓
信道是否空闲?
├─ 否:按照监听策略继续监听或等待
└─ 是:开始发送帧
↓
发送过程中继续检测信道
↓
是否检测到冲突?
├─ 否:继续发送直至帧结束
└─ 是:发送干扰信号
↓
立即停止发送
↓
执行随机后退
↓
重新监听并尝试发送
3. 载波监听
发送前,站点检测共享介质上是否存在其他站点发送的载波信号。
- 检测到载波:信道忙;
- 未检测到载波:信道暂时空闲。
载波监听不能消除由传播时延造成的冲突。
4. 多路访问
多个站点连接在同一共享介质上,并具有平等的信道访问权。
这就是:
Multiple Access(多路访问)
在传统共享式以太网中,不存在固定的中央控制站统一分配发送权。
5. 冲突检测
站点开始发送后,仍然需要继续监听信道,并将线路上的实际信号与自己发送的信号进行比较。
如果检测到信号异常,则判断发生冲突。
这种发送过程中继续监听的机制称为:
Collision Detection(冲突检测)
6. 干扰信号
检测到冲突后,站点会发送一段特殊信号,确保共享网段中的所有站点都能发现冲突。
该信号称为:
Jam Signal(干扰信号或强化冲突信号)
发送干扰信号后:
- 当前帧发送失败;
- 发送站立即停止发送;
- 相关站点进入后退过程;
- 等待随机时间后重新竞争信道。
7. 为什么采用随机后退
如果发生冲突的所有站点都等待相同时间后重传,它们可能再次同时发送,造成重复冲突。
因此,各站点必须随机选择后退时间,使它们下一次发送的时刻尽可能错开。
七、争用期与最短帧长
1. 传播时延
信号从网络一端传播到另一端所需的时间称为单程传播时延,通常记作:
''τ''
最不利情况下:
- 站点A开始发送;
- 信号接近到达最远端站点B时,B开始发送;
- 冲突信息还需要从B传播回A;
- A最迟在约
2τ后才能检测到冲突。
2. 争用期
以太网中端到端往返传播时间称为:
Contention Period(争用期)
或:
Collision Window(冲突窗口)
其长度近似为:
''2τ''
站点发送数据后的前 2τ 时间,是可能检测到冲突的关键时间段。
3. 时槽
传统以太网把争用期定义为一个标准时槽:
Slot Time(时槽时间)
经典以太网时槽为:
''512 bit times''
即发送512 bit所需的时间。
在10 Mb/s以太网中:
''时槽时间=512÷10,000,000 s''
''时槽时间=51.2 μs''
其中:
μs表示Microsecond,即微秒;- 1 μs等于百万分之一秒。
4. 最短帧长
为了保证发送站在帧发送结束前能够检测到最远端产生的冲突,帧发送时间必须不小于争用期。
因此:
''最短帧发送时间≥2τ''
对应经典以太网的最短帧长度为:
''512 bit=64 byte''
其中:
''1 byte=8 bit''
''64×8=512 bit''
以太网MAC帧从目的地址字段开始到FCS结束,最小长度为64字节。
5. 短帧问题
如果帧太短:
- 发送站可能已经发送完毕;
- 远端才发生冲突;
- 冲突信号返回时发送站已停止监听;
- 发送站可能误以为帧已成功发送。
因此,以太网对帧设置最小长度。
如果上层数据不足,需要使用填充字段补足最短帧长度。
八、二进制指数后退算法
1. 基本概念
发生冲突后,各站点不能立即同时重传,而应随机等待一段时间。
以太网使用:
BEB(Binary Exponential Backoff,二进制指数后退算法)
随着连续冲突次数增加,随机后退范围按照2的指数扩大。
2. 教材中的表达
设:
n为重传或冲突次数;ξ为随机整数;τ为基本时槽或基本后退时间;t_ξ为随机后退时延。
教材给出的基本形式为:
''ξ=random[0,2^n]''
''t_ξ=ξτ''
其含义是:
- 第一次尝试发送时,
n=0; - 每发生一次冲突,
n增加1; - 随着
n增加,可选择的随机后退范围扩大; - 站点选择不同等待时间的概率增加;
- 再次发生冲突的可能性降低。
3. 以太网标准化表达
经典IEEE 802.3通常采用:
''k=min(n,10)''
''r∈{0,1,2,…,2^k-1}''
''后退时间=r×SlotTime''
其中:
| 符号 | 含义 |
|---|---|
n | 当前帧已经发生的冲突次数 |
k | 用于计算随机范围的指数,最大取10 |
r | 从指定范围中均匀选择的随机整数 |
SlotTime | 标准时槽时间 |
教材写成 random[0,2^n] 是用于说明后退范围按2的指数增长;考试涉及标准精确取值时,一般使用 0~2^k-1。
4. 后退范围示例
| 冲突次数n | k值 | 随机整数r的范围 | 最大后退时槽数 |
|---|---|---|---|
| 1 | 1 | 0~1 | 1 |
| 2 | 2 | 0~3 | 3 |
| 3 | 3 | 0~7 | 7 |
| 4 | 4 | 0~15 | 15 |
| 5 | 5 | 0~31 | 31 |
| 10 | 10 | 0~1023 | 1023 |
| 11~16 | 10 | 0~1023 | 1023 |
5. 计算示例
某站点发生第3次冲突。
''n=3''
''k=min(3,10)=3''
随机数范围为:
''r∈{0,1,2,3,4,5,6,7}''
假设随机选择:
''r=5''
则后退时间为:
''5×SlotTime''
在10 Mb/s经典以太网中:
''SlotTime=51.2 μs''
所以:
''后退时间=5×51.2 μs=256 μs''
6. 最大重传次数
为了避免一个帧无限重传,以太网限制最大冲突次数。
经典以太网中:
- 一个帧最多允许发生16次发送冲突;
- 第16次冲突后放弃发送;
- MAC子层向上层报告发送失败。
教材也以最大值16为例说明停止重传。
7. 二进制指数后退的意义
低负载时:
- 冲突次数少;
- 后退范围小;
- 平均等待时间短;
- 可以快速重传。
高负载时:
- 冲突次数增加;
- 后退范围指数扩大;
- 各站点的重传时间更分散;
- 连续冲突概率降低;
- 网络稳定性提高。
因此,二进制指数后退算法能在一定程度上根据网络负载自动调整平均后退时间。
九、CSMA/CD适用范围
CSMA/CD主要用于:
- 早期总线型以太网;
- 使用集线器的共享式以太网;
- 半双工以太网。
CSMA/CD通常不用于现代全双工交换式以太网。
全双工交换式以太网中:
- 每个端口连接独立链路;
- 发送和接收可同时进行;
- 不存在共享介质争用;
- 不会发生传统意义上的以太网冲突;
- 不需要执行CSMA/CD。
| 网络环境 | 是否使用CSMA/CD |
|---|---|
| 同轴电缆共享以太网 | 是 |
| 集线器半双工以太网 | 是 |
| 交换机端口半双工工作 | 是 |
| 交换机端口全双工工作 | 否 |
| 点到点全双工链路 | 否 |
十、CSMA/CD考试重点
必须掌握:
- CSMA表示载波监听多路访问。
- CSMA/CD表示载波监听多路访问/冲突检测。
- 发送前需要监听信道。
- 发送过程中仍需检测冲突。
- 检测到冲突后发送干扰信号并停止发送。
- 冲突后不能立即重传,需要随机后退。
- 载波监听只能减少冲突,不能彻底避免冲突。
- 冲突仍然可能由传播时延或多个站点同时发送造成。
- 争用期约等于端到端往返传播时延
2τ。 - 经典以太网时槽为512 bit times。
- 经典以太网最短帧为64 byte,即512 bit。
- 二进制指数后退范围随着冲突次数指数增加。
- 经典以太网最多尝试16次,之后报告发送失败。
- CSMA/CD用于共享式、半双工以太网。
- 全双工交换式以太网不使用CSMA/CD。
十一、局域网互连
1. 网桥的作用
不同局域网或局域网网段可以通过:
Bridge(网桥)
进行互连。
网桥工作在OSI参考模型的:
Data Link Layer(数据链路层)
主要根据MAC地址转发数据帧。
网桥的基本作用:
- 连接多个局域网段;
- 根据MAC地址过滤和转发帧;
- 隔离不同网段的冲突;
- 减少不必要的数据传播;
- 扩展局域网覆盖范围;
- 支持不同局域网段之间通信。
2. IEEE中的两类网桥
教材介绍了两种网桥:
- Transparent Bridge(透明网桥)
- Source Routing Bridge(源路由网桥)
相关标准包括:
| 标准 | 网桥类型 | 主要特点 |
|---|---|---|
| IEEE 802.1D | 透明网桥 | 网桥自行学习地址并建立转发表 |
| IEEE 802.5相关机制 | 源路由网桥 | 源站在帧中显式指定转发路径 |
十二、透明网桥
1. 基本概念
Transparent Bridge(透明网桥)对终端设备是透明的。
所谓透明,是指:
- 主机通常不需要知道网桥的存在;
- 主机不需要保存网桥转发路径;
- 用户不需要为网桥手工配置逐站路由;
- 网桥通过学习自动获得转发信息。
透明网桥插入网络后,可以自动执行:
- 帧转发;
- 地址学习;
- 帧过滤;
- 环路消除。
2. 转发数据库
透明网桥为各端口维护:
Forwarding Database(转发数据库)
也称:
- MAC地址表;
- 转发表;
- 过滤数据库;
- FDB(Forwarding Database,转发数据库)。
表项通常包含:
| 字段 | 含义 |
|---|---|
| MAC地址 | 站点的硬件地址 |
| 端口 | 到达该站点应使用的网桥端口 |
| 时间戳或定时器 | 用于判断表项是否老化 |
3. 地址学习
透明网桥通过收到帧的源MAC地址学习站点位置。
假设网桥从端口X收到一个MAC帧:
- 读取帧中的源MAC地址;
- 判断发送站必然位于端口X所连接的网段;
- 在转发表中记录“源MAC地址→端口X”;
- 如果已有该地址,则更新对应端口和老化计时器。
学习过程可以概括为:
''源MAC地址用于学习,目的MAC地址用于转发''
例如:
| 接收端口 | 源MAC地址 | 学习结果 |
|---|---|---|
| 端口1 | MAC-A | MAC-A位于端口1 |
| 端口3 | MAC-B | MAC-B位于端口3 |
| 端口2 | MAC-C | MAC-C位于端口2 |
4. 转发决策
网桥从端口X收到帧后,检查目的MAC地址。
情况一:目的地址位于另一个端口
如果转发表中存在目的地址,并且对应端口为Y,且Y不是输入端口:
- 从端口Y转发帧。
情况二:目的地址位于输入端口
如果目的地址对应端口仍然是X:
- 目的站与源站处于同一网段;
- 网桥不需要转发;
- 直接过滤或丢弃该帧。
情况三:未知目的地址
如果转发表中没有目的地址:
- 向除输入端口外的所有转发状态端口发送;
- 这种行为称为泛洪。
Flooding(泛洪)用于未知单播帧、广播帧以及部分组播帧的转发。
标准行为说明:透明网桥遇到未知目的单播地址时应向其他有效端口泛洪,而不是直接丢弃。教材相关描述应结合IEEE透明网桥的标准转发机制理解。
5. 透明网桥转发流程
从端口X收到帧
↓
根据源MAC地址更新转发表
↓
查找目的MAC地址
↓
┌──────────────────────────────┐
│目的地址是否已知? │
├─ 否:除输入端口外进行泛洪 │
└─ 是:目的端口是否等于输入端口?
├─ 是:过滤该帧
└─ 否:从目的端口转发
6. 表项老化
网络拓扑可能发生变化,例如:
- 主机移动到另一个端口;
- 主机离线;
- 链路中断;
- 网桥端口发生变化。
因此,动态学习的转发表项需要配置老化计时器。
Aging(老化)机制的作用:
- 每个动态MAC地址表项都有计时器;
- 收到该源地址的新帧时刷新计时器;
- 长时间没有收到该地址的帧时删除表项;
- 避免使用已经失效的转发信息。
十三、网桥环路问题
1. 为什么会出现环路
为了提高可靠性,网络中可能部署冗余网桥和冗余链路。
冗余虽然可以防止单点故障,但也可能形成二层环路。
例如:
LAN-A ── 网桥1 ── LAN-B │ │ └──── 网桥2 ────────┘
如果网桥1和网桥2同时转发广播帧,帧可能在环路中不断循环。
2. 环路造成的后果
二层以太网帧没有像IP分组TTL那样的天然生存时间限制。
TTL(Time To Live,生存时间)
因此,环路可能导致:
- 广播帧循环转发;
- 广播风暴;
- 重复帧;
- 同一源MAC地址在不同端口间反复移动;
- MAC地址表不稳定;
- 链路带宽被大量占用;
- 网络无法正常通信。
十四、生成树算法
1. 基本概念
透明网桥使用生成树机制消除二层环路。
STP(Spanning Tree Protocol,生成树协议)通过阻塞部分冗余端口,将有环的物理拓扑转换成无环的逻辑拓扑。
生成树的目标是:
- 保留网络连通性;
- 消除逻辑转发环路;
- 阻塞部分冗余路径;
- 链路故障时重新计算拓扑;
- 启用原先被阻塞的备用路径。
2. 图论理解
在连通图中:
- 每个LAN可以看作一个顶点;
- 每个网桥连接可以看作一条边;
- 环路表示图中存在闭合路径;
- 删除环路中的部分边,可得到无环连通图;
- 这个无环连通图称为生成树。
生成树满足:
- 包含原图全部顶点;
- 保持网络连通;
- 不包含任何环路;
- 若有
V个顶点,则生成树包含V-1条有效边。
3. STP基本工作思路
STP的典型过程包括:
- 选择根网桥;
- 每个非根网桥选择根端口;
- 每个网段选择指定端口;
- 其他冗余端口进入阻塞状态;
- 最终形成无环逻辑拓扑。
4. 根网桥
网络中需要选择一个:
Root Bridge(根网桥)
根网桥是生成树计算的逻辑中心。
根网桥通常由最小的网桥标识确定。
BID(Bridge Identifier,网桥标识)通常由:
- 网桥优先级;
- MAC地址;
组成。
5. 端口角色
| 端口角色 | 英文名称 | 作用 |
|---|---|---|
| 根端口 | Root Port | 非根网桥上到根网桥代价最小的端口 |
| 指定端口 | Designated Port | 某网段上负责向根方向或从根方向转发的端口 |
| 阻塞端口 | Blocked Port | 为消除环路而停止转发数据帧的冗余端口 |
6. BPDU
网桥之间通过交换:
BPDU(Bridge Protocol Data Unit,网桥协议数据单元)
完成生成树计算。
BPDU携带的信息通常包括:
- 根网桥标识;
- 根路径开销;
- 发送网桥标识;
- 发送端口标识;
- 相关计时信息。
7. STP结果
物理链路可以保留,但逻辑转发路径中只使用无环的生成树路径。
当活动链路发生故障时:
- 网桥重新计算生成树;
- 原来阻塞的备用端口可能进入转发状态;
- 网络恢复连通。
十五、源路由网桥
1. 基本概念
Source Routing Bridge(源路由网桥)由发送帧的源站显式指定帧的转发路径。
教材将源路由网桥与IEEE 802.5令牌环网联系起来。
IEEE 802.5是令牌环局域网标准。
源路由网桥的核心思想是:
- 路由选择主要由源站完成;
- 源站将路径信息写入帧头;
- 沿途网桥读取路径信息;
- 网桥根据帧头指示决定是否转发和从哪个端口转发。
2. 路由信息组成
路由信息通常由以下标识组成:
- 网桥标识;
- LAN标识;
- 转发顺序。
教材描述为网桥地址和LAN标识符的序列。
每个网桥查看帧头中的路由信息后,可以判断:
- 自己是否在转发路径中;
- 应该从哪个端口转发;
- 下一段LAN是什么。
3. 工作流程
源站确定目标站位置
↓
获得可用路径
↓
将路径信息写入帧头
↓
发送帧
↓
沿途网桥检查路由信息
↓
按指定顺序转发
↓
到达目标LAN和目标站
4. 网桥的状态信息
源路由网桥通常不需要像透明网桥那样维护完整的动态MAC转发表。
网桥只需知道:
- 自身网桥标识;
- 自己连接的LAN标识;
- 帧头中指定的路径信息。
但是,源站必须:
- 了解网络拓扑;
- 确定目标站位置;
- 获得有效的路由信息;
- 将路由写入帧头。
5. 路由发现
源站可以通过特殊的路由发现帧寻找目标站和可用路径。
路由发现过程可能包括:
- 发送探索帧;
- 探索帧经过多个网桥和LAN;
- 记录经过的路径;
- 目标站返回响应;
- 源站选择一条合适路径;
- 后续数据帧携带选定路径。
6. 优点与缺点
优点:
- 源站可以明确选择转发路径;
- 可以利用多条可用路径;
- 可根据需要选择带宽或代价较合适的路径;
- 网桥本身不必维护完整路由表。
缺点:
- 源站需要了解网络拓扑;
- 路由发现会产生额外流量;
- 帧头需要携带路由信息;
- 终端和协议实现更加复杂;
- 网络拓扑变化后需要重新发现路径。
十六、透明网桥与源路由网桥比较
| 比较项目 | 透明网桥 | 源路由网桥 |
|---|---|---|
| 英文名称 | Transparent Bridge | Source Routing Bridge |
| 相关标准 | IEEE 802.1D | IEEE 802.5相关机制 |
| 路由决策者 | 网桥 | 源站 |
| 主机是否感知网桥 | 通常不感知 | 需要参与路径选择 |
| 路由信息位置 | 网桥转发表 | 数据帧帧头 |
| 地址学习 | 网桥自动学习 | 不是核心机制 |
| 是否需要拓扑发现 | 网桥通过协议计算 | 源站需要发现路径 |
| 环路处理 | 使用生成树 | 由帧中的明确路径避免任意循环 |
| 网桥复杂度 | 需要学习和维护转发表 | 转发逻辑相对直接 |
| 终端复杂度 | 较低 | 较高 |
| 帧头开销 | 较小 | 需要携带路由信息 |
| 带宽利用 | 生成树会阻塞部分冗余链路 | 可以选择不同路径 |
十七、网桥与交换机的关系
现代以太网交换机本质上可以看作多端口高速透明网桥。
共同点:
- 工作在数据链路层;
- 根据MAC地址转发帧;
- 学习源MAC地址;
- 维护MAC地址表;
- 过滤同一端口内的通信;
- 对未知单播和广播进行泛洪;
- 需要避免二层环路。
主要差异:
| 比较项目 | 传统网桥 | 以太网交换机 |
|---|---|---|
| 端口数量 | 较少 | 通常较多 |
| 转发性能 | 较低 | 较高 |
| 实现方式 | 早期可能以软件为主 | 通常使用专用硬件 |
| 并行转发能力 | 有限 | 较强 |
| 功能范围 | 基本桥接 | 支持VLAN、链路聚合等功能 |
十八、核心流程汇总
1. CSMA/CD发送流程
监听信道
↓
信道忙?
├─ 是:等待并继续监听
└─ 否:开始发送
↓
边发送边检测
↓
是否冲突?
├─ 否:发送完成
└─ 是:发送Jam信号
↓
停止发送
↓
二进制指数后退
↓
重新竞争信道
2. 透明网桥转发流程
收到MAC帧
↓
根据源MAC学习输入端口
↓
查找目的MAC
↓
├─ 目的未知:向其他有效端口泛洪
├─ 目的位于输入端口:过滤
└─ 目的位于其他端口:定向转发
3. 生成树工作目标
有环物理拓扑
↓
选择根网桥
↓
选择根端口和指定端口
↓
阻塞部分冗余端口
↓
得到无环逻辑拓扑
↓
保持网络连通
十九、常见易错点
- CSMA不能彻底避免冲突,只能降低冲突概率。
- 监听到信道空闲后仍可能因传播时延发生冲突。
- CSMA/CD必须在发送过程中继续检测冲突。
- 检测到冲突后需要先发送干扰信号,再停止并后退。
- 二进制指数后退不是等待固定时间,而是在指数扩大的范围中随机选择。
- 后退范围扩大不表示每次实际等待时间一定变长,只表示可选范围变大。
- 指数通常在冲突10次后封顶,但重传最多允许到第16次冲突。
- 最短帧长与冲突检测有关,不是随意规定的数值。
- 经典以太网最短帧为64字节。
- CSMA/CD用于共享式半双工以太网,不用于全双工交换式链路。
- 透明网桥根据源MAC地址学习,根据目的MAC地址转发。
- 未知目的单播帧应向其他有效端口泛洪,而不是立即丢弃。
- 目的地址与输入端口处于同一网段时,网桥过滤该帧。
- 生成树不一定删除物理链路,而是阻塞部分逻辑转发路径。
- 透明网桥由网桥决定路径,源路由网桥由源站指定路径。
- 源路由网桥中的“源”是指发送帧的源站,而不是网络中的源端口。
二十、考试重点
必须掌握:
- CSMA/CD的英文全称及四个核心步骤。
- 三种CSMA监听策略的区别。
- 冲突产生与信号传播时延的关系。
- 争用期约为
2τ。 - 经典以太网时槽为512 bit times。
- 经典以太网最短帧为64 byte。
- 二进制指数后退算法的随机范围。
- 最大冲突次数为16。
- 透明网桥的帧转发、地址学习和环路分解。
- 透明网桥的未知单播泛洪机制。
- MAC地址表的老化机制。
- 生成树的作用是消除二层逻辑环路。
- 每个LAN可视为图中的顶点,每个网桥连接可视为边。
- 透明网桥与源路由网桥的根本区别。
- IEEE 802.1D与透明网桥、生成树的关系。
- IEEE 802.5与源路由网桥的关系。
二十一、英文缩写与术语速查表
| 缩写或术语 | 英文全称 | 中文含义 |
|---|---|---|
| IEEE | Institute of Electrical and Electronics Engineers | 电气电子工程师学会 |
| CSMA | Carrier Sense Multiple Access | 载波监听多路访问 |
| CSMA/CD | Carrier Sense Multiple Access with Collision Detection | 载波监听多路访问/冲突检测 |
| 1-Persistent CSMA | 1-Persistent Carrier Sense Multiple Access | 1-坚持CSMA |
| Non-Persistent CSMA | Non-Persistent Carrier Sense Multiple Access | 非坚持CSMA |
| p-Persistent CSMA | p-Persistent Carrier Sense Multiple Access | p-坚持CSMA |
| Collision | Collision | 冲突或碰撞 |
| Collision Detection | Collision Detection | 冲突检测 |
| Jam Signal | Jam Signal | 干扰信号或强化冲突信号 |
| BEB | Binary Exponential Backoff | 二进制指数后退 |
| Slot Time | Slot Time | 时槽时间 |
| Contention Period | Contention Period | 争用期 |
| Collision Window | Collision Window | 冲突窗口 |
| MAC | Media Access Control | 介质访问控制 |
| FCS | Frame Check Sequence | 帧校验序列 |
| Bridge | Bridge | 网桥 |
| Transparent Bridge | Transparent Bridge | 透明网桥 |
| Source Routing Bridge | Source Routing Bridge | 源路由网桥 |
| FDB | Forwarding Database | 转发数据库 |
| Flooding | Flooding | 泛洪 |
| Aging | Aging | 老化 |
| STP | Spanning Tree Protocol | 生成树协议 |
| Root Bridge | Root Bridge | 根网桥 |
| Root Port | Root Port | 根端口 |
| Designated Port | Designated Port | 指定端口 |
| BPDU | Bridge Protocol Data Unit | 网桥协议数据单元 |
| BID | Bridge Identifier | 网桥标识 |
| LAN | Local Area Network | 局域网 |
| TTL | Time To Live | 生存时间 |
| byte | Byte | 字节,等于8个二进制位 |
| μs | Microsecond | 微秒 |
二十二、本节知识脉络
IEEE 802.3标准
│
├─ 共享式以太网
│ ├─ 多个站点共享介质
│ └─ 同时发送产生冲突
│
├─ CSMA
│ ├─ 发送前监听
│ ├─ 1-坚持
│ ├─ 非坚持
│ └─ p-坚持
│
├─ CSMA/CD
│ ├─ 先听后发
│ ├─ 边发边听
│ ├─ 冲突停止
│ └─ 随机后退
│
├─ 二进制指数后退
│ ├─ k=min(n,10)
│ ├─ r=0~2^k-1
│ ├─ 后退时间=r×SlotTime
│ └─ 第16次冲突后放弃
│
└─ 局域网互连
├─ 透明网桥
│ ├─ 源地址学习
│ ├─ 目的地址转发
│ ├─ 表项老化
│ └─ STP消除环路
│
└─ 源路由网桥
├─ 源站发现路径
├─ 路由写入帧头
└─ 网桥按指定路径转发