入门
基于 HTTP 现代标准 · 核于 2026-06
速查
- 分层 = 分而治之:把网络通信切成职责单一、可独立演进的层;下层为上层提供服务,对等层间用协议通信
- OSI 七层(参考模型,自下而上):物理 → 数据链路 → 网络 → 传输 → 会话 → 表示 → 应用
- TCP/IP 四层(事实标准):网络接口 → 网际(IP)→ 传输(TCP/UDP)→ 应用
- 五层教学模型 = TCP/IP 把「网络接口层」拆成物理层 + 数据链路层
- 映射:OSI 应用+表示+会话(7/6/5) → TCP/IP 应用层;OSI 物理+数据链路(1/2) → TCP/IP 网络接口层
- PDU 名称(自顶向下):数据 → 段 segment(TCP)/数据报 datagram(UDP) → 包 packet → 帧 frame → 比特 bit
- 封装:发送方自顶向下逐层加首部;解封装:接收方自底向上逐层剥首部(严格镜像)
- 协议归层:HTTP/DNS/WebSocket 应用层、TCP/UDP 传输层、IP/ICMP 网络层、Ethernet/ARP 链路层
- 设备归层:集线器 hub(物理层)、交换机 switch(数据链路层)、路由器 router(网络层)
- 端到端规律:MAC 逐跳重写、IP 端到端不变;交换机看 MAC、路由器拆 IP 逐跳转发
- OSI 是「参考模型」非实际实现;现代互联网实际跑 TCP/IP
两套模型,一张全景
理解网络分层,先记住「两套模型对应同一现实」:
| OSI 七层 | TCP/IP 四层 | 典型协议 | 数据单元 |
|---|---|---|---|
| 应用 / 表示 / 会话 | 应用层 | HTTP / DNS / TLS | 数据 |
| 传输 | 传输层 | TCP / UDP | 段 / 数据报 |
| 网络 | 网际层 | IP / ICMP | 包 |
| 数据链路 / 物理 | 网络接口层 | Ethernet / Wi-Fi | 帧 / 比特 |
OSI 把上三层(应用/表示/会话)细分,是因为理论上职责不同;但实际中一个 HTTP 协议就同时干了会话(Keep-Alive)、表示(内容编码)的活,所以 TCP/IP 干脆合并为「应用层」——这就是「理论七层、实战四层」的由来。
服务竖着走,协议横着走
服务/接口是纵向的:下层给上层提供能力(如传输层给应用层提供「可靠字节流」)。协议是横向的:通信双方的对等层之间按规则对话(如两端 TCP 之间的握手)。这是分层最容易混淆、也最关键的一组概念。
数据怎么穿过这些层
发送方把数据自顶向下封装:HTTP 报文加上 TCP 首部成「段」,再加 IP 首部成「包」,再加以太网帧头帧尾成「帧」,最后变成比特上线路。接收方自底向上解封装,逐层剥掉首部,还原出 HTTP 报文。每一层只关心自己的首部——这正是分层「关注点分离」的威力。
下面各页逐一展开:先看 为什么要分层。