资源预览内容
第1页 / 共50页
第2页 / 共50页
第3页 / 共50页
第4页 / 共50页
第5页 / 共50页
第6页 / 共50页
第7页 / 共50页
第8页 / 共50页
第9页 / 共50页
第10页 / 共50页
亲,该文档总共50页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第三章 数据链路层,数据链路层的功能、模型与服务 流量控制 差错控制,数据链路层的基本功能是在物理层传输比特流能力的基础上,通过协议在相邻两个节点之间进行可靠的数据传输。,第一节 数据链路层的功能、模型与服务,数据链路层模型,3.1.1 数据链路层的模型,第一节 数据链路层的功能、模型与服务,数据链路层的基本服务:把源主机网络层的数据以帧为单位透明、无差错地传输给目的主机的网络层。 链路(又称为物理链路):指一条没有任何中间节点的点到点的物理线路。 数据链路(又称为逻辑链路):指链路连同实现控制数据传输的规程的软、硬件,在数据链路上才能进行数据通信。,3.1.1 数据链路层的模型,第一节 数据链路层的功能、模型与服务,3.1.2 数据链路层的基本功能 数据链路作用:是要将物理层提供的可能出错的物理链路改造成为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的数据通路。 数据链路层的主要功能: 1、链路管理:指数据链路的建立、维持和释放。 建立连接:通信双方建立起一条数据链路,并为数据传输做一些必要的准备。 拆除连接:释放所建立的数据链路,释放占用的资源。,第一节 数据链路层的功能、模型与服务,2、帧的封装与拆装 帧:数据链路层的传输单元,将过长的数据报文分成若干份,再配上一些数据链路层的控制信息构成的。 帧的封装:指发送方在发送数据时,将从网络层传下来的分组附上目的地址等数据链路控制信息构成帧的过程。 帧的拆装:指到达接收方,将接收到的信息中,发送方附上的数据链路控制信息去掉,并将纯信息(即分组)上交给网络层的过程。 3、帧的同步:指接收方应能够从物理层上交来的无结构的比特流中准确地区分出一帧的开始和结束。,第一节 数据链路层的功能、模型与服务,4、流量控制与顺序控制 流量控制:为避免通信双方因处理数据速度不同造成数据丢失而采取的措施,即当接收端来不及接收数据时应能够及时控制发送端发送数据的速率。 顺序控制:指数据链路层实体将收到的信息上交给网络层之前,能调整接收到的帧的顺序的功能。,第一节 数据链路层的功能、模型与服务,5、差错控制 误码率:指发生错误的码元数与接收到的总码元数的比率。 数据链路层采用编码技术来实现差错控制。 两类编码技术: 前向纠错方式:接收端在收到有差错的数据帧时能自动根据冗余码将差错改正过来。 检错重发方式:接收端可以根据冗余码检测出收到的帧中是否有差错,并让发送端重复发送这一帧直到正确接收为止。,6、使接收端能够区分数据信息和控制信息 由于数据和控制信息常在同一信道、甚至同一帧中传送,因此应采取相应的措施区分二者。 7、透明传输 透明传输:无论所传的数据帧中数据信息和控制信息是怎样组合的,都应能够在链路上传输。 当所传送的数据信息中的某些比特组合恰巧与控制信息的某组成部分完全一样时,须采取适当的措施使接收方不会将数据信息误认为是某种控制信息。 例如:面向位的同步信息F标志和数据块中的“01111110”串。,第一节 数据链路层的功能、模型与服务,8、寻址 在多点连接的情况下,提供相应的手段确保发送端发送的每一帧都能正确的到达目的地,同时还要使接收端知道该帧是哪个站发来的。,第一节 数据链路层的功能、模型与服务,3.1.3 数据链路层的服务 数据链路层的基本服务:将源主机中来自网络层的数据传输给目的主机的网络层。 数据链路层向网络层提供的服务: 1、无确认的无连接服务 2、有确认的无连接服务 3、有确认面向连接的服务,第一节 数据链路层的功能、模型与服务,数据链路层向网络层提供服务原语供网络层调用。 例如,用于建立连接的服务原语有: CONNECT.Request:从主叫方网络层发给数据链路层,请求建立连接。 CONNECT.Indication:被叫方链路层用此原语通知其上的网络层,有连接请求。 CONNECT.Response:被叫方网络层同意连接,发出的回应原语。 CONNECT.Confirm:主叫方数据链路层将对方同意连接的信息告知其上的网络层。 数据传输和拆除连接也分别有服务原语。,第一节 数据链路层的功能、模型与服务,第二节 流量控制,数据链路层的功能之一就是流量控制。 影响接收方接收数据能力的因素主要有:设备的处理速度和缓冲区容量的大小。 与传输层流量控制的区别:控制的对象不同,在数据链路层上控制的是通信子网中相邻节点间的数据流量,而在传输层上控制的是发送方和接收方之间端到端的数据流量。 下面是两种常用的流量控制策略:停等协议和滑动窗口协议。,第二节 流量控制,3.2.1 停等协议最简单的流量控制策略 策略:当发送方发完一帧后,即停止发送,等待对方的应答,如果收到对方的肯定应答,则接着发送下一个帧;如果收到否定应答或超过规定的时间没有收到肯定应答,则重发该帧。 特点:在进行流量控制的同时也进行了差错控制,实现可靠的数据传输。,第二节 流量控制,分别讨论几种数据传输的情况 : 1、理想情况。传输完全可靠、不出错不丢失,不存在差错控制问题。,第二节 流量控制,2、数据帧出错。通过出错重发机制来解决,若连续重传超过一定次数则停止发送,向上一级报告故障情况。,第二节 流量控制,3、数据帧丢失。发送方发送的数据帧因严重干扰不能到达接收方,接收方不回答确认帧ACK,通过超时重发机制来解决。,第二节 流量控制,4、数据帧无误但返回的确认帧丢失。 解决重复帧:对每个数据帧赋序号,即每发一帧,序号加1。 注意:因停等协议每次只发送一个帧,且确认该帧被正确接收后才发下一个帧,所以只需用0和1两个编号区别相邻的两帧。,停等协议的算法: 1、发送算法,第二节 流量控制,停等协议的算法: 2、接收算法,第二节 流量控制,停等协议中要解决的关键问题:超时重发时间的长短的选取,应选取稍大于信号从发送端到接收端传输时间的两倍加上接收端的处理时间之和。 发送端须设发送缓冲区,以便在收到确认帧之前保留该数据帧的副本。 停等协议属于单工通信的1位滑动窗口协议,数据单向传输,反向传输确认帧。 优点:控制比较简单。 缺点:信道的利用率不高,尤其是当信号的传输时延比较长时。,第二节 流量控制,3.2.2 滑动窗口的概念 滑动窗口机制:允许发送方连续发送多个帧而不需要等待接收方应答的策略。 为能连续发送多帧需要对帧进行编号,以便进行差错控制和流量控制,帧的序号用帧序号字段的二进制比特来表示。 序号空间:如果用n表示序号,则序号空间范围是0到2n -1。 帧的序号循环使用,以便对允许发送的帧的数目加以限制。,第二节 流量控制,滑动窗口连续发送遇到的问题: 未得到确认的数据帧太多,一旦出现错帧,就要重发已经发出去的多个帧,这样会降低效率;如果只发送出错的帧,那么接收端要设置大的缓冲区来保存收到的正确帧,耗费资源。 连续发送的帧的数量大,编号占有的比特就多,使帧的额外开销增加。,第二节 流量控制,1、发送窗口 发送窗口:把发送端允许连续发送的而未得到确认的一组帧的序号集合。 区别:序号空间是可使用的序号的范围;发送窗口是序号空间的一个子集。 发送窗口的尺寸:发送端可以连续发送的未得到确认的帧的最大数目。 发送窗口的后沿:发送端最早发送但还未收到应答的帧的序号。 发送窗口的前沿:发送端最晚发送但还未收到应答的帧的序号,数值上等于发送窗口后沿加上窗口尺寸再减1。,第二节 流量控制,1、发送窗口 发送端收到发送窗口后沿所对应帧的肯定应答后,就将发送窗口 向前滑动一个序号,并从发送缓冲区中将该数据帧的副本删除。 例:如下图,其发送窗口尺寸为4。,第二节 流量控制,2、接收窗口 接收窗口:一组接收方允许接收的帧序号集合。 接收窗口尺寸:接收方最多允许接收的帧数目。 接收窗口的前、后沿:分别是指接收窗口的上下界。 无论接收窗口尺寸的大小如何,接收方交给上层的数据总是按序的.,第二节 流量控制,2、接收窗口 例:如右图所示,假设采用全部重发流水协议,接收窗口尺寸为1。 发送窗口尺寸不一定等于接收窗口尺寸。 发送端应设缓冲区暂存已发出的而未得到应答的帧,以备重发,缓冲区满则停止发送,直至收到新的应答。 接收端可通过控制发送ACK的速度,对发送端进行流量控制。,第二节 流量控制,第三节 差错控制,现实情况:实际的物理信道不可靠,由于受到噪声的干扰,数据在传输时常常会出现比特丢失、增加或畸变等现象。 差错控制的目的和任务:发现和纠正计算机通信错误以提高信息的传输质量. 主要涉及的问题:一是如何检测出错误;二是发现错误后,如何进行纠正。,第三节 差错控制,3.3.1 差错的特性及差错控制方式 传输中噪声干扰: 一方面,受线路本身电气特性所引起的; 另一方面,各种外界因素。,第三节 差错控制,1、差错的特性 传输中出现的错误种类: 随机错:由信道固有的、持续存在的随机热噪声引起的。 一般是孤立的;由它导致的错误通常较少。 突发错:通常是由外界特定的瞬间的冲击噪声引起。 常出现连续比特的错误,影响面较大;是传输中产生差错的主要原因。 突发长度:从突发错发生的第一个码元到连续有错的最后一个码元间的所有码元的个数。 突发错比随机错传输的效率高;突发错的检错和纠错比随机错困难。,第三节 差错控制,2、误码率(又称比特差错率):用来衡量通信线路传输信息的质量,记为Pe。 Pe = 发生差错的码元数 / 接收的总码元数 在数据通信中,不同业务、不同信道的误码率是不同的: 例如:中速的电话系统误码率一般在10-410-6之间;广域网的误码率一般在10-710-8之间;而局域网的误码率一般在10-910-11之间。 降低误码率的两种办法: 改善物理信道:降低通信线路自身的误码率,受经济上和技术上的限制难以得到理想的结果。 采取差错控制:核心的技术是编码。,第三节 差错控制,差错控制编码:将发送之前在数据块中加入冗余信息的过程。 两种基本策略: 检错码:使编码只具有检错的功能,即接收方只能判断收到的数据块中是否有错,但有错时不能确切知道错误的位置,因而不能纠正错误 ; 纠错码:使编码具有一定的纠错功能。即接收方不仅能知道收到的数据块中是否有错,而且能知道错在什么地方,然后将出错的二进制位按位取反。,3、 差错控制方式 自动请求重发方式ARQ:采用检错码;需有双向信道来传送收方的反馈信息;在发方要有数据缓冲区来存放已发出的数据;实现简单、传输效率高,是数据通信中常用的差错控制方式。 前向纠错方式FEC:采用纠错码;不需要反向信道和数据缓冲区;由于纠错码使用更多的冗余位,故纠错设备比检错设备复杂。,第三节 差错控制,3.3.2 常用的简单差错控制编码 1、 奇偶校验码最基本、最常用、最简单的检错码 编码规则:在信源输出的信息码后面附加一个校验元,得到码组中“1”的个数是奇数或偶数;在接收端再检测“1”的个数,根据是否与发送端原则相符判断传送中是否出现错码。 若传送的信息有n-1个码元Cn-1 Cn-2C2C1,校验位为C0,则: 奇校验方程为:Cn-1Cn-2C2C1 C0=1; 偶校验方程为:Cn-1Cn-2C2C1 C0=0。(其中表示模2加运算) 特点:奇偶校验能查出传输中任意奇数个错误,但不能发现偶数个错误。 适合:在信道干扰不严重和码长n不大的时,尤其适于检测随机偶发的错误。,第三节 差错控制,2、 二维奇偶校验码 1)、垂直奇偶校验(又称为纵向奇偶校验、字符奇偶校验) 原理:把要发送的信息码元按定长m比特分为若干段,每段纵向排列,对每列的信息元进行奇偶校验,得到的校验元附在每列后面,传输时按列的次序传输 。 编码效率:R=m/(m+1)。 特点:能查出垂直列上的奇数位差错,不能查出偶数位差错;由于突发错出现奇数位错误码元与出现偶数位错误码元的概率各半,因此垂直奇偶校验只能查出50突发性错误。,第
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号