askvity

What is Fixed and Variable Size Framing?

Published in Network Framing 4 mins read

In networking, framing is the process of dividing a data stream into smaller, manageable units called frames. These frames are sent across the network and reassembled at the destination. Frames can be of fixed or variable size, which dictates how their boundaries are defined and identified.

Understanding Framing

Framing is essential for reliable data transmission. It allows the receiver to determine where one block of data ends and the next begins. Without framing, it would be impossible to separate individual messages or data packets, leading to errors in delivery and interpretation.

There are two primary approaches to framing: fixed-size and variable-size framing.

Fixed-Size Framing

In fixed-size framing, all frames transmitted are of the exact same length. This constant size simplifies the framing process significantly.

  • Key Characteristic: Every frame has the identical number of bytes or bits.
  • Boundary Definition: In fixed-size framing, there is no need for defining the boundaries of the frames; the size itself can be used as a delimiter. The receiver simply counts the number of bytes equal to the fixed size to identify the end of one frame and the beginning of the next.
  • Advantages:
    • Simple implementation.
    • No overhead for explicit boundary markers (like flags or length fields).
    • Easier synchronization for the receiver.
  • Example: An example of this type of framing is the ATM wide-area network, which uses frames of fixed size called cells. ATM cells are a specific size (53 bytes) which allows network hardware to process them very efficiently.

Variable-Size Framing

In variable-size framing, frames can have different lengths. This flexibility allows for more efficient use of bandwidth when data units vary in size, but it introduces the challenge of clearly defining where each frame starts and ends.

  • Key Characteristic: Frame lengths can vary within the same transmission.
  • Boundary Definition: Because the size is not constant, explicit mechanisms are needed to mark frame boundaries. Common methods include:
    • Character or Byte Stuffing: Special flag bytes are used to indicate the beginning and end of a frame (e.g., 01111110). If the flag sequence appears within the data, an extra 'escape' byte is inserted before it to distinguish it from a boundary marker.
    • Bit Stuffing: Similar to byte stuffing but operates at the bit level. A special bit pattern (e.g., 01111110) is used as a flag. To prevent this pattern from appearing in the data field, a '0' bit is inserted after any sequence of five consecutive '1' bits.
    • Length Field: The frame header includes a field specifying the length of the frame's data payload. The receiver reads the length field to know how many bytes to read before the next frame begins.
  • Advantages:
    • More flexible; can accommodate varying data unit sizes efficiently.
    • Potentially less padding overhead if data units are smaller than a fixed frame size.
  • Disadvantages:
    • Requires more complex hardware/software for boundary detection.
    • Errors in boundary markers or length fields can cause the loss of synchronization and subsequent frames.

Comparison: Fixed vs. Variable Size Framing

Feature Fixed-Size Framing Variable-Size Framing
Frame Size Constant for all frames Varies from frame to frame
Boundary ID Size itself acts as delimiter Requires explicit markers (flags, length field)
Complexity Simpler More complex
Overhead No overhead for markers Overhead for markers or length fields
Efficiency Efficient for fixed-size data (like voice) Efficient for varying data sizes
Error Impact Less sensitive to single-bit errors Errors in markers can affect multiple frames
Example ATM cells Ethernet frames, PPP frames

In summary, fixed-size framing offers simplicity and efficiency when data units are uniform, leveraging the size itself as a delimiter. Variable-size framing provides flexibility for diverse data types but necessitates explicit methods to define frame boundaries.

Related Articles