《计算机网络教学资料》第4章数据链路层_第1页
《计算机网络教学资料》第4章数据链路层_第2页
《计算机网络教学资料》第4章数据链路层_第3页
《计算机网络教学资料》第4章数据链路层_第4页
《计算机网络教学资料》第4章数据链路层_第5页
已阅读5页,还剩99页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1,第 4 章 数据链路层,数据链路层的基本概念 差错控制方法 数据链路层协议 数据链路层控制规程,数据链路层,数据链路层使用的信道主要有以下两种类型: 点对点信道。这种信道使用一对一的点对点通信方式。 广播信道。这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发,4.1 数据链路层的基本概念4.1.1 数据链路层的简单模型,局域网,广域网,主机 H1,主机 H2,路由器 R1,路由器 R2,路由器 R3,电话网,局域网,主机 H1 向 H2 发送数据,从层次上来看数据的流动,数据链路层的简单模型( 续),局域网,

2、广域网,主机 H1,主机 H2,路由器 R1,路由器 R2,路由器 R3,电话网,局域网,主机 H1 向 H2 发送数据,链路层,应用层,运输层,网络层,物理层,链路层,应用层,运输层,网络层,物理层,链路层,网络层,物理层,链路层,网络层,物理层,链路层,网络层,物理层,R1,R2,R3,H1,H2,仅从数据链路层观察帧的流动,IP 数据报,1010 0110,帧,取出,数据 链路层,网络层,链路,结点 A,结点 B,物理层,数据 链路层,结点 A,结点 B,(a),(b),发送,接收,链路,IP 数据报,1010 0110,帧,装入,数据链路层传送的是帧,4.1.2 链路和数据链路,链路(

3、link)是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。 一条链路只是一条通路的一个组成部分。 数据链路(data link) 除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。 现在最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件。 一般的适配器都包括了数据链路层和物理层这两层的功能。,数据链路层像个数字管道,常常在两个对等的数据链路层之间画出一个数字管道,而在这条数字管道上传输的数据单位是帧。 采用复用技术,一条物理链路可以构成多条数据链路 早期的数据通信协议曾叫作通信规程(procedure)。因此在

4、数据链路层,规程和协议是同义语。,4.2 三个基本问题,(1) 帧定界 (2) 透明传输 (3) 差错控制,4.2.1 帧定界,帧定界(framing)就是确定帧的界限。,帧结束,帧首部,IP 数据报,帧的数据部分,帧尾部, MTU,数据链路层的帧长,从这里开始发送,帧开始,用控制字符进行帧定界的方法举例,SOH,装在帧中的数据部分,帧,帧开始符,帧结束符,发送在前,EOT,4.2.2 透明传输,SOH,EOT,出现了“EOT”,被接收端当作无效帧而丢弃,被接收端 误认为是一个帧,数据部分,EOT,完整的帧,发送在前,解决透明传输问题,发送端的数据链路层在数据中出现控制字符“SOH”或“EOT

5、”的前面插入一个转义字符“ESC”(其十六进制编码是 1B)。 字节填充(byte stuffing)或字符填充(character stuffing)接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。 如果转义字符也出现数据当中,那么应在转义字符前面插入一个转义字符。当接收端收到连续的两个转义字符时,就删除其中前面的一个。,SOH,SOH,ESC,SOH,EOT,ESC,ESC,z,ESC,y,ESC,z,ESC,x,原始数据,EOT,EOT,经过字节填充后发送的数据,字节填充,字节填充,字节填充,字节填充,发送 在前,帧开始符,帧结束符,用字节填充法解决透明传输的问题,14,4.

6、2.3 差错控制,1、差错的产生 在数据通信过程中,由于信号的衰减、噪音的干扰,通信线路上的数据信号与干扰信号叠加在一起,会造成接收端接收到发生差错的数据。我们把通过通信信道后接收的数据与发送数据不一致的现象称为传输差错,通常简称为差错。,随机性错误 前后出错位没有一定的关系 突发性错误 前后出错位有一定的相关性,15,2.差错控制的方式,反馈纠错 前向纠错 混合纠错 反馈检验,图 反馈重发纠错的实现机制,2.差错控制的方式,1、反馈重发检错方法 反馈重发检错方法又称自动请求重发(ARQ)方法,它是由发送端发出能够检测错误的编码,接收端依据检错码的编码规则进行判断。检测出差错后通过反馈信道告诉

