第4章 数据链路层

上传人:人*** 文档编号:584604576 上传时间:2024-08-31 格式:PPT 页数:92 大小:1.72MB
返回 下载 相关 举报
第4章 数据链路层_第1页
第1页 / 共92页
第4章 数据链路层_第2页
第2页 / 共92页
第4章 数据链路层_第3页
第3页 / 共92页
第4章 数据链路层_第4页
第4页 / 共92页
第4章 数据链路层_第5页
第5页 / 共92页
点击查看更多>>
资源描述

《第4章 数据链路层》由会员分享,可在线阅读,更多相关《第4章 数据链路层(92页珍藏版)》请在金锄头文库上搜索。

1、第第第第4 4章数据链路层章数据链路层章数据链路层章数据链路层主讲:谢昕主讲:谢昕主讲:谢昕主讲:谢昕课程内容课程内容课程内容课程内容差错控制方法差错控制方法数据链路层的基本概念数据链路层的基本概念数据链路层协议的工作原理数据链路层协议的工作原理BSC与与HDLC的原理与结构的原理与结构Internet中的数据链路层协议中的数据链路层协议2为什么要设计数据链路层?为什么要设计数据链路层?为什么要设计数据链路层?为什么要设计数据链路层?l在原始物理传输线路上传输数据信号是有差错的;在原始物理传输线路上传输数据信号是有差错的;l设计数据链路层的主要目的:设计数据链路层的主要目的: 将有差错的物理线

