Skip to content

数据包的网络之旅:协议栈封装与解封装

考情分析

你发一条微信,数据经历了什么?很多同学背了五层模型的名字、知道每层的 PDU 叫什么,但脑子里始终没有一个从上到下封装、从左到右传输、从下到上解封装的完整画面。

这个交互式动画用一次完整的 认识协议栈 → 封装之旅 → 传输与解封装 操作,把三大考点串起来:

考点你会在哪个场景看到考频
五层协议模型(各层功能、PDU、协议)认识协议栈🔥🔥🔥
封装过程(每层加头部,链路层加帧尾)封装之旅🔥🔥🔥
中间设备处理层次(交换机 L2、路由器 L3)传输与解封装🔥🔥
经过路由器 MAC 变 IP 不变传输与解封装🔥🔥🔥

按顺序走完三个场景大约 10 分钟。走完之后,你对"分层"的理解会从抽象口诀变成具体画面。

加载可视化中...

场景一:认识协议栈

打开动画后,你看到左右两个五层协议栈——发送方(主机 A)和接收方(主机 B),中间用虚线连接表示网络。

点击每一层

点击任意一层(比如"网络层"),右侧面板会显示三个关键信息:

  • 功能:路由选择与分组转发,提供逻辑寻址
  • PDU:IP 数据报 (Packet)
  • 协议:IP、ICMP、ARP、OSPF、RIP

408 选择题常考:"以下哪个协议工作在 X 层?"——把五层都点一遍,协议归属自然记住。

三个核心概念

右侧面板始终显示三个概念,考试常以判断题形式出现:

概念含义方向
协议对等层实体间的通信规则水平
服务下层向上层提供的功能垂直
SAP相邻层之间的接口(如端口号)垂直

易错点:协议是水平的(同层之间),服务是垂直的(上下层之间)。考试经常反着出选项来混淆。

准备好后,在输入框输入一条消息(默认 "Hello"),点击「发送消息」进入场景二。

场景二:封装之旅

这是核心场景——你会看到数据从应用层出发,逐层向下"穿衣服"的完整过程。

逐层封装

使用底部的 ⏮ ⏭ 按钮逐步观看,或点 ▶ 自动播放:

步骤当前层数据块变化右侧面板
1应用层[Hello]PDU = 报文 (Message)
2传输层[TCP头][Hello]源端口 1234、目的端口 80
3网络层[IP头][TCP头][Hello]源 IP、目的 IP、TTL
4数据链路层[帧头][IP头][TCP头][Hello][FCS]源 MAC、目的 MAC、类型、FCS
5物理层01101000... 比特流编码为电信号发送

必须记住的要点

1. 每层只加自己的头部

传输层加 TCP 头(端口号),网络层加 IP 头(IP 地址),链路层加帧头帧尾。上层的整体作为本层的"载荷"——这就是封装的本质。

2. 链路层是唯一既加头又加尾的

帧头包含 MAC 地址和类型字段,帧尾包含 FCS 校验值。其他层只加头部。

3. 目的 MAC 不是最终目标

注意第 4 步的目的 MAC 是 CC:CC:CC:00:00:01——这是路由器的 MAC,不是主机 B 的。因为 A 和 B 不在同一网段,帧只能先发给默认网关。

封装完成后,点击「开始传输」进入场景三。

场景三:传输与解封装

全景拓扑图展开:数据包从主机 A 出发,依次经过 交换机 → 路由器 → 交换机 → 主机 B

关键观察点

交换机(第 2 层设备)

  • 只亮底部 2 个色块(物理层 + 数据链路层)
  • 只看帧头中的 MAC 地址,查转发表决定从哪个端口发出
  • 帧头帧尾不变——它不拆 IP 头,也不改 MAC

路由器(第 3 层设备)

  • 亮底部 3 个色块(到网络层)
  • 拆到 IP 层,读取目的 IP,查路由表
  • 重点来了:路由器会替换帧头——
    • 新源 MAC = 路由器出接口的 MAC
    • 新目的 MAC = 下一跳(主机 B)的 MAC
    • IP 地址完全不变!

右侧面板会用红色高亮强调:IP 地址不变,只有 MAC 地址被替换!

这是 408 的经典考点,几乎每年都以某种形式出现。

主机 B 解封装

到达主机 B 后,开始从下到上"脱衣服":

步骤动作剥掉什么
1物理层还原比特流 → 帧
2链路层处理剥帧头帧尾,检查 FCS
3网络层处理剥 IP 头,确认目的 IP 是自己
4传输层处理剥 TCP 头,按端口号交给应用
5应用层收到还原出原始数据 "Hello"

考研真题演练

题目 1(概念辨析)

下列关于计算机网络体系结构的说法,正确的是: A. 协议是垂直方向相邻层之间的通信规则 B. 数据链路层的 PDU 称为分组 C. 路由器工作在网络层,转发时会更换帧头但不改变 IP 地址 D. 交换机能看到 IP 头部并据此转发

答案:C

  • A 错:协议是水平方向对等层之间的规则(在场景一的右侧面板可以看到)
  • B 错:链路层 PDU 是帧 (Frame),网络层才是分组/IP数据报 (Packet)
  • C 对:在场景三你亲眼看到了路由器替换帧头、IP 不变的过程
  • D 错:交换机只工作到第 2 层,看的是 MAC 地址

题目 2(封装过程)

主机 A 向主机 B 发送数据,中间经过一个路由器。在数据传输过程中,以下哪一项在整个传输过程中保持不变? A. 源 MAC 地址 B. 目的 MAC 地址 C. 源 IP 地址 D. 以上都不是

答案:C

经过路由器时,源 MAC 和目的 MAC 都会被替换为路由器接口的 MAC 和下一跳的 MAC。但 IP 地址从发送方到接收方始终不变——这是网络层端到端通信的基本保证。

在场景三的第 7 步(路由器替换帧头),你可以清楚地看到 MAC 地址变了而 IP 地址没变。

一句话总结

封装是穿衣服,解封装是脱衣服,中间设备只解到自己能看懂的那一层。

记住这句话,再回去做真题,五层模型相关的选择题基本不会丢分。