7、发送端重新发送数据,直到无差错为止。,2、前向纠错 前向纠错方法(FEC)是由发送数据端发出能纠错的编码,接收端收到这些编码后便进行检测,当检测出差错后自动纠正差错。,图 FEC方法原理图,优点:不需要反馈信道,也不存在由于反复重发而延误时间,实时性好。 缺点:附加的监督码较多,传输效率低,纠错设备比检错设备复杂。,2.差错控制的方式,18,2.差错控制的方式,3、混合纠错 它是反馈纠错和前向纠错两种方式的结合。发送端的码字不仅有检错能力,而且还具有一定的纠错能力。接收端收到码字后,译码器首先检验错误情况,如果在码的纠错能力以内,则自动纠错;如果超过了码的纠错能力,接收端通过反馈信道命令发送端

8、重发来纠正错误。,在数据通信和计算机网络中,几乎都采用ARQ差错控制技术。在采用无线电信道的通信系统中,由于信道误码率较高,大多采用HEC方式的差错控制技术。,19,差错控制的基本方式,反馈校验方式又称回程校验。 接收端把收到的数据序列原封不动地转发回发送端,发端将原发送的数据序列与返送回的数据序列比较。如果发现错误,则发送端进行重发,直到发端没有发现错误为止。 优点:不需要纠错、检错的编解码器,设备简单。 缺点:需要有双向信道,实时性差,且每一信码都相当于至少传送了两次,所以传输效率低。,4.反馈检验,20,21,4.2.4差错控制编码,原理: 编码:在向信道发送数据前,先按照某种关系将信息

9、位加上一定的冗余位(r位),构成一个码字再发送。 校验:接收端收到码字后查看信息位和冗余位,并检查它们之间的关系,以发现传输过程是否有差错发生。 检错码:能自动发现差错的编码。 纠错码:不仅能发现差错,且能自动纠错。 编码效率R:码字中信息位(k位)所占的比例。 R=k/n=k/(k+r) 是衡量编码性能好坏的一个重要参数 编码效率越高,则信道中用来传送信息码元的有效利用率越高。,22,4.2.4 检错码与纠错码,纠错码: 每个传输的分组带上足够的冗余信息; 接收端能发现并自动纠正传输差错。 检错码: 分组仅包含足以使接收端发现差错的冗余信息; 接收端能发现出错,但不能确定哪一比特是错的,并且

10、自己不能纠正传输差错。,23,常用的检错码,奇偶校验码 垂直奇(偶)校验 水平奇(偶)校验 水平垂直奇(偶)校验(方阵码) 循环冗余编码CRC 目前应用最广的检错码编码方法之一,24,循环冗余码 一般说来,纠错码的编码效率总不及检错码的编码效率,因而在通信中用得较多的还是检错码和ARQ方式。奇偶校验码作为一种检错码虽然简单,但是漏检率太高。 在计算机网络和数据通信中,用得最广泛的检错码是一种漏检率低也便于实现的循环冗余码CRC(Cyclic Redundancy Code)。,循环冗余检验的原理,25,循环冗余码 CRC码又称为多项式码。 任何一个由二进制数位串组成的代码都可由一个只含有0和1

11、两个系数的多项式建立一一对应的关系。 110001,表示成多项式 x5 + x4 + 1,26,循环冗余码 (CRC),循环冗余码(CRC码,多项式编码) 110001,表示成多项式 x5 + x4 + 1 生成多项式P(x) 发方、收方事前商定; n次(n+1位) 生成多项式的高位和低位必须为1 生成多项式必须比传输信息对应的多项式短 模2运算:加法不进位,减法不去位,除法中的减法仍然采用模2运算,27,循环冗余检验的原理,在数据链路层传送的帧中,广泛使用了循环冗余检验 CRC 的检错技术。 假设待传送的数据 M = 1010001101(共k bit)。我们在M的后面再添加供差错检测用的