2、路改进成无差错的数据链路;将有差错的物理线路改进成无差错的数据链路; 方法方法 差错检测(如差错检测(如CRCCRC) 差错控制(如差错控制(如ARQARQ) 流量控制流量控制l作用:改善数据传输质量,向网络层提供高质量的服务。作用:改善数据传输质量,向网络层提供高质量的服务。4.1 4.1 差错产生与差错控制方法差错产生与差错控制方法3差错产生的原因和差错类型差错产生的原因和差错类型差错产生的原因和差错类型差错产生的原因和差错类型 l传输差错 通过通信道后接收的数据与发送数据不一致象;l差错控制 检查是否出现差错以及如何纠正差错;l通信信道的噪声分为两类:热噪声和冲击噪声;由热噪声引起的差错

3、是随机差错,或随机错;冲击噪声引起的差错是突发差错,或突发错;l引起突发差错的位长称为突发长度;l在通信过程中产生的传输差错,是由随机差错与突发差错共同构成的。4 误码率的定义误码率的定义误码率的定义误码率的定义误误码码率率定定义义:二进制比特在数据传输系统中被传错的概率,它在数值上近似等于: PePe = = NeNe/N/N其中:N为传输的二进制比特总数; Ne为被传错的比特数。5讨论讨论讨论讨论l误码率应该是衡量数据传输系统正常工作状态下传输可靠性的参数;l未必误码率越低越好,要根据实际传输要求;l差错的出现具有随机性,只有被测量的传输二进制比特数越多,才会越接近于真正的误码率值。6检错

4、码与纠错码检错码与纠错码检错码与纠错码检错码与纠错码 l纠错码纠错码: 每个传输的分组带上足够的冗余信息;每个传输的分组带上足够的冗余信息; 接收端能发现并自动纠正传输差错。接收端能发现并自动纠正传输差错。l检错码检错码: : 分组仅包含足以使接收端发现差错的冗余信息;分组仅包含足以使接收端发现差错的冗余信息; 接接收收端端能能发发现现出出错错,但但不不能能确确定定哪哪一一比比特特是是错错的的,并并且且自己不能纠正传输差错。自己不能纠正传输差错。 7常用的检错码常用的检错码常用的检错码常用的检错码l奇偶校验码 垂直奇(偶)校验 水平奇(偶)校验 垂直奇(偶)校验(方阵码) l循环冗余编码CRC

5、 目前应用最广应用最广的检错码编码方法之一81.将要发送的数据比特序列当成一个多项式f(x)的系数,在发端用双方约定的生成多项式G(x)去除,得到一个余数多项式;2.将余数(冗余)加在数据后面一起发送到接收端;3.收方将收到的数据除以G(x),其余数与发方的比较4.若一致,则传送正确。否则错误,由发方重发数据直到正确为止。CRC的原理的原理9生成多项式的选择有国际标准生成多项式的选择有国际标准生成多项式的选择有国际标准生成多项式的选择有国际标准lCRC-12 G(x)= x12+x11+x3+x2+x+1lCRC-16 G(x)= x16+x15+x2+1lCRC-CCITT G(x)= x1

6、6+x12+x5+1lCRC-32 G(x)= x32+x26+x23+x22+x16+x12+x11+ x10 +x8+x7+x5+x4 + x2+x+1 10CRCCRC的原理的原理 11冗余码的计算冗余码的计算 l假设待传送的数据 M = 10100011011010001101(共k bit)。在M的后面再添加供差错检测用的 n bit 冗余码一起发送。l用二进制的模 2 运算,进行 2n 乘 M 的运算,这相当于在 M 后面添加 n 个 0。l得到的 (k + n) bit 的数除以事先选定好的长度为 (n + 1) bit 的数 P,得出商是 Q, 而余数是 R,余数 R 比除数

7、P 至少要少1 个比特。 12冗余码的计算举例设要发送的数据 I = 10100011011010001101 ,n = 5, P = 110101,模 2 运算的结果是: 商 Q = 1101010110, 余数R = 01110。将余数 R 作为冗余码添加在数据 M 的后面发送出去,或 2nM + R,即发送的数据是:10100011010111013 1101010110 Q 商 除数 P 110101 101000110100000 2nM 被除数 110101 111011 110101 111010 110101 111110 110101 101100 110101 110010

8、 110101 01110 R 余数循环冗余检验的原理说明循环冗余检验的原理说明 发送的数据发送的数据:10100011010111014差错控制机制差错控制机制差错控制机制差错控制机制 反馈重发机制反馈重发机制检错重发 (CRC)超时重发 (Timeout)15反馈重发机制的分类反馈重发机制的分类反馈重发机制的分类反馈重发机制的分类 l 停止等待方式停止等待方式 16l连续工作方式连续工作方式 拉回方式选择重发方式 17 4.24.2数据链路层的基本概念数据链路层的基本概念数据链路层的基本概念数据链路层的基本概念主主机机A数数据据缓缓冲冲区区主主机机B高层高层缓缓冲冲区区高层高层数数据据帧帧

9、帧帧发送方发送方接收方接收方数据链路层:数据链路层:物理线路通信协议物理线路通信协议18基本概念基本概念基本概念基本概念 l链路(link)是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。一条链路只是一条通路的一个组成部分。l数据链路(data link) 除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。现在最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件。一般的适配器都包括了数据链路层和物理层这两层的功能。 19数据链路层像个数字管道数据链路层像个数字管道 l常常在两个对等的数据链路层之间画出一个数字管道

10、,而在这条数字管道上传输的数据单位是帧。l早期的数据通信协议曾叫作通信规程(procedure)。因此在数据链路层,规程和协议是同义语。 结点结点帧帧20 ?发送方:?发送方:?接收方:?接收方:?传输过程:?传输过程:!解决这些问题,是链路层的主要任务。!解决这些问题,是链路层的主要任务。!针对这些问题所制定的通信规程就是数据链路层的!针对这些问题所制定的通信规程就是数据链路层的通信协议。通信协议。以多快的速度发送数据帧,即每帧之间相隔多长以多快的速度发送数据帧,即每帧之间相隔多长时间?如何确认对方是否收到数据?时间?如何确认对方是否收到数据?是否接收到正确的数据帧?如何告诉发送方?是否接收

11、到正确的数据帧?如何告诉发送方?能及时处理接收到的数据帧吗?能及时处理接收到的数据帧吗?在数据链路层上传输数据帧在数据链路层上传输数据帧会出错吗?会丢失数据帧吗?会出错吗?会丢失数据帧吗?21数据链路层的主要功能数据链路层的主要功能 数数数数据据据据链链链链路路路路层层层层最最最最重重重重要要要要的的的的作作作作用用用用就就就就是是是是:通通通通过过过过一一一一些些些些数数数数据据据据链链链链路路路路层层层层协协协协议议议议(即即即即链链链链路路路路控控控控制制制制规规规规程程程程), 在在在在不不不不太太太太可可可可靠靠靠靠的的的的物物物物理理理理链链链链路上实现可靠的数据传输。路上实现可靠

12、的数据传输。路上实现可靠的数据传输。路上实现可靠的数据传输。其主要功能可归纳如下其主要功能可归纳如下其主要功能可归纳如下其主要功能可归纳如下:(1) (1) (1) (1) 链路管理链路管理链路管理链路管理 (2) (2) (2) (2) 帧定界帧定界帧定界帧定界 (3) (3) (3) (3) 流量控制流量控制流量控制流量控制 (4) (4) (4) (4) 差错控制差错控制差错控制差错控制 (5) (5) (5) (5) 透明传输透明传输透明传输透明传输 (6) (6) (6) (6) 寻址寻址寻址寻址22数据链路层的主要功能数据链路层的主要功能(1) (1) 链路管理链路管理 通信前先建

13、立一条数据链路,传输数据时要维持数据链路,而在通信完毕时要释放数据链路。数据链路的建立、维持和释放就叫做链路管理。 (2)(2)帧帧同步同步 帧同步是指收方应当能从收到的比特流中准确地区分出一帧的开始和结束。23数据链路层的主要功能数据链路层的主要功能 (3)(3)流量流量控制控制 当收方来不及接收发方发送的数据时,就必须及时控制发方发送数据的速率。(4)(4)差错差错控制控制 收方可以检测出收到的帧中是否有差错,以决定发方是否重发该帧,直到收方正确收到为止。24数据链路层的主要功能数据链路层的主要功能(5)(5)透明透明传输传输 收方必须能自动区分所传送的是数据信息还是控制信息,从而使链路上

14、可传送任意比特组合的信息,这就是“透明传输”。(6)(6)寻址寻址 在多点连接的情况下,必须保证每一帧都能送到正确的地址。双方也应当知道发方是哪一个站。 25数据链路层的简单模型数据链路层的简单模型局域网广域网主机 H1主机 H2路由器 R1路由器 R2路由器 R3电话网局域网主机 H1 向 H2 发送数据链路层应用层运输层网络层物理层链路层应用层运输层网络层物理层链路层网络层物理层链路层网络层物理层链路层网络层物理层R1R2R3H1H2从层次上来看数据的流动26数据链路层的简单模型数据链路层的简单模型( ( 续)续)局域网广域网主机 H1主机 H2路由器 R1路由器 R2路由器 R3电话网局

15、域网主机 H1 向 H2 发送数据链路层应用层运输层网络层物理层链路层应用层运输层网络层物理层链路层网络层物理层链路层网络层物理层链路层网络层物理层R1R2R3H1H2仅从数据链路层观察帧的流动274.3 4.3 停止等待停止等待ARQARQ协议协议完全理想化的数据传输完全理想化的数据传输1 1:在链路上传送数据帧不会出错,也不会丢失。:在链路上传送数据帧不会出错,也不会丢失。 2 2:接收方的速度永远不会低于发送方的速度。:接收方的速度永远不会低于发送方的速度。这时数据链路层协议非常简单: 只要控制发送方把数据帧从缓冲区发送到数据链路上;接收方把数据帧从链路上接收到缓冲区,并上交给主机。假假

16、设设协协议议28完全理想化的数据传输完全理想化的数据传输数据链路层主机 A缓存主机 B数据链路AP2AP1缓存发送方接收方帧高层帧29完全理想化的数据传输所基于的两个假定完全理想化的数据传输所基于的两个假定 假假定定1 1: 链路是理想的传输信道,所传送的任何数 据既不会出差错也不会丢失。假假定定2 2: 不管发方以多快的速率发送数据,收方总是来得及收下,并及时上交主机。 这个假定就相当于认为:接收端向主机交付数这个假定就相当于认为:接收端向主机交付数据的速率永远不会低于发送端发送数据的速率据的速率永远不会低于发送端发送数据的速率30问题的产生、基本解决办法问题的产生、基本解决办法分析分析:去

17、掉假定2 保留假定1 。 即主机 A 向主机 B传输数据的信道仍然是无差错的理想信道,但不能保证接收端向主机交付数据的速率永远不低于发送端发送数据的速率。假设:假设:链路是理想化的,所传输的数据不会出错链路是理想化的,所传输的数据不会出错也不会丢失。也不会丢失。协议思想:协议思想:协调、控制接收方、发送方的速度。协调、控制接收方、发送方的速度。友情提醒友情提醒:由收方控制发方的数据流,是计算机网络中流量控制的一个基本方法。 31具有简单的流量控制具有简单的流量控制DATA0DATA0ACKACKACKACKACKACKDATA2DATA2DATA1DATA1协协议议算算法法等待;等待;将收到的

18、数据帧将收到的数据帧上交主机;上交主机;发送应答信息;发送应答信息;转到第一步转到第一步发出一帧;发出一帧;等待;等待;直到收到直到收到ACKACK才发送下一帧才发送下一帧发送方发送方接收方接收方32具有最简单流量控制的数据链路层协议算法具有最简单流量控制的数据链路层协议算法在发送结点:在发送结点:(1) (1) 从主机取一个数据帧;从主机取一个数据帧;(2) (2) 将将数数据据帧帧送送到到数数据据链链路路层层的的发发送送缓存;缓存;(3) (3) 从从发发送送缓缓存存中中将将数数据据帧帧发发送送出出; (4) (4) 等待;等待;(5) (5) 若若收收到到由由接接收收结结点点发发过过来来

19、的的应应答答信信息息( (其其格格式式与与内内容容可可由由双双方方事事先先商商定定好好) ),则则从从主主机机取取一一个个新新的的数数据据帧帧,然后转到然后转到(2)(2)。在接收结点:在接收结点:(1) (1) 等待;等待;(2) (2) 若若收收到到由由发发送送结结点点发发过过来来的的数数据据帧帧,则则将将其其放放入入数数据据链链路路层层的的接收缓存;接收缓存; (3) (3) 将该数据帧上交主机;将该数据帧上交主机; (4) (4) 向向发发送送结结点点发发一一应应答答信信息息,表示数据帧已经上交给主机;表示数据帧已经上交给主机;(5) (5) 转到转到(1)(1)。33两种情况的对比(

20、传输均无差错)两种情况的对比(传输均无差错)ABDATADATADATADATA送主机 B送主机 B送主机 B送主机 BABDATA送主机 BDATA送主机 B时间不需要流量控制需要流量控制34停止等待停止等待ARQARQ协议协议(1 1)接近实际情形的假设:)接近实际情形的假设:1)在信道传输的数据可能会出错,也可能会丢失。2)双方的速度不一致,需要对发送端进行流量控制。35停止等待停止等待ARQARQ协议协议DATA0DATA0ACKACKACKACKACKACKDATA2DATA2DATA1DATA1a) 正常情况送主机送主机A AB B送主机送主机送主机送主机出错出错b) 数据帧出错D

