Back to the 2015 paper

Module 2: Data Link Layer & MAC Sublayer

20157m

Define framing and discuss the reasons for its need. What are fixed-size and variable-size framings?

Worked SolutionAI Assisted

Framing is the Data Link layer function of dividing a stream of bits received from the Physical layer into distinct, manageable units called frames, each with clear start and end boundaries, before passing them up (or preparing them for transmission down).

Why framing is needed

  1. Error control at a manageable granularity — error detection/correction (checksums, CRC) is applied per-frame; without framing, a single bit error anywhere in an endless bitstream would be very costly to isolate and recover from.
  2. Flow control — frames give a natural unit for ACKs and window-based flow control between sender and receiver.
  3. Addressing — each frame carries header information (like source/destination MAC addresses) needed for the Data Link layer to deliver it correctly within a local network.
  4. Synchronization — clear frame boundaries let the receiver know exactly where one unit of data ends and the next begins, essential for correctly interpreting the bitstream.

Fixed-size framing

Every frame has the same, predetermined length. The receiver simply counts off that many bits/bytes to identify frame boundaries — no explicit delimiter is needed. This is simple but can waste bandwidth if the actual data doesn't neatly fill a frame (requiring padding), and is inflexible for variable-length data. Example: ATM cells, which are always a fixed 53 bytes.

Variable-size framing

Frames can have different lengths, and the receiver needs an explicit way to determine where a frame starts and ends. Two common approaches:

  • Character/byte-oriented: uses special flag bytes (with byte-stuffing to handle their accidental appearance in data).
  • Bit-oriented: uses a specific bit pattern flag (with bit-stuffing).

This is more flexible and avoids the padding waste of fixed framing, but requires more complex boundary-detection logic (stuffing/destuffing) at both ends. Examples: Ethernet, HDLC, PPP.

Similar questions

AI LearningWeb Platform

Coursify — Personal AI Course Generator

Struggling with a difficult subject or concept? Turn any engineering topic into a structured course with interactive lessons, quizzes, and research-backed explanations.