计算机网络及通信课件第04章 数据链路层协议_第1页
计算机网络及通信课件第04章 数据链路层协议_第2页
计算机网络及通信课件第04章 数据链路层协议_第3页
计算机网络及通信课件第04章 数据链路层协议_第4页
计算机网络及通信课件第04章 数据链路层协议_第5页
已阅读5页,还剩105页未读 继续免费阅读

下载本文档

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

文档简介

1、局域网广域网主机 H1主机 H2路由器 R1路由器 R2路由器 R3电话网局域网主机 H1 向 H2 发送数据链路层应用层运输层网络层物理层链路层应用层运输层网络层物理层链路层网络层物理层链路层网络层物理层链路层网络层物理层R1R2R3H1H2从层次上来看数据的流动局域网广域网主机 H1主机 H2路由器 R1路由器 R2路由器 R3电话网局域网主机 H1 向 H2 发送数据链路层应用层运输层网络层物理层链路层应用层运输层网络层物理层链路层网络层物理层链路层网络层物理层链路层网络层物理层R1R2R3H1H2仅从数据链路层观察帧的流动IP 数据报1010 0110帧取出数据链路层网络层链路结点 A

2、结点 B物理层数据链路层结点 A结点 B帧(a)(b)发送帧接收链路IP 数据报1010 0110帧装入数据链路层传送的是帧Ethernet帧HDLC帧PPP帧Ethernet帧?发送方:?发送方:?接收方:?接收方:?传输过程:?传输过程:!解决这些问题,是数据链路层的主要任务。!解决这些问题,是数据链路层的主要任务。!针对这些问题所制定的通信规程就是数据链路层的通信!针对这些问题所制定的通信规程就是数据链路层的通信协议。协议。以多快的速度发送数据帧,即每帧之间相隔以多快的速度发送数据帧,即每帧之间相隔多长时间?如何确认对方是否收到数据?多长时间?如何确认对方是否收到数据?是否接收到正确的数

3、据帧?如何告诉发送方?是否接收到正确的数据帧?如何告诉发送方?能及时处理接收到的数据帧吗?能及时处理接收到的数据帧吗?会出错吗?会丢失数据帧吗?会出错吗?会丢失数据帧吗? 数据链路层的主要功能数据链路层的主要功能 数据链路层最重要的作用就是:通过一些数据链路层数据链路层最重要的作用就是:通过一些数据链路层协议,在不太可靠的物理链路上实现可靠的数据传输。其协议,在不太可靠的物理链路上实现可靠的数据传输。其主要功能可归纳如下:主要功能可归纳如下: (1) 链路管理链路管理 (2) 帧定界帧定界 (3) 流量控制流量控制 (4) 差错控制差错控制 (5) 将数据和控制信息区分开将数据和控制信息区分开

4、 (6) 透明传输透明传输 (7) 寻址寻址 数据链路层的主要功能数据链路层的主要功能(1) (1) 链路管理链路管理- -当网络中的两个结点要进行通信时,数据的发方当网络中的两个结点要进行通信时,数据的发方必须确知收方是否已处在准备接受的状态。为此通信的双方必须必须确知收方是否已处在准备接受的状态。为此通信的双方必须先要交换一些必要的信息,先要交换一些必要的信息, 用术语讲必须先建立一条数据链路。用术语讲必须先建立一条数据链路。在传输数据时要维持数据链路,而在通信完毕时要释放数据链路。在传输数据时要维持数据链路,而在通信完毕时要释放数据链路。数据链路的建立、维持和释放就叫做链路管理。数据链路

5、的建立、维持和释放就叫做链路管理。(2) (2) 帧同步帧同步- -在数据链路层,数据的传送单位时帧。数据一帧一在数据链路层,数据的传送单位时帧。数据一帧一帧地传送,就可以在出现差错时,将有差错的帧再重传一次,避帧地传送,就可以在出现差错时,将有差错的帧再重传一次,避免了全部数据的重传。帧同步是指收方应当能从收到的比特流中免了全部数据的重传。帧同步是指收方应当能从收到的比特流中准确地区分出一帧的开始和结束。准确地区分出一帧的开始和结束。 数据链路层的主要功能数据链路层的主要功能(3)(3)流量控制流量控制- -发方发送数据的速率必须使收方来得及接收。当收发方发送数据的速率必须使收方来得及接收。

6、当收方来不及接收时,就必须及时控制发方发送数据的速率。方来不及接收时,就必须及时控制发方发送数据的速率。(4)(4)差错控制差错控制- -在计算机通信中,一般都要求有极低的比特差错率。在计算机通信中,一般都要求有极低的比特差错率。为此广泛地使用了编码技术,主要有两大类,一类是前向纠错,为此广泛地使用了编码技术,主要有两大类,一类是前向纠错,即收方收到有差错的数据帧时能自动将差错改正过来。这种方法即收方收到有差错的数据帧时能自动将差错改正过来。这种方法的开销较大,不适合于计算机通信。另一类是检错重发,即收方的开销较大,不适合于计算机通信。另一类是检错重发,即收方可以检测出收到的帧中有差错,于是就

7、让发方重复发送这一帧,可以检测出收到的帧中有差错,于是就让发方重复发送这一帧,直到收方正确收到这一帧为止。这种方法在计算机通信中是最常直到收方正确收到这一帧为止。这种方法在计算机通信中是最常用的。用的。 数据链路层的主要功能数据链路层的主要功能(5)(5)将数据和控制信息区分开将数据和控制信息区分开- -由于数据和控制信息都是在同一信由于数据和控制信息都是在同一信道中传输,在许多情况下,数据和控制信息处于同一帧中,因此道中传输,在许多情况下,数据和控制信息处于同一帧中,因此一定要有相应的措施使收方能够将他们区分开来。一定要有相应的措施使收方能够将他们区分开来。(6)(6)透明传输透明传输- -