21、ATA0DATA0ACKACKNAKNAKACKACKDATA1DATA1DATA1DATA1送主机送主机A AB B送主机送主机重重传传链路无差链路无差错,用错,用ACK进行进行流量控制流量控制链路不可靠,链路不可靠,CRC校验出差校验出差错,为此,收错,为此,收方发出否认帧方发出否认帧NAK,要求发要求发方重发方重发36A AB BDATA0DATA0ACKACKACKACKDATA1DATA1DATA1DATA1丢失丢失c) 数据帧丢失送主机送主机送主机送主机toutDATA0DATA0ACKACKACKACKACKACKDATA1DATA1DATA1DATA1丢失丢失d) 应答帧丢失送

22、主机送主机丢弃丢弃送主机送主机A AB Btout链路干扰严链路干扰严重,数据帧重,数据帧丢失,双方丢失,双方互等,死锁互等,死锁出现。引入出现。引入超时定时器超时定时器应答帧丢失,应答帧丢失,发方重发,出发方重发,出现重复帧。为现重复帧。为每一帧加上发每一帧加上发送序号送序号37超时计时器的作用超时计时器的作用l l结结点点A A发发送送完完一一个个数数据据帧帧时时,就就启启动动一一个个超超时时计计时时器器(timeout timer)(timeout timer)。计时器又称为计时器又称为定时器定时器。l l若若到到了了超超时时计计时时器器所所设设置置的的重重传传时时间间 t toutou

