Protocol data unit



In telecommunications, a protocol data unit (PDU) is a single unit of information transmitted among peer entities of a computer network. It is composed of protocol-specific control information and user data. In the layered architectures of communication protocol stacks, each layer implements protocols tailored to the specific type or mode of data exchange.

For example, the Transmission Control Protocol (TCP) implements a connection-oriented transfer mode, and the PDU of this protocol is called a segment, while the User Datagram Protocol (UDP) uses datagrams as protocol data units for connectionless communication. A layer lower in the Internet protocol suite, at the Internet layer, the PDU is called a packet, irrespective of its payload type.

Packet-switched data networks
In the context of packet switching data networks, a protocol data unit (PDU) is best understood in relation to a service data unit (SDU).

The features or services of the network are implemented in distinct layers. The physical layer sends ones and zeros across a wire or fiber. The data link layer then organizes these ones and zeros into chunks of data and gets them safely to the right place on the wire. The network layer transmits the organized data over multiple connected networks, and the transport layer delivers the data to the right software application at the destination.

Between the layers (and between the application and the top-most layer), the layers pass service data units (SDUs) across interfaces. The higher layer understands the structure of the data in the SDU, but the lower layer at the interface does not; moreover, the lower layer treats the SDU as the payload, undertaking to get it to the same interface at the destination. In order to do this, the protocol (lower) layer will add to the SDU certain data it needs to perform its function; which is called encapsulation. For example, it might add a port number to identify the application, a network address to help with routing, a code to identify the type of data in the packet and error-checking information. All this additional information, plus the original service data unit from the higher layer, constitutes the protocol data unit at this layer.

The SDU and metadata added by the lower layer can be larger than the maximum size of that layer's PDU (known as the maximum transmission unit; MTU). When this is the case, the PDU must be split into multiple payloads of a size suitable for transmission or processing by the lower layer; a process known as IP fragmentation.

The significance of this is that the PDU is the structured information that is passed to a matching protocol layer further along on the data's journey that allows the layer to deliver its intended function or service. The matching layer, or "peer", decodes the data to extract the original service data unit, decide if it is error-free and where to send it next, etc. Unless we have already arrived at the lowest (physical) layer, the PDU is passed to the peer using services of the next lower layer in the protocol "stack". When the PDU passes over the interface from the layer that constructed it to the layer that merely delivers it (and therefore does not understand its internal structure), it becomes a service data unit to that layer. The addition of addressing and control information (encapsulation) to an SDU to form a PDU and the passing of that PDU to the next lower layer as an SDU repeats until the lowest layer is reached and the data passes over some medium as a physical signal.

The above process can be likened to the mail system in which a letter (SDU) is placed in an envelope on which is written an address (addressing and control information) making it a PDU. The sending post office might look only at the postcode and place the letter in a mailbag so that the address on the envelope can no longer be seen, making it now an SDU. The mailbag is labeled with the destination postcode and so becomes a PDU until it is combined with other bags in a crate when it is now an SDU, and the crate is labeled with the region to which all the bags are to be sent, making the crate a PDU. When the crate reaches the destination matching its label, it is opened and the bags (SDUs) removed only to become PDUs when someone reads the code of the destination post office. The letters themselves are SDUs when the bags are opened but become PDUs when the address is read for final delivery. When the addressee finally opens the envelope, the top-level SDU, the letter itself, emerges.

OSI model
Protocol data units of the OSI model are:


 * The Layer 4: transport layer PDU is the segment or the datagram.
 * The Layer 3: network layer PDU is the packet.
 * The Layer 2: data link layer PDU is the frame.
 * The Layer 1: physical layer PDU is the bit or, more generally, symbol.

Given a context pertaining to a specific OSI layer, PDU is sometimes used as a synonym for its representation at that layer.

Internet protocol suite
Protocol data units for the Internet protocol suite are:


 * The transport layer PDU is the TCP segment for TCP, and the datagram for UDP
 * The Internet layer PDU is the packet.
 * The link layer PDU is the frame.

On TCP/IP over Ethernet, the data on the physical layer is carried in Ethernet frames.

Internetwork packet exchange (IPX)

 * For IPX, the IPX packet is the network layer PDU for IPX, and can simultaneously be used in the transport layer as well.
 * The SPX packet on top of IPX, is a transport layer PDU.
 * The link-layer PDU is the frame.

ATM
The data link layer PDU in Asynchronous Transfer Mode (ATM) networks is called a cell.

Media access control protocol data unit
A media access control protocol data unit (MAC PDU or MPDU) is a message that is exchanged between media access control (MAC) entities in a communication system based on the layered OSI model.

In systems where the MPDU may be larger than the MAC service data unit (MSDU), the MPDU may include multiple MSDUs as a result of packet aggregation. In systems where the MPDU is smaller than the MSDU, then one MSDU may generate multiple MPDUs as a result of packet segmentation.