8、所谓透明传输就是不管所传数据是什么样的比特组所谓透明传输就是不管所传数据是什么样的比特组合,都应当能够在链路上传送。当所传数据中的比特组合恰巧与合,都应当能够在链路上传送。当所传数据中的比特组合恰巧与某一个控制信息完全一样时,就必须采取适当的措施,使收方不某一个控制信息完全一样时,就必须采取适当的措施,使收方不会将这样的数据误认为是某种控制信息。这样才能保证数据链路会将这样的数据误认为是某种控制信息。这样才能保证数据链路层的传输是透明的。层的传输是透明的。 (7)(7)寻址寻址- -在多点连接的情况下,必须保证每一帧都能送到正确在多点连接的情况下,必须保证每一帧都能送到正确的地址。双方也应当知

9、道发方是哪一个站。的地址。双方也应当知道发方是哪一个站。 图图4.1 带填充字符的首尾界符法带填充字符的首尾界符法帧结束帧首部IP 数据报帧的数据部分帧尾部 MTU数据链路层的帧长开始发送帧开始课件制作人:谢希仁SOH装在帧中的数据部分帧帧开始符帧结束符发送在前EOT课件制作人:谢希仁SOHEOT出现了“EOT”被接收端当作无效帧而丢弃被接收端误认为是一个帧数据部分EOT完整的帧发送在前SOHSOHEOTSOHESCESCEOTESCSOHESCESCESCSOH原始数据EOTEOT经过字节填充后发送的数据字节填充字节填充字节填充字节填充发送在前帧开始符帧结束符SOH图图4.2带填充位的首尾标

10、志法带填充位的首尾标志法图图4.3 服务原语的表示方式服务原语的表示方式完全理想化的数据传输完全理想化的数据传输两台计算机通过一条通信链路进行通信的筒化模型:两台计算机通过一条通信链路进行通信的筒化模型:数据链路层数据链路层主主机机 A缓存缓存主主机机 B数据链路数据链路AP2AP1缓存缓存发送方发送方接收方接收方帧帧高层高层帧帧完全理想化的数据传输所基于的两个假定完全理想化的数据传输所基于的两个假定 假定假定1 1:链路是理想的传输信道,所传送的任何数据既不:链路是理想的传输信道,所传送的任何数据既不会出差错也不会丢失。会出差错也不会丢失。 假定假定2 2:不管发方以多快的速率发送数据,收方

11、总是来得:不管发方以多快的速率发送数据,收方总是来得及收下,并及时上交主机。及收下,并及时上交主机。v 这个假定就相当于认为:接收端向主机交付数据的速这个假定就相当于认为:接收端向主机交付数据的速率永远不会低于发送端发送数据的速率。率永远不会低于发送端发送数据的速率。流量控制流量控制n 现在去掉上述的第二个假定。但是,仍然保留第一个假现在去掉上述的第二个假定。但是,仍然保留第一个假定,即主机定,即主机A A向主机向主机B B传输数据的信道仍然是无差错的理想传输数据的信道仍然是无差错的理想信道。然而现在不能保证接收端向主机交付数据的速率永信道。然而现在不能保证接收端向主机交付数据的速率永远不低于

12、发送端发送数据的速率。远不低于发送端发送数据的速率。n 由收方控制发方的数据流由收方控制发方的数据流,是计算机网络中流量控制的,是计算机网络中流量控制的一个基本方法。一个基本方法。 具有最简单流量控制的数据链路层协议具有最简单流量控制的数据链路层协议在发送结点:在发送结点: (1) 从主机取一个数据帧。从主机取一个数据帧。 (2) 将数据帧送到数据链路层将数据帧送到数据链路层的发送缓存。的发送缓存。 (3) 将发送缓存中的数据帧发将发送缓存中的数据帧发送出去。送出去。 (4) 等待。等待。 (5) 若收到由接收结点发过来若收到由接收结点发过来的信息,则从主机取一个新的的信息,则从主机取一个新的

13、数据帧数据帧,然后转到,然后转到(2)。在接收结点:在接收结点: (1) 等待。等待。 (2) 若收到由发送结点发过来若收到由发送结点发过来的数据帧,则将其放入数据链的数据帧,则将其放入数据链路层的接收缓存。路层的接收缓存。 (3) 将接收缓存中的数据帧上将接收缓存中的数据帧上交主机。交主机。 (4) 向发送结点发一信息,表向发送结点发一信息,表示数据帧已经上交给主机示数据帧已经上交给主机。 (5) 转到转到(1)。v 两种情况的对比(传输均无差错)两种情况的对比(传输均无差错)ABDATADATADATADATA送主机送主机 B送主机送主机 B送主机送主机 B送主机送主机 BABDATA送主

14、机送主机 BDATA送主机送主机 B时时间间不需要流量控制不需要流量控制需要流量控制需要流量控制时时间间ABDATA0送送主主机机ACKDATA1送送主主机机ACK(a) 正常情况正常情况ABDATA0DATA0送送主主机机ACK(c) 数据帧丢失数据帧丢失重重传传tout丢丢失失 !ABDATA0送送主主机机ACKDATA0丢丢弃弃ACK(d) 确认帧丢失确认帧丢失重重传传tout丢丢失失 !ABDATA0NAKDATA0送送主主机机ACK(b) 数据帧出错数据帧出错重重传传出错出错n 现在把上述的第一、二个假定都去掉。现在把上述的第一、二个假定都去掉。主机主机A A向主机向主机B B传传输