23、t而而仍仍收收不不到到结结点点 B B 的的任任何何确确认认帧帧,则则结结点点 A A 就就重重传传前前面面所所发发送送的的这这一数据帧。一数据帧。l l一一般般可可将将重重传传时时间间选选为为略略大大于于“从从发发完完数数据据帧帧到到收收到到确认帧所需的平均时间确认帧所需的平均时间”。 38解决重复帧的问题解决重复帧的问题 l使每一个数据帧带上不同的发送序号。每发送一个新的数据帧就把它的发送序号加 1。 l若结点 B 收到发送序号相同的数据帧,就表明出现了重复帧。这时应丢弃重复帧,因为已经收到过同样的数据帧并且也交给了主机 B。l但此时结点 B 还必须向 A 发送确认帧 ACK,因为 B 已

24、经知道 A 还没有收到上一次发过去的确认帧 ACK。 39帧的编号问题帧的编号问题 l任何一个编号系统的序号所占用的比特数一定是有限的。经过一段时间后,发送序号就会重复! l序号占用的位数越少,数据传输的额外开销就越小。 l对于停止等待协议,由于每发送一个数据帧就停止等待,因此用一个位一个位来编号就够了。40帧的发送序号帧的发送序号 l数据帧中的发送序号 N(S) 以 0 和 1 交替的方式出现在数据帧中。l每发一个新的数据帧,发送序号就和上次发送的不一样。用这样的方法就可以使收方能够区分开新的数据帧和重传的数据帧了。 41帧检验序列帧检验序列 FCS FCS l在数据后面添加上的冗余码称为帧

25、检验序列 FCS (Frame Check Sequence)。l循环冗余检验 CRC 和帧检验序列 FCS并不等同。CRC 是一种常用的检错方法,而 FCS 是添加在数据后面的冗余码。FCS 可以用 CRC 这种方法得出,但 CRC 并非用来获得 FCS 的惟一方法。 42注意注意 l仅用循环冗余检验 CRC 差错检测技术只能做到无差错接受(accept)。l“无差错接受”是指:“凡是接受的帧(即不包括丢弃的帧),我们都能以非常接近于 1 的概率认为这些帧在传输过程中没有产生差错”。l也就是说:“凡是接受的帧都没有传输差错”(有差错的帧就丢弃而不接受)。l要做到“可靠传输”(即发送什么就收到

26、什么)就必须再加上确认和重传机制。 43检测出差错检测出差错 l只要得出的余数 R 不为 0,就表示检测到了差错。l但这种检测方法并不能确定究竟是哪一个或哪几个比特出现了差错。l一旦检测出差错,就丢弃这个出现差错的帧。l只要经过严格的挑选,并使用位数足够多的除数 P,那么出现检测不到的差错的概率就很小很小。 44停等协议的算法停等协议的算法l这里不使用否认帧,而且确认帧带有序号 n。lACKn 表示“第 n 1 号帧已经收到,现在期望接收第 n 号帧”。ACK1 表示“0 号帧已收到,现在期望接收的下一帧是 1 号帧”;ACK0 表示“1 号帧已收到,现在期望接收的下一帧是 0 号帧”。 45

