美文网首页
HDLC协议

HDLC协议

作者: Gascognya | 来源:发表于2020-10-22 13:12 被阅读0次

HDLC协议:高级数据链路(High-Level Data Link Control)

简介

帧格式

HDLC帧格式

1. 标志字段(Flag) = 8bit

HDLC使用固定的01111110作为分隔符,分别在帧的开始和结束为止。
两帧之间,共有同一分隔符。即分隔符 - 内容 - 分隔符 - 内容 - 分隔符

在信道激活状态期间,即便没有进行帧发送,发送方仍然会不断地发送标志字段。这样如果接收方收到一个不是标志字段的内容,可以判断为,新的一帧传输开始了。

但是数据帧中也有可能包含01111110的内容,该如何分辨呢?
HDLC采用了"0比特插入法"

"0比特插入法":在发送数据连续5个1时,会插入一个0。这样保证了不会插入连续6个1,无法构成实质上的01111110内容,而是会发送011111010

2. 地址字段(Address) = 8bit

表示发送节点或者接收节点的地址,具体取决于工作方式。主从模式下,该值一直是从节点
8bit可以标志256个地址,当首位为0时,表示后面的一字节表示扩展地址,这样可以超过256个。

3. 控制字段(Control) = 8bit

代表报文的类型,HDLC帧分为信息帧监控帧无编号帧。该字段可以控制报文类型,组成各种命令。

4. 信息字段(Information) = ∞

用来存放实际数据,内容长度0不限制,为0则代表无信息字段。例如监控帧就是无信息字段。

5. 帧校验序列字段(FCS) = 16/32bit

HDLC帧中包含一个16或32比特的FCS(Frame Check Sequence, FCS)
其对地址字段,控制字段,信息字段进行循环冗余校验(CRC-16/CRC-32)。接收到帧后对帧校验序列进行校验。发现错误可以发送否定确认,也可以不发送等超时。

帧类型

HDLC有三种帧类型

  1. 信息帧I,控制字段第1个比特位为0
  2. 监控帧S,控制字段第1,2个比特位为10
  3. 无编号帧U,控制字段第1,2个比特位为11
帧类型

1. 信息帧 Information

N(S)与N(R)分别标志发送帧的序号,和期望接收帧的序号,这两个字段用于实现滑动窗口机制,以及确认已接受N(R)之前的所有帧

2. 监控帧 Supervisor

用于控制差错,其中type代表2字节的类型字段,有四种不同的编码。

类型字段

3. 无类型帧 Unnumbered

用于连接管理,也可以传输数据。可以管理会话信息。type字段一共3+2=5个比特,可以定义32种类型。

P / F

用法

相关文章

网友评论

      本文标题:HDLC协议

      本文链接:https://www.haomeiwen.com/subject/odgemktx.html