15、数据的信道是有差错的非理想信道。且不能保证接收端输数据的信道是有差错的非理想信道。且不能保证接收端向主机交付数据的速率永远不低于发送端发送数据的速率。向主机交付数据的速率永远不低于发送端发送数据的速率。重复帧重复帧死锁死锁v 解决死锁问题解决死锁问题n 结点结点A发送完一个数据帧时,就启动一个发送完一个数据帧时,就启动一个超时计时器超时计时器(timeout timer)。n 若到了超时计时器所设置的重传时间若到了超时计时器所设置的重传时间 tout而仍收不到结点而仍收不到结点 B 的任何确认帧,则结点的任何确认帧,则结点 A 就重传前面所发送的这一数据就重传前面所发送的这一数据帧。帧。n 一

16、般可将重传时间选为略大于一般可将重传时间选为略大于“从发完数据帧到收到确从发完数据帧到收到确认帧所需的平均时间认帧所需的平均时间”。v 解决重复帧的问题解决重复帧的问题n如果是确认帧丢失,则超时重传将使主机如果是确认帧丢失,则超时重传将使主机B收到两个相同收到两个相同的数据帧,这就是的数据帧,这就是重复帧重复帧。 n使每一个数据帧带上不同的发送序号。每发送一个新的数使每一个数据帧带上不同的发送序号。每发送一个新的数据帧就把它的发送序号加据帧就把它的发送序号加 1。 n 若结点若结点 B 收到发送序号相同的数据帧,就表明出现了重收到发送序号相同的数据帧,就表明出现了重复帧。这时应丢弃重复帧,因为

17、已经收到过同样的数据帧复帧。这时应丢弃重复帧,因为已经收到过同样的数据帧并且也交给了主机并且也交给了主机 B。n 但此时结点但此时结点 B 还必须向还必须向 A 发送确认帧发送确认帧 ACK,因为,因为 B 已已经知道经知道 A 还没有收到上一次发过去的确认帧还没有收到上一次发过去的确认帧 ACK。 v 帧的编号问题帧的编号问题n 任何一个编号系统的序号所占用的比特数一定是有限的。任何一个编号系统的序号所占用的比特数一定是有限的。因此,经过一段时间后,发送序号就会重复。因此,经过一段时间后,发送序号就会重复。 n 序号占用的比特数越少,数据传输的额外开销就越小。序号占用的比特数越少,数据传输的

18、额外开销就越小。 n 对于停止等待协议,由于每发送一个数据帧就停止等待,对于停止等待协议,由于每发送一个数据帧就停止等待,因此用一个比特来编号就够了。因此用一个比特来编号就够了。 注:一个比特可表示注:一个比特可表示 0 和和 1 两种不同的序号。两种不同的序号。 v 帧的发送序号帧的发送序号n 数据帧中的发送序号数据帧中的发送序号 N(S) 以以 0 和和 1 交替的方式出现在数交替的方式出现在数据帧中。据帧中。n 每发一个新的数据帧,发送序号就和上次发送的不一样。每发一个新的数据帧,发送序号就和上次发送的不一样。用这样的方法就可以使收方能够区分开新的数据帧和重传用这样的方法就可以使收方能够

19、区分开新的数据帧和重传的数据帧了。的数据帧了。图图4.4 停止等待协议停止等待协议图图4.5 滑动窗口滑动窗口图图4.6 停等停等ARQ协议协议v停止等待协议停止等待协议 ARQ 的优缺点的优缺点n 优点:优点:比较简单比较简单 。n 缺点:通信信道的利用率不高,也就是说,信道还远远没缺点:通信信道的利用率不高,也就是说,信道还远远没有被数据比特填满。有被数据比特填满。n 为了克服这一缺点,就产生了另外两种协议,即连续为了克服这一缺点,就产生了另外两种协议,即连续 ARQ 和选择重传和选择重传 ARQ。2后退后退N帧帧ARQ协议协议n 在发送完一个数据帧后,不是停下来等待确认帧,而是可在发送完

20、一个数据帧后,不是停下来等待确认帧,而是可以连续再发送若干个数据帧。以连续再发送若干个数据帧。n 如果这时收到了接收端发来的确认帧,那么还可以接着发如果这时收到了接收端发来的确认帧,那么还可以接着发送数据帧。送数据帧。n 若收到对其中某一帧的否认帧,则从该帧开始的后继帧全若收到对其中某一帧的否认帧,则从该帧开始的后继帧全部重发。部重发。n 由于减少了等待时间,整个通信的吞吐量就提高了。由于减少了等待时间,整个通信的吞吐量就提高了。 后退后退N帧帧ARQ的工作原理的工作原理DATA0DATA1DATA2DATA3DATA4DATA5重传重传 DATA2重传重传 DATA3ACK1ACK2ACK1

21、 确认确认 DATA0ACK2 确认确认 DATA1DATA2 出错,出错,丢弃丢弃DATA3 不按序,不按序,丢弃丢弃,重传重传 ACK2DATA4 不按序,不按序,丢弃丢弃,重传重传 ACK2DATA5 不按序,不按序,丢弃丢弃,重传重传 ACK2ACK3ACK3 确认确认 DATA2ACK4 确认确认 DATA3ACK4重传重传 DATA5重传重传 DATA4超超时时重重传传时时间间ABtout送交主机送交主机送交主机送交主机?ACK2ACK2ACK2v 需要注意需要注意(1) 接收端接收端只按序接收只按序接收数据帧。虽然在有差错的数据帧。虽然在有差错的 2号帧之后号帧之后接着又收到了正

