An HDLC frame is structured as follows:
FLAG | ADDRESS | CONTROL | INFORMATION | FCS | FLAG |
8 bits | 8 bits | 8 / 16 bits | variable | 8 | 8 bits |
FRAME FIELDS
- FLAG
- The 8 bit pattern "01111110" which signals the beginning and end of an HDLC frame. If a piece of data within the frame to be transmitted contains a series of 5 or more 1's, the transmitting station must insert a 0 to distinguish this set of 1's in the data from the flags at the beginning and end of the frame. This technique of inserting bits is called bit-stuffing. These bits are detected and removed upon receipt. If a pattern of five 1's is followed by a 1 and then a 0, it marks the end of the frame. If a pattern of five ones is followed by two more 1's, it is a signal from the transmitting station to abort.
- ADDRESS
- The address field always contains the address of a secondary station. When the primary station transmits, it is the receiving secondary station's address, if it is a secondary responding, it is it's own address. This field is only populated for Unbalanced connections, it is otherwise empty for point-to-point (Balanced) links.
- CONTROL
- The format of the control field varies with the data it contains. There
are three categories of HDLC frames:
- Information (I-frame) - Carries data
- Supervisory (S-frame) - Carries commands and responses
- Unnumbered (U-frame) - Carries additional command sequences