hdlc(什么是hdlc)
一、hdlc定义和原理
定义
高级数据链路控制(HDLC,High-level Data Link Control)是一组用于在网络结点间传送数据的协议。在HDLC中,数据被组成一个个的单元(称为帧)通过网络发送,并由接收方确认收到。HDLC协议也管理数据流和数据发送的间隔时间。HDLC是在数据链路层中最广泛最使用的协议之一,数据链路层是OSI七层网络模型中的第二层,第一层是物理层,负责产生与收发物理电子信号,第三层是网络层,其功能包括通过访问路由表来确定路由。在传送数据时,网络层的数据帧中包含了源节点与目的节点的网络地址,在第二层通过HDLC规范将网络层的数据帧进行封装,增加数据链路控制信息[2]。
作为ISO的标准,HDLC是基于IBM的SDLC协议的,SDLC被广泛用于IBM的大型机环境之中。在HDLC中,属于SDLC的被称为普通响应模式(NRM)。在通常响应模式中,基站(通常是大型机)通过专线在多路或多点网络中发送数据给本地或远程的二级站。这种网络并不是我们平时所说的那种,它是一个非公众的封闭网络,网络通信采取半双工[2]。
不同类型的HDLC被用于使用X.25协议的网络和帧中继网络,这种协议可以在局域网或广域网中使用,无论此网是公共的还是私人的。
在X.25版本的HDLC中,数据帧包含了一个数据包。在X.25网络中,数据在发送前先分成若干数据包,然后由路由器检测网络状况来确定路由,各数据包分别传送到目的节点,在目的节点按照正确的顺序合并为初始数据。X.25版本的HDLC采用点对点通信,通信方式采取全双工方式。这种类型的HDLC能够确保帧的差错释放和正确排序,称为LAPB(链路访问过程平衡)[2]。
特点
1.透明传输。高级数据链路控制对任意比特组合的数据均能透明传输。“透明”是一个很重要的术语,它表示:某一个实际存在的事物看起来好象不存在一样。“透明传输”表示经实际电路传送后的数据信息没有发生变化。因此对所传送数据信息来说,由于这个电路并没有对其产生什么影响,可以说数据信息“看不见”这个电路,或者说这个电路对该数据信息来说是透明的。这样任意组合的数据信息都可以在这个电路上传送[2]。
2.可靠性高。在高级数据链路控制规程中,差错控制的范围是除了F标志的整个帧,而基本型传输控制规程中不包括前缀和部分控制字符。另外高级数据链路控制对I帧进行编号传输,有效地防止了帧的重收和漏收[2]。
3.传输效率高。在高级数据链路控制中,额外的开销比特少,允许高效的差错控制和流量控制[2]。
4.适应性强。高级数据链路控制规程能适应各种比特类型的工作站和链路[2]。
5.结构灵活在高级数据链路控制中,传输控制功能和处理功能分离,层次清楚,应用非常灵活[2]。
类型
下面列出了不同类型的高级数据链路控制(HDLC)及其应用范围。
1.普通响应模式(NRM),应用范围:采用SDLC的多点网络[2];
2.链路访问协议(LAP),应用范围:早期X.25网络[2];
3.链路访问过程平衡(LAPB),应用范围:X.25网络[2];
4.ISDN链路访问协议-D信道(LAPD),应用范围:ISDN-D信道以及帧中继[2];
5.调制解调器链路存取规程(LAPM),应用范围:错误校验[2];
功能
帧控制
数据链路上传输的基本单位是帧。帧控制功能要求发送站把网络送来的数据信息分成若干码组,在每个码组中加入地址字段、控制字段、校验字段以及帧开始和结束标志,组成帧来发送;要求接收端从收到的帧中去掉标志字段,还原成原始数据信息后送到网络层[3]。
帧同步
在传输过程中必须实现帧同步,以保证对帧中各个字段的正确识别[3]。
差错控制
当数据信息在物理链路中传输出现差错,数据链路控制规程要求接收端能检测出差错并予以恢复,通常采用的方法有自动请求重发ARQ和前向纠错两种。采用ARQ方法时,为了防止帧的重收和漏收,常对帧采用编号发送和接收。当检测出无法恢复的差错时,应通知网络层做相应处理[3]。
流量控制
流量控制用于克服链路的拥塞。它能对链路上信息流量进行调节,确保发送端发送的数据速率与接收端能够接收的数据速率相容。常用的流量控制方法是滑动窗口控制法[3]。
链路管理
数据链路的建立、维持和终止,控制信息的传输方向,显示站的工作状态,这些都属于链路管理的范畴[3]。
透明传输
规程中采用的标志和一些字段必须独立于要传输的信息,这就意味着数据链路能够传输各种各样的数据信息,即传输的透明性[3]。
寻址
在多点链路中,帧必须能到达正确的接收站[3]。
异常状态恢复
当链路发生异常情况时,如收到含义不清的序列或超时收不到响应等,能自动重新启动,恢复到正常工作状态[3]。
二、hdlc是什么意思
HDLC是英文HighLevel Data Link Control的缩写,中文名是高级数据链路控制。
HDLC是英文HighLevel Data Link Control的缩写,中文名是高级数据链路控制,它是一组用于在网络结点间传送数据的协议,是由国际标准化组织颁布的一种高可靠性、高效率的数据链路控制规程,其特点是各项数据和控制信息都以比特为单位,采用“帧”的格式传输。
七十年代初,IBM公司率先提出了面向比特的同步数据链路控制规程SDLC(Synchronous Data Link Control)。随后,ANSI和ISO均采纳并发展了SDLC,并分别提出了自己的标准:ANSI的高级通信控制过程ADCP(Advanced Data Control Procedure),ISO的高级数据链路控制规程HDLC(High-level Data Link Control)。
HDLC相关特点:
1、HDLC是面向比特的数据链路控制协议的典型代表,该协议不依赖于任何一种字符编码集。
2、数据报文可透明传输,用于实现透明传输的“0比特插入法”易于硬件实现。
3、全双工通信,有较高的数据链路传输效率。
4、所有帧采用CRC检验,对信息帧进行顺序编号,可防止漏收或重发,传输可靠性高。
5、传输控制功能与处理功能分离,具有较大灵活性。
6、透明性:为实现透明传输,HDLC定义了一个特殊标志,这个标志是一个8位的比特序列,用它来指明帧的开始和结束。
三、hdlc采用的帧的首尾标志是什么
01111110
HDLC协议是一种面向比特的同步链路控制协议,采用01111110标志作为帧定界符
HDLC是链路层协议的一项国际标准,用以实现远程用户间资源共享以及信息交互。HDLC协议用以保证传送到下一层的数据在传输过程中能够准确地被接收,也就是差错释放中没有任何损失,并且序列正确。HDLC协议的另一个重要功能是流量控制,即一旦接收端收到数据,便能立即进行传输。