22、确的接着又收到了正确的 3 个数据帧,但接收端都必须将这些个数据帧,但接收端都必须将这些帧丢弃,因为在这些帧前面有一个帧丢弃,因为在这些帧前面有一个 2 号帧还没有收到。号帧还没有收到。(2) ACK1 表示确认表示确认 0 号帧号帧 DATA0,并期望下次收到,并期望下次收到 1 号号帧;帧;ACK2 表示确认表示确认 1 号帧号帧 DATA1,并期望下次收到,并期望下次收到 2号号帧。依此类推。帧。依此类推。v 需要注意需要注意(3) 结点结点 A 在每发送完一个数据帧时都要设置该帧的在每发送完一个数据帧时都要设置该帧的超时计超时计时器时器。如果在所设置的超时时间内收到确认帧,就立即将。如

23、果在所设置的超时时间内收到确认帧,就立即将超时计时器清零。但若在所设置的超时时间到了而未收到超时计时器清零。但若在所设置的超时时间到了而未收到确认帧,就要重传相应的数据帧。确认帧,就要重传相应的数据帧。 在等不到在等不到 2 号帧的确认而重传号帧的确认而重传 2 号数据帧时,虽然结号数据帧时,虽然结点点 A 已经发完了已经发完了 5 号帧,但仍必须向回走,将号帧,但仍必须向回走,将 2号帧及其号帧及其以后的各帧全部进行重传。以后的各帧全部进行重传。后退后退N帧帧ARQ协议(协议(Go-back-N ARQ)又称为连续)又称为连续 ARQ ,意思是当出现差错必须重传意思是当出现差错必须重传时,要

24、向回走时,要向回走 N 个帧,然后再开始重传。个帧,然后再开始重传。 v连续连续ARQ协议的优缺点协议的优缺点 连续连续ARQ协议一方面因连续发送数据帧而提高了效率,协议一方面因连续发送数据帧而提高了效率,另一方面,在重传时又必须把原来已正确传送过的数据帧另一方面,在重传时又必须把原来已正确传送过的数据帧进行重传,这种做法又使传送效率降低。进行重传,这种做法又使传送效率降低。 若传输信道的传输质量很差因而误码率较大时,连续若传输信道的传输质量很差因而误码率较大时,连续ARQ协议不一定优于停止等待协议。协议不一定优于停止等待协议。 滑动窗口的概念滑动窗口的概念 在连续在连续ARQ协议中,应当将已

25、发送出去但未被确认的协议中,应当将已发送出去但未被确认的数据帧的数目加发限制。数据帧的数目加发限制。n 发送端和接收端分别设定发送窗口和接收窗口发送端和接收端分别设定发送窗口和接收窗口 。n 发送窗口发送窗口用来对发送端进行流量控制。用来对发送端进行流量控制。n 发送窗口的大小发送窗口的大小 WT 代表在还没有收到对方确认信息的代表在还没有收到对方确认信息的情况下发送端最多可以发送多少个数据帧。情况下发送端最多可以发送多少个数据帧。n 接收窗口接收窗口用来控制接收端可以接收哪些数据帧。只有发送用来控制接收端可以接收哪些数据帧。只有发送序号落入接收窗口内的数据帧才可以收下。序号落入接收窗口内的数

26、据帧才可以收下。01234567012发送窗口发送窗口WT不允许发送这些帧不允许发送这些帧允许发送允许发送 5 个帧个帧(a)01234567012不允许发送这些帧不允许发送这些帧还允许发送还允许发送 4 个帧个帧WT已发送已发送(b)01234567012不允许发送这些帧不允许发送这些帧WT已发送已发送(c)01234567012不允许发送这些帧不允许发送这些帧还允许发送还允许发送 3 个帧个帧WT已发送已发送 已发送已发送并已收到确认并已收到确认(d)当发送出数据时,滑动窗口从左边开始收缩;当发送出数据时,滑动窗口从左边开始收缩;当收到确认时,滑动窗口向右扩展。当收到确认时,滑动窗口向右扩

27、展。v接收端设置接收窗口接收端设置接收窗口n 在接收端只有当收到的数据帧的发送序号落入接收窗口内在接收端只有当收到的数据帧的发送序号落入接收窗口内才允许将该数据帧收下。才允许将该数据帧收下。 n 若接收到的数据帧落在接收窗口之外,则一律将其丢弃。若接收到的数据帧落在接收窗口之外,则一律将其丢弃。 n 在连续在连续 ARQ 协议中,接收窗口的大小协议中,接收窗口的大小 WR = 1。v 只有当收到的帧的序号与接收窗口一致时才能接收该只有当收到的帧的序号与接收窗口一致时才能接收该帧。否则,就丢弃它。帧。否则,就丢弃它。v 每收到一个序号正确的帧,接收窗口就向前(即向右每收到一个序号正确的帧,接收窗

28、口就向前(即向右方)滑动一个帧的位置。同时发送对该帧的确认。方)滑动一个帧的位置。同时发送对该帧的确认。不允许接收这些帧不允许接收这些帧01234567012WR准备接收准备接收 0 号帧号帧(a)不允许接收这些帧不允许接收这些帧01234567012WR准备接收准备接收 1 号帧号帧已收到已收到(b)不允许接收这些帧不允许接收这些帧01234567012WR准备接收准备接收 4 号帧号帧已收到已收到(c)v 滑动窗口的重要特性滑动窗口的重要特性n 只有在接收窗口向前滑动时(与此同时也发送了确认),只有在接收窗口向前滑动时(与此同时也发送了确认),发送窗口才有可能向前滑动。发送窗口才有可能向前

