PDU(Protocol Data Unit ,协议数据单元)

9a9e25768115402287b6c32f5a77ec1d.png

定义

在分层网络结构中,PDU 是指对等层次之间传递的数据单位,由协议特定的控制信息和用户数据组成。


在 OSI 模型中的体现

  • 物理层:PDU 是比特(bit),即 0 和 1 的二进制数据流,物理层将这些比特流通过物理介质进行传输。

  • 数据链路层:PDU 是数据帧(frame),数据帧包含了数据链路层的头部、尾部以及上层传来的数据,头部通常包含源 MAC 地址、目的 MAC 地址等信息,尾部包含校验和等用于差错检测的信息。

  • 网络层:PDU 是数据包(packet),数据包包含网络层的头部和上层传来的数据,头部中主要是源 IP 地址、目的 IP 地址等用于路由选择的信息。

  • 传输层:根据不同的协议,PDU 有不同的称呼。使用 TCP 协议时,PDU 称为数据段(segment);使用 UDP 协议时,PDU 称为用户数据报(datagram)。传输层的 PDU 包含了端口号等信息,用于标识不同的应用程序。

  • 会话层及以上:PDU 通常被称为数据(data),这些数据主要是应用程序产生的原始数据或经过处理后的数据。


封装与解封装

  • 封装:在数据发送过程中,每一层都会将上层传来的 PDU 作为本层的数据部分,并添加本层的协议控制信息,形成新的 PDU,然后将其传递给下一层。这个过程不断重复,直到数据到达物理层并通过物理介质传输。

  • 解封装:在接收端,数据从物理层开始,自下而上依次经过各层。每一层都会去除本层的协议控制信息,提取出数据部分,并将其作为上层的 PDU 传递给上一层,最终将数据还原为应用层能够理解的形式。


作用

  • 数据传输标准化:确保不同系统、不同网络之间的数据能够按照统一的格式和规则进行传输和交换,使得数据在网络中的传输更加可靠和高效。

  • 分层功能实现:各层通过对 PDU 的处理和操作,实现本层的功能,如物理层的比特传输、数据链路层的帧同步和差错检测、网络层的路由选择、传输层的端到端通信等。

  • 协议交互支持:作为协议的基本数据单元,PDU 承载了协议的控制信息和用户数据,使得不同层次的协议之间能够进行有效的交互和协同工作。



头像
0/200
图片验证码