第5章 数据链路层.ppt
《第5章 数据链路层.ppt》由会员分享,可在线阅读,更多相关《第5章 数据链路层.ppt(80页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第5章章 数据链路层数据链路层课程内容课程内容课程内容课程内容差错控制差错控制数据链路层的基本概念数据链路层的基本概念数据链路层协议的工作原理数据链路层协议的工作原理Internet中的数据链路层协议中的数据链路层协议MTU2课程内容课程内容差错控制差错控制数据链路层的基本概念数据链路层的基本概念数据链路层协议的工作原理数据链路层协议的工作原理Internet中的数据链路层协议中的数据链路层协议3为什么要设计数据链路层?为什么要设计数据链路层?l在原始物理传输线路上传输数据信号是有差错的;在原始物理传输线路上传输数据信号是有差错的;l设计数据链路层的主要目的:设计数据链路层的主要目的:将有差
2、错的物理线路改进成无差错的数据链路;将有差错的物理线路改进成无差错的数据链路;方法方法 差错检测(如差错检测(如CRCCRC)差错控制(如差错控制(如ARQARQ)流量控制流量控制l作用:改善数据传输质量,向网络层提供高质量的服务。作用:改善数据传输质量,向网络层提供高质量的服务。一、差错产生与差错控制一、差错产生与差错控制4差错产生的原因和差错类型差错产生的原因和差错类型 l传输差错 通过通信道后接收的数据与发送数据不一致;l差错控制 检查是否出现差错以及如何纠正差错;l通信信道的噪声分为两类:热噪声和冲击噪声;由热噪声引起的差错是随机差错,或随机错;冲击噪声引起的差错是突发差错,或突发错;
3、l引起突发差错的位长称为突发长度;l在通信过程中产生的传输差错,是由随机差错与突发差错共同构成的。5传输差错产生过程传输差错产生过程6检错码与纠错码检错码与纠错码检错码与纠错码检错码与纠错码 l纠错码纠错码:每个传输的分组带上足够的冗余信息;每个传输的分组带上足够的冗余信息;接收端能发现并自动纠正传输差错。接收端能发现并自动纠正传输差错。l检错码检错码:分组仅包含足以使接收端发现差错的冗余信息;分组仅包含足以使接收端发现差错的冗余信息;接接收收端端能能发发现现出出错错,但但不不能能确确定定哪哪一一比比特特是是错错的的,并并且且自己不能纠正传输差错。自己不能纠正传输差错。7课程内容课程内容课程内
4、容课程内容差错控制差错控制数据链路层的基本概念数据链路层的基本概念数据链路层协议的工作原理数据链路层协议的工作原理Internet中的数据链路层协议中的数据链路层协议8二、数据链路层的基本概念二、数据链路层的基本概念主主机机A数数据据缓缓冲冲区区主主机机B高层高层缓缓冲冲区区高层高层数数据据帧帧帧帧发送方发送方接收方接收方数据链路层:数据链路层:物理线路通信协议物理线路通信协议9基本概念基本概念 l链路(link)是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。一条链路只是一条通路的一个组成部分。l数据链路(data link)除了物理线路外,还必须有通信协议来控制这些数据的传输。
5、若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。现在最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件。一般的适配器都包括了数据链路层和物理层这两层的功能。10数据链路层像个数字管道数据链路层像个数字管道 l常常在两个对等的数据链路层之间画出一个数字管道,而在这条数字管道上传输的数据单位是帧。l早期的数据通信协议曾叫作通信规程(procedure)。因此在数据链路层,规程和协议是同义语。结点结点帧帧11?发送方:?发送方:?接收方:?接收方:?传输过程:?传输过程:!解决这些问题,是链路层的主要任务。!解决这些问题,是链路层的主要任务。!针对这些问题所制定的通信规程就是数据
6、链路层的!针对这些问题所制定的通信规程就是数据链路层的通信协议。通信协议。以多快的速度发送数据帧,即每帧之间相隔多长以多快的速度发送数据帧,即每帧之间相隔多长时间?如何确认对方是否收到数据?时间?如何确认对方是否收到数据?是否接收到正确的数据帧?如何告诉发送方?是否接收到正确的数据帧?如何告诉发送方?能及时处理接收到的数据帧吗?能及时处理接收到的数据帧吗?在数据链路层上传输数据帧在数据链路层上传输数据帧会出错吗?会丢失数据帧吗?会出错吗?会丢失数据帧吗?12数据链路层的主要功能数据链路层的主要功能 数数数数据据据据链链链链路路路路层层层层最最最最重重重重要要要要的的的的作作作作用用用用就就就就
7、是是是是:通通通通过过过过一一一一些些些些数数数数据据据据链链链链路路路路层层层层协协协协议议议议(即即即即链链链链路路路路控控控控制制制制规规规规程程程程),在在在在不不不不太太太太可可可可靠靠靠靠的的的的物物物物理理理理链链链链路上实现可靠的数据传输。路上实现可靠的数据传输。路上实现可靠的数据传输。路上实现可靠的数据传输。其主要功能可归纳如下:其主要功能可归纳如下:其主要功能可归纳如下:其主要功能可归纳如下:(1)(1)(1)(1)链路管理链路管理链路管理链路管理 (2)(2)(2)(2)帧定界帧定界帧定界帧定界 (3)(3)(3)(3)流量控制流量控制流量控制流量控制 (4)(4)(4)
8、(4)差错控制差错控制差错控制差错控制 (5)(5)(5)(5)透明传输透明传输透明传输透明传输 (6)(6)(6)(6)寻址寻址寻址寻址13数据链路层的主要功能数据链路层的主要功能(1)(1)链路管理链路管理 通信前先建立一条数据链路,传输数据时要维持数据链路,而在通信完毕时要释放数据链路。数据链路的建立、维持和释放就叫做链路管理。(2)(2)帧同步帧同步 帧同步是指收方应当能从收到的比特流中准确地区分出一帧的开始和结束。14数据链路层的主要功能数据链路层的主要功能(3)(3)流量控制流量控制 当收方来不及接收发方发送的数据时,就必须及时控制发方发送数据的速率。(4)(4)差错控制差错控制
9、收方可以检测出收到的帧中是否有差错,以决定发方是否重发该帧,直到收方正确收到为止。15数据链路层的主要功能数据链路层的主要功能(5)(5)透明传输透明传输 收方必须能自动区分所传送的是数据信息还是控制信息,从而使链路上可传送任意比特组合的信息,这就是“透明传输”。(6)(6)寻址寻址 在多点连接的情况下,必须保证每一帧都能送到正确的地址。双方也应当知道发方是哪一个站。16数据链路层的简单模型数据链路层的简单模型局域网广域网主机 H1主机 H2路由器 R1路由器 R2路由器 R3电话网局域网主机 H1 向 H2 发送数据链路层应用层运输层网络层物理层链路层应用层运输层网络层物理层链路层网络层物理
10、层链路层网络层物理层链路层网络层物理层R1R2R3H1H2从层次上来看数据的流动17数据链路层的简单模型数据链路层的简单模型(续)续)局域网广域网主机 H1主机 H2路由器 R1路由器 R2路由器 R3电话网局域网主机 H1 向 H2 发送数据链路层应用层运输层网络层物理层链路层应用层运输层网络层物理层链路层网络层物理层链路层网络层物理层链路层网络层物理层R1R2R3H1H2仅从数据链路层观察帧的流动18完全理想化的数据传输完全理想化的数据传输完全理想化的数据传输完全理想化的数据传输1 1:在链路上传送数据帧不会出错,也不会丢失。:在链路上传送数据帧不会出错,也不会丢失。2 2:接收方的速度永
11、远不会低于发送方的速度。:接收方的速度永远不会低于发送方的速度。这时数据链路层协议非常简单:只要控制发送方把数据帧从缓冲区发送到数据链路上;接收方把数据帧从链路上接收到缓冲区,并上交给主机。假假设设协协议议19数据链路层主机 A缓存主机 B数据链路AP2AP1缓存发送方接收方帧高层帧20完全理想化的数据传输所基于的两个假定完全理想化的数据传输所基于的两个假定 假假定定1 1:链路是理想的传输信道,所传送的任何数 据既不会出差错也不会丢失。假假定定2 2:不管发方以多快的速率发送数据,收方总是来得及收下,并及时上交主机。这个假定就相当于认为:接收端向主机交付数这个假定就相当于认为:接收端向主机交
12、付数据的速率永远不会低于发送端发送数据的速率据的速率永远不会低于发送端发送数据的速率21问题的产生、基本解决办法问题的产生、基本解决办法分析分析:去掉假定2 保留假定1。即主机 A 向主机 B传输数据的信道仍然是无差错的理想信道,但不能保证接收端向主机交付数据的速率永远不低于发送端发送数据的速率。假设:假设:链路是理想化的,所传输的数据不会出错链路是理想化的,所传输的数据不会出错也不会丢失。也不会丢失。协议思想:协议思想:协调、控制接收方、发送方的速度。协调、控制接收方、发送方的速度。提醒提醒:由收方控制发方的数据流,是计算机网络中流量控制的一个基本方法。22课程内容课程内容课程内容课程内容差
13、错控制差错控制数据链路层的基本概念数据链路层的基本概念数据链路层协议的工作原理数据链路层协议的工作原理Internet中的数据链路层协议中的数据链路层协议23线路规程线路规程线路规程:线路规程:解决解决“现在该谁发送现在该谁发送”这个问题。这个问题。询问应答模式询问应答模式轮询选择模式轮询选择模式24询问应答模式询问应答模式询问帧询问帧应答帧应答帧应答帧应答帧应答帧应答帧数据帧数据帧数据帧数据帧等待;等待;将收到的数据帧将收到的数据帧上交主机;上交主机;发送应答信息;发送应答信息;转到第一步转到第一步发出一帧;发出一帧;等待;等待;直到收到直到收到ACKACK才发送下一帧才发送下一帧发送方发送
14、方接收方接收方传输结束帧传输结束帧25轮询选择模式轮询选择模式Terminator主设备主设备从设备从设备A从设备从设备B从设备从设备C从设备从设备D轮询:主设备希望接收数据,它将逐个询问从设备是否有数据发送。轮询:主设备希望接收数据,它将逐个询问从设备是否有数据发送。选择:主设备希望发送数据,它告知目标从设备准备好接收数据。选择:主设备希望发送数据,它告知目标从设备准备好接收数据。26多点轮询多点轮询主设备主设备从设备从设备A从设备从设备C从设备从设备B轮询帧轮询帧否定应答帧否定应答帧轮询帧轮询帧数据帧数据帧应答帧应答帧数据帧数据帧应答帧应答帧EOT帧帧轮询帧轮询帧否定应答帧否定应答帧27多
15、点选择多点选择多点选择多点选择主设备主设备从设备从设备A从设备从设备C从设备从设备B 选择帧选择帧应答帧应答帧数据帧数据帧应答帧应答帧数据帧数据帧EOT(End Of Transmission)应答帧应答帧应答帧应答帧28流量控制和差错控制流量控制和差错控制流量控制有两个要点:流量控制有两个要点:()数据流不能使接收方过载()数据流不能使接收方过载()应答()应答在数据链路层,差错控制主要指错误检测和重传方法数在数据链路层,差错控制主要指错误检测和重传方法数据被重传的情况有三种:帧破坏、帧丢失和应答帧丢失。据被重传的情况有三种:帧破坏、帧丢失和应答帧丢失。流量控制和差错控制是结合在一起实现的,
16、共有两种实现流量控制和差错控制是结合在一起实现的,共有两种实现流量控制和差错控制的技术:流量控制和差错控制的技术:()停止等待协议;()停止等待协议;()滑动窗口协议。()滑动窗口协议。29()停止等待协议()停止等待协议DATA0DATA0ACKACKACKACKACKACKDATA2DATA2DATA1DATA1协协议议算算法法等待;等待;将收到的数据帧将收到的数据帧上交主机;上交主机;发送应答信息;发送应答信息;转到第一步转到第一步发出一帧;发出一帧;等待;等待;直到收到直到收到ACKACK才发送下一帧才发送下一帧发送方发送方接收方接收方EOT应答帧应答帧30停止等待协议中的流量控制停止
17、等待协议中的流量控制在停止等待协议中,发送方每发送一帧后就等待一个应答帧。在停止等待协议中,发送方每发送一帧后就等待一个应答帧。只有当接收到应答帧之后,发送方才发送下一帧。这种发送和等只有当接收到应答帧之后,发送方才发送下一帧。这种发送和等待交替的过程不断重复,直到发送方发送一个传输结束帧。待交替的过程不断重复,直到发送方发送一个传输结束帧。停止等待协议的优点是简单:在下一帧发送之前每一帧都检停止等待协议的优点是简单:在下一帧发送之前每一帧都检验并进行应答。缺点是效率低:停止等待协议是很慢的。在发送验并进行应答。缺点是效率低:停止等待协议是很慢的。在发送下一帧之前,每一帧必须达到接收方,而每一
18、帧的应答也必须从下一帧之前,每一帧必须达到接收方,而每一帧的应答也必须从接收方传输回来。也就是说,在线路上总是只有一帧。如果设备接收方传输回来。也就是说,在线路上总是只有一帧。如果设备之间的距离很长,在每帧之间等待之间的距离很长,在每帧之间等待ACK帧所花费的时间很长。帧所花费的时间很长。31停止等待协议中的差错控制停止等待协议中的差错控制停止等待协议还必须具备以下要求:停止等待协议还必须具备以下要求:)发送设备在收到最近帧的应答消息前必须保留的备份,直到被正确接收)发送设备在收到最近帧的应答消息前必须保留的备份,直到被正确接收为止。为止。)为识别各帧,数据帧和应答帧都必须交替的标识为)为识别
19、各帧,数据帧和应答帧都必须交替的标识为0和和1。一个标号为。一个标号为1的数据帧被一个标号为的数据帧被一个标号为0的应答帧所确认,说明当前接收方已经接收了数据帧的应答帧所确认,说明当前接收方已经接收了数据帧1,期望接收数据帧期望接收数据帧0。如果接收方收到了两个相信的数据帧且标号相同,说明接收。如果接收方收到了两个相信的数据帧且标号相同,说明接收方收到了一个重复帧,应当丢弃一个重复帧。方收到了一个重复帧,应当丢弃一个重复帧。)如果在数据帧中发现一个错误,说明该帧在传输中发生了错误,就会返)如果在数据帧中发现一个错误,说明该帧在传输中发生了错误,就会返回否定应答帧。回否定应答帧。)发送设备安装一
20、个定时器。如果在规定时间内不能收到预期的应答信息,)发送设备安装一个定时器。如果在规定时间内不能收到预期的应答信息,发方就假定最近一帧数据已经在传输中丢失并再次发送它。发方就假定最近一帧数据已经在传输中丢失并再次发送它。停止等待自动重复请求处理三种错误的情况:帧破坏、帧丢失、应答帧丢失。停止等待自动重复请求处理三种错误的情况:帧破坏、帧丢失、应答帧丢失。看下图分析看下图分析32停止等待协议自动重复请求停止等待协议自动重复请求停止等待协议自动重复请求停止等待协议自动重复请求DATA1DATA1ACK0ACK0ACK1ACK1NAKNAKDATA1DATA1DATA0DATA0发送方发送方接收方接
21、收方DATA1DATA1ACK0ACK0帧破坏帧破坏DATA1DATA1ACK0ACK0ACK1ACK1DATA1DATA1DATA0DATA0DATA1DATA1ACK0ACK0帧丢失帧丢失丢失丢失超时超时NAK(Negative Acknowledge)33DATA1DATA1ACK0ACK0ACK1ACK1DATA1DATA1DATA0DATA0DATA1DATA1ACK0ACK0应答帧丢失应答帧丢失丢失丢失超时超时ACK0ACK034具有最简单流量控制的数据链路层协议算法具有最简单流量控制的数据链路层协议算法在发送结点:在发送结点:(1)(1)从主机取一个数据帧;从主机取一个数据帧;(
22、2)(2)将将数数据据帧帧送送到到数数据据链链路路层层的的发发送送缓存;缓存;(3)(3)从从发发送送缓缓存存中中将将数数据据帧帧发发送送出出;(4)(4)等待;等待;(5)(5)若若收收到到由由接接收收结结点点发发过过来来的的应应答答信信息息(其其格格式式与与内内容容可可由由双双方方事事先先商商定定好好),则则从从主主机机取取一一个个新新的的数数据据帧帧,然后转到然后转到(2)(2)。在接收结点:在接收结点:(1)(1)等待;等待;(2)(2)若若收收到到由由发发送送结结点点发发过过来来的的数数据据帧帧,则则将将其其放放入入数数据据链链路路层层的的接收缓存;接收缓存;(3)(3)将该数据帧上
23、交主机;将该数据帧上交主机;(4)(4)向向发发送送结结点点发发一一应应答答信信息息,表示数据帧已经上交给主机;表示数据帧已经上交给主机;(5)(5)转到转到(1)(1)。35()滑动窗口()滑动窗口滑动窗口协议中的流量控制:滑动窗口协议中的流量控制:)一个)一个ACK帧对多个数据帧的接收进行确认。发送方在帧对多个数据帧的接收进行确认。发送方在收到应答消息前可以发送若干帧。帧可以直接依次发送,这意收到应答消息前可以发送若干帧。帧可以直接依次发送,这意味着链路上可能同时存在几个数据帧,接收方使用一个味着链路上可能同时存在几个数据帧,接收方使用一个ACK帧帧来对多个数据帧的接收进行确认。来对多个数
24、据帧的接收进行确认。)窗口是发送方和接收方存放数据帧的缓冲区。在发送)窗口是发送方和接收方存放数据帧的缓冲区。在发送方,只要窗口未填满就可以在未收到应答帧的情况下继续发送方,只要窗口未填满就可以在未收到应答帧的情况下继续发送数据帧。发送方窗口用于存放已经发送但未收到应答的数据帧数据帧。发送方窗口用于存放已经发送但未收到应答的数据帧和在收到应答帧之前可以发送的数据帧。接收方窗口用于存放和在收到应答帧之前可以发送的数据帧。接收方窗口用于存放已经被接收但未给应答的数据帧。已经被接收但未给应答的数据帧。36滑动窗口协议中的流量控制:滑动窗口协议中的流量控制:)发送窗口)发送窗口:用来对发送端进行流量控
25、制,它的大小代表在没有收到对方的确认帧的情况下发送端最多可以发送的数据帧数。发送窗口分为两个部分,左边部分是已经发送但是还未收到应答信息的数据帧,在右边部分是还未发送但是可以发送的数据帧。每发送一帧,左部分的分界就向右移一帧,每收到一个应答帧,整个发送窗口就向右移动若干帧。)接收窗口)接收窗口:用来控制接收端可以接收哪些数据帧。只有发送序号落入接收窗口内的数据帧才可接收。3701234567012发送窗口WT不允许发送这些帧允许发送 5 个帧(a)01234567012不允许发送这些帧还允许发送 4 个帧WT已发送(b)01234567012不允许发送这些帧WT已发送(c)0123456701
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第5章 数据链路层 数据链
限制150内