OSI

Open Systems Interconnection Model
「开放式系统互联参考模型」

模型内容

层次 名称 常见协议 主要作用 封装结构
7 应用层 HTTP、HTTPS、FTP、DNS、SSH、Telnet 提供应用接口,和应用直接交互 原始数据 (Data)
6 表示层 JPEG、MPEG、TLS、SSL 对数据进行编解码、加密解密、压缩解压 原始数据 (Data)
5 会话层 RPC、PPTP、SIP 管理建立、维持和终止应用之间的会话 原始数据 (Data)
4 传输层 TCP、UDP 提供端到端传输、流量控制、错误检测 段 (Segment) 或 报文 (Datagram)
3 网络层 IP、ICMP、IGMP、OSPF、BGP 路由、寻址、分片及转发 包 (Packet)
2 数据链路层 Ethernet、PPP、ARP、STP 节点之间的数据帧封装、媒体访问控制 帧 (Frame)
1 物理层 以太网接口、WiFi、光纤 比特传输、定义接口和传输标准 比特 (Bit)

简单示意封装结构

1
2
3
4
5
6
7
8
9
应用层 (Data) 

传输层 (Header + Data) -> Segment/Datagram

网络层 (Header + Segment) -> Packet

数据链路层 (Header + Packet + Trailer) -> Frame

物理层 (Bit Stream) -> 比特传输

好,我来详细解释封装结构,让你彻底明白 OSI 模型中每层是如何一层层封装起来的:


详细

1. 应用层、表示层、会话层

结构:原始数据

  • 在应用层、表示层、会话层阶段,传输的数据其实就是应用生成的原始数据,没有额外的数据头。
  • 例如:一封邮件内容、一段 HTTP 请求。

2. 传输层

结构传输层头部 + 原始数据 → 段 (Segment) 或 报文 (Datagram)

  • 在这一层,传输层(TCP 或 UDP)为原始数据添加自己的头部

  • 这个头部里有:

    • 源端口、目标端口
    • 序列号、确认号
    • 检查和控制标记
  • 完成后,形成 “段” (TCP) 或 “报文” (UDP)。

💡 示例:

1
2
3
[传输层头] + [应用层的数据]

Segment / Datagram

3. 网络层

结构网络层头 + 段 → 包 (Packet)

  • 网络层(如 IP)在段的外面再套一层网络层头

  • 网络层头里有:

    • 源 IP、目标 IP
    • 路由标记、TTL (生存时间) 等
  • 完成后,形成 “包”

💡 示例:

1
2
3
[网络层头] + [传输层段] 

Packet

4. 数据链路层

结构链路层头 + 包 + 链路层尾 → 帧 (Frame)

  • 在这个阶段,数据链路层(以太网、PPP)为网络层的包添加:

    • 源 MAC、目标 MAC
    • 类型字段
    • CRC 校验等
  • 完成后,形成 “帧”

💡 示例:

1
2
3
[链路层头] + [网络层包] + [链路层尾]

Frame

5. 物理层

结构:比特流 (Bit Stream)

  • 物理层只是对进行电气、光学、射频等调制,形成连续的比特序列。
  • 在这一层,数据就是真正以(Bit)的形式在网线、光纤、无线等媒体上传输。

💡 示例:

1
Frame ---> 011011001100101011... (Bit Stream)

简单总结结构

1
2
3
4
5
应用层 :Data
传输层 :Header + Data ➔ Segment / Datagram
网络层 :Header + Segment ➔ Packet
链路层 :Header + Packet + Tail ➔ Frame
物理层 :Bit Stream ➔ Bits