欢迎光临
我们一直在努力

计算机网络期末复习(第三章 数据链路层)

第三章 数据链路层 复习总结

一、数据链路层概述

1. 数据链路层的作用

数据链路层负责的是:

节点 → 节点

之间的数据传输。

注意:

数据链路层不是端到端传输,而是相邻节点之间的传输。

物理层只负责传输比特流,例如:

0 和 1 的电信号

而数据链路层要解决的问题是:

  • 如何组织比特
  • 如何识别数据边界
  • 如何检测传输错误
  • 如何在共享信道中协调多个设备发送数据

可以理解为:

物理层负责“把比特送出去”
数据链路层负责“把比特组织成帧,并尽量保证相邻节点之间正确传输”


2. 链路与数据链路

链路

链路是指:

两个节点之间的物理线路

例如:

  • 双绞线
  • 光纤
  • 无线信道

数据链路

数据链路是:

逻辑上的链路

它由:

  • 硬件
  • 软件
  • 协议

共同实现。

可以记为:

链路 + 协议 = 数据链路


3. 帧

帧是:

数据链路层的协议数据单元,即 PDU

网络层传下来的数据报,在数据链路层会被封装成帧。

过程如下:

网络层数据报

加帧首部和帧尾部

形成帧

交给物理层发送


二、两种信道类型

1. 点对点信道

点对点信道是:

一对一通信

例如:

  • PPP
  • 路由器之间的链路

特点:

  • 通信双方固定
  • 不存在多个设备争用信道的问题
  • 不会发生冲突
  • 不需要 CSMA/CD

2. 广播信道

广播信道是:

多个设备共享同一信道

例如:

  • 传统总线型以太网
  • Hub 网络

特点:

  • 多个主机共享信道
  • 可能多个设备同时发送数据
  • 可能发生碰撞
  • 需要媒体接入控制协议

三、数据链路层三个基本问题

数据链路层最重要的三个基本问题是:

封装成帧
透明传输
差错检测


1. 封装成帧

封装成帧就是在数据前后添加:

帧首部
帧尾部

从而形成完整的帧。

例如:

FLAG 数据 FLAG

这样接收方就能知道:

哪里是帧的开始
哪里是帧的结束


2. 透明传输

问题

如果数据内容中刚好出现了帧定界符,例如:

FLAG

接收方可能会误以为这是:

帧的边界

这样就会造成帧识别错误。


解决方法

透明传输常用两种方法:

字节填充
零比特填充


3. 差错检测

数据在传输过程中可能会因为噪声、干扰等原因出现比特错误。

数据链路层常用:

CRC 循环冗余校验

进行差错检测。

注意:

CRC 只能检错,不能纠错。

也就是说:

CRC ≠ 可靠传输

因为 CRC 没有:

  • 确认机制
  • 重传机制
  • 纠错机制

真正的可靠传输一般由高层协议完成,例如 TCP。


四、字节填充与零比特填充

1. 字节填充

字节填充常用于:

PPP 的异步传输

PPP 中:

FLAG = 0x7E
ESC = 转义字符

填充规则:

ESC → ESC ESC
FLAG → ESC FLAG

例如,原数据为:

A B ESC FLAG D

填充后为:

A B ESC ESC ESC FLAG D

这样接收方就知道,数据中的 FLAG 不是真正的帧边界。


2. 零比特填充

零比特填充常用于:

同步传输

规则是:

连续 5 个 1 后插入 1 个 0

PPP 的 Flag 字段为:

01111110

即:

0x7E

其中包含连续 6 个 1。

为了避免数据中出现和 Flag 一样的比特序列,就规定:

只要数据中连续出现 5 个 1,就自动插入 1 个 0。

例如,原数据为:

01111110

填充后为:

011111010

接收方收到后,再把连续 5 个 1 后面的 0 删除,恢复原始数据。


五、CRC 循环冗余校验

1. CRC 的基本思想

CRC 的基本思想是:

发送方用数据除以生成多项式,得到余数。
然后把余数添加到数据后面一起发送。

这个余数就是:

FCS 帧检验序列


2. 模 2 运算

CRC 使用的是:

模 2 除法

模 2 运算本质上就是:

异或运算

基本规则:

1 ⊕ 1 = 0
1 ⊕ 0 = 1
0 ⊕ 1 = 1
0 ⊕ 0 = 0

特点:

不进位
不借位


3. CRC 计算步骤

第一步:数据后补 0

如果生成多项式最高次为 r,则在数据后面补:

r 个 0


第二步:模 2 除法

用补 0 后的数据除以生成多项式,得到:

r 位余数


第三步:添加余数

