HTTPS 中 SSL 的 OSI 层位置

SSL/TLS 在 OSI 七层模型中的位置及原因

问题

HTTPS 相比 HTTP 多了一层 SSL/TLS,这一层在 OSI 七层模型中处于什么位置?

解答

OSI 七层模型回顾

第7层:应用层      ← HTTP
第6层:表示层      ← SSL/TLS(加密/解密)
第5层:会话层      ← SSL/TLS(握手/会话管理)
第4层:传输层      ← TCP
第3层:网络层      ← IP
第2层:数据链路层
第1层:物理层

SSL/TLS 的位置

SSL/TLS 位于传输层(TCP)之上、应用层(HTTP)之下,在 OSI 模型中跨越第 5 层(会话层)和第 6 层(表示层)

具体来说:

功能对应层
数据加密/解密表示层(第6层)
握手协议、会话管理会话层(第5层)

为什么在这个位置

┌─────────────────┐
│   HTTP 请求     │  应用层
├─────────────────┤
│   SSL/TLS       │  表示层 + 会话层
│  (加密 + 握手)   │
├─────────────────┤
│     TCP         │  传输层
├─────────────────┤
│     IP          │  网络层
└─────────────────┘
  1. 对上层透明:HTTP 不需要修改,直接把数据交给 SSL/TLS 处理
  2. 依赖可靠传输:SSL/TLS 需要 TCP 提供可靠的字节流
  3. 职责分离:加密逻辑独立于应用协议和传输协议

TCP/IP 四层模型中的位置

在实际的 TCP/IP 四层模型中,SSL/TLS 通常被归类为应用层的一部分,因为它运行在用户空间,由应用程序调用:

应用层:HTTP + SSL/TLS
传输层:TCP
网络层:IP
网络接口层:以太网等

关键点

  • SSL/TLS 位于传输层和应用层之间,OSI 模型中对应第 5-6 层
  • 表示层负责加密解密,会话层负责握手和会话管理
  • 在 TCP/IP 模型中,SSL/TLS 通常归为应用层
  • HTTPS = HTTP + SSL/TLS,端口从 80 变为 443
  • SSL 已废弃,现在实际使用的是 TLS(但习惯上仍称 SSL)