27、停止等待协议停止等待协议 ARQ ARQ 的优缺点的优缺点 l优点:比较简单 。l缺点:通信信道的利用率不高,也就是说,信道还远远没有被数据比特填满。l产产生生了了另另外外两两种种协协议议,即即连连续续 ARQARQ 和和选选择择重重传传 ARQARQ。464.4 4.4 连续连续ARQARQ协议协议提示提示停止等待ARQ协议的信道利用率不高。解决解决思路思路允许发送方不等确认帧返回就连续发送多个数据帧连续ARQ协议的基本思想。连续连续ARQARQ协议的基本原理协议的基本原理 允许发送方不等确认帧返回就连续发送多个数据帧。 接收端只按序接收数据帧,不按序号到来的帧被丢弃。 确认帧中包含着期望下

28、次收到的帧的序号。 在发送端发送完一帧后都要设置该帧的超时计时器。47连续连续 ARQ ARQ 协议的工作原理协议的工作原理 l在发送完一个数据帧后,不是停下来等待确认帧,而是可以连续再发送若干个数据帧。l如果这时收到了接收端发来的确认帧,那么还可以接着发送数据帧。l由于减少了等待时间,整个通信的吞吐量就提高了。 48连续连续 ARQ ARQ 协议的工作原理协议的工作原理 DATA0DATA1DATA2DATA3DATA4DATA5重传 DATA2重传 DATA3ACK1ACK2ACK1 确认 DATA0ACK2 确认 DATA1DATA2 出错,丢弃DATA3 不按序,丢弃,重传 ACK2D

29、ATA4 不按序,丢弃,重传 ACK2DATA5 不按序,丢弃,重传 ACK2ACK3ACK3 确认 DATA2ACK4 确认 DATA3ACK4重传 DATA5重传 DATA4超时重传时间ABtout送交主机送交主机?ACK2ACK2ACK249回退回退N N式式ARQARQ协议协议连续ARQ协议允许发送方不等确认帧返回就连续发送多个数据帧,这些被发出去而尚未被确认的数据帧在发送缓冲区有保留副本,当发送方发现前面某一数据帧未收到确认信息而计时器已经超时后,就会重发该帧以及随后的N个数据帧,这种ARQ称作回退N式ARQ协议(go-back-N ARQ)。0123452345ACK0 ACK1

30、NAK2ACK2ACK3丢弃丢弃504.54.5滑动窗口滑动窗口发送方和接收方通过发送方和接收方通过滑动窗口机制滑动窗口机制实现流量控制。实现流量控制。发送窗口发送窗口:用来对发送端进行流量控制,它的大小代表在没有收到对方的确认帧的情况下发送端最多可以发送的数据帧数。 概概念念接收窗口接收窗口:用来控制接收端可以接收哪些数据帧。只有发送序号落入接收窗口内的数据帧才可接收。51滑动窗口的概念滑动窗口的概念l发送端和接收端分别设定发送窗口和接收窗口 。l发送窗口用来对发送端进行流量控制。l发送窗口的大小 WT 代表在还没有收到对方确认信息的情况下发送端最多可以发送多少个数据帧。 520123456

31、7012发送窗口WT不允许发送这些帧允许发送 5 个帧(a)01234567012不允许发送这些帧还允许发送 4 个帧WT已发送(b)01234567012不允许发送这些帧WT已发送(c)01234567012不允许发送这些帧还允许发送 3 个帧WT已发送 已发送并已收到确认(d)53接收端设置接收窗口接收端设置接收窗口 l l在在接接收收端端只只有有当当收收到到的的数数据据帧帧的的发发送送序序号号落落入入接接收收窗口内才允许将该数据帧收下。窗口内才允许将该数据帧收下。 l l若若接接收收到到的的数数据据帧帧落落在在接接收收窗窗口口之之外外,则则一一律律将将其其丢弃。丢弃。 l l在连续在连续

32、 ARQ ARQ 协议中,接收窗口的大小协议中,接收窗口的大小 WWR R = 1 = 1。只只有有当当收收到到的的帧帧的的序序号号与与接接收收窗窗口口一一致致时时才才能能接接收该帧。否则,就丢弃它。收该帧。否则,就丢弃它。每每收收到到一一个个序序号号正正确确的的帧帧,接接收收窗窗口口就就向向前前(即即向向右右方方)滑滑动动一一个个帧帧的的位位置置。同同时时发发送送对对该该帧帧的的确认。确认。 54不允许接收这些帧01234567012WR准备接收 0 号帧(a)不允许接收这些帧01234567012WR准备接收 1 号帧已收到(b)不允许接收这些帧01234567012WR准备接收 4 号帧

