OSI模型中协议数据单元(PDU)

OSI模型中协议数据单元(PDU)

协议数据单元(Protocol Data Unit, PDU)是网络通信中每一层协议处理的数据单位,其内容和格式由特定层的协议定义。PDU在不同OSI层次中有不同的名称和结构,体现了分层模型的核心思想:每一层为上层提供服务,并利用下层的服务传递数据。

OSI各层PDU的名称与封装关系

OSI层 PDU名称 组成说明
应用层 (Layer 7) 报文/消息 (Message) 用户数据(如HTTP请求、FTP文件)
表示层 (Layer 6) 报文 (Message) 加密/压缩后的数据(如SSL/TLS加密的HTTP数据)
会话层 (Layer 5) 报文 (Message) 建立/维护会话的数据(如RPC调用、NetBIOS会话)
传输层 (Layer 4) 段 (Segment) TCP/UDP数据,添加端口号、校验和(如TCP段包含序列号、窗口大小)
网络层 (Layer 3) 包 (Packet) IP数据包,包含源/目的IP地址(如IPv4包)
数据链路层 (Layer 2) 帧 (Frame) 以太网帧,添加MAC地址、CRC校验(如Ethernet II帧)
物理层 (Layer 1) 比特流 (Bits) 二进制信号(如电脉冲、光信号)

PDU的封装与解封装过程

数据在发送时从上到下逐层封装,接收时从下到上逐层解封装:

发送方(封装流程)

应用层生成原始数据(如HTTP请求)。

  • 传输层(TCP/UDP)添加端口号、校验和,形成Segment。

  • 网络层(IP)添加源/目的IP地址,形成Packet。

  • 数据链路层(以太网)添加MAC地址、帧头/尾,形成Frame。

  • 物理层将帧转为比特流,通过介质传输。

接收方(解封装流程)

  • 物理层接收比特流,还原为帧。

  • 数据链路层校验帧,去除MAC头,提取Packet。

  • 网络层检查IP地址,去除IP头,提取Segment。

  • 传输层验证端口和校验和,去除TCP/UDP头,传递数据给应用层。

关键点

  • 每层只处理本层的PDU

    • 例如,路由器(网络层设备)只处理IP包,不关心TCP段或以太网帧的内容。

    • 交换机(数据链路层设备)只处理MAC帧,不解析IP包。

  • PDU的命名差异

    • TCP/IP模型中:

      • 网络接口层PDU称Frame(帧)。

      • 互联网层(IP)PDU称Packet(包)。

      • 传输层(TCP/UDP)PDU仍称Segment(段)。

  • 封装开销

    • 每层添加的头部/尾部会增加传输开销(如以太网帧头14字节,IP头20字节,TCP头20字节)。

实例分析(HTTP over TCP/IP)

假设用户访问一个网页,PDU变化如下:

  • 应用层:HTTP请求(GET /index.html) → Message。

  • 传输层:添加TCP头(源端口、目的端口80) → Segment。

  • 网络层:添加IP头(源IP 192.168.1.2,目的IP 93.184.216.34) → Packet。

  • 数据链路层:添加以太网头(源MAC 00:1A:2B:3C:4D:5E,目的MAC 网关MAC) → Frame。

  • 物理层:转为比特流发送。

相关推荐
萑澈1 天前
实践教程:我如何用 n8n 自动化“软著申请”中最头疼的文档撰写工作
运维·elasticsearch·自动化
zzzsde1 天前
【Linux】进程信号(1)理解信号及信号产生的方式
linux·运维·服务器·算法
壹方秘境1 天前
Wireshark 太难?ChatTCP 把 TCP 数据包变成“微信对话”
网络·测试工具·wireshark
lKWO OMET1 天前
查看 nginx 是否已经启动
运维·数据库·nginx
aq55356001 天前
三大Linux系统终极对决
linux·运维·服务器
gamers1 天前
客户终端的DNS被劫持,网络能访问,但浏览器域名访问不到
网络·dns劫持
AI精钢1 天前
Claude Opus 4.7 是一次失败的升级吗?一次基于用户反馈的技术复盘
网络·人工智能·ai·大模型·llm·claude·技术评论
sssjjww1 天前
服务器不同路径下找conda
linux·运维·服务器
liulian09161 天前
Flutter 三方库 connectivity_plus 的鸿蒙化适配与网络状态管理实战
网络·flutter·华为·学习方法·harmonyos
不会写DN1 天前
通过eino-ext如何正常indexer RAG?
网络·面试·go