Wednesday, March 25, 2009

Difference between SDU and PDU

This question keeps propping up in many discussions so here is an explanation for the difference between PDU and SDU.



Going back to the basics, a protocol stack consists of many different individual protocols. Protocols can be simply described as set of rules that allow communication between peer entities or they can also be described as set of rules that facilitate horizontal communication. Now these protocols are arranged in layers as can be seen in the figure above. In the transmitter side, a layer N receives data from layer N+1 and this data is called the SDU or Service Data Unit. This layer will modify the data and convert it into a PDU or a Protocol Data Unit. The peer entity in the receiver is only able to understand this PDU.

In simplest form, this modification by layer N of the layer N+1 SDU contains encapsulation. In encapsulation, the SDU is preserved as it is and an additional header is added by the layer N protocol. The modification can also perform concatenation (where more than one SDU is combined in a single PDU), segmentation (where a SDU can be split so that different parts of it end up in different PDU) and padding (where SDU is so small that filler bits are added in the end to complete the PDU).

In the receiver side, the peer entity receives the PDU from layer N-1 (its actually layer N-1 SDU) and convert it back into SDU(s) and passes it to layer N+1.


The figure above shows an example of RLC SDU and PDU. The SDU's are received from higher layer, which is from PDCP in case of LTE. These SDU's have to be converted to PDU's so they undergo segmentation and concatenation and suitable RLC headers are added to form the RLC PDU's.

First Figure Source: The TCP/IP Guide

Second Figure Source: 3G Evolution - HSPA and LTE for Mobile Broadband, Erik Dahlman et al.

No comments:

Post a Comment