33、已收到(c)55滑动窗口的重要特性滑动窗口的重要特性l l只只有有在在接接收收窗窗口口向向前前滑滑动动时时(与与此此同同时时也也发发送送了了确认),发送窗口才有可能向前滑动。确认),发送窗口才有可能向前滑动。l l收收发发两两端端的的窗窗口口按按照照以以上上规规律律不不断断地地向向前前滑滑动动,因此这种协议又称为滑动窗口协议。因此这种协议又称为滑动窗口协议。l l当当发发送送窗窗口口和和接接收收窗窗口口的的大大小小都都等等于于 1 1时时,就就是是停止等待协议。停止等待协议。 56发送窗口的最大值发送窗口的最大值 l当用 n 个比特进行编号时,若接收窗口的大小为 1,则只有在发送窗口的大小 W

34、T 2n 1时,连续 ARQ 协议才能正确运行。l例如,当采用 3 bit 编码时,发送窗口的最大值是 7 而不是 8。 574.6 4.6 选择重传选择重传ARQARQ协议协议当接收方发现某帧出错后,其后继续送来的正确的帧虽然不能立即递交给接收方的高层,但接收方仍可收下来,存放在缓冲区中,同时要求发送方重新传送出错的那一帧。一旦收到重新传来的帧后,就可以和已存于缓冲区中的其余帧一并按正确的顺序递交高层。这种方法称为选择重发,选择重发减少了浪费,但要求接收方有足够大的缓冲区空间。 58选择重发选择重发ARQARQ原理原理选择重发选择重发ARQ原理示意原理示意594.7 4.7 数据链路层协议数

35、据链路层协议 链路控制规程有“面向字符面向字符”和“面向比特面向比特”两种控制规程。面向字符面向字符的控制规程把数据和控制信息都看作是字符,面向比特面向比特的控制规程把数据及控制信息都看作是位的组合。60面向字符的控制规程面向字符的控制规程- BSC- BSC以字符字符为控制传输信息的基本单元。(1)控制字符BISYNC(B Binary S Synchronous C Communication)。BSC中规定了下列控制字符: ACK 确认响应(ACKnowledgement) NAK 否定回答 (Negative AcKnowledge); EOT传输结束(End Of Transmiss

36、ion); SYN 同步字符(Synchronous ); DLE 转义字符(Start of Text) 61面向字符的控制规程面向字符的控制规程- BSC- BSC ENQ 查询(enquire); 格式字符: SOH 报头开始(S Start OOf HHeader); STX 报文开始(S Start OOf T Text) ETB块(组)发送结束(E End of T Transmission B Block) ETX 文本结束(E End of T TeX Xt) 62(2 2)透明与非透明数据)透明与非透明数据 数据和控制字符在同一条链路中传送,因此一般要求被传送的数据中不包含控

37、制字符,不包含控制字符的数据称为非透明数据。如果采用特殊的措施允许数据中包含所有的字符,即也包括控制字符在内,这种数据称为透明数据。传输透明数据的方式称为透明传输方式。 BSC(BSC(续续1)1)63BSC(BSC(续续2)2)(3 3)面向字符型)面向字符型BSCBSC协议的数据报文格式协议的数据报文格式64 BSC(BSC(续续3)3)字字符符的的转转义义:在在控控制制字字符符之之前前增增加加一一个个转转义义字字符符(DLEDLE),形成控制序列。),形成控制序列。 DEL SOHDEL SOH、DEL STXDEL STX等等字字符符填填充充法法:数数据据中中若若出出现现转转义义字字符

38、符,再再增增加加一一个个DELDEL,避免二义性。,避免二义性。 例如:例如: DEL DEL SOHDEL DEL SOH654.8 4.8 面向比特的控制规程面向比特的控制规程- HDLC- HDLCl l面向字符型数据链路层协议的缺点:面向字符型数据链路层协议的缺点:报文格式不一样;报文格式不一样;传输透明性不好;传输透明性不好;等待发送方式,传输效率低。等待发送方式,传输效率低。l l面向比特型协议的设计目标:面向比特型协议的设计目标:以比特作为传输控制信息的基本单元;以比特作为传输控制信息的基本单元;数据帧数据帧与与控制帧控制帧格式相同;格式相同;传输透明性好;传输透明性好;连续发送

39、,传输效率高。连续发送,传输效率高。66面向比特的控制规程面向比特的控制规程- HDLC- HDLCl1974年,IBM 公司推出了面向比特的规程SDLCSDLC (Synchronous Data Link Control);l后来 ISO 把 SDLC 修改后称为 HDLCHDLC (High-level Data Link Control),译为高级数据链路控制,作为国际标准ISO 3309;lCCITT 则将 HDLC 再修改后称为链路接入规程 LAPLAP (Link Access Procedure)。不久,HDLC 的新版本又把 LAP 修改为 LAPBLAPB,“B”表示平衡型