12、n bit 冗余码一起发送。,28,冗余码的计算,用二进制的模 2 运算进行 2n 乘 M 的运算,这相当于在 M 后面添加 n 个 0。 得到的 (k + n) bit 的数除以事先选定好的长度为 (n + 1) bit 的数 P,得出商是 Q 而余数是 R,余数 R 比除数 P 至少要少1 个比特。,29,冗余码的计算举例,设 n = 5, P = 110101,模 2 运算的结果是:商 Q = 1101010110, 余数R = 01110。 将余数 R 作为冗余码添加在数据 M 的后面发送出去,即发送的数据是101000110101110,或 2nM + R。,30,110101011

13、0 Q 商 除数 P 110101 101000110100000 2nM 被除数 110101 111011 110101 111010 110101 111110 110101 101100 110101 110010 110101 01110 R 余数,循环冗余检验的原理说明,31,举例:,发送方,接收方,32,CRC码基本思想 校验和(checksum)加在帧尾,使带校验和的帧的多项式能被P(x)除尽;收方接收时,用P(x)去除它,若有余数,则检测传输出错。 是否得出的余数为0,就一定没有差错?,帧检验序列 FCS,在数据后面添加上的冗余码称为帧检验序列 FCS (Frame Chec

14、k Sequence)。 循环冗余检验 CRC 和帧检验序列 FCS并不等同。 CRC 是一种常用的检错方法,而 FCS 是添加在数据后面的冗余码。 FCS 可以用 CRC 这种方法得出,但 CRC 并非用来获得 FCS 的唯一方法。,接收端对收到的每一帧进行 CRC 检验,若得出的余数 R = 0,则判定这个帧没有差错,就接受(accept)。 若余数 R 0,则判定这个帧有差错,就丢弃。 但这种检测方法并不能确定究竟是哪一个或哪几个比特出现了差错。 只要经过严格的挑选,并使用位数足够多的除数 P,那么出现检测不到的差错的概率就很小很小。,应当注意,仅用循环冗余检验 CRC 差错检测技术只能

15、做到无差错接受(accept)。 “无差错接受”是指:“凡是接受的帧(即不包括丢弃的帧),我们都能以非常接近于 1 的概率认为这些帧在传输过程中没有产生差错”。 也就是说:“凡是接收端数据链路层接受的帧都没有传输差错”(有差错的帧就丢弃而不接受)。 要做到“可靠传输”(即发送什么就收到什么)就必须再加上确认和重传机制。,36,标准CRC生成多项式G(x),CRC-12 G(x)= x12+x11+x3+x2+x+1 CRC-16 G(x)= x16+x15+x2+1 CRC-CCITT G(x)= x16+x12+x5+1 CRC-32 G(x)= x32+x26+x23+x22+x16+x1

16、2+x11+ x10+x8+x7+x5+x4 + x2+x+1,严格挑选,使用位数较多的除数,出现检测不到的差错的概率几乎为0,37,Stop-and-Wait Protocol(SWP) GO BACK N(GBN) Selective Repeat Protocol(SRP),4.3 数据链路层协议,4.3.1 Stop-and-Wait Protocol(SWP)数据链路层的简单模型,局域网,广域网,主机 H1,主机 H2,路由器 R1,路由器 R2,路由器 R3,电话网,局域网,主机 H1 向 H2 发送数据,从层次上来看数据的流动,完全理想化的数据传输,39,数据链路层的简单模型(

17、续),局域网,广域网,主机 H1,主机 H2,路由器 R1,路由器 R2,路由器 R3,电话网,局域网,主机 H1 向 H2 发送数据,链路层,应用层,运输层,网络层,物理层,链路层,应用层,运输层,网络层,物理层,链路层,网络层,物理层,链路层,网络层,物理层,链路层,网络层,物理层,R1,R2,R3,H1,H2,仅从数据链路层观察帧的流动,40,1.完全理想化的数据传输,数据链路层,主 机 A,缓存,主 机 B,数据链路,AP2,AP1,缓存,发送方,接收方,帧,高层,帧,4.3.1 Stop-and-Wait Protocol(SWP),41,完全理想化的数据传输所基于的两个假定,假定

