Skip to content

OSI 七层模型是什么? ​

  • 标签:网络

🏛 业务架构师 ​

OSI 七层从下到上:物理层(比特传输)→ 数据链路层(帧、MAC 寻址)→ 网络层(IP 包、路由)→ 传输层(TCP/UDP 端到端)→ 会话层(会话管理)→ 表示层(编码、加解密)→ 应用层(HTTP/FTP 业务协议)。

它是 ISO 的理论参考模型,实际互联网跑的是 TCP/IP 四层——OSI 的会话/表示层在现实中被压缩进了应用层(TLS 做了表示层的活,HTTP 里管会话)。

业务视角我讲它的两个真实价值:

  • 沟通的共同语言:跨团队、跨公司对接时的定位语言。"问题在二层的 ARP"“这是四层的连接超时”“七层负载均衡(按 HTTP 路径转发)vs 四层负载均衡(按 IP+端口转发)"——没有这套词汇,技术对话的成本会翻倍。LB 选型就是典型:四层 LB(LVS)性能高不懂业务,七层 LB(Nginx/网关)能按路径、header、cookie 做业务路由,选哪层取决于你要不要在转发时做业务决策(灰度、染色、多租户);
  • 排障的分层地图:物理(换线换口)→ 链路(交换机 ARP)→ 网络(路由、防火墙)→ 传输(端口、连接数)→ 应用(状态码、超时配置)。每层有专属工具(ping/telnet/curl/抓包),按层走一遍,模糊故障变明确归属。

一句话:OSI 七层是不会直接运行的地图,但地图的价值不是跑在路面上,而是让所有人用同一套坐标描述位置。面试考它是考"你有没有这张地图"。

🏗 系统架构师 ​

OSI 七层是 ISO 提出的理论参考模型,从下到上:

  1. 物理层:比特流传输,网线光纤、电平信号、网卡;
  2. 数据链路层:帧、MAC 寻址、差错检测,以太网、交换机;
  3. 网络层:包、IP 寻址与路由,IP/ICMP、路由器;
  4. 传输层:端到端可靠传输,TCP/UDP、端口;
  5. 会话层:建立管理终止会话(认证、续传);
  6. 表示层:数据格式转换、加解密、压缩(可对应 TLS 的一部分职能);
  7. 应用层:HTTP、FTP、DNS、SMTP。

怎么记:物理链路网传会表应(逐层首字母)。

我的架构视角:OSI 的价值不在被实现(实际上没人严格七层实现),而在给了行业讨论与设计分层的通用语言——说"这是 L4/L7 负载均衡"所有人立刻知道语义:L4 基于 IP+端口转发(性能高、无感知),L7 解析 HTTP 按内容路由(能力丰富、代价高)。实际协议栈都是四层(TCP/IP 模型)或五层(教学折中),会话/表示被揉进应用层。设计复杂系统时我沿用同样的思路:先定义分层契约再谈实现,层与层之间只依赖抽象,这是隔离变化的基本功。

💻 全栈开发专家 ​

七层从下往上 + 我给每层配一个"工程联想"(比死背强):

  1. 物理层:比特流传输(网线、光纤、电压)。
  2. 数据链路层:帧、MAC 地址、交换机转发——ARP 在这附近,排查网关冲突用。
  3. 网络层:IP 寻址路由、分包——ping(ICMP)、traceroute、路由器。
  4. 传输层:端到端,端口 + TCP/UDP——ss -tlnp 看端口、三次握手在这层。
  5. 会话层:建立/管理会话(理论层,实际被应用协议吸收)。
  6. 表示层:编码、加密、压缩——TLS 加密在工程上放这理解。
  7. 应用层:HTTP/FTP/SMTP/DNS。

记忆法:物理数网传会表应(首字:物、数、网、传、会、表、应)。

面试必备的横向认知:OSI 是理论参考模型,工程界实际用 TCP/IP 四层(应用层吸收了会话/表示)。两者的价值分工:OSI 用于教学和讨论("这问题在第几层"),TCP/IP 对应真实协议栈。

实战联想:curl 报错分层排查——DNS 解析失败(应用/网络层)→ connection refused(传输层没监听)→ timeout(安全组/路由)→ TLS 错误(表示层)→ 404(应用逻辑)。能把故障归到层,排查就系统化了。