OSI七层模型与TCP/IP四层模型简介
- OSI 七层模型:一种用于理论和教学的网络分层模型,把网络通信过程细分为 7 个功能层,用于解释通信“做了什么”。
- TCP/IP 四层模型:一种用于实际互联网运行的网络分层模型,把通信过程抽象为 4 层,用于描述网络“实际上怎么跑”。

一、OSI 七层模型(理论模型)

OSI(Open Systems Interconnection)模型由 ISO 提出,偏重教学与理论,将网络通信过程划分得非常细致。
ISO 的全称是:
International Organization for Standardization国际标准化组织
✅ 负责制定国际通用标准(如 OSI 模型、ISO 9001、ISO 27001 等) ✅ 成立于 1947 年 ✅ 总部位于 瑞士日内瓦
七层结构(自上而下)
|
层级 |
名称 |
主要功能 |
常见示例 |
|
7 |
应用层 |
为用户提供网络服务 |
HTTP、FTP、SMTP、DNS |
|
6 |
表示层 |
数据格式转换、加密解密、压缩 |
SSL/TLS、编码格式 |
|
5 |
会话层 |
建立、管理、终止会话 |
会话控制、断点恢复 |
|
4 |
传输层 |
端到端传输、可靠性、流控 |
TCP、UDP |
|
3 |
网络层 |
逻辑寻址、路由选择 |
IP、ICMP |
|
2 |
数据链路层 |
成帧、MAC 寻址、差错检测 |
Ethernet、ARP |
|
1 |
物理层 |
比特流传输、接口与电气特性 |
网线、光纤 |
✅ 记忆口诀(常见)
应用 表示 会话 传输 网络 链路 物理
二、TCP/IP 四层模型(实践模型)

TCP/IP 模型来源于互联网实际实现,偏重工程与实用,是当前网络的事实标准。
四层结构
|
层级 |
名称 |
主要功能 |
协议示例 |
|
4 |
应用层 |
提供应用通信服务 |
HTTP、FTP、DNS、SMTP |
|
3 |
传输层 |
端到端通信 |
TCP、UDP |
|
2 |
网际层 |
IP 寻址与路由 |
IP、ICMP |
|
1 |
网络接口层 |
物理 + 数据链路 |
Ethernet、ARP |
三、OSI 与 TCP/IP 对应关系

|
OSI 七层 |
TCP/IP 四层 |
|
应用层 |
✅ 应用层 |
|
表示层 |
✅ 应用层 |
|
会话层 |
✅ 应用层 |
|
传输层 |
✅ 传输层 |
|
网络层 |
✅ 网际层 |
|
数据链路层 |
✅ 网络接口层 |
|
物理层 |
✅ 网络接口层 |
一句话总结:
TCP/IP 把 OSI 的上三层合并为应用层,下两层合并为网络接口层。
四、核心区别对比
|
对比项 |
OSI 模型 |
TCP/IP 模型 |
|
层数 |
7 层 |
4 层 |
|
定位 |
理论模型 |
工程实现 |
|
提出者 |
ISO |
DARPA |
|
使用情况 |
教学、考试 |
实际网络 |
|
是否强制 |
否 |
是(互联网标准) |
五、快速理解示例(访问网页)
访问 https://example.com 的过程:
- 应用层:HTTP 发送请求
- 传输层:TCP 建立连接(三次握手)
- 网络层:IP 选择路由
- 数据链路层:封装成以太网帧
- 物理层:通过网线/光纤发送比特流
六、一句话速记
- OSI:讲清“通信做了哪些事”
- TCP/IP:关心“互联网实际上怎么跑”
- 现实工作 = TCP/IP
- 考试/理论 = OSI
七、数据传输封装与解封装
在OSI七层模型中,数据的传输过程分为封装(Encapsulation)与解封装(Decapsulation)两个方向。
封装发生在发送端,从应用层到物理层,逐层“打包”数据。
解封装发生在接收端,从物理层到应用层,逐层“拆包”还原数据。

封装过程(发送端,自上而下)
|
OSI层级 |
数据单元名称 |
封装内容(添加的信息) |
作用 |
|
应用层(7) |
数据(Data) |
用户数据本身 |
提供用户接口(如HTTP、FTP) |
|
表示层(6) |
数据(Data) |
数据格式、加密、压缩等 |
确保接收方能正确解析数据 |
|
会话层(5) |
数据(Data) |
会话控制信息(如会话ID) |
建立、管理、终止会话 |
|
传输层(4) |
数据段(Segment) |
端口号、序列号、校验和等 |
实现端到端通信(TCP/UDP) |
|
网络层(3) |
数据包(Packet) |
源/目的IP地址、TTL、协议类型等 |
路由选择与逻辑寻址 |
|
数据链路层(2) |
数据帧(Frame) |
源/目的MAC地址、帧校验序列(FCS) |
局域网内物理寻址与差错检测 |
|
物理层(1) |
比特流(Bits) |
无额外封装,仅转换为电/光信号 |
在物理介质上传输比特流 |

解封装过程(接收端,自下而上)
每一层只读取自己“认识”的控制信息,剥离头部(或尾部)后,将数据交给上一层:
- 物理层:接收比特流,转换为帧 → 交给数据链路层
- 数据链路层:检查MAC地址与FCS,剥离帧头帧尾 → 提取出IP包 → 交给网络层
- 网络层:检查IP地址,剥离IP头 → 提取出TCP/UDP段 → 交给传输层
- 传输层:根据端口号识别应用进程,剥离传输头 → 提取出会话数据 → 交给会话层
- 会话层:处理会话控制信息,剥离会话头 → 交给表示层
- 表示层:解密、解压缩、格式转换 → 交给应用层
- 应用层:最终呈现给用户或应用程序

类比理解(信封比喻)
就像写信时,每过一层就套一个新信封:
- 应用层:信纸(原始数据)
- 传输层:信封上写“端口号码”
- 网络层:再套一层,写“IP地址”
- 数据链路层:再套一层,写“MAC地址”
- 物理层:把整封信变成“电波”寄出去
接收方逐层拆开信封,直到看到最初的信纸。

总结一句话
封装是“层层加壳”,解封装是“层层剥壳”,每一层只关心自己那一层的“信封”信息。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)