HDLC Protocol

[HDLC Protocol] [HDLC IC's] [HDLC Standards]

HDLC Protocol Description

HDLC [High-level Data Link Control] is a group of protocols for transmitting [synchronous] data [Packets] between [Point-to-Point] nodes.
In HDLC, data is organized into a frame.
HDLC protocol resides with Layer 2 of the OSI model, the data link layer.
HDLC uses zero insertion/deletion process [bit stuffing] to ensure that the bit pattern of the delimiter flag does not occur in the fields between flags.
The HDLC frame is synchronous and therefore relies on the physical layer to provide method of clocking and synchronizing the transmission and reception of frames.

HDLC Protocol Frame
General HDLC Frame

Opening Flag, 8 bits [01111110], [7E Hex]
Address, 8 bits [ could be more]
Control, 8 bits, or 16 bits
Data [Payload], Variable, not used in some frames, or may be padded to complete the fill
CRC, 16 bits, or 32 bits
Closing Flag, 8 bits [01111110], [7E hex]

User data which contains 7E is resolved using an escape sequence which converts 7E to 7D-5E [with 7D being the escape character].
If 7D is used in the data stream it again is converted into 7D-5D. Address 11111111 is known as all stations, 00000000 is this station.

Frames may be aborted by sending an abort sequence [01111111] instead of the normal flag sequence [01111110].
An abort sequence will cause the frame to be discarded.
During idle times when no frames are being transmitted idle flags [11111111] may be sent to fill the area between frames.
A continuous series of flags [01111110] may be sent to fill the area between frames instead of sending idle flags [11111111].

HDLC Fill between Frames
Fill between Frames

HDLC Opening Flag
8 bits [01111110], [7E hex]
The Opening flag may be preceded by additional flags [01111110] or idle flags [11111111], both used as inter-frame fill.

HDLC Address Field
HDLC Address Field

HDLC Address Field
The length of the address field depends on the data link layer protocol used, but is normally 0, 8 or 16 bits in length. In many cases the address field is typically just a single byte, but an Extended Address [EA] bit may be used allowing for multi-byte addresses. A one residing in the LSB bit indicates [the end of the field] that the length of the address field will be 8 bits long. A zero in this bit location [now the first byte of a multi-byte field] indicates the continuation of the field [adding 8 additional bits]. The SDLC protocol will use only an 8 bit address.
The SS7 protocol, which is used in point-to-point links, does not use an address field at all.

The first [MSB] bit in the Address field indicates if the frame is a unicast or multicast message.
A zero in the MSB bit location indicates a unicast message; the remaining bits indicate the destination node address.
A one in the MSB bit location indicates multicast message, the remaining bits indicate the group address.

HDLC Control Field
The Control field is 8 or 16 bits and defines the frame type; Control or Data. The Control field is protocol dependent.

HDLC Data Field
The Data field may vary in length depending upon the protocol using the frame. Layer 3 frames are carried in the data field.

FCS [16 bits] = X16 + X12 + X5 + 1
FCS [32 bits] = X32 + X26 + X23 + X22 + X16 + X12 + X11 + X10 + X8 + X7 + X5 + X4 + X2 + X + 1

Frame Encapsulation:
A few different versions of the HDLC frame are shown below.
These include the PPP [Point-to-Point Protocol] HDLC frame, and the Ethernet HDLC frame.

HDLC Ethernet Protocol Frame
Ethernet HDLC Frame Encapsulation

Ethernet Frame Encapsulation:
The Preamble [a specific bit pattern] Informs the receiving station that a new packet is arriving and synchronizes the receive clock with the transmitted clock. Used in Ethernet, not HDLC.

The Address Field consists of a Source Address and/or a Destination Address. The Source and Destination Addresses identify the sender [Source] and receiver [Destination]. The Source Address is used to identify to the network that's sending data. The Destination Address is used to identify who should be receiving the data. Some protocols may only have one address.

The Control Field indicates the type of Information that is being sent as Data. It identifies the purpose of the packet as Data or Control information, and may also indicate the size of the packet and Data.

The Data Field is the actual information being transmitted. It can contain Control Information for handshaking, or actual Data used by applications.

The CRC [Cyclic Redundancy Checking] or FCS [Frame Check Sequence] contains an error checking number that the Destination can use to verify that the packet is error free.

The End Frame Delimiter has a specific bit pattern. This bit pattern identifies the end of the packet to the Destination. Protocols with fixed packet size may not require an End Frame Delimiter.

For some physical interfaces [SDH or SONET] after the data as been encapsulated into the frame it must still be scrambled before being sent to the physical layer [from the Link layer].

HDLC PPP Protocol Frame
Point-to-Point Protocol HDLC Frame Encapsulation

Point-to-Point Protocol Frame Encapsulation:
Point-to-Point Protocol [PPP] is used in transporting multi-protocol datagrams over point-to-point links. PPP is capable of operating on many DTE/DCE interfaces (such as, RS-232C, RS-422, RS-423 or V.35). PPP is used with full-duplex circuits [dedicated or circuit-switched] operating in either an asynchronous (start/stop), bit-synchronous, or octet-synchronous mode, transparent to PPP Data Link Layer frames. PPP does not require the use of control signals, such as Request To Send (RTS), Clear To Send (CTS), Data Carrier Detect (DCD), and Data Terminal Ready (DTR). For asynchronous links, inter-octet and inter-frame time fill MUST be accomplished by transmitting continuous "1" bits.

HDLC IC Manufacturers

HDLC: High-Level Data Link Control.
SDLC: Synchronous Data Link Control. Link layer protocol based on synchronous, bit-oriented operation.
Other Protocols; LAP; Link Access Procedure and LAPB; Link Access Procedure, Balanced, PPP Point-to-Point Protocol and Frame Relay.
Additional information from Cisco.

Conexant Systems Inc. {HDLC}

Infineon {HDLC Controller IC}

LSI Corporation {HDLC IC Manufacturer}

Maxim Integrated Products {DS31256 (256 channel PCI to HDLC) and 4 families of parts that provide Ethernet to HDLC translation: DS33X162, DS33R41, DS33Z41 and DS33M33}

PMC-Sierra Inc. {32 link, 256 HDLC channel Frame Engine and Data Link Manager, 8 link, 128 HDLC channel data link manager, 336 Link, 1024 Channel HDLC Controller with FR and PPP Multilink}

STMicroelectronics {Signalling System 7 Link Controller}

TranSwitch Corp. {HDLC Controller ICs}

Zarlink Semiconductor

Use the COMPONENTS icon below for all other IC [Integrated Circuits] types.

HDLC Standards and Specifications

[IS 3309]: Information Processing Systems--Data Communication High-Level Data Link Control Procedure--Frame Structure

ISO {International Organization for Standardization}

Related: Protocol Acronyms, Protocol Definitions

Electronic Engineering tags: HDLC Standard, High-level Data Link Control Specification
Point-to-Point Protocol, and HDLC Protocol.

PC motherboard

Distributor rolodex Electronic Components Electronic Equipment EDA CDROM Software Engineering Standards, BOB card Cabled Computer Bus Electronic Engineering Design Table Conversion DB9-to-DB25.
DistributorsComponents Equipment Software Standards Buses Design Reference

Modified 1/8/12
Copyright © 1998 - 2016 All rights reserved Larry Davis