18、1: 链路是理想的传输信道,所传送的任何数据既不会出差错也不会丢失。 假定 2: 不管发方以多快的速率发送数据,收方总是来得及收下,并及时上交主机。 这个假定就相当于认为:接收端向主机交付数据的速率永远不会低于发送端发送数据的速率。,42,理想的数据传输,Data0,Data1,Data2,送给主机B,送给主机B,送给主机B,A,B,时间,43,2 .具有最简单流量控制的数据链路层协议,现在去掉上述的第二个假定。但是,仍然保留第一个假定,即主机 A 向主机 B传输数据的信道仍然是无差错的理想信道。然而现在不能保证接收端向主机交付数据的速率永远不低于发送端发送数据的速率。 由收方控制发方的数据流

19、,乃是计算机网络中流量控制的一个基本方法。,44,具有最简单流量控制的数据链路层协议,基本思想 发送方发送一帧就暂停下来,接收方收到数据帧后就交付给主机,然后发一信息给发送方,表示接收任务已经完成,这时发送方再继续发送下一帧。 流量控制的基本方法:接收方控制发送方的数据流量。 接收方的接收缓存大小:一个数据帧大小,45,两种情况的对比(传输均无差错),A,B,DATA,DATA,DATA,DATA,送主机 B,送主机 B,送主机 B,送主机 B,A,B,DATA,送主机 B,DATA,送主机 B,时 间,不需要流量控制,需要流量控制,46,3.实用的停止等待协议,基本原理 接收方B在收到发来的

20、一个数据帧后,利用循环冗余校验码CRC来检查帧的正确性。若正确,即交付给主机B,同时向主机A发送一个确认帧ACK,发送方A收到ACK后继续发送;若出错,向A发送否认帧NAK,A收到NAK后重传出错的数据帧,若重传超过一定次数后,即不再重传,而向上一层报告。,47,示意图,A,B,A,B,Data0,ACK,送主机B,送主机B,Data1,ACK,Data0,NAK,Data0,重发,ACK,Data1,送主机B,正常情况,数据帧出错,48,实际出现的问题及解决方法,第一个出现的问题:死锁 出现的原因: 1. 数据帧丢失 2. 确认帧丢失 解决的方法:超时重传,49,解决方法示意图,Tout,T

21、out,丢失,丢失,Data0,Data0,重传,ACK,重传,Data0,Data0,ACK,数据帧丢失,确认帧丢失,ACK,50,重传时间的选取,重传时间太短:导致在正常情况下,接收方的确认信息到发送方之前,发送方过早地重发数据 重传时间太长:导致双方都等待过长的时间 适合的大小:略大于“从发完数据帧到收到确认帧所需的平均时间”,51,出现的问题2:重复帧,重复帧的含义:接收方连续收到两个完全一样的数据帧 产生的原因:确认帧丢失,超时重传 解决的方法:为每一个数据帧编一个序号 编号系统的二进制位数 停止等待协议的编号系统的二进制位数 接收方收到重复帧后采取的措施:丢弃重复帧并且重发确认帧给

22、发送方,52,3 实用的停止等待协议,时 间,A,B,送 主 机,ACK,送 主 机,ACK,(a) 正常情况,四种情况,53,可靠传输,虽然物理层在传输比特时会出现差错,但由于数据链路层的停止等待协议采用了有效的检错重传机制,数据链路层对上面的网络层就可以提供可靠传输的服务。,54,帧检验序列 FCS,在数据后面添加上的冗余码称为帧检验序列 FCS (Frame Check Sequence)。 循环冗余检验 CRC 和帧检验序列 FCS并不等同。 CRC 是一种常用的检错方法,而 FCS 是添加在数据后面的冗余码。 FCS 可以用 CRC 这种方法得出,但 CRC 并非用来获得 FCS 的