把余数添加到原数据后面,形成最终发送的帧。

原数据 + FCS


4. CRC 的考试重点

必须记住:

CRC 只能检错,不能纠错。

如果接收方检测出错误,通常会:

丢弃该帧

数据链路层本身不一定负责重传。


六、PPP 协议

1. PPP 协议含义

PPP 全称:

Point-to-Point Protocol

即:

点对点协议

PPP 主要用于:

点对点链路

例如:

  • 用户拨号上网
  • 路由器之间的链路

2. PPP 帧格式

PPP 帧格式为:

Flag | Address | Control | Data | FCS | Flag


3. PPP 的 Flag 字段

PPP 的 Flag 字段为:

01111110

也就是:

0x7E

作用:

表示帧的开始和结束


4. PPP 的特点

PPP 支持:

  • 差错检测
  • 身份认证
  • 动态 IP 分配
  • 多种网络层协议

PPP 不支持:

  • 差错纠正
  • 可靠传输

5. PPP 的工作过程

PPP 建立连接时,通常经历以下过程:

物理链路建立

LCP 链路控制协议协商

身份鉴别

NCP 网络控制协议协商

链路打开,开始传输数据

NCP 释放网络层连接

LCP 释放数据链路连接

物理链路断开


6. LCP

LCP 全称:

Link Control Protocol

即:

链路控制协议

作用:

  • 建立链路
  • 配置链路
  • 测试链路
  • 释放链路

7. 鉴别

PPP 支持身份认证,例如:

  • PAP
  • CHAP

作用是:

验证用户是否合法


8. NCP

NCP 全称:

Network Control Protocol

即:

网络控制协议

作用是:

配置网络层参数

最典型的是:

给用户动态分配 IP 地址


七、局域网基础

1. 局域网特点

局域网的特点:

  • 覆盖范围小
  • 数据率高
  • 误码率低

2. IEEE 802 标准

IEEE 802 是局域网和城域网标准。

常见标准:

IEEE 802.3 → 以太网
IEEE 802.11 → 无线局域网 WiFi


八、CSMA/CD 协议

1. 为什么需要 CSMA/CD?

在广播信道中,多个设备共享同一条信道。

如果多个设备同时发送数据,就会发生:

碰撞

因此需要 CSMA/CD 协议来协调发送。


2. CSMA/CD 的含义

CSMA/CD 全称:

Carrier Sense Multiple Access with Collision Detection

即:

载波监听多点接入 / 碰撞检测


3. CSMA/CD 的核心思想

1. 先听后发

发送前先监听信道。

如果信道空闲,就发送。

如果信道忙,就等待。

载波监听:先听后发


2. 边听边发

发送数据的同时继续监听信道,判断是否发生碰撞。

碰撞检测:边听边发


3. 冲突停止

如果检测到碰撞,立即停止发送。

同时发送:

强化碰撞信号

目的是让所有主机都知道发生了碰撞。


4. 延迟重发

发生碰撞后,不会立刻重发,而是采用:

截断二进制指数退避算法

等待一段随机时间后再重发。


九、争用期与最短帧长

1. 传播时延

传播时延是信号在链路上传播所需要的时间。

公式:

τ = 距离 / 传播速度

其中:

τ 表示单程传播时延


2. 发送时延

发送时延是把一帧数据全部发送到信道上所需要的时间。

公式:

T0 = L / C

其中:

T0:发送时延
L:帧长,单位 bit
C:数据率,单位 bit/s


3. 争用期

争用期定义为:

即:

往返传播时延

意义:

发送方必须在 2τ 内检测到碰撞。


4. 最短帧长条件

为了保证发送方在发送过程中能够检测到碰撞,必须满足:

T0 ≥ 2τ

也就是:

发送时延 ≥ 往返传播时延

如果帧太短,就可能出现:

帧已经发送完了
碰撞信号还没返回

这样发送方就无法知道发生了碰撞。


5. 最短帧长公式

由:

T0 = L / C

以及:

T0 ≥ 2τ

可得:

Lmin = 2τ × C

其中:

Lmin:最短帧长
τ:单程传播时延
C:数据率


6. 以太网最短帧长

以太网规定最短帧长为:

64B

即:

512bit

这个数字非常重要,考试高频。


十、退避算法

1. 基本退避时间

CSMA/CD 中的基本退避时间是:

也就是:

争用期


2. 随机退避

发生碰撞后,从以下范围随机选择一个整数 r:

r ∈ [0, 2^k – 1]

其中:

k = min(重传次数, 10)


3. 退避时间

退避时间公式:

退避时间 = r × 2τ


4. 最大重传次数

最多重传:

