🌐 OSI 七层模型一口气全啃完!从“寄快递”到“抓包”,包你会!

141 阅读3分钟

被问 OSI 只会背“应表会传网数物”?
今天用一个快递故事+一张图+一行代码带你逐层拆机,看完再也不怕“请从下往上说说每层作用”👇

微信图片_20251014151033_10_20.jpg

1️⃣ 先放口诀(背住!)

“应表会传网数物”
“All People Seem To Need Data Processing”
从上到下 7→1,面试倒着也能说!💡


2️⃣ 快递栗子🚚 → OSI 对照表

OSI 层快递剧情设备/协议关键字段
7 应用层你写“hello”小纸条HTTP、FTP、SMTP、DNSURL、状态码
6 表示层压缩+加密,防偷看TLS、JPEG、UTF-8Content-Encoding
5 会话层先握手建立“会话”NetBIOS、SQL 会话Session ID
4 传输层贴端口“房间号”TCP/UDP源/目端口、Seq/Ack
3 网络层贴收件人 IP 地址路由器、IP、ICMP源/目 IP、TTL
2 数据链路层贴 MAC 手机尾号交换机、以太网源/目 MAC、FCS
1 物理层卡车/飞机/光缆集线器、网线、光纤电压、光强度、频率

3️⃣ 逐层秀操作(含抓包截图位)

7 应用层 —— curl 一句话

curl -I https://juejin.cn

👆 这就是纯应用层流量,HTTP/HTTPS 在此。

6 表示层 —— 加密一目了然

openssl s_client -connect juejin.cn:443

返回 TLS 1.3 握手,压缩算法、证书都在这层。

5 会话层 —— 远程桌面🖥️

mstsc → 先建立会话,断网重连还能继续,靠 Session ID 找回状态。

4 传输层 —— 端口=房间号🏠

nc -zv 8.8.8.8 53

UDP 53 查询 DNS,TCP 80/443 网页数据,Seq/Ack 保证顺序。

3 网络层 —— 路由器“导航”🧭

 traceroute juejin.cn

每跳一次 TTL-1,就是网络层在干活。

2 数据链路层 —— 交换机“查户口”🪪

arp -a

IP→MAC 映射,MAC 表决定帧往哪口扔。

1 物理层 —— 灯亮≠通🌟

测线仪一亮,只能证明 1 2 3 6 通;光功率计看 dB,< -25 dBm 才算及格。


4️⃣ 封装 & 解封装动画(文字版)

发送端 ↓ 封装
数据 → Segment → Packet → Frame → Bit(电压/光)

接收端 ↑ 解封装
Bit → Frame → Packet → Segment → 数据

每层剥掉自己那一圈“快递单”,最后露出原始纸条。


5️⃣ 面试高频 3 连击 & 秒答模板

  1. “每层分别干啥?”
    “应表会传网数物,压缩/端口/IP/MAC/光电” 顺口溜背完再解释。
  2. “为什么 7 层比 4 层细?”
    “TCP/IP 把表示+会话并到应用,但教学/排障用 7 层更清楚。”
  3. “抓包怎么看对应层?”
    “Frame→链路,IP→网络,TCP/UDP→传输,HTTP→应用” 直接指 Wireshark 面板。

6️⃣ Wireshark 实战:手把手找每层👇

打开软件,随便抓个网页:

Frame 14: 54 bytes on wire (432 bits)       1 物理+2 链路
Ethernet II, Src: aa:bb:cc:dd:ee:ff       2 数据链路
Internet Protocol Version 4, Src: 192.168.1.2  3 网络
Transmission Control Protocol, Src Port: 443   4 传输
Hypertext Transfer Protocol                   7 应用

表示+会话 被合并,所以面板里没单独行,但 TLS 握手里能看到 Session ID。


7️⃣ 一张思维导图(文字大纲)

OSI 7 层
├─ 7 应用层   : HTTP/FTP/DNS
├─ 6 表示层   : TLS/JPEG/UTF-8
├─ 5 会话层   : NetBIOS/SQL session
├─ 4 传输层   : TCP/UDP 端口
├─ 3 网络层   : IP/ICMP 路由器
├─ 2 数据链路: Ethernet 交换机
└─ 1 物理层   : 电缆/光纤/集线器

🎯 总结口诀(背它!)

“应表会传网数物”
“从上到下套娃,从下到上拆家”
每层都贴自己的标签,**排障先问“哪一层掉链子”**🔍

微信图片_20251115140928_11_20.jpg