当前位置: 首页 > news >正文

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

HDLC(High-Level Data Link Control,高级数据链路控制协议)是ISO标准的数据链路层协议,用于点对点或点对多点通信中的可靠帧传输控制。它是一个面向比特的协议,广泛用于串行链路、PPP 和各种广域网链路中。


✅ HDLC 的核心内容包括:


1. 帧结构

HDLC 的每一帧由以下字段组成:

字段名长度作用
Flag8位帧开始和帧结束标志:01111110 (0x7E)
Address8位或更多标识发送方/接收方地址(在点对点中常为 0xFF)
Control8或16位控制帧类型,如发送数据、确认等
Information可变实际传输的数据内容(可选)
FCS(Frame Check Sequence)16 或 32位CRC 校验字段,保证数据完整性
Flag8位帧尾部标志,仍为 01111110 (0x7E)

2. 帧类型

HDLC 有三类控制帧:

帧类型名称用途
I帧Information Frame传输用户数据
S帧Supervisory Frame巡检帧,用于流量控制和确认(如ACK)
U帧Unnumbered Frame链路管理,如建立/释放连接、命令响应等

3. 比特填充(Bit Stuffing)机制

  • 因为 HDLC 是面向比特的协议,帧起始和结束使用特殊的比特序列 01111110
  • 如果数据中连续出现 5 个“1”,就自动插入一个“0”(避免出现 6 个 1 触发误判);
  • 接收方在接收数据时会去除填充的 0。

4. 工作模式(操作方式)

5. 确认与重传机制

HDLC 支持:

  • 正向确认(ACK)
  • 否定确认(NAK)
  • 超时重传
  • 窗口流控机制(滑动窗口)

这些机制使 HDLC 成为可靠的、有序的数据链路层协议

✅ 总结一句话:

HDLC 是一个面向比特的、可靠的、支持确认重传、支持多种帧类型与控制机制的数据链路层协议,在串行通信和广域网中被广泛使用。


相关文章:

  • uniapp-商城-47-后台 分类数据的生成(通过数据)
  • uniapp 不同路由之间的区别
  • 高频数据结构面试题总结
  • 数据类型:List
  • [特殊字符]适合母亲节的SVG模版[特殊字符]
  • 解决 Redis 缓存与数据库一致性问题的技术指南
  • 配置Java Selenium Web自动化测试环境
  • 在Mathematica中加速绘制图形(LibraryLink)
  • Linux——进程信号
  • 【Qt】编译 Qt 5.15.x For Windows 基础教程 Visual Studio 2019 MSVC142 x64
  • 【什么是 Referrer Policy ?(详解:来源地址策略;访客从哪里来)】
  • project从入门到精通(四)
  • 智芯Z20K144x MCU开发之时钟架构
  • Git_idea界面进行分支合并到主分支详细操作
  • C++编程语言:标准库:标准库概观(Bjarne Stroustrup)
  • 半导体机器人赛道“领跑者”优艾智合:以创新驱动国产化替代加速度
  • Sourcetree安装使用的详细教程
  • 高拟人化客服机器人显著提升用户接受度
  • 第一天——贪心算法——分饼干
  • STM32F103RC中ADC1和ADC2通道复用
  • 浙江一民企拍地后遭政府两次违约,“民告官”三年又提起民事诉讼
  • 中消协点名新能源汽车行业:定金退款争议频发
  • 专访|高圆圆:像鸟儿一样,柔弱也自由
  • 创新创业50人论坛开幕在即,双创青年为何选择来上海筑梦?
  • 习近平在俄罗斯媒体发表署名文章
  • 山东滕州车祸致6人遇难,肇事司机已被刑事拘留