数据链路层

上传人:飞*** 文档编号:5461279 上传时间:2017-08-07 格式:PPT 页数:82 大小:979KB
返回 下载 相关 举报
数据链路层_第1页
第1页 / 共82页
数据链路层_第2页
第2页 / 共82页
数据链路层_第3页
第3页 / 共82页
数据链路层_第4页
第4页 / 共82页
数据链路层_第5页
第5页 / 共82页
点击查看更多>>
资源描述

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

1、计算机通信原理,第5章 数据链路层,2017/11/13,2,第5章 数据链路层,本章学习目标链路、数据链路的概念,数据链路层的功能停止等待协议的工作原理与过程数据链路层是如何进行差错控制的数据链路层流量控制的意义与方法面向比特数据链路层协议HDLC的帧结构与帧分类PPP链路协议的工作过程,2017/11/13,3,5.1 OSI/RM数据链路层,链路与数据链路,“链路” (1ink)是指实际存在的物理链路,与前面章节中所述的传输线路等同;“数据链路”(data link)是指通过协议控制建立起来的逻辑链路,反映出两点之间的传输联结关系。,图5-1,2017/11/13,4,5.1 OSI/R

2、M数据链路层,帧与报文,图5-2,2017/11/13,5,5.1 OSI/RM数据链路层,5.1.1 数据链路层的目的、服务及功能,1目的数据链路层在网络实体间提供建立、维持和释放数据链路连接以及提供传输数据链路服务数据单元的功能和过程的手段;在物理连接上建立数据链路连接。它检测和校正物理层出现的错误,为网络层提供可靠的数据链路。,2017/11/13,6,5.1 OSI/RM数据链路层,5.1.1 数据链路层的目的、服务及功能,2为网络层提供的服务(1)数据链路连接。(2)接收数据链路服务数据单元和网络层交换数据;(3)提供数据链路端点标识符;(4)当把数据链路服务数据单元划分为多个数据链

3、路协议数据单元传送时,要保证按发送方发送的顺序向接收方的网络层递交,即提供保序的服务;(5)差错位检测、纠正和报告;(6)流量控制;(7)服务质量参数的商定。,2017/11/13,7,5.1 OSI/RM数据链路层,5.1.1 数据链路层的目的、服务及功能,3数据链路层的功能1、链路管理:当网络中的两个结点进行通信时,发送方必须确知接收方是否已处在准备接收状态。2、装帧与帧同步:按照协议的要求,装配成数据帧,保持它们的顺序性传送。 3、流量控制:协调发送方与接收方的工作。 4、差错控制:接收方可通过校验帧的差错编码,判断接收到的帧是否有差错。 5、透明传输:所谓透明传输就是不管所传数据是什么

4、样的比特组合,都应能够在链路上传送。 6、寻址:在多点连接的情况下,保证每一帧都能送到正确的目的站。,2017/11/13,8,5.12 数据链路层服务,数据链路层结构及其服务,数据链路服务访问点,图5-3,2017/11/13,9,数据链路层可以提供多种不同类型的服务,实际提供的服务因系统不同而不同,但基本上有3种。,1.无确认、无联结服务 无确认、无联结服务是指双方事先不必建立联结,也不存在释放联结的问题。如果某个帧由于线路差错而被丢失,数据链路层也不作任何处理,恢复工作留给上层去完成。 这类服务适用于数据线路差错率很低的情况,也适用于传输实时语音数据的情况,因为语音数据流不能容许因差错恢

5、复所带来的过大的延时。许多局域网的数据链路层都提供无确认、无联结的服务。,2017/11/13,10,2有确认、无联结服务,这种服务仍然不需要建立联结,但是对一个被发出去的帧要进行单独确认。用这种方式,发送方就可以知道一帧是否已经安全到达目的地。如果在指定时间内一个帧未能到达目的地,则可以重传发生错误的帧。,2017/11/13,11,3面向联结的服务,这种服务,源结点和宿结点在传输任何数据之前,必须先建立数据链路联结。在这种联结上传输的每一个帧被编上序号,数据链路层保证传输的帧被对方收到,且只收到一次,帧的先后顺序也不能改变。数据链路层的面向联结服务为网络层实体之间的交互提供了最可靠的数据传

