安防通讯百科

您现在的位置是:首页 > IT通信百科 > 正文

IT通信百科

HDLC,hdlc定义和原理

root012023-04-14IT通信百科40

定义

高级数据链路控制(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原理概述高级数据链路控制(High?Level?Data?Link?Control?protocol)?高级数据链路控制(HDLC)协议是一个在同步网上传输数据、面向比特的数据链路层协议,它是由国际标准化组织(ISO)根据IBM公司的SDLC(Synchronous?Data?Link?Control)协议扩展开发而成的.促进传送到下一层的数据在传输过程中 能够准确地被接收(也就是差错释放中没有任何损失并且序列正确)。七十年代初,IBM公司率先提出了面向比特的同步数据链路控制规程SDLC?(Synchronous?Data?Link?Control)。

随后,ANSI和ISO均采纳并发展了SDLC,并分别提出了自己的标准:ANSI的高级通信控制过程ADCCP(Advanced?Data?Control?Procedure),ISO的高级数据链路控制规程HDLC(High-level?Data?Link?Contl)。

链路控制协议着重于对分段成物理块或包的数据的逻辑传输,块或包由起始标志引导并由终止标志结束,也称为帧。帧是每个控制、每个响应以及用协议传输的所有信息的媒体的工具。所有面向比特的数据链路控制协议均采用统一的帧格式,不论是数据还是单独的控制信息均以帧为单位传送。每个帧前、后均有一标志码01111110,用作帧的起始、终止指示及帧的同步。

标志码不允许在帧的内部出现,以免引起畸意。为保证标志码的唯一性但又兼顾帧内数据的透明性,可以采用“0比特插入法”来解决。该法在发送端监视除标志码以外的所有字段,当发现有连续5个“1”出现时,便在其后添插一个“0”,然后继续发后继的比特流。在接收端,同样监视起始标志码以外的所有字段。当连续发现5个“1”出现后,若其后一个比特“0”则自动删除它,以恢复原来的比特流;若发现连续6个“1”,则可能是插入的“0”发生差错变成的“1”,也可能是收到了帧的终止标志码。后两种情况,可以进一步通过帧中的帧检验序列来加以区分。“0比特插入法”原理简单,很适合于硬件实现。

作为面向比特的数据链路控制协议的典型,HDLC具有如下特点:协议不依赖于任何一种字符编码集;数据报文可透明舆传输,用于实现透明传输的“0比特插入法”易于硬件实现;全双工通信,不必等待确认便可连续发送数据,有较高的数据链路传输效率;所有帧均采用CRC校验,对信息帧进行编号,可防止漏收或重份,传输可靠性高;传输控制功能与处理功能分离,具有较大灵活性和较完善的控制功能。由于以上特点,目前网络设计普遍使用HDLC作为数据链路管制协议。

发表评论

评论列表

  • 这篇文章还没有收到评论,赶紧来抢沙发吧~