29、滑动。n 收发两端的窗口按照以上规律不断地向前滑动,因此这种收发两端的窗口按照以上规律不断地向前滑动,因此这种协议又称为协议又称为滑动窗口协议滑动窗口协议。n 当发送窗口和接收窗口的大小都等于当发送窗口和接收窗口的大小都等于 1时,就是停止等待时,就是停止等待协议。协议。 选择重传选择重传 ARQ ARQ 协议协议n 可加大接收窗口,先收下发送序号不连续但仍处在接收窗口中的那些数据帧。可加大接收窗口,先收下发送序号不连续但仍处在接收窗口中的那些数据帧。等到所缺序号的数据帧收到后再一并送交主机。等到所缺序号的数据帧收到后再一并送交主机。 n 选择重传选择重传 ARQ 协议可避免重复传送那些本来已

30、经正确到达接收端的数据帧。协议可避免重复传送那些本来已经正确到达接收端的数据帧。n 但我们付出的代价是在接收端要设置具有相当容量的缓存空间。但我们付出的代价是在接收端要设置具有相当容量的缓存空间。n 对于选择重传对于选择重传 ARQ 协议,若用协议,若用 n 比特进行编号,则接收窗口的最大值受下比特进行编号,则接收窗口的最大值受下式的约束。式的约束。 WR 2n/2v 可靠传输可靠传输 虽然物理层在传输比特时会出现差错,但由于数据链路层虽然物理层在传输比特时会出现差错,但由于数据链路层的停止等待协议采用了有效的的停止等待协议采用了有效的检错重传检错重传机制,数据链路层机制,数据链路层对上面的网

31、络层就可以提供对上面的网络层就可以提供可靠传输可靠传输的服务。的服务。检错方式检错方式-循环冗余检验的原理循环冗余检验的原理n在数据链路层传送的帧中,广泛使用了循环冗余检验在数据链路层传送的帧中,广泛使用了循环冗余检验 CRC 的检错技术。的检错技术。n假设待传送的数据假设待传送的数据 M = 1010001101(共(共k bit)。我们在)。我们在M的后面再添加供差错检测用的的后面再添加供差错检测用的 n bit 冗余码冗余码一起发送。一起发送。n冗余码的计算冗余码的计算用二进制的模用二进制的模 2 运算进行运算进行 2n 乘乘 M 的运算,这相当于的运算,这相当于在在 M 后面添加后面添

32、加 n 个个 0。得到的得到的 (k + n) bit 的数除以事先选定好的长度为的数除以事先选定好的长度为 (n + 1) bit 的数的数 P,得出商是,得出商是 Q 而余数是而余数是 R,余数,余数 R 比除数比除数 P 至少要少至少要少1 个比特。个比特。v 冗余码的计算举例冗余码的计算举例n 设设 n = 5, P = 110101, M = 1010001101模模 2 运算的结果运算的结果是:是: 商商 Q = 1101010110,余数,余数R = 01110。 将余数将余数 R 作为冗余码添加在数据作为冗余码添加在数据 M 的后面发送出去,的后面发送出去,即发送的数据是即发送

33、的数据是101000110101110,或,或 2nM + R。v循环冗余检验的原理说明循环冗余检验的原理说明 1101010110 Q 商 除数 P 110101 101000110100000 2nM 被除数 110101 111011 110101 111010 110101 111110 110101 101100 110101 110010 110101 01110 R 余数v循环冗余检验的原理说明循环冗余检验的原理说明n 只要得出的余数只要得出的余数 R 不为不为 0,就表示检测到了,就表示检测到了差错差错。n 但这种检测方法并不能确定究竟是哪一个或哪几个比特但这种检测方法并不能确

34、定究竟是哪一个或哪几个比特出现了差错。出现了差错。n 一旦检测出差错,就一旦检测出差错,就丢弃丢弃这个出现差错的帧。这个出现差错的帧。n 只要经过严格的挑选,并使用位数足够多的除数只要经过严格的挑选,并使用位数足够多的除数 P,那,那么出现检测不到的差错的概率就很小很小。么出现检测不到的差错的概率就很小很小。 图图4.8 CRC的结构的结构图图4.9 CRC计算过程计算过程数据链路控制规程分类数据链路控制规程分类 面向字符型面向字符型 (例如(例如BSC、DDCMP、PPP异步传输)异步传输) 在这类规程中,用字符编码集中的几个特定字符来控在这类规程中,用字符编码集中的几个特定字符来控制链路的

35、操作,监视链路的工作状态,例如,采用国际制链路的操作,监视链路的工作状态,例如,采用国际5号号码中的码中的SOH、STX作为帧的开始,作为帧的开始,ETX、ETB作为的结束作为的结束,ENQ、EOT、ACK、NAK等字符控制链路操作。等字符控制链路操作。 面向比特型面向比特型 (例如(例如HDLC、PPP同步传输)同步传输) 在这类规程中,采用特定的二进制序列在这类规程中,采用特定的二进制序列01111110作为作为帧的开始和结束,以一定的比特组合所表示的命令和响应帧的开始和结束,以一定的比特组合所表示的命令和响应实现链路的监控功能,命令和响应可以和信息一起传送。实现链路的监控功能,命令和响应