16 次

如果仍然失败,则:

丢弃该帧,并向高层报告


十一、信道利用率

1. 最大信道利用率

CSMA/CD 中,信道利用率最大值为:

Smax = T0 / (T0 + τ)

令:

a = τ / T0

则:

Smax = 1 / (1 + a)


2. 如何提高信道利用率?

要提高信道利用率,需要让:

a << 1

也就是:

τ / T0 很小

含义是:

  • 帧不能太短
  • 网络距离不能太长
  • 传播时延不能太大
  • 数据发送时间相对传播时间要足够长

十二、以太网基础

1. 以太网特点

以太网的特点:

  • 无连接
  • 不可靠
  • 尽最大努力交付
  • 使用曼彻斯特编码
  • 传统共享式以太网使用 CSMA/CD

2. 以太网为什么不可靠?

以太网可以进行:

差错检测

但是如果检测出错误,只会:

丢弃该帧

不会进行:

  • 确认
  • 重传
  • 纠错

所以以太网提供的是:

无连接、不可靠、尽最大努力交付

可靠传输通常由高层协议实现,例如 TCP。


十三、Hub 与 Switch

1. Hub 集线器

Hub 工作在:

物理层

特点:

  • 共享信道
  • 半双工
  • 使用 CSMA/CD
  • 所有端口属于同一个冲突域
  • 不隔离广播域

2. Hub 的拓扑特点

Hub 物理上是:

星型拓扑

但逻辑上是:

总线拓扑

所以:

Hub 网络中仍然会发生冲突。


3. Switch 交换机

Switch 工作在:

数据链路层

特点:

  • 点对点链路
  • 通常全双工
  • 不使用 CSMA/CD
  • 每个端口是一个独立冲突域
  • 默认不隔离广播域

4. Hub 和 Switch 对比

对比项HubSwitch
工作层次 物理层 数据链路层
通信方式 半双工 通常全双工
是否共享信道
是否使用 CSMA/CD 通常不用
冲突域 所有端口一个冲突域 每端口一个冲突域
广播域 不隔离 默认不隔离

十四、冲突域与广播域

1. 冲突域

冲突域是:

可能发生碰撞的范围


Hub 的冲突域

整个 Hub 是一个冲突域


Switch 的冲突域

交换机每个端口是一个冲突域

所以交换机可以隔离冲突域。


2. 广播域

广播域是:

广播帧能够到达的范围


普通二层交换机

普通二层交换机默认:

不隔离广播域


VLAN 和路由器

VLAN 和路由器可以:

隔离广播域


十五、交换机自学习

1. MAC 地址表

交换机内部维护一张 MAC 地址表,记录:

MAC 地址 → 接口

例如:

A → 1号端口
B → 2号端口


2. 学习规则

交换机学习时看的是:

源 MAC 地址

例如:

交换机从 1 号端口收到 A 发来的帧

它就学习:

A → 1号端口

注意:

交换机根据源地址学习,根据目的地址转发。


3. 转发规则

情况一:目的地址已知

如果交换机知道目的 MAC 在哪个接口,就:

明确转发

只向对应接口发送。


情况二:目的地址未知

如果目的 MAC 不在交换表中,就:

泛洪

也就是:

除进入接口外,向所有其他接口转发


情况三:目的接口等于进入接口

如果查表发现目的接口和进入接口相同,说明目标主机和源主机在同一侧。

此时交换机:

直接丢弃该帧


4. 交换表老化

交换机表项不是永久保存的。

如果长时间没有收到某个 MAC 地址发来的帧,对应表项会自动删除。

原因:

  • 主机可能移动位置
  • 网卡可能更换
  • 网络拓扑可能变化

十六、泛洪、广播、明确转发的区别

1. 明确转发

交换机知道目标 MAC 地址在哪个接口。

因此只向目标接口发送。

已知目的地址 → 明确转发


2. 泛洪

交换机不知道目标 MAC 地址在哪个接口。

于是向除进入接口外的所有接口发送。

未知单播帧 → 泛洪


3. 广播

广播是发送方本来就想发给所有主机。

广播 MAC 地址为:

FF-FF-FF-FF-FF-FF

交换机收到广播帧后,也会向除进入接口外的其他接口转发。


4. 泛洪不等于广播

两者区别:

广播:发送方主动发给所有主机
泛洪:交换机不知道目的 MAC,只能向其他端口都发送


十七、MAC 地址

1. MAC 地址特点

MAC 地址特点:

  • 48 位
  • 6 字节
  • 全球唯一
  • 属于数据链路层地址

2. MAC 地址存储位置

MAC 地址通常固化在:

