OSI模型
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 | 应用层 (Data) |
好,我来详细解释封装结构,让你彻底明白 OSI 模型中每层是如何一层层封装起来的:
详细
1. 应用层、表示层、会话层
结构:原始数据
- 在应用层、表示层、会话层阶段,传输的数据其实就是应用生成的原始数据,没有额外的数据头。
- 例如:一封邮件内容、一段 HTTP 请求。
2. 传输层
结构:传输层头部 + 原始数据
→ 段 (Segment) 或 报文 (Datagram)
-
在这一层,传输层(TCP 或 UDP)为原始数据添加自己的头部。
-
这个头部里有:
- 源端口、目标端口
- 序列号、确认号
- 检查和控制标记
-
完成后,形成 “段” (TCP) 或 “报文” (UDP)。
💡 示例:
1 | [传输层头] + [应用层的数据] |
3. 网络层
结构:网络层头 + 段
→ 包 (Packet)
-
网络层(如 IP)在段的外面再套一层网络层头。
-
网络层头里有:
- 源 IP、目标 IP
- 路由标记、TTL (生存时间) 等
-
完成后,形成 “包”。
💡 示例:
1 | [网络层头] + [传输层段] |
4. 数据链路层
结构:链路层头 + 包 + 链路层尾
→ 帧 (Frame)
-
在这个阶段,数据链路层(以太网、PPP)为网络层的包添加:
- 源 MAC、目标 MAC
- 类型字段
- CRC 校验等
-
完成后,形成 “帧”。
💡 示例:
1 | [链路层头] + [网络层包] + [链路层尾] |
5. 物理层
结构:比特流 (Bit Stream)
- 物理层只是对帧进行电气、光学、射频等调制,形成连续的比特序列。
- 在这一层,数据就是真正以位(Bit)的形式在网线、光纤、无线等媒体上传输。
💡 示例:
1 | Frame ---> 011011001100101011... (Bit Stream) |
简单总结结构
1 | 应用层 :Data |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 HAHA!