← 全部笔记/我的笔记 2026-10-20 · 约 4 分钟

OSI 七层模型

更新于 2026-10-20 · 约 1624 字 · 阅读 4 分钟

打开练习题(折叠答案)→
本文目录

一句话总结:OSI 是“网络分工说明书”——每一层只干一件事,上层不用关心下层怎么干。 口诀(自下而上):物、链、网、传、会、表、应。

一、为什么需要分层

  • 解耦:换网线(物理层)不影响浏览器(应用层)。
  • 标准化:不同厂商的设备能互通。
  • 好排错:出问题先定位在哪一层,再查具体协议。

二、七层职责一览

层 名称 数据单元(PDU) 核心职责 典型协议 典型设备
7 应用层 Application 数据 Data 为用户程序提供网络服务 HTTP、DNS、FTP、SMTP、SSH、DHCP 服务器、客户端软件
6 表示层 Presentation 数据 Data 编码转换、加密解密、压缩 TLS/SSL、ASCII、JPEG、MPEG —
5 会话层 Session 数据 Data 建立、管理、终止会话 RPC、NetBIOS、SIP —
4 传输层 Transport 段 Segment 端到端传输、端口寻址、可靠/不可靠 TCP、UDP 防火墙(L4)
3 网络层 Network 包 Packet 逻辑寻址(IP)、路由选择、跨网段转发 IP、ICMP、ARP*、OSPF 路由器、三层交换机
2 数据链路层 Data Link 帧 Frame 成帧、MAC 寻址、差错检测、介质访问控制 以太网、PPP、VLAN、STP 交换机、网桥、网卡
1 物理层 Physical 比特 Bit 电信号/光信号、编码、接口、速率 RJ45、光纤、802.11 物理层 集线器、中继器、网线

*ARP 通常被归到网络层或“L2.5”,见第四节。

三、封装与解封装

发送方从上往下加头,接收方从下往上拆头:

应用数据
  └─ + TCP 头(源端口/目的端口/序号)      → 段 Segment
       └─ + IP 头(源IP/目的IP/TTL)        → 包 Packet
            └─ + 以太网头(源MAC/目的MAC)+ FCS → 帧 Frame
                 └─ 转成 0/1 电信号或光信号     → 比特 Bit

每层只看自己那层的头,像拆快递:快递员只看面单(L2),分拣中心只看城市(L3),收件人才看里面是什么(L7)。

四、协议归属:重点说清 ARP

协议 主要工作层次 核心作用
以太网 Ethernet 数据链路层 L2,同时包含物理层 L1 规范 用 MAC 地址在本地链路传帧、成帧、CRC 校验
IP 网络层 L3 用 IP 地址逻辑寻址、路由、跨网段转发
ARP L2 和 L3 之间,常被归为网络层或“L2.5” 把 IP 地址解析成 MAC 地址

严格说,OSI 七层是理论模型,ARP 并不完全对应某一层。更准确的说法是:

ARP 为网络层 IP 服务,但它的报文封装在数据链路层的以太网帧里传输。

  • ARP 请求是广播(FF:FF:FF:FF:FF:FF),响应是单播。
  • 以太网类型字段 0x0806 表示 ARP。
  • 结果缓存在 ARP 表里:ip neigh(旧命令 arp -a),默认几分钟过期。
“谁知道 192.168.1.20?请告诉 192.168.1.10。”   ← ARP 请求(广播)
“192.168.1.20 的 MAC 是 xx:xx:...,告诉 192.168.1.10。” ← ARP 响应(单播)

以太网在二层搬帧,IP 在三层找路,ARP 在二三层之间翻译地址。 三者配合,IP 数据才能真正发到网线上。

五、OSI 与 TCP/IP 四层模型的对应

TCP/IP 四层 对应 OSI
应用层 应用层 + 表示层 + 会话层
传输层 传输层
网络层(网际层) 网络层
网络接口层(链路层) 数据链路层 + 物理层

实际抓包时看到的层次就是 TCP/IP 的划分,OSI 更多用于教学和描述设备/协议。

六、一次网页访问的分层全景

访问 https://www.baidu.com,在真正发出 HTTP 请求之前,底层已经跑了好几趟:

