计算机通信网第4章数据通信接口与链路控制改.ppt
-
资源ID:63574083
资源大小:1.50MB
全文页数:74页
- 资源格式: PPT
下载积分:30金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
计算机通信网第4章数据通信接口与链路控制改.ppt
第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 第第4章章 数据通信接口与链路控制数据通信接口与链路控制 4.1 数据通信系统数据通信系统 4.2 数据通信接口特性数据通信接口特性 4.3 数据链路控制的基本概念数据链路控制的基本概念 4.4 数据链路控制协议机理与分析数据链路控制协议机理与分析 4.5 差错控制差错控制 4.6 高级数据链路控制高级数据链路控制(HDLC)规程规程 第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.1 数据通信系统数据通信系统 典型的数据通信系统主要由数据电路和两侧的数据终端设备所组成,如图4.1.1所示。在ITU的系列建议中,数据终端设备(DTE)泛指智能终端(各类计算机系统、服务器)或简单终端设备(如打印机),内含数据通信(或传输)控制单元。数据电路包含传输介质及两端的数据电路终接设备(DCE,DataCircuitTerminatingEquipment)。图4.1.1传统的数据通信系统的基本构成第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 如前所述,计算机通信在不同的发展阶段有其不同的应用对象,为了说明数据链路控制的作用,在此再强调一下两个术语:数据电路和数据链路26。数据电路是一条连接通信双方的物理电路段(可以是线传输媒体,也可以是软传输媒体),中间不包括任何交换节点。数据链路是在数据电路已建立的基础上,通过发送方和接收方之间交换“握手”信号,使双方确认后方可开始传输数据的两个或两个以上的终端装置与互连线路的组合体。当采用复用技术时,一条物理电路可以构成多条数据链路。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.1.1通信方式数据通信的传输是有方向性的,从通信双方的信息交互方式和数据电路的传输能力来看,有以下三种基本方式:单工通信:即单方向通信,如电视广播、无线广播等,如图4.1.2(a)所示。半双工通信:即双向交替通信,双方不能同时通信;一方发送信息时,另一方只能接收信息,反之亦然,如图4.1.2(b)所示。全双工通信:即双向同时通信,双方能同时收发信息,如图4.1.2(c)所示。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 图4.1.2三种基本通信方式(a)单工通信;(b)半双工通信;(c)全双工通信第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.1.2异步通信和同步通信在串行传输中,解决收、发端间字符传输的同步协调目前主要存在两种方式:异步通信和同步通信。异步通信方式也称起止式同步通信,它以字符为传输单位,不论字符所采用的代码为多少位,在发送每一个字符代码时,都要在前面加上一个起始位,该起始位的长度为1个码元,极性为“0”,表示一个字符的开始。在每个字符代码的后面还要加上一个终止位,长度可选为1、1.5或2个码元长度,极性为“1”,表示一个字符的结束。异步串行通信的字符如图4.1.3所示。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 图4.1.3异步串行通信的字符第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 异步通信方式的优点是实现字符同步比较简单,收发双方的时钟信号不需要严格同步;缺点是不适宜高速率的数据通信,且对每个字符都需加入起始位和终止位,因而传输效率低。如字符采用国际5号码,起始位为1位,终止位为1位,并采用1位奇/偶校验位,则传输利用率仅为70。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 同步通信方式要比异步通信方式复杂,它是以固定的时钟节拍来发送数据信号的,因此在一个串行数据流中,各信号码元之间的相对位置是固定(同步)的。接收端为了从接收到的数据流中正确地区分一个个信号码元,必须具有与发送端一致的时钟信号。在同步通信方式中,发送的数据一般以组(Block)或帧(Frame)为单位。通常一组(或帧)数据包含多个字符代码或多个比特,在其前、后分别加上控制字段和校验字段,如图4.1.4所示。图4.1.4同步串行通信的字符第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 同步方式有比特同步、字符同步和帧同步等。与异步通信方式相比,由于它发送每一字符时不需要单独加起始位和终止位,具有较高的传输效率,故现代数据通信,特别是高速环境下,主要采用同步通信。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.1.3传输代码由数据终端设备发出的数据信息一般都是字母、数字或符号的组合。为了传递这些信息,首先需将这些字母、数字或符号用二进制数“0”或“1”的组合,即二进制代码来表示(在OSI参考模型上位于表示层)。目前常用的传输代码有:国际5号码、国际电报2号码、EBCDIC码和信息交换用汉字代码。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 1.国际5号码国际5号码是一种7单位代码,以7位二进制码来表示一个字母、数字或符号,最早是美国国家标准化协会在1963年提出的,称为美国信息交换用标准代码(ASCII,AmericanStandardCodeforInformationInterchange),后被ISO和ITUT采纳并发展成为国际通用的信息交换用标准代码。表4.1.1列出了国际5号码编码表。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 表4.1.1国际5号码编码表第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.2 数据通信接口特性数据通信接口特性 4.2.1通信接口的机械特性10DTE和DCE之间的接口首先涉及用于多线互连的接插件的机械特性,它规定了接插件的几何尺寸和引线排列,如图4.2.1所示。几种常用的接插件规格及其应用环境如表4.2.1所示。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 图4.2.1通信接口机械特性(接插件的几何尺寸和引线排列)第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.2.2通信接口的电气特性电气特性描述了通信接口的发信器(驱动器)、接收器的电气连接方法及其电气参数,如信号电压(或电流)、信号源、负载阻抗等。ITUTV系列建议的V.28、V.10、V.11及X系列的X.26、X.27都是描述有关电气特性的,其中V.10与X.26,V.11与V.27具有相同的特性,参见表4.2.2。表4.2.2中给出的数据传输率是参考值,它与DTE/DCE间电缆的长度和类型有关。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.3 数据链路控制的基本概念数据链路控制的基本概念4.3.1物理链路的基本结构由计算机和通信的各自发展进程可知,直接连接一词是指两台设备之间的传输信道为直接连接的通信形式。例如,两台计算机的直接连接如图4.3.1(a)所示,常称点-点连接;多台计算机的直接连接如图4.3.1(b)所示,常称多点连接。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 图4.3.1物理链路的结构(a)点-点连接;(b)多点连接第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 物理链路的基本结构可分为两种:点-点链路和多点链路。数据链路两端的DTE可以是计算机或终端,也可是路由器或交换设备。从链路逻辑功能的角度来看,这些设备可称为站;从网络拓扑结构的观点来看,则常称之为节点(Node)。1)点-点链路在点-点链路中,发送信息或命令的站常称为主站(Primary,可简写成P),接收信息和命令而发出确认信息或响应的站称为从站(Secondary,可简写成S);兼有主、从站功能,可发送命令或响应的站称为复合站。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 2)多点链路在多点链路中,往往有一站为控制站,主管数据链路的信息流,并处理链路上出现的不可恢复的差错情况;其余各站则为受控站。多点链路早先用于面向终端的计算机系统,随着计算机通信技术的发展,现已广泛用于计算机局域网、无线分组网和卫星分组网。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 上述的数据链路控制功能与其数据链路控制协议(规程)密切相关,不同的网络具有不同的通信协议(规程)。本章讨论的重点是广域网的数据链路控制协议(规程),而局域网的数据链路控制协议(规程)比广域网的更为复杂,我们将在介绍局域网时再进行讲述。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.4 数据链路控制协议机理与分析数据链路控制协议机理与分析 4.4.1停止等待协议在广域网数据链路层上,最简单、最基本的数据链路控制协议是停止等待(StopandWait)协议。为叙述方便起见,我们假设数据以帧(Frame)为单元传输,并且数据链路为半双工传输方式,如图4.4.1所示,仅由节点A向节点B发送数据,节点B向节点A回送确认。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 图4.4.1停止等待协议的通信过程第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 1.停止等待协议的特征描述停止等待协议的特征是:当节点A发出一个数据帧后,必须停止发送,等待节点B的应答(Acknowledgement,ACK)。如果节点B收到数据帧后,经检验无差错,则回送一应答(确认)帧通知节点A,节点A才能发送下一个数据帧,这种处理称之为正证实。1)正常情况所谓正常情况,是指在传输过程中,任何帧都不会出错或被丢失,这是一种理想情况。如图4.4.1所示,主机A将原文送到节点A,以数据帧格式通过数据电路传到节点B。节点B收到数据帧后,经验证无误,应立即执行下列操作:第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 (1)把数据帧送往主机B。(2)向节点A回送一个应答帧(ACK)确认。下面从时间顺序对传输一个数据帧的简单过程来分析停止等待协议的特征。设t1为数据帧传输第1比特的开始时刻,t2为第1比特到达节点B的时刻,t3为数据帧最后1比特到达的时刻,则数据帧的传播时间tp为(4.1)式中,l为节点AB间的传输距离(km);v为电波速度,一般在线媒质中取为2105km/s。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 数据帧的传输时间tF为(4.2)式中,设F为数据帧长度(bit),C为数据传输速率(b/s)。又设每个帧F由控制信息和数据信息两个部分组成,即式中,H为控制信息的比特数,D为每帧数据信息的比特数。节点A和B处理帧的时间tproc为 tproc=t4-t3=t7-t6第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 应答帧(ACK)的传输时间tA为式中,A为应答帧长度。因此,停止等待协议传输一个数据帧中D比特数据的信道利用率U为(4.3)第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 如果在纯理想的条件下,即既不考虑数据传输时间又忽略传播时延,不计确认帧的开销,则信道利用率U仅与帧的结构F=H+D有关。例如,设帧F的D长度为128字节,而H为6字节,由此可算得U=95.5%。与异步通信方式传输一个字符的信道利用率U=70%相比较,可见以帧为单元的同步通信的信道利用率有了较大的改善。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 2)非常情况现在,我们再来讨论节点A与B之间的数据传输有可能出现差错的情况。其差错具体表现在以下两方面:(1)节点A向节点B发送数据帧时,在传送中受到干扰出错或丢失数据。(2)节点B收到数据帧后,回送出ACK帧,在BA的传输过程中,受到干扰出错或丢失数据。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 这两方面的问题都致使节点A将一直等不到ACK确认帧,因此,节点A也就永远无法继续发送下一个帧,这就形成了死锁(DeadLock)。解决上述问题的办法是在节点A设置一个定时器T1,它的预定时间为t0。当发出一个数据帧后,立即启动定时器T1。若在预定时间t0内,节点A能收到ACK,则可继续正常传送下一个待发帧。若在预定时间内收不到ACK,即超时(TimeOut),则节点A由此可判定应重发数据帧。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 定时器的t0值必须不小于节点A与B之间来回传播的时间,即节点A与B发、收帧的处理时间以及回送确认帧ACK的传输时间,也即t0(2tp+2tproc+tA)。很明显,如果t0(2tp+2tproc+tA),则有可能在回送ACK的行程中,节点A的定时器已超时,误认有错而重发,这样在节点B将会收到第二份相同的数据帧,形成重复帧,这是在数据链路控制协议中要采取措施解决的又一问题。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 要解决重复帧的问题,行之有效的方法是对每一个发出的数据帧都编上号。若接收端收到相同编号的帧,可认为出现了重复帧,这时应当丢弃这一重复帧,与此同时,节点B仍需向节点A发送确认帧ACK,表明上一次发送的ACK已受干扰或丢失,并未送到节点A。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 接着要考虑的问题是如何选用编号方案。对于停止等待协议,节点A每次只能发一个数据帧,所以只需用1bit的两个状态0、1加以编号即可。在正常的数据帧交换过程中,帧的序号0、1交替出现。每发送一个新的数据帧,编号值与上一次不同,收方就能区分出新的或重复的数据帧。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 2.停止等待协议的定量分析现在我们来对上述的停止等待协议作定量分析。考虑到传输差错的影响,若某帧被干扰或丢失,设定时器的时限为T,则不成功传输所占用的传输容量Q1为F+CT。如果每帧重发平均次数为R,那么含R个废帧、一个正确帧的信道总容量Q0为 Q0=R(F+CT)+(F+A+2CI)式中,I=tp+tproc。那么,考虑到传输差错影响的信道利用率U0为第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 现在再计算每帧重发的R。设p1为丢失某一数据帧的概率,p2为丢失1个ACK的概率。当数据帧和ACK帧两者均被正确接收,即帧发送成功的概率为(1-p1)(1-p2)时,显然有故障的概率p为1-(1-p1)(1-p2),在k次试验中有k-1次重发的概率为(1-p)pk-1,则每帧传送的平均数R为(4.4)第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 所以,每个数据帧重发的平均次数R为将式(4.5)代入式(4.4),可得(4.6)为简化分析,假设定时器的超时值T近似等于(A/C+2I),那么信道利用率U0可化简为(4.7)第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 上式表明停止等待协议的实际信道利用率U0与以下三个因素有关:(1)第一项D/(H+D),表明帧内附加控制信息标题的大小H会直接影响U0的值,即使在正常情况下,为传送数据位D也要考虑附加H时所引起的开销。(2)第二项(1-p),表明在传送过程中出现差错的概率p决定着重发过程。也就是说,差错概率越大,重发可能性越大,致使U0降低。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 (3)最后一项是协议的控制过程所引起的开销,每发送一数据帧,要等待T才能发送下一个数据帧,因此T值越大,其U0越低。当式(4.7)中的HD,且CTF时,该式就简化为U(1-p),说明信道利用率U取决于故障的概率p。由以上分析可知,停止等待协议很简单,但信道利用率不高。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 3.停止等待协议的算法下面用程序语言来阐述停止等待协议的算法。为了讨论方便,仍设数据链路为半双工通信方式,仅由节点A发送数据帧,节点B接收数据帧,并假定只回送ACK确认帧。发送节点A内设发送状态变量V(S),接收节点B内设接收状态变量V(R)。V(S)的值表示下一个待发送的帧序号,V(R)的值表示期望接收的帧序号。停止等待协议基本的收发过程如图4.4.2所示。其工作过程解释如下:第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 图4.4.2停止等待协议(半双工传输方式)基本的收发过程第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 (1)经数据链路初始化后,V(S)、V(R)分别置于0。(2)对停止等待协议的V(S)、V(R),若用1bit编号,只能是0、1两个值。(3)节点A每发送一个新帧,在其控制字段中填上N(S)值,此值取自V(S)。图中节点A发送第一个数据帧I格式内含N(S),其值为0,因为N(S)=V(S)。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 (4)在节点B,每收到一个数据帧,将其N(S)与节点B内的V(R)相比。若相等,表明该帧序号为期望值,则把数据帧的信息内容送往主机;修改V(R),取V(R)V(R)+1(模2),赋值V(R)=1;同时对节点A回送确认帧ACK,内含节点B期望收到的下一个帧序号N(R),此值为修改后的V(R)。如不相等,表明发送出错。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 (5)当节点A收到节点B的确认帧时,RRN(R)=1,RR表示接收端准备妥(ReceiveReady)。取出N(R)=1,节点A判定N(S)为0的数据帧已被节点B正确接收了,可以发下一个数据帧,其V(S)应为V(S)+1=0+1=1。为了对上述停止等待协议(半双工传输方式)基本的收发过程有一个深入的理解,下面给出用C语言编写的算法程序:第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.4.2滑动窗口的流量控制方法实用的数据链路通信一般要求双向传输,即每个节点都能发送和接收数据;同一帧中既有数据信息又含有控制信息;发送节点发出的每一个帧均应有序号。本节将引入“滑动窗口(SlideWindow)”机制来说明如何循环重复使用已收到确认的帧的序号,提供可靠的流量控制手段,保证信息传输的准确性,有效地提高信道利用率。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 1.滑动窗口的概念“滑动窗口”机制是实现数据帧的顺序控制的逻辑过程,它要求通信两端节点设置发送存储单元(缓冲区),用于保存已发送但尚未被确认的帧,这些帧对应着一张连续序号列表。实质上,这些帧也可等效成一个先进先出的队列,如图4.4.3所示。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 假定现用3bit进行编号,则窗口尺寸W的最小值为1,最大值为模数值-1即2n-1=7。对于模8的应用,数据帧的顺序编号总是07这8个数字循环,于是可以把窗口看作(注意仅仅是看作而言)是由一个圆的多个连续的八等分扇形面所组成的,如图4.4.4所示,每个扇形面代表一个序号,并按顺时钟方向编号。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.4.3连续ARQ协议连续ARQ协议的工作原理是应用滑动窗口机制的流量控制方法,改进了停止等待协议的缺点;在发送一个数据帧后,不是停止发送,而是允许继续发送多个数据帧,使通信的效率得到了提高。在连续ARQ协议中,所用的发送窗口尺寸WT应大于1,且接收端是有序接收的。允许连续发送数据帧的个数取决于窗口尺寸的大小,一般WT2n-1,其中n为编号的bit数。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 现举例解释连续ARQ协议的工作过程,如图4.4.5所示。假设节点A向节点B发数据帧,设发送窗口的尺寸WT=5,表明节点A可连续发送5个数据帧,其序号为04。当节点A发完0号帧后,可以继续发送后续的1号帧、2号帧等,对于每一帧分别按顺序编号。而接收窗口的尺寸WR=1。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 下面来寻求连续ARQ协议的吞吐量关系式。由图4.4.5可见,在无差错时,成功地发送一个数据帧所需的时间为tF;当出现差错时,重发一个数据帧所需的时间为tT。图4.4.5中重发处理所需的时间应近似为3tF+2tp。由此可得出在连续ARQ协议情况下,正确传送一个数据帧所需的平均时间t为式中a=tT/tF。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 当发送节点处于饱和状态时,吞吐量的最大值(每秒成功发送的最大帧数)max为而归一化的吞吐量为(4.10)(4.9)第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 式中,为每秒到达的帧数,小于max。若式(4.10)中a=1(即传播时间和超时时限值都远小于一个数据帧的传输时间tF),则=(1-p)=S,即为停止等待协议的吞吐量。例在一个广域网上传送数据(参见图4.4.5),设数据帧为1096bit,数据速率为64kb/s,链路长度为2000km。试求停止等待协议的归一化吞吐量S与连续ARQ协议的归一化吞吐量C(设p=0.01)。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 解第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 此例结果表明,在题中的条件下,采用连续ARQ协议的归一化吞吐量C可达95.9%,而同样情况下,停止等待协议的归一化吞吐量S只有23.7%。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.4.4选择重传ARQ协议为了进一步提高信道利用率,减少重传的帧数,可以设法只重传有错的帧或者是定时器超时的帧,这就是选择重传ARQ协议。在该协议中,接收窗口的尺寸WR必须加大,使得接收序号不连续的但仍在接收窗口内的那些帧可暂存一下,以便等待所缺序号的帧重传到之后再一并送交主机。由此可见,这种协议所允许的发送窗口的尺寸WT和接收窗口的尺寸WR均可大于1,但应满足下式:WT+WR2n (4.11)第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.5 差错控制差错控制 计算机通信中的差错控制主要用来提高数据传输的可靠性与传输效率,它涉及纠、检错编码理论与方法,数据信道中差错分布的统计特性,以及选择相应的差错控制方式。计算机通信中的差错控制方式基本上可分为以下三类:(1)自动请求重发(ARQ):接收端检测到接收信息有错时,通过重发发送端保存的副本以达到纠错的目的。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 (2)前向纠错(FEC):接收端检测到接收信息有错后,通过计算,确定差错的位置,并自动加以纠正。(3)混合方式:接收端采取纠错混合(在ATM中应用),即对少量差错予以自动纠正,而超过其纠正能力的差错则通过重发原信息的方法加以纠正。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.6 高级数据链路控制高级数据链路控制(HDLC)规程规程 同步通信的数据链路控制可分为以下两类:面向字符的链路控制和面向比特的链路控制。早期的计算机通信,如ARPANet的IMPIMP协议(IMP,Interfac eMessageProc essing,接口消息处理)和IBM公司的二进制同步通信(BSC,BinarySync hronousCommunic ation)规程都是面向字符的,第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 它使用一组给定的字符编码集合(如ASCII码)中特定的10个“控制字符”来确定数据帧的边界,并控制数据交换随着计算机通信的发展,面向字符的数据链路控制规程(DLCP)存在不少缺点。如BSC规程中采用停止等待协议,因而在长距离、高速率环境下信道利用率很低,只适用于半双工传输方式;而且只对数据部分进行差错控制,因此对控制部分出错就无能为力了;第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 控制功能扩展性差,每增加一项控制功能就得添加及定义相应的控制字符。为此,IBM公司在20世纪70年代初推出了面向比特的同步数据链路控制(SDLC)规程,用于IBMSNA中的数据链路层。后来,IBM将SDLC规程提交到美国国家标准学会(ANSI)和ISO讨论。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 ANSI把SDLC修改为ADCCP(高级数据通信控制规程)作为美国标准,ISO把SDLC修改成HDLC(高级数据链路控制)规程。ITUT(原CCITT)将HDLC修改成链路接入控制(LAP,LinkAc c essControl)规程,作为X.25建议中的帧级技术标准;后来又改为LAPB,意指平衡型链路接入规程。另外,还有帧中继技术中采用的LAPF,NISDN中D信道采用的LAPD,接入网(Ac c essNetwork)中采用的LAPV等。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 HDLC和ADCCP没有本质上的区别。SDLC、X.25的LAPB、LAPF、LAPD和LAPV都是HDLC的一个子集,这些规程的主要特点是:不论数据还是单独的控制信息,均以帧的单元传送。本节主要介绍面向比特的高级数据链路规程的操作模式、帧结构及其有关的基本应用。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.6.1HDLC的基本特点HDLC定义了三种类型的站、两种配置和三种数据传送模式。(1)三种类型的站为:主站、从站、复合站。(2)两种配置为:不平衡配置,可用于点-点链路或多点链路;平衡配置,只能用于点-点链路,链路两端要求为复合站。(3)三种数据传送操作模式为:正常响应模式(NRM):属于不平衡配置,只有主站才能发起向从站的数据传输,而从站只有在主站询问(即发送命令帧)时才能回答响应帧。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 异步响应模式(ARM):也属于不平衡配置,这种方式允许从站发起向主站的数据传输,即从站不必等待主站发命令就可向主站发响应帧,但主站仍负责全程的初始化、差错恢复和逻辑拆线(释放)。异步平衡模式(ABM):属于平衡配置,任一复合站均可发送、接收命令/响应帧,无询问的额外开销。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.6.2HDLC的帧结构如上所述,数据链路层的数据传输是以帧为单位的,在OSI中称为数据链路协议数据单元。一个帧的结构有固定的格式,如图4.6.1所示。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 1.标志字段(F)标志字段在帧的两端用一组合型字符为帧的定界符,即01111110。图4.6.20比特插入/删除原理第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 图4.6.3接收端帧标志判决过程第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 2.地址字段(A)地址字段的使用取决于特定的过程类别。在使用不平衡配置传送数据时,地址字段总是写入从站的地址;但在平衡配置时,地址字段总是填入应答站的地址。此外,某些地址可以分配给一个以上的站,形成组(Group)地址。全1地址为广播方式,全0地址是无效地址。8位地址字段的有效地址可达254个,对一般的多点链路是足够的。但考虑有些特殊链路(如无线分组网)的用户较多,可以扩展地址字段。每个8bit地址段的低位比特如为1,则表示最后一个字节;如为0,则表示下一字节的高7位亦为地址。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 3.控制字段(C)控制字段是HDLC的关键字段,许多重要的功能都靠控制字段来实现。HDLC有3种不同类型的帧格式,如图4.6.1所示,即信息帧(I)、监视帧(S)、未编号帧(U)。在控制字段8bit中,b0比特为0,则定义为I帧;b01、b10为S帧;b01、b11为U帧。下面分别介绍这3种帧的特点。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 1)信息帧(I)信息帧用于数据传送,它包含有信息字段。在控制字段中,b1b3比特为N(S),b5b7比特为N(R)。N(S)表示当前发送的信息帧的序号,N(R)表示该站所期望收到的帧的发送序号。为了保证协议正常工作,在全双工通信的收发双方均设置两个状态变量V(S)和V(R)。在采用连续ARQ协议时,每发送一个新帧,必须将当前V(S)和V(R)值分别填入控制字段的N(S)和N(R)。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 发送1帧后,可将V(S)加1(模8)。每当需要重发时,可从缓存队列中依次取出已发过而未收到确认的帧,其序号N(S)仍用原序号,与当前V(S)之值无关。但重发旧帧时,其接收序号N(R)应予以更新,使其与V(R)一致。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 b4比特称作PF比特,其功能较多:在命令帧中是探询位(P位),在响应帧中是停止位(F位)。探询位用于引导对端发送响应;停止位用于对探询位为1的命令帧作出响应,即收到探询位为1的命令帧后,应尽快发送终止位为1的响应帧。有了P/F比特,可使HDLC规程的应用更加灵活。当两个复合站全双工通信时,一方随时可使P1,这时对方应立即回答且置F=1。如果不用P/F比特,那么收方不一定马上会发送确认帧,有可能在收方要发送信息帧时把确认信息N(R)捎带出去。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 2)监视帧(S帧)监视帧用于监视和控制数据链路,完成信息帧的接收确认、重发请求和暂停发送请求等功能。监视帧没有信息字段,全帧长度(含F标志)为48bit。监视帧共有4种,由b2b3比特组成,前3种用在连续ARQ中,最后一种只用于选择重发ARQ中(较少使用)。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 3)未编号帧(U帧)未编号帧用于附加的数据链路控制及管理,它本身不带编号,可以在任何需要的时刻发出,不影响带序号的信息帧的交换顺序。它由5个比特位来表示不同的未编号帧(共32种组合)。HDLC所定义的未编号帧名称及代码见表4.6.1。在表4.6.1中还列出了HDLC的子集X.25帧及使用的未编号帧(仅有符号“”标记的5种命令或响应)、监视帧(RR、RNR和REJ)。第第4 4章章 数据通信接口与链路控制数据通信接口与链路控制 4.信息字段(I)信息字段允许为可变长的任意比特数,但应是8比特的整数倍。5.帧校验序列(FCS)帧校验序列(FCS)是一个16bit的序列,它用于帧的差错检验。