High-Level Data Link Control

It can operate with or without a continuous connection between devices, making it versatile for various network configurations.

It was extended and standardized by the ITU as LAP (Link Access Procedure), while ANSI named their essentially identical version ADCCP.

HDLC was the inspiration for the IEEE 802.2 LLC protocol, and it is the basis for the framing mechanism used with the PPP on synchronous lines, as used by many servers to connect to a WAN, most commonly the Internet.

A similar version is used as the control channel for E-carrier (E1) and SONET multichannel telephone lines.

HDLC frames can be transmitted over synchronous or asynchronous serial communication links.

On both synchronous and asynchronous links, the flag sequence is binary "01111110", or hexadecimal 0x7E, but the details are quite different.

Because a flag sequence consists of six consecutive 1-bits, other data is coded to ensure that it never contains more than five 1-bits in a row.

This bit-stuffing serves a second purpose, that of ensuring a sufficient number of signal transitions.

Thus, each 0 bit provides an opportunity for a receiving modem to synchronize its clock via a phase-locked loop.

The frame check sequence (FCS) is a 16-bit CRC-CCITT or a 32-bit CRC-32 computed over the Address, Control, and Information fields.

Synchronous Data Link Control (SDLC) was originally designed to connect one computer with multiple peripherals via a multidrop bus.

Normal response mode allows the secondary-to-primary link to be shared without contention, because it has the primary give the secondaries permission to transmit one at a time.

It also allows operation over half-duplex communication links, as long as the primary is aware that it may not transmit when it has permitted a secondary to do so.

Asynchronous balanced mode adds the concept of a combined terminal which can act as both a primary and a secondary.

This means that the address field is not optional, even on point-to-point links where it is not needed to disambiguate the peer being talked to.

The primary only sends a Poll when it has received a Final back from the secondary, or after a timeout indicating that the bit has been lost.

Information frames, or I-frames, transport user data from the network layer.

In addition they also include flow and error control information piggybacked on data.

Supervisory Frames, or 'S-frames', are used for flow and error control whenever piggybacking is impossible or inappropriate, such as when a station does not have data to send.

Unnumbered frames, or U-frames, are primarily used for link management, although a few are used to transfer user data.

The purpose of this mode is to allow the primary to reliably detect a secondary being powered off or otherwise reset.

The minimal set required for operation are: The HDLC module on the other end transmits (UA) frame when the request is accepted.

Even though fewer than 32 values are in use, some types have different meanings depending on the direction they are sent: as a command or as a response.

The UI, UIH, XID, TEST frames contain a payload, and can be used as both commands and responses.