English

HDLC协议简介

1 介绍

HDLC协议,有时又称SDLC协议,是行业通信普遍采用的一种链路层协议。HDLC协议规范参见ISO/IEC 13239标准文档。


2 HDLC帧定界

SDLC/HDLC协议的标志符是一个8bit位组合,其格式为01111110(十六进制7E),即两个0中间夹着6个连续的1。一帧信息以标志符为起始,并以标志符作为结束,所以标志符也称为帧定界符。

HDLC协议的目标是能传输任意位组合的数据(即所谓的数据透明传输),同时标志符具有唯一性,即在数据序列中不能再出现01111110的序列。

为了达到透明传输的目的,发送方采用“0比特插入技术”,在发送信息帧时,对于除标志符以外的所有信息,只要遇到5个连续的1,就在其后自动插入1个0。接收方为恢复信息的原来格式,在接收时采用“0比特删除技术”,即除标志符外,当连续接收到5个1时,就自动删除1个0。


3 帧格式

HDLC完整的帧由标志字段(F)、地址字段(A)、控制字段(C)、信息字段(I)、帧校验序列字段(FCS)等组成:

标志字段(F):为标志符01111110,标志帧的起止。

地址字段(A):标识通信站点的地址,其中全1表示广播地址。

控制字段(C):确定帧类型。

信息字段(I):可变长字节的信息内容,必须是8位的整数倍,也可以为0长度。

帧校验序列(FCS):采用16位的CRC,对两个标志字段之间的整个帧的内容进行校验。

 

开始标志

Opening Flag

地址字段

Address Field

控制字段

Control Field

信息字段

Information Field

帧校验序列

Frame Check Sequence Field

结束标志

Closing Flag

01111110

1字节

1字节

可变长,N字节

2字节

01111110


4 帧类型与操作方式

HDLC协议根据控制字段把帧划分为信息帧I(Information)、 监控帧S(Supervisory)和无编号帧U(Unnumbered)三大类。并定义了NRM、ARM、ABM三种链路操作方式,约定通信端点之间如何主从,如何进行握手。

 

由于HDLC很多情况下工作在低速线路上,为了避免包的延迟过长,要求数据字段尽可能的短,一般最长不超过256字节。

 

相关产品

HDLC-LCM 双网口通信模块
  • 适用于空管、列车、航天、工业网络
  • +3.3V供电、低功耗嵌入式通信模块
  • 2x 100M以太网PHY接口
  • 4x 串口,支持同步HDLC、异步UART
  • 支持NRZ、NRZI、DBPL、曼彻斯特编码
  • 46.5 x 48 mm微小尺寸、2.0mm插针接口
查看详情
HDLC-CPCI/PXIe 同步串口通信卡
  • 适用于航天测控、工业网络
  • CPCI/PXI、CPCIe/PXIe 3U通信卡
  • 1x 100M以太网口
  • 4x RS-422/485同异步串口
  • 串口支持同步HDLC协议、异步UART
  • 编码格式支持NRZ、NRZI、DBPL、曼彻斯特、差分曼彻斯特
查看详情