6、输服务。,2017/11/13,12,52 数据链路控制原理与技术,只有当数据线路两端的DTE之间,按照某一种链路传输控制规程(协议)而建立起双方的逻辑联结后,一对通信实体之间的逻辑通路才可被称为“数据链路”。数据链路层的功能和服务,要通过在数据链路上执行数据链路控制规程来具体实现。 为了在数据链路上进行有效的、可靠的数据传输,需要对传输操作实施严格的控制和管理。完成这种控制和管理功能的规则和约定,称为链路控制规程(Link Control Procedure)。,2017/11/13,13,链路构型及其工作方式;基本的传输操作与顺序,即传输的阶段性控制和链路管理;数据传输流量的控制,即速度匹

7、配控制;数据传输差错的控制,即差错检测与恢复控制。,根据数据链路层的功能与服务要求,任一种数据链路规程都必须完成如下几个基本的控制与管理:,2017/11/13,14,521 基本的传输控制过程,1点点链路 点点链路(Point-To-Point Link)上的操作规程比较简单,但它却是各种不同构型链路操作规程的基础。,2017/11/13,15,(图中大写字母代表发送单元、小写字母代表接收单元;带圈的S代表起始态,E代表结束态),点点链路传输控制过程(半双工 ),主动发出询问信息,提出通信请求,对方回送的认可信息,表示继续通信,接收站回送的否认信息,表示通信有错,通信结束信息,图5-4,20

8、17/11/13,16,2 多点链路,多点链路(Multi-point Link)上的操作方式的选择,主要取决于是否存在一个被指定的主站。若有一个主站,则数据传输只能在主站与某一个次站之间进行,次站之间不传输数据。,2017/11/13,17,多点链路的传输控制过程(半双工),主站按某种顺序逐个地向次站询问是否要传输数据,图5-5,2017/11/13,18,522 链路级流量控制,流量控制(Flow Contr01)简称为“流控”。这里所说的流控,是协调链路两端的发送接收站之间的数据流量,以保证双方的数据吞吐量达到平衡的一种技术。 “流控”又称为速度匹配。通常的情况是:发送端的吐量往往大于接

9、收端的吞量,因为接收者往往要对接收作息做更多的处理或解释,花费较多时间。同时,接收缓冲器的容量通常也是受限制的。前用得较多的链路流控技术有两类:停等式流控和滑窗式流控。,2017/11/13,19,XON/XOFF主要应用于面向字符通信中,使用一对控制字符来实现流量控制。其中XON采用ASCII字符集中的控制字符DC1,XOFF采用ASCII字符集中的控制字符DC3。在一次数据传输过程中,XOFF、XON的周期可重复多次。但这些操作对用户来说是透明的。许多异步数据通信软件包均支持XON/XOFF协议。,(1)XON/XOFF方案,1停等式流控技术 停等式(Stop-And-Wait) 流控是一

10、类最简单也是最常用的流控方式。它又分为XONXOFF开关式流控和协议式流控两种。,2017/11/13,20,接收端通过设置一个界面指针PTR对接收缓冲区中存放的数据字符量进行实时的监测。当缓冲区占据量逐渐上升时,PTR往上移动,达到预定的上限时立即向发送站发出XOFF字符。当缓冲区占据量逐渐下降时,PTR往下移动。达到预定的下限时,立即向发送站发出XON字符。,XONXOFF开关式流控原理,图5-6,2017/11/13,21,(2)协议式流控,数据传输之前将发送端欲传输的数据分组装配成一定长度的数据帧,并给予编号。每次发送一个数据帧便主动停顿,等待接收端回送的表示认可的确认帧(ACK)。只

