OSI 七层模型详解

Open Systems Interconnection Reference Model — 开放系统互连参考模型

1. 什么是 OSI 七层模型

OSI(Open Systems Interconnection,开放系统互连)七层模型 是国际标准化组织(ISO)于 1984 年发布的一套概念框架,用于将网络通信划分为七个逻辑层次。每一层都有明确的职责,并向其上一层提供服务,同时依赖下一层提供的功能。

该模型的核心思想是分层抽象:把复杂的网络通信问题拆解成若干更小、更易管理的子问题。开发人员只需关注自己所在层的功能,而无需理解底层的全部细节——例如,编写一个 Web 应用时,你操作的是 HTTP(应用层),而不需要知道数据是如何通过光纤以电压脉冲的形式传输的。

💡 关键认知: OSI 是一个参考模型,而非一个具体的协议标准。它描述的是"应该怎么做"的理想框架。现实世界中,TCP/IP 协议族才是互联网事实上的标准,但 OSI 模型的分层思想至今仍是理解网络通信最重要的教学与诊断工具。

2. 历史背景与制定机构

20 世纪 70 年代末至 80 年代初,计算机网络领域百花齐放——IBM 的 SNA、DEC 的 DECnet、Xerox 的 XNS 等私有协议各自为政,不同厂商的设备几乎无法互通。为了打破这种"巴别塔"困境,国际标准化组织(ISO)联合 国际电信联盟电信标准分局(ITU-T,当时称 CCITT)启动了 OSI 项目。

时间 里程碑
1977 ISO 成立 TC97/SC16 技术委员会,正式启动 OSI 项目
1979 初步确定七层架构
1984 ISO 7498 标准发布,OSI 参考模型正式确立
1994 ISO 7498-1 修订版发布

3. 七层总览

从用户最近(顶层)到物理介质最近(底层)排列:

7
应用层 Application
为应用进程提供网络服务接口 HTTP · FTP · SMTP · DNS · SSH · Telnet
6
表示层 Presentation
数据格式转换、加解密、压缩 TLS/SSL · JPEG · ASCII · UTF-8 · MPEG
5
会话层 Session
建立、管理、终止会话 NetBIOS · RPC · PPTP · SOCKS
4
传输层 Transport
端到端可靠传输、流量控制、差错校验 TCP · UDP · SCTP · QUIC
3
网络层 Network
逻辑寻址与路由选择 IP · ICMP · OSPF · BGP · IPSec
2
数据链路层 Data Link
相邻节点间的可靠帧传输 Ethernet · Wi-Fi · PPP · MAC · VLAN
1
物理层 Physical
比特流的物理传输 RJ45 · 光纤 · 无线电 · RS-232 · USB

▲ 点击每一层可跳转到详细说明

4. 第七层 — 应用层 Application Layer

📌 一句话概括

应用层是离用户最近的一层——它不包含"应用程序"本身,而是定义了应用程序如何访问网络服务的接口和协议。

核心职责

常见协议与实例

协议/技术 全称 用途 默认端口
HTTP / HTTPSHyperText Transfer Protocol (Secure)Web 浏览、REST API80 / 443
FTPFile Transfer Protocol文件传输20, 21
SMTPSimple Mail Transfer Protocol发送邮件25 / 587
POP3 / IMAPPost Office Protocol v3 / Internet Message Access Protocol接收邮件110 / 143
DNSDomain Name System域名 → IP 解析53
SSHSecure Shell安全远程登录22
DHCPDynamic Host Configuration Protocol动态分配 IP 地址67, 68
⚠️ 常见误区: Chrome、Outlook、Zoom 这些应用程序本身不属于 OSI 第七层。第七层指的是这些程序使用的协议(如 HTTP、SMTP)以及它们与网络栈交互的方式。应用程序是 OSI 模型之外的使用者。

5. 第六层 — 表示层 Presentation Layer

📌 一句话概括

表示层充当翻译官——确保一台机器发送的数据能被另一台正确理解,处理编码转换、加密和压缩。

核心职责

典型实例

类型示例说明
字符编码UTF-8, ASCII, Unicode确保文本在不同系统间正确显示
加密协议TLS 1.3 / SSLHTTPS 的安全基础
媒体编码JPEG, PNG, H.264, MP3, AAC图像/音视频压缩与解压
数据序列化JSON, XML, ASN.1, Protocol Buffers结构化数据的跨平台表示
💡 值得注意: 在 TCP/IP 模型中,表示层的功能被合并到了应用层。这也是为什么浏览器可以直接处理 TLS 握手——在 OSI 的纯理论框架中这些本应属于第六层。

6. 第五层 — 会话层 Session Layer

📌 一句话概括

会话层负责对话控制——在两台机器之间建立、维护、同步和拆除会话。