36、可以和信息一起传送。 面向字符型数据链路层协议的缺点:面向字符型数据链路层协议的缺点:v 报文格式不一样;报文格式不一样;v 传输透明性不好;传输透明性不好;v 等待发送方式,传输效率低。等待发送方式,传输效率低。 面向比特型协议的设计目标:面向比特型协议的设计目标:v 以比特作为传输控制信息的基本单元;以比特作为传输控制信息的基本单元;v 数据帧与控制帧格式相同;数据帧与控制帧格式相同;v 传输透明性好;传输透明性好;v 连续发送,传输效率高。连续发送,传输效率高。图图4.10 IBM公司的二进制同步通信控制(公司的二进制同步通信控制(BSC)协议)协议图图4.11 三种类型的站和两种结构三

37、种类型的站和两种结构图图4.12 对称结构对称结构v HDLC的基本工作原理(基本特征)的基本工作原理(基本特征)操作方式:操作方式: 正常响应方式正常响应方式(NRM):适用于不平衡链路结构,即用于点:适用于不平衡链路结构,即用于点-点和点和点点-多点的链路结构中。由主站控制整个链路的操作,负责链路多点的链路结构中。由主站控制整个链路的操作,负责链路的初始化、数据流控制和链路复位等。从站只有在收到主站的明的初始化、数据流控制和链路复位等。从站只有在收到主站的明确允许后,才能发出响应。确允许后,才能发出响应。 异步响应方式异步响应方式(ARM):也适用于不平衡链路结构。从站可以不:也适用于不平

38、衡链路结构。从站可以不必得到主站的允许就可以开始数据传输。必得到主站的允许就可以开始数据传输。 异步平衡方式异步平衡方式(ABM):适用于平衡链路结构。链路两端的复合:适用于平衡链路结构。链路两端的复合站具有同等的能力,不管哪个复合站均可在任意时间发送命令帧,站具有同等的能力,不管哪个复合站均可在任意时间发送命令帧,并且不需要收到对方复合站发出的命令帧就可以发送响应帧。并且不需要收到对方复合站发出的命令帧就可以发送响应帧。图图4.13 HDLC的帧格式的帧格式信息帧:信息帧:若控制字段的第若控制字段的第1比特为比特为0,则该帧为数据帧,用于传,则该帧为数据帧,用于传送数据。比特送数据。比特2-