11、有收到确认帧后,才继续发下一个数据帧。如此重复,直到发完全部数据。确认帧可以由ASCII码表中的ACK字符构成,或者由双方约定的其他合适的代码组合构成。,2017/11/13,22,协议式流控原理图,传播时延时间,数据帧传输时间,接收端帧数据处理时间,确认帧ACK(0)正确接收反馈信号,发送端只有接收到ACK(0)信号后才发下一个数据帧,否则就停止传输,图5-7,2017/11/13,23,图5-8,2017/11/13,24,严重地影响链路利用率的因素,有两个主要因素严重地影响着链路利用率(在有差错控制时叫“链路传输效率”),即:数据帧长度L(相应的时间参数是tf)和链路长度(相应的时间参数

12、为tp)。链路的传播时延tp也直接地影响着链路利用率。若忽略接收处理时间ts及响应帧的传输时间,那么,不考虑差错时的链路利用率U由下式近似地给出:定义a=tp/tf为归一化传播时延因数,则上式成为:,a值越大,线路利用率越低,2017/11/13,25,2滑窗式流控技术,在前面讨论的停等式流控中,发送站一次只允许发送一个数据帧,然后就得等待对方站的认可,方可继续发送。这种方式下,当链路比较长时(例如a01时),链路利用率显著下降。在应用条件不变(主要是a值不变)的情况下,提高链路利用率,惟一的解决办法是要允许发送站一次能连续发送多个数据帧,使一次连续发送数据的时间远远大于等待认可的时间,即满足

13、不等式:,n为一次允许连续发送的数据帧数目,2017/11/13,26,上式这时上式变成: 在相同a值下,链路利用率随n值成正比提高。当n2a时,利用率可接近极限值100。这就是滑窗式(Sliding Window)流控技术的基本思想。,2017/11/13,27,滑动窗口的概念,发送端和接收端各设两个窗口,发送窗口用来对发送端进行流量控制,而发送窗口的大小Wd就代表在还没有收到对方确认信息的情况下发送端最多可以发送多少个数据帧。接收窗口的大小Wr就代表接收端最多可以接收的数据帧数。改变Wr大小就可以控制数据帧传送的流量。,图5-9,2017/11/13,28,(1)发送窗口内的帧是允许发送的

14、帧,而不考虑有没有收到确认。发送窗口右侧所有的帧都是不允许发送的帧。图5-10(a)说明了这一情况。(2)每发送完一个帧,允许发送的帧数就减1。但发送窗口的位置不变。图5-10(b)说明已经发送了0号帧,因此允许发送的帧数就少了一个,即只有4个。(3)如果所允许发送的5个帧都发送完了,但还没有收到任何确认,那么就不能再发送任何帧了。图5-10(c)表示这种情况。这时,发送端就进入等待状态。,发送窗口的规则归纳如下,2017/11/13,29,(4)每收到对一个帧的确认,发送窗口就向前(即向右方)滑动一个帧的位置。图5-10(d)表示发送端已经收到了0, 1和2号帧共3个帧的确认,因此发送窗口可

15、以向前滑动3个帧的位置。于是,发送端现在又可以继续发送3个帧(即5 7号帧)。,2017/11/13,30,图5-10,2017/11/13,31,在接收端只有当收到的数据帧的发送序号落入接收窗口内才允许将该数据帧收下。接收窗口的规则很简单,归纳如下: (1)只有当收到的帧的序号与接收窗口一致时才能接收该帧。否则,就丢弃它。 (2)每收到一个序号正确的帧,接收窗口就向前(即向右方)滑动一个帧的位置。同时向发送端发送对该帧的确认。 图5-11(a)表明一开始接收窗口处于0号帧处,接收端准备接收0号帧。一旦收到0号帧,接收窗口即向前滑动一个帧的位置(图5-11(b),准备接收1号帧,同时向发送端发

16、送对0号帧的确认信息。当陆续收到1号至3号帧后,接收窗口的位置应如图5-11(c)所示。,2017/11/13,32,图5-11,2017/11/13,33,(1)当W2a+1时,意味着如果接收站没有流控限制的话,发送站的窗口缩小到0之前一定可以收到确认帧,使发送窗口能及时张开以保持连续发送。这时,链路被100利用。,(2)当W2a+1时,意味着发送站收到确认帧之前,必然会使窗口缩小到0,从而迫使暂停发送,造成暂时的链路空闲。待收到对前一批的第一帧的确认后,才能使发送窗口张开而恢复发送。在相邻两批之间出现了空闲期,因此,链路利用率必然小于100。,滑窗流控技术必须解决两个参数的选择: (1)最大窗口值Wm应是多少? (2)在Wm确定的情况下,帧序号的计数周期M应是多少? 令W为窗口值,存在两种情况:,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 企业文档

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