**OSI 七层模型**(Open Systems Interconnection Reference Model,开放系统互连参考模型)是国际标准化组织(ISO)在1984年发布的网络通信概念框架(标准号 ISO/IEC 7498-1)。它将复杂的网络通信过程抽象分为**7个层次**,从底层物理传输到上层用户应用,每一层负责特定功能,并为上层提供服务。 这个模型不是实际实现的协议栈(现实互联网主要用 **TCP/IP 四层/五层模型**),而是**理论标准**,用于教学、设计协议、故障排查和理解网络分工。记住口诀:**物数网传会表应**(从下到上)。 ### OSI 七层模型详解(从底层到顶层) | 层级 | 层名 | 英文名称 | 主要功能(一句话总结) | 关键职责与机制 | 典型协议/技术示例 | 数据单元(PDU) | 常见设备/关注点 | 故障排查关键词示例 | |------|---------------|-----------------------|----------------------------------------------------------------------------------------|-----------------------------------------------------|------------------------------------------------|-----------------|----------------------------------|-------------------------------------| | 1 | **物理层** | Physical Layer | 负责比特流(0/1)的物理传输,通过介质发送/接收电信号、光信号、无线信号。 | 定义接口标准、电压/电平、传输速率、连接器、介质类型、信号编码。 | RJ45、网线、光纤、Wi-Fi 射频、蓝牙、NFC、RS-232 | 比特(Bit) | 网卡、集线器、中继器、光模块 | 网线断、端口没灯、信号衰减 | | 2 | **数据链路层**| Data Link Layer | 在相邻节点间可靠传输数据帧,提供**错误检测/纠正**、**流量控制**、**MAC寻址**。 | 成帧、物理寻址(MAC地址)、差错控制(CRC校验)、介质访问控制(CSMA/CD)。分为MAC子层 + LLC子层。 | 以太网(802.3)、Wi-Fi(802.11)、PPP、HDLC、ARP | 帧(Frame) | 交换机、网桥、无线AP | MAC冲突、CRC错误、广播风暴 | | 3 | **网络层** | Network Layer | 负责**跨网络**的数据包路由与转发,实现**逻辑寻址**(IP地址)和**路径选择**。 | 路由选择、拥塞控制、IP分片/重组、逻辑地址到物理地址映射(ARP)。 | IP(IPv4/IPv6)、ICMP(ping)、IGMP、IPsec、OSPF、BGP | 数据包(Packet/Datagram) | 路由器、三层交换机 | 路由表错、TTL超时、无法ping通 | | 4 | **传输层** | Transport Layer | 提供**端到端**(进程到进程)的可靠/不可靠数据传输服务,实现**分段/重组**、**流量/拥塞控制**。 | 端口号区分应用、可靠传输(确认、重传)、流量控制(滑动窗口)、拥塞避免。 | TCP(可靠、面向连接)、UDP(不可靠、面向无连接)、SCTP | 报文段/用户数据报(Segment/Datagram) | 主机(操作系统内核) | TCP三次握手失败、端口未开放、丢包重传 | | 5 | **会话层** | Session Layer | 建立、管理、终止通信会话(对话),提供会话同步与检查点恢复。 | 会话建立/维护/终止、对话控制(半双工/全双工)、同步点(检查点)、会话恢复。 | NetBIOS、RPC、SQL、NFS(部分功能) | 数据(Data) | 主机应用进程 | 会话中断、检查点丢失 | | 6 | **表示层** | Presentation Layer | 处理数据**表示格式**的转换,确保不同系统间数据可理解(语法层)。 | 数据编码/解码(ASCII/Unicode)、压缩/解压缩、加密/解密(SSL/TLS部分功能)、格式转换(EBCDIC ↔ ASCII)。 | JPEG、GIF、MPEG、SSL/TLS(加密部分)、XDR | 数据(Data) | 主机应用进程 | 乱码、加密不匹配、格式不兼容 | | 7 | **应用层** | Application Layer | 直接为用户应用程序提供网络服务,是用户与网络的接口(最上层)。 | 文件传输、邮件、网页浏览、远程登录、域名解析等用户服务。**不包括用户程序本身**。 | HTTP/HTTPS、FTP、SMTP、POP3/IMAP、DNS、Telnet/SSH、DHCP、SNMP | 数据(Data) | 浏览器、邮件客户端、聊天软件等 | 404、DNS解析失败、服务器拒绝连接 | ### 数据在七层中的封装/解封装过程(经典流程) - **发送端**(从上到下封装):应用数据 → 加会话/表示头 → 加TCP/UDP头(传输层) → 加IP头(网络层) → 加MAC头(数据链路层) → 物理层转比特流发送。 - **接收端**(从下到上解封装):物理层接收比特 → 去MAC头(链路层) → 去IP头(网络层) → 去TCP/UDP头(传输层) → 去会话/表示头 → 给应用层。 每一层只处理自己的头部,把上层数据当成“负载”。 ### 与 TCP/IP 模型的对应关系(现实对比) | OSI 层级 | OSI 层名 | TCP/IP 层(常见四层/五层) | 备注 | |----------|--------------|----------------------------|-----------------------------------| | 7 | 应用层 | 应用层 | HTTP、DNS 等都在这里 | | 6 | 表示层 | (合并到应用层) | TLS/SSL 加密常归这里或应用层 | | 5 | 会话层 | (合并到应用层) | 会话管理功能较弱 | | 4 | 传输层 | 传输层 | TCP / UDP | | 3 | 网络层 | 网络层 / 互联网层 | IP | | 2 | 数据链路层 | 网络接口层 / 链路层 | 以太网、Wi-Fi | | 1 | 物理层 | 网络接口层 / 物理层 | 网线、光纤 | **一句话总结区别**:OSI 是**理论7层**(更细、更规范),TCP/IP 是**实际4层**(更简、更实用),互联网用的是 TCP/IP。 ### 学习/面试高频点 - 记住层序和功能:**物数网传(会表)应**。 - 记住各层 PDU:比特 → 帧 → 包 → 段 → 数据。 - 记住典型协议归属层。 - 记住分层好处:模块化、标准化、易于维护/升级、便于故障定位(“问题出在第几层”)。 - 常见考题:TCP 属于哪层?HTTP 属于哪层?路由器工作在哪层?交换机工作在哪层?