23、惟一方法。 仅用循环冗余检验 CRC 差错检测技术只能做到无差错接受(accept)。 要做到“可靠传输”(即发送什么就收到什么)就必须再加上确认和重传机制。,55,4.3.2 连续ARQ协议,ARQ:(Automatic Repeat Request,自动请求重传) 工作原理:在发送方发送完一个数据帧后,不是停下来等待确认帧,而是可以连续再发送若干个数据帧。如果收到了接收端的确认帧,还可以接着发送数据帧;若帧出错,则重传出错的数据帧以及在其后发送的所有的数据帧。 由于减少了等待时间,整个通信的吞吐量就提高了。,56,连续 ARQ 协议的工作原理,ACK1 确认 DATA0,ACK2 确认 D

24、ATA1,DATA2 出错,丢弃,DATA3 不按序,丢弃,重传 ACK2,DATA4 不按序,丢弃,重传 ACK2,DATA5 不按序,丢弃,重传 ACK2,ACK3 确认 DATA2,ACK4 确认 DATA3,超 时 重 传 时 间,A,B,tout,送交主机,送交主机,?,57,需要注意:,(1) 接收端只按序接收数据帧。虽然在有差错的 2号帧之后接着又收到了正确的 3 个数据帧,但接收端都必须将这些帧丢弃,因为在这些帧前面有一个 2 号帧还没有收到。虽然丢弃了这些不按序的无差错帧,但应重复发送已发送过的最后一个确认帧(防止确认帧丢失)。 (2) ACK1 表示确认 0 号帧 DATA

25、0,并期望下次收到 1 号帧;ACK2 表示确认 1 号帧 DATA1,并期望下次收到 2 号帧。依此类推。,58,需要注意:,(3) 结点 A 在每发送完一个数据帧时都要设置该帧的超时计时器。如果在所设置的超时时间内收到确认帧,就立即将超时计时器清零。但若在所设置的超时时间到了而未收到确认帧,就要重传相应的数据帧(仍需重新设置超时计时器)。 在等不到 2 号帧的确认而重传 2 号数据帧时,虽然结点 A 已经发完了 5 号帧,但仍必须向回走,将 2号帧及其以后的各帧全部进行重传。连续 ARQ 又称为Go-back-N ARQ,意思是当出现差错必须重传时,要向回走 N 个帧,然后再开始重传。,5

26、9,注意事项、效率分析,注意事项: 接收端只顺序接收数据帧 发送方在发送完一个数据帧时都要设置超时计时器。 效率: 一方面因连续发送数据帧而提高了效率 另一方面在重传时必须把原来已正确传送过的数据帧进行重传,因此又降低了传送效率。 结论:连续ARQ协议不一定优于停止等待协议,60,2 滑动窗口的概念,考虑:在使用连续ARQ协议时,如果发送端一直没有收到对方的确认信息,那么发送端能否无限制地发送数据帧呢? 在连续ARQ协议中,应当将已发送出去但未被确认的数据帧的数目加以限制,这就是滑动窗口所要研究的内容。 滑动窗口分为发送窗口和接收窗口。,61,2 滑动窗口的概念,发送端和接收端分别设定发送窗口

27、和接收窗口 。 发送窗口用来对发送端进行流量控制。 发送窗口的大小 WT 代表在还没有收到对方确认信息的情况下发送端最多可以发送多少个数据帧。,62,0,1,2,3,4,5,6,7,0,1,2,发送窗口,WT,不允许发送这些帧,允许发送 5 个帧,(a),63,接收端设置接收窗口,在接收端只有当收到的数据帧的发送序号落入接收窗口内才允许将该数据帧收下。 若接收到的数据帧落在接收窗口之外,则一律将其丢弃。 在连续 ARQ 协议中,接收窗口的大小 WR = 1。 只有当收到的帧的序号与接收窗口一致时才能接收该帧。否则,就丢弃它。 每收到一个序号正确的帧,接收窗口就向前(即向右方)滑动一个帧的位置。

28、同时发送对该帧的确认。,64,不允许接收这些帧,0,1,2,3,4,5,6,7,0,1,2,WR,准备接收 0 号帧,(a),65,滑动窗口的重要特性,只有在接收窗口向前滑动时(与此同时也发送了确认),发送窗口才有可能向前滑动。 收发两端的窗口按照以上规律不断地向前滑动,因此这种协议又称为滑动窗口协议。 当发送窗口和接收窗口的大小都等于 1时,就是停止等待协议。,66,发送窗口的最大值,考虑:设n为发送序号所占的比特数,发送窗口的最大值能否是2n? 结论:当用n个比特进行编号时,若接收窗口的大小为1,则只有在发送窗口大小WT2n-1时,连续ARQ协议才能正确运行。,67,4.3.3 Selec

