In the OSI model, what is the protocol data unit called at each layer, and why does using the precise name matter?
answer
- one name per layer
- B, F, P, S, D
- TCP and UDP name their units differently
- the name points at the header
basics
~20 sOSI protocol data units: bits at L1, frames at L2, packets at L3, segments at L4 for TCP (datagrams for UDP), and data or messages at L5-L7. The name tells a listener which layer's header and addressing is meant.
solid answer
~40 sA **protocol data unit (PDU)** is what one layer builds: its own control information plus the data it carries. The conventional names are **bits** at L1, **frames** at L2, **packets** at L3, **segments** at L4 for TCP and **datagrams** for UDP, and **data** or **messages** from L5 up. The name matters because it pins the layer: "the frame was dropped" points at a link and hardware addresses, "the packet was dropped" at routing and logical addresses, "the segment was retransmitted" at the transport endpoints. The specifications have their own habits: the host requirements (RFC 1122) speak of IP datagrams, while the IPv6 specification (RFC 8200) defines a packet as the IPv6 header plus payload, so both words are in use at L3.
go deeper
Recall bits, frames, packets, segments for TCP or datagrams for UDP, and data above Layer 4, in that bottom-up order.
Explain what each name implies: which addresses the unit carries and which devices read it. Know that IP specifications say datagram, that IPv6 defines packet, and that UDP's unit is a datagram.
Use the names precisely in incident reports so a reader knows which layer failed: a frame error, a dropped packet and a retransmitted segment send different people to different places.
Hold a team to precise layer vocabulary in runbooks and postmortems, since ambiguous words like packet for everything lengthen diagnosis across network and service owners.
## What a protocol data unit is In the OSI vocabulary, a **protocol data unit (PDU)** is the unit one layer exchanges with its peer layer on the other side: the layer's own **control information** (usually a header, sometimes a trailer too) plus the **data** it was handed from above. The data handed down by the layer above is called that layer's **service data unit (SDU)**; so the PDU of layer N is, from layer N-1's point of view, just the SDU it must carry. How those control fields nest on the way down and come off on the way up is the encapsulation subject; this answer is about the **names**. ## The names, layer by layer | Layer | PDU name | What identifies it | Who reads it | |---|---|---|---| | L7-L5 Application, Presentation, Session | **data** or **message** | application-level fields | the two applications | | L4 Transport | **segment** (TCP) / **datagram** (UDP) | source and destination **ports** | the two end hosts | | L3 Network | **packet** (IP specifications also say *datagram*) | source and destination **logical addresses** | every router on the path | | L2 Data Link | **frame** | source and destination **hardware addresses** | the nodes on one link | | L1 Physical | **bits** (as signals or symbols) | nothing: no addresses at all | the medium's transceivers | A common memory aid for the bottom four is the initials **B-F-P-S** (bits, frames, packets, segments), with **D** for data above. ## What the specifications actually call them The OSI names are conventions; the Internet's own documents use their own terms, and a strong answer knows both: - **TCP**: RFC 9293 calls the unit a **segment** throughout, each TCP segment being sent as an IP datagram. - **UDP**: RFC 768 is the "User **Datagram** Protocol"; its unit is a datagram. A UDP datagram carries no sequence number, which is one reason it is not called a segment. - **IPv4**: RFC 1122 speaks of **IP datagrams**, and describes IP as "a connectionless or datagram internetwork service". - **IPv6**: RFC 8200 defines a **packet** as "an IPv6 header plus payload". - **Link layer**: the unit on a link is a **frame**, delimited so the receiver knows where it starts and ends. So "packet" at L3 and "datagram" for IP are both correct; what would be wrong is calling an L2 unit a segment or a TCP unit a frame. ## Why the precise name matters 1. **It names the layer, and therefore the addresses in play.** A frame carries hardware addresses that are only meaningful on one link; a packet carries logical addresses that stay meaningful across the network; a segment carries ports that pick a process. 2. **It names who touched it.** Frames are built and checked on each link; packets are examined by every router; segments are examined only by the two end hosts (middleboxes aside). 3. **It makes incident reports precise.** "Frames failing their check on one switch port" sends someone to a cable; "packets dropped for no route" sends them to routing; "segments retransmitted" sends them to transport behaviour between the endpoints. 4. **It separates size limits.** A limit on how big a frame's payload may be is a property of a link; a limit on how much TCP data goes in one segment is a transport choice. Mixing the words hides which one you mean. ## Common confusions - **"Everything is a packet."** In casual speech that is common, and interviewers accept it in passing, but asked for the PDU names you are expected to give each layer's word. - **"The physical layer carries frames."** L1 carries bits; framing is exactly what L2 adds on top. - **"UDP sends segments."** Some textbooks write "UDP segment", but RFC 768 calls the unit a datagram, and it has no sequence numbering; "datagram" is the precise word. - **"Session and presentation have special PDU names."** In practice everything above L4 is simply called data or a message; nobody is marked down for that. ## How to answer in an interview Give the list bottom up (bits, frames, packets, segments or datagrams, data), then show you know *why* the word matters with one example: a new frame is built for every link while the packet inside keeps its end-to-end addresses (address translation aside). That single sentence proves you are describing layers, not reciting vocabulary.
- IP's own specifications call its unit a datagram; is calling it a packet at the OSI network layer wrong?No. RFC 1122 speaks of IP datagrams and describes IP as a datagram service, while RFC 8200 defines an IPv6 packet as the IPv6 header plus payload. Both words name the L3 unit. What would be wrong is using a word from another layer, such as calling an IP unit a frame or a segment.
- In OSI terminology, what is the difference between a protocol data unit and a service data unit?The service data unit (SDU) is the data the layer above hands down for delivery. The protocol data unit (PDU) is what the layer builds from it: its own control information plus that SDU. Layer N's PDU therefore becomes layer N-1's SDU, which is why the names change on the way down.
saying these in an interview costs you the question
- Every layer's unit is simply called a packet
- Frames live at Layer 4 and segments at Layer 2
- The physical layer carries frames with addresses
- UDP sends segments numbered for ordering, just like TCP
- Datagram is wrong for IP because only packet is correct
- The PDU name is vocabulary only and says nothing about the layer