解析OSI 七层模型

🌐 一、OSI 七层模型(从下往上)

| 层级 | 名称 | 主要作用 | 协议示例 |

| ----- | ----- | -------------- | --------------------- |

| **7** | 应用层 | 为应用提供网络服务 | HTTP、FTP、DNS、SMTP |

| **6** | 表示层 | 数据格式、加密解密、压缩 | JPEG、MP3、TLS(部分) |

| **5** | 会话层 | 管理会话、维持连接 | RPC、NetBIOS |

| **4** | 传输层 | 可靠/不可靠传输 | TCP、UDP |

| **3** | 网络层 | 寻址、路由 | IP、ICMP、ARP |

| **2** | 数据链路层 | 组帧、MAC 地址、错误检测 | Ethernet、PPP、WIFI MAC |

| **1** | 物理层 | 0/1 电信号传输 | RJ45、电缆、光纤、PHY |

🔌 二、重点:物理层(Layer 1)

物理层 = 电信号层面

作用:

  • 负责比特(0 和 1)的电气传输

  • 规定电压、频率、光信号、接口(RJ45、光纤)、编码方式(如曼彻斯特编码)

  • 不懂什么是 IP,也不懂 MAC,更不懂地址

  • 只负责"把比特送过去"

物理层组成:

  • 网线(双绞线)、光纤

  • 变压器(magnetics)

  • PHY 芯片(如 RTL8211、KSZ9031、内置 PHY)

  • 发射/接收电路

你现在的 linkdown 就发生在物理层

即:网线和 PHY 没建立链路(Link=NO) → 连 0/1 都传不出去。

ethtool eth0

当看到:

Link detected: yes

物理层才通

📶 三、链路层(Layer 2)

链路层 = MAC 地址 的世界。

作用:

  • 将比特组合成帧(Frame),并附加校验(FCS / CRC)

  • 负责局域网内通信(同网段)

  • 确保这一跳的数据不出错

  • 使用 MAC 地址(48-bit)

链路层帧结构(简化):

| 目的MAC | 源MAC | 类型 | 数据 | CRC |

常见协议:

  • Ethernet II(以太网)

  • WiFi MAC 层

  • PPP、HDLC

链路层只管同一个交换机内的设备

不会跨路由器。

🧭 四、网络层(Layer 3)

网络层 = IP 地址 + 路由 的世界。

作用:

  • 负责跨网段通信

  • 寻找路径(routing)

  • 将数据包包装为 IP 包

常见协议:

  • IP(IPv4 / IPv6)

  • ARP(解析 MAC)

  • ICMP(ping 就在这里)

添加默认网关,就是在网络层。

🚚 五、传输层(Layer 4)

传输层 = 可靠性与端口号

协议:

| 协议 | 特点 |

| ------- | ------------ |

| **TCP** | 有连接、可靠、三次握手 |

| **UDP** | 无连接、不可靠、实时性好 |

应用层靠端口 (port) 来区分程序,例如:

  • 80 → HTTP

  • 22 → SSH

  • 1883 → MQTT

  • 🗣 六、应用层(Layer 7)

  • 这是我们最常见的层:

    HTTP、DNS、FTP、MQTT、SSH 都在这里。

🔗 七、整个数据从应用层到物理层的封装流程(重要)

以 HTTP 为例

从发送端:

应用层:HTTP 数据

传输层:TCP 加上源端口、目的端口

网络层:IP 加上源 IP、目的 IP

链路层:以太网帧包住 IP 包,加上 MAC 地址

物理层:转成电信号(0/1)发送出去

接收端逆向拆包:

物理层 → 链路层 → 网络层 → 传输层 → 应用层

📌 三层中你最需要理解的是:

1)物理层:

👉 网线插好没有?灯亮不亮?

👉 ethtool eth0 → Link detected: yes/no

📌 你的问题就在这一层 没 link

2)链路层:

👉 MAC 地址是否收发?