网卡 ROM


3. 三种 MAC 帧

单播帧

一对一


广播帧

一对全体

广播 MAC 地址为:

FF-FF-FF-FF-FF-FF


多播帧

一对多


十八、以太网 MAC 帧格式

1. Ethernet V2 帧格式

Ethernet V2 帧格式为:

目的地址 | 源地址 | 类型 | 数据 | FCS


2. 字段长度

字段长度作用
目的地址 6B 接收方 MAC 地址
源地址 6B 发送方 MAC 地址
类型 2B 标识上层协议
数据 46~1500B 上层数据
FCS 4B CRC 差错检测

3. 类型字段

类型字段用于标识:

上一层使用的协议

例如:

  • IP
  • ARP
  • IPv6

4. 数据字段长度

数据字段长度为:

46~1500B

如果数据不足 46B,需要进行填充。

原因是:

以太网帧最短必须是 64B


5. FCS 字段

FCS 字段长度为:

4B

作用是:

CRC 差错检测


6. 有效 MAC 帧长度

最小帧长:

6 + 6 + 2 + 46 + 4 = 64B

最大帧长:

6 + 6 + 2 + 1500 + 4 = 1518B

所以:

以太网有效 MAC 帧长度为 64B~1518B


十九、前同步码与帧开始定界符

以太网帧在物理层发送前,还会在前面加入 8 字节:

7B 前同步码 + 1B 帧开始定界符


1. 前同步码

作用:

实现比特同步

让接收方准备好接收后面的 MAC 帧。


2. 帧开始定界符

作用:

表示后面正式进入 MAC 帧


3. 注意

这 8 字节:

不计入 MAC 帧长度

所以:

MAC 帧有效长度仍然是 64B~1518B


二十、Ethernet V2 与 IEEE 802.3 的区别

Ethernet V2 格式:

目的地址 | 源地址 | 类型 | 数据 | FCS

IEEE 802.3 格式:

目的地址 | 源地址 | 长度/类型 | 数据 | FCS

主要区别在第三个字段。

判断规则:

字段值 > 0x0600 → 类型
字段值 < 0x0600 → 长度

现在最常用的是:

Ethernet V2

但很多时候也会笼统称为:

802.3 以太网帧


二十一、VLAN

1. VLAN 的作用

VLAN 用于:

逻辑划分局域网


2. VLAN 的核心作用

VLAN 最核心的作用是:

隔离广播域


3. 不同 VLAN 之间通信

不同 VLAN 之间不能直接通信。

必须经过:

路由器
三层交换机

进行转发。


4. VLAN 划分方式

1. 基于端口

最简单、最常见。

例如:

1~8号端口 → VLAN10
9~16号端口 → VLAN20

缺点:

用户换接口后,VLAN 可能变化


2. 基于 MAC 地址

根据主机网卡 MAC 地址划分 VLAN。

优点:

用户移动位置后,VLAN 不变

缺点:

需要维护大量 MAC 地址


3. 基于 IP 子网

根据 IP 地址所属网段划分 VLAN。

例如:

192.168.1.0/24 → VLAN10
192.168.2.0/24 → VLAN20


4. 基于协议类型

根据以太网帧中的类型字段划分。

例如:

IP → VLAN10
IPX → VLAN20


5. 基于应用或服务

根据高层应用划分。

例如:

FTP → VLAN10
TELNET → VLAN20

这种方式更灵活,但实现复杂。


二十二、高速以太网

1. 不同速率以太网为什么兼容?

因为以太网不同速率版本主要改变的是:

物理层

而:

MAC 层基本保持不变

所以不同速率以太网能够保持较好的兼容性。


2. 全双工为什么不使用 CSMA/CD?

全双工链路一般是:

点对点链路

发送和接收可以同时进行,不会发生碰撞。

所以:

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


3. 10GE 为什么距离远?

10GE 大量采用:

光纤

光纤特点:

  • 衰减小
  • 抗干扰强
  • 带宽高
  • 传输距离远

二十三、常见以太网标准

1. 10BASE5

10 → 10Mbps
BASE → 基带传输
5 → 最大段长 500m


2. 10BASE-T

10 → 10Mbps
BASE → 基带传输
T → 双绞线


3. 100BASE-T

100 → 100Mbps
BASE → 基带传输
T → 双绞线


4. 1000BASE-T

1000 → 1000Mbps,也就是 1Gbps
BASE → 基带传输
T → 双绞线

通常使用:

4 对 UTP


5. 1000BASE-SX

SX → 短波长光纤


6. 1000BASE-LX

LX → 长波长光纤


7. 1000BASE-CX

CX → 铜缆


