High-level Data Link Control (HDLC)
It is the most important data link control protocol is HDLC. It is not only
widely used, but also it is the basis for many other important data link control
protocols, which use the same or similar formats and the same mechanisms as
employed in HDLC.
Characteristics of HDLC
To satisfy a variety of applications, HDLC defines three types of stations, two
link configurations and three data-transfer modes of operation.
The three station types are:
- Primary Station
It has responsibility for controlling the operation of the link. Frames issued by the primary are called commands. - Secondary Station
It has responsibility for controlling operations under the control of the primary station. Frames issued by a secondary are called responses. The primary maintains a separate logical link with each secondary station on the line.
- Combined Station
It combines the features of primary and secondary stations. A combined station may issue both commands and responses.
The two link configurations are:
- Unbalanced Configuration
- Balanced Configuration
It consists of two combined stations and supports both full-duplex and half-duplex transmission.
It consists of one primary and one or more secondary stations and supports both full-duplex and half-duplex transmission.
The three data transfer modes are:
- Normal Response Mode (NRM)
It is used with an unbalanced configuration. The primary may initiate data transfer to a secondary but a secondary may only transmit data in response to a command from the primary.
- Asynchronous Balanced Mode (ABM)
It is used with an balanced configuration. Either combined station may initiate transmission without receiving permission from the other combined station.
- Asynchronous Response Mode (ARM)
It is used with an unbalanced configuration. The secondary may initiate transmission without explicit permission of the primary. The primary still retains responsibility for the line, including initialization, error recovery and logical disconnection.
HDLC Frame Structure
HDLC is most important data link control protocol. It uses synchronous transmission. Any transmission is held in the form of frames and a single frame format suffices for all types of data and control exchange.
Here is the list of frame structure part:
- Flag Fields
It delimits the frame at both ends with the unique pattern 01111110. A single flag may be used as the closing flag for one frame and the opening flag for the next. On both sides of the user-network interface, receivers are continuously hunting for the flag sequence to synchronize on the start of a frame. While receiving a frame, a station continues to hunt for that sequence to determine the end of the frame. However, it is possible that the pattern 01111110 will appear somewhere inside the frame, thus destroying frame-level synchronization. To avoid this, a procedure known as bit stuffing is used. -
Address Field
The address field identifies the primary or secondary stations involvement in the frame transmission or reception. Each station on the link has a unique address. In an unbalanced configuration, the A field in both commands and a response refers to the secondary station. In a balanced configuration, the command frame contains the destination station address and the response frame has the sending station's address.
- Control Field
HDLC uses the control field to determine how to control the communications process. This field contains the commands, responses and sequences numbers used to maintain the data flow accountability of the link, defines the functions of the frame and initiates the logic to control the movement of traffic between sending and receiving stations. There three control field formats:
- Information Transfer Format (I-Frame)
The frame is used to transmit end-user data between two devices. - Supervisory Format (S-Frame)
The control field performs control functions such as acknowledgment of frames, requests for re-transmission, and requests for temporary suspension of frames being transmitted. Its use depends on the operational mode being used.
-
Unnumbered Format (U-Frame)
This control field format is also used for control purposes. It is used to perform link initialization, link disconnection and other link control functions.
- Information Transfer Format (I-Frame)
- Information Field
This field presents only Information Frame (I-Frame) and Unnumbered-Frame (U-Frame). The field can contain any sequence of bits but must consist of integral number octets. The length of the information field is variable up to some system-defined maximum.
- FCS (Frame Check Sequence) Field
It is an error-detecting code, calculated from the remaining bits of the frame, exclusive of flags. The normal code is the 16-bit CRC (Cyclic Redundancy Check). An optional 32-bit FCS, using CRC-32, may be employed if the frame length or the line reliability dictates this choice.

Join the conversation! Your thoughts help the community grow.