OSI(Open Systems Interconnection)网络模型是一个7层的网络通信标准模型,用于描述网络通信的各个层次。

OSI七层模型

第7层:应用层(Application Layer)

功能:为应用程序提供网络服务接口

主要协议

  • HTTP/HTTPS - Web浏览
  • FTP - 文件传输
  • SMTP - 邮件发送
  • POP3/IMAP - 邮件接收
  • DNS - 域名解析
  • SSH - 安全远程登录
  • Telnet - 远程登录

设备:应用程序、浏览器、邮件客户端

数据单位:数据(Data)


第6层:表示层(Presentation Layer)

功能:数据格式转换、加密解密、压缩解压

主要功能

  • 数据编码和解码(ASCII、Unicode)
  • 数据加密和解密(SSL/TLS)
  • 数据压缩和解压缩
  • 图像、音频、视频格式转换

协议示例:SSL/TLS、JPEG、GIF、MPEG

数据单位:数据(Data)


第5层:会话层(Session Layer)

功能:建立、管理和终止会话连接

主要功能

  • 建立会话连接
  • 会话管理和控制
  • 断点续传
  • 会话同步

协议示例:NetBIOS、RPC、SQL会话

数据单位:数据(Data)


第4层:传输层(Transport Layer)

功能:端到端的可靠数据传输

主要协议

  • TCP(传输控制协议)
    • 面向连接
    • 可靠传输
    • 流量控制
    • 拥塞控制
  • UDP(用户数据报协议)
    • 无连接
    • 不可靠传输
    • 低开销

功能特性

  • 端口寻址
  • 分段和重组
  • 错误检测和恢复
  • 流量控制

数据单位:段(Segment)


第3层:网络层(Network Layer)

功能:路径选择和逻辑地址定位

主要协议

  • IP(互联网协议)- IPv4/IPv6
  • ICMP - 错误报告和诊断
  • ARP - 地址解析
  • OSPF - 路由协议
  • BGP - 边界网关协议

主要功能

  • 逻辑地址(IP地址)
  • 路由选择
  • 数据包转发
  • 拥塞控制

设备:路由器、三层交换机

数据单位:数据包(Packet)


功能:节点到节点的可靠数据传输

主要协议

  • Ethernet(以太网)
  • PPP(点对点协议)
  • Wi-Fi(802.11)
  • Frame Relay

主要功能

  • 物理地址(MAC地址)
  • 帧同步
  • 错误检测
  • 流量控制
  • 介质访问控制

设备:交换机、网桥、网卡

数据单位:帧(Frame)


第1层:物理层(Physical Layer)

功能:原始比特流的传输

主要标准

  • 电气标准(电压、电流)
  • 机械标准(接口形状、尺寸)
  • 功能标准(信号意义)
  • 过程标准(建立连接的步骤)

传输介质

  • 双绞线
  • 同轴电缆
  • 光纤
  • 无线电波

设备:集线器、中继器、调制解调器

数据单位:比特(Bit)

数据传输过程

发送数据(封装过程)

应用层    |  数据
表示层    |  数据
会话层    |  数据
传输层    |  TCP/UDP头部 + 数据 = 段
网络层    |  IP头部 + 段 = 数据包
数据链路层|  帧头部 + 数据包 + 帧尾部 = 帧
物理层    |  帧转换为比特流传输

接收数据(解封装过程)

物理层    |  接收比特流并转换为帧
数据链路层|  去除帧头尾,提取数据包
网络层    |  去除IP头部,提取段
传输层    |  去除TCP/UDP头部,提取数据
会话层    |  数据
表示层    |  数据
应用层    |  最终数据交给应用程序

实际应用示例

Web浏览器访问网页

应用层:   HTTP请求 "GET /index.html"
表示层:   HTML/CSS/JS格式处理
会话层:   HTTP会话管理
传输层:   TCP连接(端口80/443)
网络层:   IP路由寻址
数据链路层:以太网帧传输
物理层:   电信号/光信号传输

电子邮件发送

应用层:   SMTP协议发送邮件
表示层:   邮件格式编码(MIME)
会话层:   SMTP会话建立
传输层:   TCP连接(端口25)
网络层:   IP数据包路由
数据链路层:帧在局域网传输
物理层:   物理介质传输

OSI vs TCP/IP模型对比

OSI层次OSI模型TCP/IP模型
7应用层应用层
6表示层
5会话层
4传输层传输层
3网络层网络层
2数据链路层数据链路层
1物理层物理层

主要区别

  • OSI是理论模型,TCP/IP是实际实现
  • TCP/IP将上三层合并为应用层
  • TCP/IP更贴近实际网络实现

各层常见问题和排查

物理层问题

  • 网线断开、接触不良
  • 网卡故障
  • 信号衰减

数据链路层问题

  • MAC地址冲突
  • 交换机端口故障
  • VLAN配置错误

网络层问题

  • IP地址配置错误
  • 路由表配置问题
  • 子网掩码错误

传输层问题

  • 端口被占用或阻塞
  • TCP连接超时
  • UDP数据丢失

应用层问题

  • 服务未启动
  • 协议版本不匹配
  • 认证失败

记忆口诀

从下到上

  • 物数网传会表应
  • Please Do Not Throw Sausage Pizza Away

从上到下

  • 应表会传网数物
  • All People Seem To Need Data Processing

OSI模型为网络通信提供了标准化的框架,虽然实际网络更多使用TCP/IP模型,但OSI模型对理解网络通信原理和排查网络问题仍然很有价值。