👉 ARP 是否正确?(ping 同网段严重依赖 ARP)

3)网络层:

👉 IP、MASK、Gateway 配置对不对?

👉 路由表对不对?

如果物理层 linkdown → 上面所有层都别想工作

一张是 OSI 七层模型图 ,另一张是 数据封装过程图(比特→帧→包→段→数据)

📘 ① OSI 七层模型总图(最清晰版本)

┌───────────────────────┐

│ 7 应用层(Application)│ HTTP / DNS / FTP / MQTT │

├───────────────────────┤

│ 6 表示层(Presentation)│ 加密/解密、压缩 │ TLS、JPEG │

├───────────────────────┤

│ 5 会话层(Session) │ 管理会话、保持连接 │

├───────────────────────┤

│ 4 传输层(Transport) │ TCP(可靠)/ UDP(实时)│

├───────────────────────┤

│ 3 网络层(Network) │ IP 寻址、路由、ICMP、ARP │

├───────────────────────┤

│ 2 数据链路层(Data Link)│ MAC、Ethernet 帧、CRC 校验 │

├───────────────────────┤

│ 1 物理层(Physical) │ 电信号、光信号、PHY、网线 │

└───────────────────────┘

📗 ② 数据封装过程图:比特 → 帧 → 包 → 段 → 应用数据

当你执行一次 HTTP 请求时,数据是这样被多层打包的:

应用层:HTTP 数据

└──▶ "GET /index.html HTTP/1.1 ..."

传输层(TCP):

└──▶ TCP头HTTP数据

网络层(IP):

└──▶ IP头TCP段

链路层(Ethernet 帧):

└──▶ 目的MAC源MAC类型IP包CRC

物理层:电信号(二进制 0/1)

└──▶ 以电压/光信号传输出去

汇总图如下:

┌────────────────────────────────────────────┐

│ 应用数据(HTTP) │

├────────────────────────────────────────────┤

│ TCP 段: TCP Header + HTTP Data │

├────────────────────────────────────────────┤

│ IP 包: IP Header + TCP Segment │

├────────────────────────────────────────────┤

│ 以太帧: MAC Header + IP Packet + CRC │

├────────────────────────────────────────────┤

│ 物理层:比特流(0 / 1) │

└────────────────────────────────────────────┘

📘 ③ 各层之间的俗称:

| 层级 | 数据单位 | 名称 |

| --- | ------- | -- |

| 应用层 | Data | 数据 |

| 传输层 | Segment | 段 |

| 网络层 | Packet | 包 |

| 链路层 | Frame | 帧 |

| 物理层 | Bit | 比特 |

一句话口诀:

应用数据 → TCP 段 → IP 包 → 以太帧 → 比特

相关推荐
皮皮学姐分享-ppx2 小时前
政府绿色采购数据库(2015-2024.3)
大数据·网络·数据库·人工智能·制造
W_chuanqi3 小时前
联想M7615DNA网络打印方法
网络·联想·打印机网络连接
HavenlonLabs6 小时前
硬件 + SaaS 产品的工程化路径:从系统架构、PCB 设计到工程样机
网络·安全·架构·系统架构·安全架构
yychen_java10 小时前
当算法成为武器:AI泛滥时代的多维危机透视与治理路径
网络·人工智能·ai
漫途科技10 小时前
精准盯防危房隐患,智守人居安全|MTB46-4-2A 4G数据采集终端专项应用方案
网络·安全
Misnearch10 小时前
抓包Packet Capture
网络·抓包
zhangfeng113311 小时前
ps aux讲解,结合国家超算中心 hpc apptainer
linux·服务器·网络
代码中介商11 小时前
TLS握手全解析:从1.2到1.3的加密演进
网络·网络协议·http
xlq2232212 小时前
66.ip
网络·网络协议·tcp/ip
tudoSearcher12 小时前
手机、平板、电脑同时控制Claude Code / Codex ?:Paseo实战指南
网络·开源·开源软件·个人开发·ai编程