核心职责

常见协议

协议说明
NetBIOSWindows 网络中文件和打印机共享的会话管理
RPC(Remote Procedure Call)远程过程调用的会话维护
PPTPVPN 隧道协议中的会话层功能
SOCKS代理协议,包含会话协商
⚠️ 实际视角: 会话层是 OSI 模型中最模糊的一层。在 TCP/IP 模型中,会话管理通常由应用层直接处理(如 HTTP Cookie、Session Token),或由传输层的 TCP 三次握手/四次挥手完成部分会话功能。

7. 第四层 — 传输层 Transport Layer

📌 一句话概括

传输层提供端到端(End-to-End)的数据传输服务——它是 OSI 模型中第一个真正"端到端"的层,也是网络应用开发者打交道最多的一层。

核心职责

TCP vs UDP

特性TCPUDP
连接类型面向连接(三次握手)无连接
可靠性可靠——确认、重传、排序尽力而为,不保证送达
顺序保证✅ 有序交付❌ 可能乱序
速度较慢(开销大)快(头部仅 8 字节)
典型用途Web、邮件、文件传输、SSH视频流、VoIP、DNS、在线游戏
头部大小20–60 字节8 字节
数据单元Segment(段)Datagram(数据报)

常见端口分类

范围类别示例
0 – 1023知名端口(Well-Known)HTTP:80, HTTPS:443, SSH:22
1024 – 49151注册端口(Registered)MySQL:3306, Redis:6379, 代理:8080
49152 – 65535动态/私有端口客户端临时端口(Ephemeral)

8. 第三层 — 网络层 Network Layer

📌 一句话概括

网络层负责将数据包从源主机路由到目标主机——跨越多个网络(路由器/跳),通过逻辑地址(IP 地址)进行寻址。

核心职责

IPv4 与 IPv6

特性IPv4IPv6
地址长度32 位(4 字节)128 位(16 字节)
表示方式点分十进制:192.168.1.1冒号十六进制:2001:db8::1
地址数量约 43 亿约 3.4×10³⁸(几乎无限)
NAT 需求普遍需要原则上不需要
头部大小20–60 字节固定 40 字节
广播支持不支持(用组播替代)
IPSec可选内置支持

关键协议

协议说明
IP (Internet Protocol)核心协议——无连接、尽力而为的数据包投递
ICMP控制消息协议——ping、traceroute 依赖它
ARP地址解析协议——IP → MAC 地址映射
OSPF开放式最短路径优先——内部网关路由协议
BGP边界网关协议——互联网骨干路由
IPSecIP 层安全——VPN 加密

9. 第二层 — 数据链路层 Data Link Layer

📌 一句话概括

数据链路层负责相邻节点之间的可靠数据传输——将网络层的包封装成帧(Frame),通过物理地址(MAC 地址)在同一局域网内投递。

核心职责

子层划分

子层英文职责
逻辑链路控制 LLC (Logical Link Control) 向上层提供统一接口,处理流量控制和差错控制
介质访问控制 MAC (Media Access Control) 控制物理介质的访问,MAC 地址寻址

常见技术

技术标准典型速率
EthernetIEEE 802.310 Mbps – 400 Gbps
Wi-FiIEEE 802.11可达数 Gbps (Wi-Fi 6/7)
PPPRFC 1661拨号/DSL 封装
VLANIEEE 802.1Q虚拟局域网划分
ARPRFC 826IP → MAC 地址解析

10. 第一层 — 物理层 Physical Layer

📌 一句话概括

物理层是唯一实际传输信号的层——将比特流(0 和 1)转化为电信号、光信号或无线电波,在物理介质上传输。

核心职责

常见物理介质与接口

介质/接口类型典型距离典型速率
RJ45 (双绞线)铜缆≤ 100 m最高 40 Gbps (Cat8)
单模光纤光纤可达 80+ km100 Gbps+
多模光纤光纤≤ 550 m100 Gbps+
Wi-Fi 无线电无线室内 ~50 m可达数 Gbps
同轴电缆铜缆≤ 500 m有线电视/DOCSIS
RS-232串口≤ 15 m最高 115.2 kbps
USB串行总线≤ 5 m最高 40 Gbps (USB4)

常见编码方式

编码说明
NRZ / NRZI不归零编码,以太网早期使用
Manchester曼彻斯特编码,10BASE-T 以太网
4B/5B + MLT-3100BASE-TX 快速以太网
PAM-4 / PAM-16脉冲幅度调制,高带宽以太网和 DSL
OFDM正交频分复用,Wi-Fi / LTE / 5G

11. 封装与解封装过程