二十四、本章重要公式汇总

1. 发送时延

T0 = L / C

其中:

T0:发送一帧所需时间
L:帧长,单位 bit
C:数据率,单位 bit/s


2. 传播时延

τ = 距离 / 传播速度

其中:

τ:单程传播时延


3. 争用期

争用期 = 2τ

含义:

往返传播时延


4. 最短帧长条件

T0 ≥ 2τ

含义:

发送方必须在发送过程中还能检测到碰撞


5. 最短帧长公式

Lmin = 2τ × C

其中:

Lmin:最短帧长
τ:单程传播时延
C:数据率


6. 退避时间

退避时间 = r × 2τ

其中:

r ∈ [0, 2^k – 1]
k = min(重传次数, 10)


7. 信道利用率最大值

Smax = T0 / (T0 + τ)

令:

a = τ / T0

则:

Smax = 1 / (1 + a)

要提高信道利用率,需要:

a << 1

即:

  • 帧不能太短
  • 网络距离不能太长
  • 传播时延不能太大

二十五、本章重要数字汇总

PPP Flag:0x7E
PPP Flag 二进制:01111110
MAC 地址长度:48bit = 6B
以太网最短帧长:64B
以太网最大帧长:1518B
以太网数据字段:46~1500B
FCS 字段:4B
广播 MAC 地址:FF-FF-FF-FF-FF-FF
CSMA/CD 争用期:2τ
最大重传次数:16次


二十六、本章易错判断题

1. CRC 能保证可靠传输

错误。

原因:

CRC 只能检错,不能纠错,也不能重传。


2. PPP 只能传输 IP 数据报

错误。

原因:

PPP 可以支持多种网络层协议。


3. 普通二层交换机可以隔离广播域

错误。

原因:

普通二层交换机默认不隔离广播域。

能够隔离广播域的是:

VLAN
路由器
三层交换机


4. Hub 是星型拓扑,所以不会发生冲突

错误。

原因:

Hub 物理上是星型,逻辑上仍然是总线型。

所以 Hub 网络仍然会发生冲突。


5. 使用 CSMA/CD 的以太网可以全双工

错误。

原因:

CSMA/CD 用于半双工共享式以太网。

全双工以太网没有碰撞,不使用 CSMA/CD。


6. 交换式以太网使用 CSMA/CD

错误。

原因:

交换式以太网通常是全双工、点对点链路,不发生碰撞。

所以通常不使用 CSMA/CD。


7. 交换机根据目的地址学习

错误。

正确说法:

交换机根据源地址学习,根据目的地址转发。


8. 不同 VLAN 之间可以直接通信

错误。

原因:

不同 VLAN 属于不同广播域,不能直接通信。

必须经过:

路由器或三层交换机


9. 泛洪等于广播

不完全正确。

区别:

广播:发送方本来就要发给所有主机
泛洪:交换机不知道目的 MAC,只能向其他端口都转发


10. MAC 地址就是 IP 地址

错误。

原因:

MAC 地址属于数据链路层,长度 48 位。
IP 地址属于网络层。


二十七、本章考前速记

1. 数据链路层三个基本问题

封装成帧
透明传输
差错检测


2. PPP 必背

PPP 用于点对点链路
Flag = 0x7E = 01111110
PPP 支持差错检测,但不提供可靠传输


3. CRC 必背

CRC 只能检错,不能纠错
CRC 使用模 2 除法
模 2 运算本质是异或


4. CSMA/CD 必背

先听后发
边听边发
冲突停止
延迟重发


5. 最短帧长必背

T0 ≥ 2τ
Lmin = 2τ × C
以太网最短帧长 = 64B = 512bit


6. Hub 必背

物理层
共享信道
半双工
使用 CSMA/CD
所有端口一个冲突域
不隔离广播域


7. Switch 必背

数据链路层
全双工
不使用 CSMA/CD
每端口一个冲突域
默认不隔离广播域


8. VLAN 必背

VLAN 用于逻辑划分局域网
VLAN 的核心作用是隔离广播域
不同 VLAN 通信需要路由器或三层交换机


9. MAC 帧格式必背

目的地址 | 源地址 | 类型 | 数据 | FCS

字段长度:

目的地址:6B
源地址:6B
类型:2B
数据:46~1500B
FCS:4B

帧长:

最小:64B
最大:1518B


10. 交换机转发规则必背

看源地址学习
查目的地址转发
目的已知 → 明确转发
目的未知 → 泛洪
目的端口等于进入端口 → 丢弃

赞(0)
未经允许不得转载:171主机测评 » 计算机网络期末复习(第三章 数据链路层)
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址