29、tive Repeat Protocol(SRP),为进一步提高信道的利用率,可设法只重传出现差错的数据帧或计时器超时的数据帧。但这时必须加大接收窗口大小,以便先收下发送序号不连续但仍处在接收窗口之内的那些数据帧。等到所缺序号的数据帧收到后再一并送交给主机。 选择重传ARQ协议可以避免重复传送那些本来已经正确到达接收端的数据帧;付出的代价是在接收端要设置相当容量的缓存空间。 对于选择重传 ARQ 协议,若用 n 比特进行编号,则接收窗口的最大值受下式的约束 WR 2n/2,68,4.4 数据链路层的控制规程,数据同步:在数据传输过程中,为了使接收方能够准确接收数据,接收方必须知道发送方发送数据

30、的起始位置和结束位置。 实现方法:异步规程和同步规程(面向字符和面向比特),69,4.4.1 面向字符型协议实例,什么是面向字符型协议? 以字符为控制传输信息的基本单元 ASIIC码: 格式字符:SOH(start of heading) STX(start of text) ETB(end of transmission block) ETX(end of text) 控制字符:ACK(acknowledge) NAK(negative acknowledge) ENQ(enquire) EOT(end of transmission) SYN(synchrous) DLE(data lin

31、k escape),70,面向字符型BSC协议的数据报文格式:,71,4.4 典型数据链路层协议分析 面向比特型,4.4.1 HDLC产生的背景 面向字符型数据链路层协议的缺点: 报文格式不一样;过多依赖字符编码集,不利于兼容。 传输透明性不好; 等待发送方式,传输效率低。 面向比特型协议的设计目标: 以比特作为传输控制信息的基本单元; 数据帧与控制帧格式相同; 传输透明性好; 连续发送,传输效率高。,72,HDLC,HDLC是支持在点到点和多点链路上的半双工和全双工通信而设计的,它是面向比特的数据链路协议。 面向比特的协议:则将传输帧或包看作是单个比特的连续流,通过它们在帧的位置和与其他比特

32、的组合模式来表达意义。根据内嵌在比特模式中的信息的不同,面向比特的协议中的控制信息可以是一个或多个比特。,4.4.2 HDLC的基本特点,三种类型的站 两种配置 三种数据操作模式,73,74,两个 DTE 通过 DCE进行通信的例子,Data terminal equipment(DTE):数据终端设备 Data circuit-terminating equipment(DCE):数据电路端接设备 DTE产生数据,并连同必要的控制字符一起传送给DCE。DCE将信号转化成适合于传输介质的形式并将它发送到网络中。当信号到达另一端时,将发生相反的过程。,75,station(站),数据链路中不同类

33、型的DTE统称为“站”(station) 由计算机和终端组成,负责发送和接收帧。涉及三种类型的站: Primary station(主站):send information or command 主要功能是发送命令(包括数据),接收响应,负责整个链路的控制(如系统的初始、流控、差错恢复等); Secondary station(从站):receive information or send response 主要功能是接收命令,发送响应,配合主站完成链路的控制; Compound station(组合站): 同时具有主、次站功能,既发送又接收命令和响应,并负责整个链路的控制。,76,4.5.2