数据从发送方应用层向下传递时,每一层都会在原始数据前添加自己的头部(Header)——这个过程称为封装(Encapsulation)。第二层还会在尾部添加一个尾部(Trailer)(如 FCS 校验码)。到达接收方后,每一层剥离对应的头部/尾部——这称为解封装(Decapsulation)

发送方封装流程

应用层
Data
→ L7 + 应用层头部 → L4 + TCP 头部
→ Segment
→ L3 + IP 头部
→ Packet
→ L2 + 帧头 + 帧尾
→ Frame
→ L1 物理层
Bits

接收方解封装流程

物理层
Bits
→ L2 剥离帧头/帧尾
→ Packet
→ L3 剥离 IP 头部
→ Segment
→ L4 剥离 TCP 头部
→ Data
→ L7 应用层
Data

各层数据单元名称(PDU)

名称PDU 英文名
L7, L6, L5数据(Data)Data
L4 传输层段 / 数据报Segment (TCP) / Datagram (UDP)
L3 网络层数据包Packet
L2 数据链路层Frame
L1 物理层比特Bit

12. OSI vs TCP/IP 模型对比

互联网实际使用的是 TCP/IP 模型(也称 DoD 模型——由美国国防部资助开发)。它只有四层,但功能覆盖了 OSI 的全部七层:

OSI 七层TCP/IP 四层对应协议示例
L7 应用层 应用层
Application
HTTP, FTP, DNS, TLS, SSH, SMTP
L6 表示层
L5 会话层
L4 传输层 传输层
Transport
TCP, UDP, SCTP
L3 网络层 互联网层
Internet
IP, ICMP, ARP, OSPF, BGP
L2 数据链路层 网络接入层
Network Access
Ethernet, Wi-Fi, PPP, MAC
L1 物理层
💡 为什么 OSI 模型仍然重要?
尽管 TCP/IP 主导了实际部署,但 OSI 的七层划分更加精细,将表示层和会话层独立出来,使得网络工程师在排查故障时可以精确到更具体的层次——"这是表示层的编码问题,不是应用层的逻辑问题"。

OSI 模型是网络教育的通用语言。当工程师说"这是一个第三层问题",大家都能立即理解是路由/IP 层面的故障。

13. 真实网络中的对应关系

下表展示了 OSI 各层在真实网络设备、诊断工具和攻击类型中的体现:

OSI 层典型设备诊断工具常见攻击/威胁
L7 — 应用层 负载均衡器、WAF、API 网关 curl, Postman, 浏览器 DevTools SQL 注入、XSS、CSRF、DDoS (HTTP Flood)
L6 — 表示层 SSL/TLS 加速器 OpenSSL, Wireshark (TLS 解密) SSL 剥离、降级攻击 (POODLE)
L5 — 会话层 会话控制器 netstat, ss 会话劫持、重放攻击
L4 — 传输层 防火墙(状态检测)、四层负载均衡 netstat, tcpdump, Wireshark SYN Flood、端口扫描、TCP 劫持
L3 — 网络层 路由器、三层交换机 ping, traceroute, ip route IP 欺骗、Smurf 攻击、路由投毒
L2 — 数据链路层 交换机、网桥、AP arp, macof, Wireshark ARP 欺骗、MAC 泛洪、VLAN 跳跃
L1 — 物理层 中继器、集线器、光收发器 线缆测试仪、OTDR 线缆窃听、电磁干扰、物理破坏

14. 总结与记忆口诀

经典记忆口诀(自顶向下)

语言口诀对应
英文 All People Seem To Need Data Processing Application · Presentation · Session · Transport · Network · Data Link · Physical
英文(反向) Please Do Not Throw Sausage Pizza Away Physical · Data Link · Network · Transport · Session · Presentation · Application
中文 物数网传会表应 物理层 · 数据链路层 · 网络层 · 传输层 · 会话层 · 表示层 · 应用层

七层速查表

#名称核心问题数据单元地址类型关键协议
7应用层用户想做什么?DataHTTP, FTP, SMTP, DNS
6表示层数据长什么样?DataTLS, JPEG, UTF-8, JSON
5会话层如何保持对话?DataNetBIOS, RPC, SOCKS
4传输层如何可靠地送达?Segment端口号TCP, UDP
3网络层走哪条路?PacketIP 地址IP, ICMP, OSPF, BGP
2数据链路层邻居之间如何传?FrameMAC 地址Ethernet, Wi-Fi, ARP
1物理层用什么信号?BitRJ45, 光纤, 无线电
🎯 记住这一点就够了:
OSI 模型是对网络通信的分层抽象。从底层的物理信号到顶层的应用数据,每一层只关心自己的职责,并向上一层隐藏下层细节。这个思想不仅适用于网络——它是计算机科学中几乎所有复杂系统设计的基石:分而治之,层层抽象