步骤 层次 发生了什么
1 应用层 浏览器查缓存、hosts,向 DNS 查 www.baidu.com 的 IP
2 传输层 DNS 默认走 UDP/53;拿到 IP 后 TCP 三次握手建连接
3 网络层 判断目的 IP 是否同网段;不同则发给网关(查路由表)
4 链路层 用 ARP 把网关 IP 解析成 MAC,封装成以太网帧
5 物理层 变成电信号/光信号发出去
6 应用层 连接建好后发 HTTP 请求;HTTPS 还要先做 TLS 握手

正式通信前,网络已经在底层来回跑了好几趟了:ARP、DNS、TCP 握手、TLS 握手,缺一不可。

七、常见误区

误区 正确理解
交换机是三层设备 普通交换机工作在 L2,靠 MAC 转发;三层交换机才有路由功能
路由器只看 IP 路由器会拆到 L3 看 IP,但转发时要重新封装 L2 帧,所以也关心 MAC
ARP 是三层协议 它解决 L3 到 L2 的映射,报文在 L2 传输,归为 L2.5 更准确
集线器和交换机一样 集线器是 L1,所有端口共享带宽、共享冲突域;交换机是 L2,每端口独立
分层是真实存在的 分层是逻辑模型,实际协议栈是连续封装,没有物理上的“层”

速查表

7 应用层   HTTP DNS FTP SMTP SSH DHCP        PDU: 数据
6 表示层   TLS/SSL 编码 压缩 加密
5 会话层   RPC 会话管理
4 传输层   TCP UDP       端口            PDU: 段
3 网络层   IP ICMP ARP*  逻辑地址 路由    PDU: 包
2 链路层   以太网 VLAN STP  MAC 成帧     PDU: 帧
1 物理层   电信号 光信号 接口 速率        PDU: 比特
设备 工作层 依据
集线器、中继器 L1 只放大信号
交换机、网桥 L2 MAC 地址表
路由器、三层交换机 L3 路由表
防火墙 L3/L4,应用防火墙到 L7 五元组 / 应用内容

练习(12 题)

  1. 从下到上写出 OSI 七层的名称。
  2. 传输层的数据单元叫什么?网络层呢?
  3. 端到端通信、端口寻址是哪一层的职责?
  4. 逻辑寻址和路由选择是哪一层?
  5. 集线器、交换机、路由器分别工作在哪一层?
  6. 以太网协议主要属于哪一层?它还包含哪一层的规范?
  7. ARP 的作用是什么?请求和响应分别是广播还是单播?
  8. 为什么说 ARP 不完全属于网络层?
  9. TCP/IP 四层模型和 OSI 七层怎么对应?
  10. 把“发送 HTTP 请求”的封装过程按从上层到下层写出来。
  11. HTTPS 的加密发生在哪一层(或哪两层之间)?
  12. 访问一个网站,在发出 HTTP 请求前,底层通常已经完成了哪些交互?

答案与解析

1.

物理层、数据链路层、网络层、传输层、会话层、表示层、应用层(物链网传会表应)。

2.

传输层是段(Segment),网络层是包(Packet);链路层是帧,物理层是比特。

3.

传输层,用端口号区分同一台主机上的不同应用,并提供端到端(进程到进程)的传输。

4.

网络层,靠 IP 地址做逻辑寻址,靠路由表决定下一跳。

5.

集线器 L1(只放大信号)、交换机 L2(看 MAC 转发)、路由器 L3(看 IP 路由)。

6.

主要是数据链路层 L2(成帧、MAC、CRC),它的物理介质、编码、速率部分对应物理层 L1。

7.

已知 IP 求 MAC:请求是广播,响应是单播。

8.

它解决的是 L3 地址到 L2 地址的映射,但报文封装在以太网帧中传输(类型 0x0806),所以通常称为 L2.5,或“为网络层服务的链路层协议”。

9.

应用层 = OSI 的应用 + 表示 + 会话;传输层 = 传输层;网络层 = 网络层;网络接口层 = 数据链路 + 物理。

10.

应用数据 → 加 TCP 头成段 → 加 IP 头成包 → 加以太网头尾成帧 → 转成比特在线路上传输。

11.

TLS/SSL 工作在表示层(OSI)或应用层与传输层之间(TCP/IP 视角),为 HTTP 提供加密。

12.

DNS 解析、ARP 解析网关 MAC、TCP 三次握手(HTTPS 还有 TLS 握手),之后才发 HTTP 请求。

我的笔记 · 生成于 2026-10-26 00:46