40、(Balanced),所以 LAPB 叫做链路接入规程(平衡型)。 67 数据链路的配置和数据传送方式数据链路的配置和数据传送方式数据链路的配置和数据传送方式数据链路的配置和数据传送方式数据链路的配置非平衡配置平衡配置非平衡配置中的主站与从站主站:发送命令(数据)帧,接收响应帧,并负责数据链路的全面管理从站:接收主站命令帧,发送响应帧,并配合主站参与差错恢复等链路控制非平衡配置中的结构特点点-点方式多点方式68数据链路的非平衡配置方式数据链路的非平衡配置方式数据链路的非平衡配置方式数据链路的非平衡配置方式PS命令响应PSSS命令响应69非平衡配置方式非平衡配置方式非平衡配置方式非平衡配置方式正

41、常响应模式(Normal Response Mode, NRMNRM)l主站可以随时向从站传输数据帧;l从站只有在主站向它发送命令帧进行探询(poll),从站响应后才可以向主站发送数据帧。 异步响应模式(Asynchronous Response Mode, ARMARM)l主站和从站可以随时相互传输数据帧;l从站可以不需要等待主站发出探询就可以发送数据;l主站负责数据链路的初始化、链路的建立、释放与差错恢复等功能。70平衡配置方式平衡配置方式平衡配置方式平衡配置方式 l链路两端的两个站都是复合站(combined station);l复合站同时具有主站与从站的功能;l每个复合站都可以发出命令

42、与响应;l平衡配置结构中只有异步平衡模式(Asynchronous Balanced Mode,ABMABM);l异步平衡模式的每个复合站都可以平等地发起数据传输,而不需要得到对方复合站的许可。71数据链路的平衡配置方式数据链路的平衡配置方式数据链路的平衡配置方式数据链路的平衡配置方式PS命令响应PS命令响应SP发送发送发送发送SP命令/响应命令/响应72HDLC HDLC 的帧结构的帧结构比特 888可变168信息 Info标志 F标志 F地址 A控制 C帧检验序列 FCS透明传输区间FCS 检验区间lF(flag) :固定格式 01111110 作用 帧同步 传输数据的透明性(零比特插入与

43、删除) lA(address) :地址lC(control) :帧的类型、帧的编号、命令与控制信息lI(information) :网络层数据,Nmax = 256BlCRC(checksum) :校验A、C、I字段的数据 G(X)= X16+X12+X5+173HDLCHDLC中零比特填充法中零比特填充法 1.1.零比特填充法使一帧中两个零比特填充法使一帧中两个 F F 字段之间不会出现字段之间不会出现 6 6 个连续个连续 1 1;2.2.在发送端,当一串比特流数据中有在发送端,当一串比特流数据中有 5 5 个连续个连续 1 1 时,就填入一个时,就填入一个0 0;3.3.在在接接收收帧帧

44、时时,先先找找到到F F字字段段以以确确定定帧帧的的边边界界。接接着着再再对对比比特特流流进进行行扫扫描描。每每当当发发现现 5 5 个个连连续续 1 1 时时,就就将将其其后后的的一一个个 0 0 删删除除,以以还还原原成原来的比特流。成原来的比特流。1.采用零比特填充法就可传送任意组合的比特流,即可实现数据链路层的透明传输;2.当连续传输两个帧时,前一个帧的结束标志字段 F 可以兼作后一帧的起始标志字段。3.当暂时没有信息传送时,可以连续发送标志字段,使收端可以一直和发端保持同步。透明传输:透明传输:74零比特的填充与删除零比特的填充与删除 数据中某一段比特组合恰好出现和 F 字段一样的情

45、况0 1 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0会被误认为是 F 字段发送端在连续 5 个1 之后填入 0 比特再发送出去填入 0 比特0 1 0 0 1 1 1 1 1 0 1 0 0 0 1 0 1 0在接收端将 5 个连 1 之后的 0 比特删除,恢复原样在此位置删除填入的 0 比特0 1 0 0 1 1 1 1 1 0 1 0 0 0 1 0 1 075帧类型及控制字段的意义帧类型及控制字段的意义76帧类型帧类型lI帧 : N(S) 发送帧的顺序号 N(R) 接收帧的顺序号 P/F= Poll / Final, P=1 询问,F=1 响应 P与F成对出现lS帧 :监

46、控功能位 S = 00,RR(receive ready) S = 01,RNR(receive not ready) S = 10,RJE(reject) S = 11,SREJ(select reject)lU帧 :用于实现数据链路控制功能77U U帧的格式与链路控制功能帧的格式与链路控制功能78数据链路层的工作过程数据链路层的工作过程l简化的信息帧结构的表示方法简化的信息帧结构的表示方法l一个信息帧的表示一个信息帧的表示 79l无编号帧的表示方法无编号帧的表示方法lSNRMSNRM帧与帧与UAUA帧结构的表示方法帧结构的表示方法 80正常响应模式数据链路工作81数据链路层与物理层的关系8