34、 数据链路的配置和数据传送方式,数据链路的配置 非平衡配置 平衡配置 非平衡配置中的主站与从站 主站:控制数据链路的工作过程。主站发出命令 从站:接受命令,发出响应,配合主站工作 非平衡配置中的结构特点 点-点方式 多点方式,77,HDLC适用的链路配置,非平衡型 适合把智能和半智能的终端连接到计算机。 点 点式 多点式,78,非平衡配置方式,正常响应模式(normal response mode,NRM) 主站可以随时向从站传输数据帧; 从站只有在主站向它发送命令帧进行探询(poll),从站响应后才可以向主站发送数据帧。 异步响应模式(asynchronous response mode,A

35、RM) 主站和从站可以随时相互传输数据帧; 从站可以不需要等待主站发出探询就可以发送数据; 主站负责数据链路的初始化、链路的建立、释放与差错恢复等功能。,79,数据链路的非平衡配置方式,80,平衡配置方式,链路两端的两个站都是复合站(combined station); 复合站同时具有主站与从站的功能; 每个复合站都可以发出命令与响应; 平衡配置结构中只有异步平衡模式(asynchronous balanced mode,ABM); 异步平衡模式的每个复合站都可以平等地发起数据传输,而不需要得到对方复合站的许可。,适合于计算机和计算机之间的连接,81,数据链路的平衡配置方式,82,4.4.3

36、HDLC 的帧结构,标志字段 F (Flag) 为 6 个连续 1 加上两边各一个 0 共 8 bit。在接收端只要找到标志字段就可确定一个帧的位置。,比特,8,8,8,可变,16,8,信息 Info,标志 F,标志 F,地址 A,控制 C,帧检验序列 FCS,透明传输区间,FCS 检验区间,83,Frame(HDLC),FLAG :Bit pattern 01111110 帧同步 To prevent the flag from occurring inside the packet,the sender and the receiver modify the bit stream as f

37、ollows. 一帧内两个F之间的字段不能出现类似标志序列的比特组合 The sender inserts a 0 bit any time five consecutive 1 bit are transmitted. 检查两个F之间各字段,若有5个连“1”就在第5个“1”之后插入一个“0” The receiver discards every arriving 0 bit that five consecutive 1 bits.,84,零比特的填充与删除,数据中某一段比特组合恰好 出现和 F 字段一样的情况,0 1 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0,会被误认为

38、是 F 字段,85,零比特插入/删除工作过程,86,透明传输,采用零比特填充法就可传送任意组合的比特流,或者说,就可实现数据链路层的透明传输。 当连续传输两个帧时,前一个帧的结束标志字段 F 可以兼作后一帧的起始标志字段。 当暂时没有信息传送时,可以连续发送标志字段,使收端可以一直和发端保持同步。,87,其他字段,地址字段 A 是 8 bit。 帧检验序列 FCS 字段共 16 bit。所检验的范围是从地址字段的第一个比特起,到信息字段的最末一个比特为止。 控制字段 C 共 8 bit,是最复杂的字段。HDLC 的许多重要功能都靠控制字段来实现。,88,帧类型及控制字段的意义,89,Three

39、 types of frames,Information transfer(I):信息帧 N(S)表示当前发送数据帧的顺序号 N(R)表示该站所期望接收帧的顺序号。有捎带确认作用,它表示该站已正确接收序号为N(R )-1帧及以前各帧,下一次应接收帧序号为N(R)值的帧 全双工通信,通信的每一方都各有一个N(S)和N(R),P/F:探询/终止位,90,P/F bit 轮询/结束位,P/F字段是具有双重功能的单个比特位。仅当该位被设置(比特值为1)时才有意义,并意味着轮询或结束。当帧是从主站点发送到从站点时(当地址字段含有接收方地址时),它意味着轮询。当帧是从从站点发送到主站点时(当地址字段含有发

40、送方地址时),它意味着结束。,91,监控帧,Supervisory(S) frames:监控帧,实现对数据链路的监控。该帧内没有信息字段。S帧类型由S(2bit)表示,分为四种:RR、RNR、REJ、SREJ RR(ready to receive):主站或从站已准备好接收I 帧,并确认前面收到的至N(R)-1为止的所有I 帧。 RNR(not ready to receive):忙状态,不能接收后续的I 帧,而对N(R)-1及以前的I 帧予以确认。 REJ(rejects):请求重发编号为N(R)开始的I 帧,而对N(R)-1及以前的I 帧予以确认。 SREJ(selective reject):用于选择重发策略。请求重发编号为N(R)的单个I 帧,而对N(R)-1及以前的I 帧予以确认。,92,U frame(无编号帧),Are used to connect and disconnect. 用来提供链路的建立和拆除等多种附加的数据链路控制功能,不包含任何确认信息,由于帧中无顺序

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论