基于本文回答

播面 播面

文图音视,全方位拆解八股文
0
评论

OSI 七层模型和 TCP/IP 四层(或五层)模型

知识点图片

这是一个非常经典的网络基础问题。理解这两个模型是掌握计算机网络核心概念的关键。

简单来说:OSI 模型是理论上的标准(教科书),而 TCP/IP 模型是实际应用的工业标准(互联网)。

下面我将详细对比并解析这两个模型。


一、 OSI 七层模型 (Open Systems Interconnection)

由国际标准化组织(ISO)制定,旨在将网络通信标准化。虽然它在实际应用中被 TCP/IP 击败,但它仍然是描述网络通信过程的最佳参考工具

记忆口诀(从下到上):物数网传会表应 (Physical, Data Link, Network, Transport, Session, Presentation, Application)

层级 名称 (中文/英文) 主要功能 数据单元 (PDU) 典型设备/协议
7 应用层 (Application) 为用户的应用程序提供网络服务接口。 数据 (Data) HTTP, FTP, SMTP, DNS
6 表示层 (Presentation) 数据格式转换、加密/解密、压缩/解压缩。 数据 (Data) JPEG, ASCII, SSL/TLS
5 会话层 (Session) 建立、管理和终止应用程序之间的会话。 数据 (Data) RPC, SQL, NFS
4 传输层 (Transport) 提供端到端的可靠或不可靠传输,进行流量控制和错误恢复。 段 (Segment) TCP, UDP
3 网络层 (Network) 逻辑寻址(IP地址)和路由选择(决定数据包怎么走)。 包 (Packet) 路由器, IP, ICMP
2 数据链路层 (Data Link) 物理寻址(MAC地址),错误检测,将比特组装成帧。 帧 (Frame) 交换机, 网卡, Ethernet
1 物理层 (Physical) 传输原始比特流(0和1),定义电压、接口、线缆标准。 比特 (Bit) 网线, 光纤, 集线器

二、 TCP/IP 模型 (4层 或 5层)

TCP/IP 是互联网的基础协议簇。它比 OSI 模型更早出现(由美国国防部 DoD 开发),更注重实用性。

关于 TCP/IP 是 4 层还是 5 层,学术界和工业界有不同的看法:

  • 标准 TCP/IP (4层): 严格遵循 RFC 标准,将物理层和数据链路层合并。
  • 折中/教学模型 (5层): 为了方便解释硬件和底层协议,通常将最底层拆开,形成 5 层结构(这也是《计算机网络:自顶向下方法》等教材采用的方式)。

1. TCP/IP 四层模型 (标准)

  1. 应用层 (Application Layer): 对应 OSI 的高三层(应用、表示、会话)。
  2. 传输层 (Transport Layer): 对应 OSI 的传输层。
  3. 网际层 (Internet Layer): 对应 OSI 的网络层。
  4. 网络接口层 (Network Interface Layer): 对应 OSI 的数据链路层和物理层。

2. TCP/IP 五层模型 (常用教学版)

这是为了融合 OSI 的分层清晰度和 TCP/IP 的实用性而产生的模型。

层级 名称 对应 OSI 层级 核心协议/功能
5 应用层 应用、表示、会话 HTTP, HTTPS, DNS, SSH
4 传输层 传输层 TCP (可靠), UDP (快速)
3 网络层 网络层 IP (IPv4/IPv6), ARP, OSPF
2 数据链路层 数据链路层 以太网 (Ethernet), Wi-Fi (802.11)
1 物理层 物理层 双绞线, 光纤, 电波

三、 OSI 与 TCP/IP 的映射对比图

这是理解两者关系最直观的方式:

plaintext
    OSI 七层模型                  TCP/IP 四层模型
+--------------------+          +--------------------+
| 7. 应用层           |          |                    |
+--------------------+          |                    |
| 6. 表示层           |--------->|   应用层            |
+--------------------+          |                    |
| 5. 会话层           |          |                    |
+--------------------+          +--------------------+
| 4. 传输层           |--------->|   传输层            |
+--------------------+          +--------------------+
| 3. 网络层           |--------->|   网际层 (Internet)|
+--------------------+          +--------------------+
| 2. 数据链路层       |          |                    |
+--------------------+--------->|   网络接口层        |
| 1. 物理层           |          | (Link Layer)       |
+--------------------+          +--------------------+

四、 核心概念:封装与解封装

数据在网络中传输时,就像寄快递一样,需要一层层打包和拆包。

  1. 封装 (Encapsulation - 发送方):

    • 数据从上往下流动。
    • 每一层都会给数据加上自己的头部 (Header)
    • 例如:应用数据 -> 加 TCP 头 (变数据段) -> 加 IP 头 (变数据包) -> 加 MAC 头和尾 (变数据帧) -> 转成比特流发送。
  2. 解封装 (Decapsulation - 接收方):

    • 数据从下往上流动。
    • 每一层读取并去掉对应的头部,将剩下的数据交给上一层。
    • 例如:收到比特流 -> 检查 MAC 地址并去掉 MAC 头 -> 检查 IP 地址并去掉 IP 头 -> 检查端口号并去掉 TCP 头 -> 得到原始数据。

五、 总结:为什么 TCP/IP 赢了?

  1. OSI 太复杂: OSI 模型分层过于细致(特别是会话层和表示层),导致协议实现复杂,效率较低。
  2. 落地时间: TCP/IP 在 OSI 标准制定完成之前就已经在 ARPANET(互联网前身)上稳定运行了。
  3. 市场选择: TCP/IP 是免费、开放的,且与 UNIX 系统结合紧密,迅速占领了市场。

一句话概括:
OSI 是我们理解网络通信逻辑的“字典”,而 TCP/IP 是构建互联网的“砖块”。

00:00
00:00