47、24.9 Internet4.9 Internet中的数据链路层中的数据链路层用户接入Internet 的方法PCPC机机ModemPSTNInternetA.A.拨号电话线接入方法拨号电话线接入方法Modem Pool使用使用TCP/IP的客户进程的客户进程 路由选路由选择进程择进程PCPC机机专线设备专线设备InternetB.B.专线接入方法:如专线接入方法:如xDSLxDSL、DDNDDN、X.25X.25专线设备专线设备ISP网络网络专线专线83lSLIP (Serial Line IP) 串行线路的Internet数据链路层协议lPPP ( Point-to-Point Proto

48、col) 点-点协议通过通过ISPISP接到接到InternetInternet主要的协议主要的协议注意注意:TCP/IP体系结构中的网络接口层网络接口层包含了OSI体系中的数据链路层数据链路层和物理层物理层,该层包含了网络的各种逻辑链路控制和媒体接入协议,可以实现不同网络间的物理连接。因此,Internet中没有分别定义数据链路层和物理层的协议,只是将它们集成到物理网卡上.84SLIPSLIPSLIPSLIP协议协议协议协议lSLIP出现于20世纪80年代初,最早是在BSD UNIX 4.2版操作系统上实现的;lSLIP协议支持TCP/IP协议;l对数据报进行了简单的封装,然后来用RS-23

49、2接口串行线路进行传输;lSLIP通常也用来将远程终端连接到UNIX主机,也可通过租用或拨号串行线路进行主机到路由器,以及路由器到路由器的通信。85典型的典型的典型的典型的SLIPSLIPSLIPSLIP接入方式接入方式接入方式接入方式lInternet的家庭或小型公司用户通过调制解调器、电话网络连接到ISP的调制解调器;lISP的调制解调器再通过它的路由器接入Internet;lSLIP系统一般可以发送和接收1006B的IP数据报。86SLIPSLIPSLIPSLIP协议的帧结构协议的帧结构协议的帧结构协议的帧结构lRFC 1055文件对SLIP帧格式进行了讨论;lSLIP帧头与帧尾的“C0

50、”,是协议使用的惟一的一个控制字符;lC0的二进制编码比特序列是1000011 0000000;lC0的使用将影响SLIP帧数据的透明性; 87SLIPSLIPSLIPSLIP协议的缺点协议的缺点协议的缺点协议的缺点l使用SLIP协议时,通信的双方都必须知道对方的IP地址,因为SLIP协议没有为它们提供相互交换地址信息的方法;l没有设置协议类型字段,不具备同时处理多种网络层协议的能力;l没有校验和字段,差错控制功能由高层的协议承担;lSLIP协议并不是Internet的协议标准,因此不同版本的之间就会存在着差别,使得互连变得困难。88CSLIPCSLIPCSLIPCSLIP协议协议协议协议lS

51、LIP协议通常运行于传输速率相对较低的串行线路上;l在常用于Telnet之类的应用程序中,人们提出了一种压缩的SLIP(CSLIP )协议;lRFC 1144对CSLIP进行了定义;lTelnet是一种交互式的应用程序,每次常常只传送几个字节的信息,通信效率低。 89PPPPPPPPPPPP协议基本特点协议基本特点协议基本特点协议基本特点lPPP协议是Internet标准,RFC 1660、RFC 1661定义了PPP协议与帧结构;lPPP协议处理了差错检测,支持面向字符型协议与面向比特型协议,可以支持IP协议及其他一些网络层协议(例如IPX协议);lPPP协议不仅在拨号电话线,并且在路由器路

52、由器之间的专用线上广泛应用;lPPP协议是在大多数家庭个人计算机和ISP之间使用的协议,它可以作为在高速广域网和社区宽带网协议族的一部分。 90PPPPPPPPPPPP信息帧格式信息帧格式信息帧格式信息帧格式l 标志(flag):01111110l 地址(address):值为“FF” 表示网中所有的站都接收该帧l 控制(control):值为“03”(00000011)l 协议(protocol):长度为2B,它标识出网络层协议数据域的 类型。常用的网络层协议的类型主要有: 0021HTCP/IP 0023HOSI 0027HDECl数据字段:长度可变91链路控制帧(链路控制帧(链路控制帧(链路控制帧(LCPLCPLCPLCP)与网络控制帧(与网络控制帧(与网络控制帧(与网络控制帧(NCPNCPNCPNCP) l网络控制帧(网络控制帧(NCPNCP)l链路控制帧(链路控制帧(LCPLCP)92

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 幼儿/小学教育 > 小学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号