39、4为发送序号为发送序号N(S),而比特,而比特6-8为接收序号为接收序号N(R)。特别强调指出:特别强调指出:N(R)带有确认的意思,它表示序号为带有确认的意思,它表示序号为N(R)-1以以及在这以前的各帧都已经正确无误地收妥了。及在这以前的各帧都已经正确无误地收妥了。 v控制字段(续控制字段(续1)01101SMP/FP/FN(S)P/FN(R)N(R)M信息帧信息帧 I监督帧监督帧S无编号帧无编号帧U1 2 3 4 5 6 7 8监督帧:监督帧:用于监视和控制数据链路,完成信息帧的接收确认、用于监视和控制数据链路,完成信息帧的接收确认、重发请求、暂停发送请求等功能。若控制字段的第重发请求、

40、暂停发送请求等功能。若控制字段的第1-2比特为比特为10,则对应的帧即为监督帧则对应的帧即为监督帧S。监督帧共有四种,取决于第。监督帧共有四种,取决于第3-4比特比特的取值。的取值。 监控帧的名称和功能监控帧的名称和功能 v控制字段(续控制字段(续2)第第3-4比特比特帧帧 名名功功 能能确认,且准备接受下一帧,确认,且准备接受下一帧,已收妥已收妥N(R)N(R)以前的各帧以前的各帧 确认,暂停接收下一帧,确认,暂停接收下一帧,N(R)N(R)含义同上含义同上 否认,否认否认,否认N(R)N(R)起的各帧,起的各帧,但但N(R)N(R)以前的帧已收妥以前的帧已收妥 否认,只否认序号为否认,只否

41、认序号为N(R)N(R)的帧的帧 RR接收准备好接收准备好 RNR接收未准备好接收未准备好 REJ拒绝接收拒绝接收SREJ选择拒绝接收选择拒绝接收 00100111无编号帧:无编号帧:用于数据链路的控制。若控制字段的第用于数据链路的控制。若控制字段的第1-2比特都是比特都是1时,这个帧就是时,这个帧就是无编号帧无编号帧U,无编号帧本身不带编号,而是用无编号帧本身不带编号,而是用5bit来表示不同功能的无编号帧。可以在任何需要的时刻发出,来表示不同功能的无编号帧。可以在任何需要的时刻发出,而不影响带编号的信息帧的交换顺序。而不影响带编号的信息帧的交换顺序。 如:如:B3B4B6B7B8=0000

42、1,则其功能为,则其功能为置正常响应模式置正常响应模式 。v控制字段(续控制字段(续3)01101SMP/FP/FN(S)P/FN(R)N(R)M信息帧信息帧 I监督帧监督帧S无编号帧无编号帧U1 2 3 4 5 6 7 8v无编号帧的名称和代码无编号帧的名称和代码名名 称称 B3B4B6B7B8记忆符记忆符 置正常响应模式置正常响应模式 00001SNRM 置异步响应模式置异步响应模式/断开方式断开方式 11000SARM/DM 置异步平衡模式置异步平衡模式 11100SABM 置扩充正常响应模式置扩充正常响应模式 11011SNRME 置扩充异步响应模式置扩充异步响应模式 11010SAR

43、ME 置扩充异步平衡模式置扩充异步平衡模式 11110SABME 断链断链/请求断链请求断链 00010DISC/RD 置初始化置初始化/请求初始化方式请求初始化方式 10000SIM/RIM 无编号探询无编号探询 00100UP 无编号信息无编号信息 00000UI 交换识别交换识别 11101XID 复位复位 11001RESET 帧拒绝帧拒绝 10001FRMR 无编号确认无编号确认 00110UA vP/F位的意义(询问位的意义(询问/终止)终止) 在正常响应方式中,从站不能主动向主站发送信息,从站在正常响应方式中,从站不能主动向主站发送信息,从站只有收到主站发出的只有收到主站发出的P

44、比特为比特为1(对从站的查询)的命令帧以后(对从站的查询)的命令帧以后才能发送响应帧。若从站有数据发送,则在最后一个数据帧中才能发送响应帧。若从站有数据发送,则在最后一个数据帧中将将F比特置比特置1;若无数据发送,则应在回答的;若无数据发送,则应在回答的S帧中将帧中将F比特置比特置1。 在异步响应或异步平衡方式中,任何一个站都可以在主动在异步响应或异步平衡方式中,任何一个站都可以在主动发送的发送的S帧和帧和 I 帧中将帧中将P比特置比特置1。对方站收到。对方站收到P=1的帧后,应尽的帧后,应尽早地回答本站的状态并将早地回答本站的状态并将F比特置比特置1。 vP/F位的使用方法位的使用方法图中主

45、站图中主站A和从站和从站B、C连成多点链路,传送帧的一些主要参数按连成多点链路,传送帧的一些主要参数按照照“地址,帧名和序号,地址,帧名和序号,P/F”的先后顺序标注。这里的地址是指的先后顺序标注。这里的地址是指地址字段中应填入的站地址;帧名是指帧的名称,如地址字段中应填入的站地址;帧名是指帧的名称,如RR、I;序;序号是指监控帧中的号是指监控帧中的N(R) 或信息帧中的或信息帧中的N(S)和和N(R),如,如RR4、I31(第(第1个数字是个数字是N(S),第,第2个数字是个数字是N(R))。)。P/F是在其为是在其为1时才写时才写上上P或或F,表明此时控制字段的第,表明此时控制字段的第5比

46、特为比特为1。vP/F位的使用方法位的使用方法主站主站A先询问先询问B站:站:“B站,若有信息,请立刻发送站,若有信息,请立刻发送”。这时。这时A站站发送的帧是发送的帧是RR监控帧,并将监控帧,并将N(R)置置0,表示期望收到对方的,表示期望收到对方的0号号帧。因此在图中将这样的帧记为帧。因此在图中将这样的帧记为“B,RR0,P ”。对主站的这一命。对主站的这一命令,令,B站响应以连续站响应以连续4个信息帧,其序号个信息帧,其序号N(S)从从0到到3。最后在第。最后在第4个信息帧中将个信息帧中将F置置1,表示,表示“我要发送的信息已发完我要发送的信息已发完”。这个帧记。这个帧记为为“B, I

47、30,F”。A站在收到站在收到B站发来的站发来的4个信息帧后,发回确认帧个信息帧后,发回确认帧RR4(这时(这时N(R)=4)。我们注意到这时)。我们注意到这时P/F比特并未置比特并未置1,所以,所以B站收到站收到RR4后不必应答。接下去后不必应答。接下去A站轮询站轮询C站,站,P=1,虽然这时,虽然这时C站没有数据发送,但也必须立即应答。站没有数据发送,但也必须立即应答。C站应答也是站应答也是RR帧,表帧,表示目前没有信息帧发送,示目前没有信息帧发送,F=1表明这是回答对方命令的一个响应。表明这是回答对方命令的一个响应。vP/F位的使用方法位的使用方法有了有了P/F比特,使比特,使HDLC规

48、程使用起来更加灵活。在两个复合站规程使用起来更加灵活。在两个复合站全双工通信时,任何一方都可随时使全双工通信时,任何一方都可随时使P=1,这时对方就要立即回,这时对方就要立即回答答RR帧,并置帧,并置F=1,这样就可以收到对方的确认了。如果不使,这样就可以收到对方的确认了。如果不使用用P/F比特,则收方不一定马上发出确认帧,比如收方可以在发比特,则收方不一定马上发出确认帧,比如收方可以在发送自己的信息帧时,利用送自己的信息帧时,利用N(R)把确认信息发出。把确认信息发出。 vP/F位的使用方法位的使用方法图图4.14 无编号帧使用举例无编号帧使用举例图图4.15 用户拨号上网示意图用户拨号上网

49、示意图因特网的点对点协议因特网的点对点协议 PPPPPP PPP(Point-to-Point Protocol点到点协议)是为在点到点协议)是为在同等单元之间传输数据包这样的简单链路设计的链路层协同等单元之间传输数据包这样的简单链路设计的链路层协议。这种链路提供全双工操作,并按照顺序传递数据包。议。这种链路提供全双工操作,并按照顺序传递数据包。设计目的主要是用来通过拨号或专线方式建立点对点连接设计目的主要是用来通过拨号或专线方式建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单连发送数据,使其成为各种主机、网桥和路由器之间简单连接的一种解决方案。接的一种解决方案。 课件制作人:谢

50、希仁PPP 协议的工作原理协议的工作原理n 现在使用得最多的数据链路层协议是现在使用得最多的数据链路层协议是点对点协议点对点协议 PPP 。n 用户使用拨号电话线接入因特网时,一般都是使用用户使用拨号电话线接入因特网时,一般都是使用 PPP 协议。协议。路由器路由器调制解调器调制解调器调制解调器调制解调器因特网服务提供者因特网服务提供者(ISP)用户家庭用户家庭拨号电话线拨号电话线 使用使用 TCP/IP 的的 PPP 连接连接使用使用 TCP/IP 的的 客户进程客户进程路由选择路由选择 进程进程至至因因特特网网PC 机机v PPP 的特性的特性PPP协议是目前使用得最广泛的广域网协议,这是

51、因为它协议是目前使用得最广泛的广域网协议,这是因为它具有以下特性:具有以下特性:l能够控制数据链路的建立;能够控制数据链路的建立;l能够对能够对IP地址进行分配和使用;地址进行分配和使用;l允许同时采用多种网络层协议;允许同时采用多种网络层协议;l能够配置和测试数据链路;能够配置和测试数据链路;l能够进行错误检测;能够进行错误检测;l有协商选项,能够对网络层的地址和数据压缩等进行协商。有协商选项,能够对网络层的地址和数据压缩等进行协商。 v PPP 协议组成协议组成v一个将一个将 IP 数据报封装到串行链路的方法。数据报封装到串行链路的方法。v 链路控制协议链路控制协议 LCP (Link C

52、ontrol Protocol):LCP负责负责创建,维护或终止一次物理连接。创建,维护或终止一次物理连接。可以使用多种物理层服可以使用多种物理层服务务。v 认证协议,最常用的包括口令验证协议认证协议,最常用的包括口令验证协议PAP和挑战握手和挑战握手验证协议验证协议CHAP。v 网络控制协议网络控制协议 NCP (Network Control Protocol):负责:负责解决物理连接上运行什么网络协议,以及解决上层网络协解决物理连接上运行什么网络协议,以及解决上层网络协议发生的问题。议发生的问题。可以支持多种网络层协议可以支持多种网络层协议。PPP 协议的帧格式协议的帧格式PPP 的帧格

53、式和的帧格式和 HDLC 的相似。的相似。 标志字段标志字段 F 仍为仍为 0 x7E (符号(符号“0 x”表示后面的字符是用表示后面的字符是用十六进制表示。十六进制的十六进制表示。十六进制的 7E 的二进制表示是的二进制表示是 01111110)。)。地址字段地址字段 A 只置为只置为 0 xFF。地址字段实际上并不起作用,。地址字段实际上并不起作用,PPP不分配个人地址。不分配个人地址。控制字段控制字段 C 通常置为通常置为 0 x03。要求用户数据传输采用无序。要求用户数据传输采用无序号帧,不提供使用序号和确认的可靠传输。号帧,不提供使用序号和确认的可靠传输。PPP 是是面向字节面向字

54、节的,所有的的,所有的 PPP 帧的长度都是整数字节。帧的长度都是整数字节。 v PPP 协议的帧格式协议的帧格式 PPP 有一个有一个 2 个字节的协议字段。识别帧的信息部分字个字节的协议字段。识别帧的信息部分字段所封装的协议。段所封装的协议。 当协议字段为当协议字段为 0 x0021 时,时,PPP 帧的信息字段就是帧的信息字段就是IP 数据报。数据报。 若为若为 0 xC021, 则信息字段是则信息字段是 PPP 链路控制数据链路控制数据LCP。 若为若为 0 x8021,则表示这是网络控制数据,则表示这是网络控制数据NCP。 IP 数据报1211字节12不超过 1500 字节PPP 帧

55、先发送7EFF03FACFCSF7E协议信 息 部 分首部尾部表表4.2 协议字段的取值协议字段的取值 v透明传输问题透明传输问题n当当 PPP 用在同步传输链路时(用在同步传输链路时( SONET/SDH 链路)链路) ,协议规定采用硬件来完成比特填充(和协议规定采用硬件来完成比特填充(和 HDLC 的做的做法一样)。法一样)。 n当当 PPP 用在异步传输时,就使用一种特殊的用在异步传输时,就使用一种特殊的字符填字符填充法充法。v字符填充法字符填充法具体的做法是:具体的做法是:将信息字段中出现的每一个将信息字段中出现的每一个0 x7E字节转变成为字节转变成为2字字 节序列(节序列(0 x7

56、D,0 x5E)。)。若信息字段中出现一个若信息字段中出现一个0 x7D的字节,则将其转变成的字节,则将其转变成 为为2字节序列(字节序列(0 x7D,0 x5D)。)。(3) 若信息字段中出现若信息字段中出现ASCll码的控制字符(即小于码的控制字符(即小于0 x20的字符),则在该字符前面加一个的字符),则在该字符前面加一个0 x7D字节。字节。这样做可以防止这些表面上的这样做可以防止这些表面上的ASCll码控制符将被错码控制符将被错误地解释为控制符。误地解释为控制符。v不提供使用序号和确认的可靠传输不提供使用序号和确认的可靠传输nPPP 协议之所以不使用序号和确认机制是出于以下协议之所以

57、不使用序号和确认机制是出于以下的考虑:的考虑:v 在数据链路层出现差错的概率不大时,使用比较在数据链路层出现差错的概率不大时,使用比较简单的简单的 PPP 协议较为合理。协议较为合理。v 在因特网环境下,在因特网环境下,PPP 的信息字段放入的数据是的信息字段放入的数据是 IP 数据报。数据报。数据链路层的可靠传输并不能够保证数据链路层的可靠传输并不能够保证网络层的传输也是可靠的。网络层的传输也是可靠的。v 帧检验序列帧检验序列 FCS 字段可保证无差错接受。字段可保证无差错接受。PPP 协议的工作状态协议的工作状态n当用户拨号接入当用户拨号接入ISP时,路由器的时,路由器的Modem对拨号作出应对拨号作出应答,并建立一条物理连接。这时,答,

温馨提示

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

评论

0/150

提交评论