第3章数据链路层协议及差错控制.ppt
《第3章数据链路层协议及差错控制.ppt》由会员分享,可在线阅读,更多相关《第3章数据链路层协议及差错控制.ppt(52页珍藏版)》请在三一办公上搜索。
1、计算机网络与INTERNET原理及技术,计算机科学与技术专业Major of Computer Science and Technology,主讲:郭银章 教授,第一讲:计算机网络概述,第二讲:计算机网络通信与数据交换技术,第三讲:数据链路层协议及差错控制技术,第四讲:局域网协议体系及以太网技术,目录提纲,第五讲:网络层网络互连协议IP/ICMP,第六讲:路由协议与路由算法,第七讲:传输层传输控制协议TCP/UDP,计算机网络与INTERNET原理及技术,第三讲:数据链路层协议及差错控制技术,3.1点到点通信的数据链路层概述,3.2数据链路层的帧同步技术,3.3数据链路层的差错检测技术,3.4
2、数据链路层的差错控制技术,3.5数据链路层的流量控制技术,计算机网络与INTERNET原理及技术,3.6数据链路层协议HDLC和PPP,1、数据链路层概述 数据链路层位于物理层和网络层之间,物理层屏蔽了底层物理设备、传输介质以及通信技术的差异,向数据链路层提供数据传输服务。数据链路层将原始的、有差错的物理线路改造成逻辑上无差错的数据链路,向网络层提供无差错的数据服务。其提供的主要功能包括:差错控制、流量控制、帧的封装同步、透明传输、链路管理以及MAC寻址等。数据链路层使用的通信信道有两种:点到点信道和广播信道。点到点信道是收发双方一对一的通信方式。广播信道则采用广播方式进行信息传递,需要专门协
3、议来管理信道使用。本章主要介绍比较简单的点到点信道数据链路层的问题。,3.1、数据链路层的概念,第三讲:数据链路层协议及差错控制技术,1、数据链路层概述,3.1、数据链路层的概念,第三讲:数据链路层协议及差错控制技术,我们可以把各种连接看作是一个节点到另一个节点的点到点通信,1、数据链路层概述,3.1、数据链路层的概念,第三讲:数据链路层协议及差错控制技术,2、数据链路层的功能帧同步:数据链路层传输的数据格式为帧,在发送端进行封装成帧的时候,为了保证接收端能够同步接收数据,需要设置帧的起始定界符和结束定界符。差错控制:采用奇偶校验、循环冗余码、校验和等进行差错检测;采用自动请求重传ARQ机制进
4、行差错控制。流量控制:流量控制一般采用滑动窗口机制防止数据溢出。链路管理:数据链路层的链路管理功能主要有链路的建立、维持和释放透明传输:对于传输的数据内容、格式及编码没有限制、不负责信息结构意义的解释。,3.1、数据链路层的概念,第三讲:数据链路层协议及差错控制技术,2、数据链路层的功能 MAC寻址:不同于IP寻址,寻找的是计算机的物理地址,在以太网中采用媒体访问控制地址进行网络主机的定位。数据与控制信息的区分:数据和控制信息都是在同一信道传输,打包在同一数据帧中,如何有效地区分数据信息和控制信息,是DH层必须解决的问题。,3.1、数据链路层的概念,第三讲:数据链路层协议及差错控制技术,3、数
5、据链路层的服务无确认无连接服务 源主机向目标主机发送独立的帧,目标主机不需要对这些帧进行确认。源端发送前,也不需要事先进行连接请求。对于数据完整性要求不高的网络服务,可使用该服务,以提高数据的传输效率。有确认无连接服务:源主机在发送帧的时候,不需要事先建立连接。但是要对每一个发送的帧进行编号,目标主机要对接收的数据帧进行确认,源主机在规定的时间周期内没有收到ACK确认信息,则要重传已发送的数据帧。有确认面向连接服务:发送数据前既要建立可靠的链接,又要对数据帧进行确认重传。保证每一帧数据只按正常顺序接收一次,3.1、数据链路层的概念,第三讲:数据链路层协议及差错控制技术,1、字符计数法 是一种面
6、向字节的同步规程,它利用帧头部中的一个域来指定该帧中的字符数,以一个特殊的字符表示一帧开始,以一个专门的字段标注帧内的字符数。其同步原理是:接收方可以通过对该特殊字符的识别从比特流中区分出帧的开始,并从专门字段中获知该帧中随后跟随的数据字符数,从而确定帧的终止位置。其最大缺点是:标识帧大小的字段出错,将无法确定帧的长度,也不能进行重传。这种同步技术使用已经很少。,3.2、数据链路层的帧同步技术 帧同步要解决的核心问题:对物理层提供的比特流中进行数据帧的开始位和结束位进行识别。,第三讲:数据链路层协议及差错控制技术,2、字符填充的首尾定界符法 是一种使用特定的字符来定界一帧的起始与终止,以解决错
7、误后的重新同步问题。控制字符SOH为帧的起始定界符,表示一幅帧的开始,控制字符EOT表示一幅帧的结束。,3.2、数据链路层的帧同步技术,第三讲:数据链路层协议及差错控制技术,2、字符填充的首尾定界符法 当帧的数据部分包含了控制字符EOT或者SOH的时候,就会发生帧同步传输错误。例如当数据部分出现EOT字符的时候,接收端就会认为帧的传输结束,将后边的数据丢弃,无法保证透明传输。解决策略:在数据部分出现的定界符前插入转义字符ESC,接收端删除ESC,并把其后的定界符当做数据处理,3.2、数据链路层的帧同步技术,第三讲:数据链路层协议及差错控制技术,2、字符填充的首尾定界符法,3.2、数据链路层的帧
8、同步技术,第三讲:数据链路层协议及差错控制技术,3、比特填充的首尾定界符法 是以一组特定的比特模式来标识一帧的起始与终止。例如HDCL中的01111110.允许任意长度的位码,允许任意字符有任意长度的位。对于数据中包含连续的五个“1”的情况,采用“0位插入法”进行解决。例如:一个数据为“0110111111011111001”,在传输时就可以表示为:0111111001101111101011111000101111110比特填充帧同步方式很容易通过硬件实现,性能优于字符填充方式,所有面向比特的同步控制协议均采用比特填充同步方式,如:ISO、HDLC协议等,3.2、数据链路层的帧同步技术,第三
9、讲:数据链路层协议及差错控制技术,1、数据链路层差错检测的原理在数据通信系统中产生传输差错主要有随机差错和突发差错共同够成。热噪声:传输媒体的电子热运动产生,是随机噪声引起随机差错。特点是随机存在、幅度小、与频率无关、单码元出错。冲击噪声:由外界电磁干扰引起,主要有脉冲干扰、信号衰落、瞬时中断造成突发性错误。特点是幅度大、持续时间长、成批码元出错。常用误码率来衡量信道的传输质量。,3.3、数据链路层的差错检测技术,第三讲:数据链路层协议及差错控制技术,1、数据链路层差错检测的原理为了减少传输差错,一般采用两种策略:改善线路质量和差错检测与纠正。改善线路质量:光纤的误码率是10-9差错检测与控制
10、:主动式差错控制策略。纠错有两种:请求重传机制(反馈重发纠错)、纠错码机制(向前纠错FEC)。在发送端,通过对数据单元进行计算得到一个校验码作为发送数据的冗余码,然后将由数据单元和冗余码组成的发送数据进行传输。接收端收到数据后,采用相同的校验码计算方法求的标准的冗余吗,与数据帧携带的冗余码进行比较,如果不正确就表明数据出错了。,3.3、数据链路层的差错检测技术,第三讲:数据链路层协议及差错控制技术,1、数据链路层差错检测的原理,3.3、数据链路层的差错检测技术,第三讲:数据链路层协议及差错控制技术,E=f(数据),E=f(数据),比较,数据,发送器,接收器,接收信号是数据信号和噪声信号的叠加。
11、热噪声、冲击噪声。数据传输的差错是随机差错和突发差错共同构成。,差错产生的原因:物理线路本身的电气特性产生的畸变和衰减、信号反射噪声回波效应、相邻串扰、外界因素。,2、奇偶校验检错码:奇偶校验码是在所发送的每个字符后面添加一个校验位,称为奇偶位奇校验是指若字符中有奇数个1则添校验位0,若偶数个1,则添校验位1,最终保证字符中有奇数个1偶校验是指若字符中有奇数个1则添校验位1,若偶数个1,则添校验位0,最终保证字符中有偶数个1例如:发送1110010时,采用奇校验为11100101,偶校验为11100100 奇偶校验可以检测奇数位错误,而不能检测偶数位错误奇偶校验也无法判断是哪些位发生错误偶校验
12、一般用于同步传输、奇校验一般用于异步传输。,3.3、数据链路层的差错检测技术,第三讲:数据链路层协议及差错控制技术,4、循环冗余CRC检错码:在网络协议中最常用的差错检测技术是循环冗余码校验技术CRC,它能检测出更多的错误,常用在数据链路层,在网络传输的数据帧的后面有一个帧校验序列FCS就是CRC。其原理是:假定:M表示被传输的数据字符位串,有K位P是位的标准位串,与M无关,r=k-1.rM用P除时,得商Q和余数R,则2rM=QP+R.注意:这里的运算是以2为模的运算,即加不进位,减不借位,所以余数R至少比P少一位,R的位数可以看作是不大于r位的比特位串。R就是M对P的循环冗余码CRC,记为F
13、。被传输的数据帧M与帧校验序列F组成帧T,即:T=2rM+F=2rM+R=(QP+R)+R,3.3、数据链路层的差错检测技术,第三讲:数据链路层协议及差错控制技术,4、循环冗余CRC检错码:对于任何二进制数X,XX,所以,RR0,这说明T应该能够被P整除。即如果收到的T不能被P整除,则一定发生差错,这就是循环冗余码校验。当然如果收到的T能构被P整除,则不一定说明传输中没有错误。下面举例说明:例:给定M1101011101P101101求F和T。解:由于P101101为6位,则r+1=6,r=5,F为位。rM=110101110100000,作除法,3.3、数据链路层的差错检测技术,第三讲:数据
14、链路层协议及差错控制技术,4、循环冗余CRC检错码:,3.3、数据链路层的差错检测技术,第三讲:数据链路层协议及差错控制技术,101101,110101110100000,101101,110001,101101,111001,101101,101000,101101,101100,101101,1000,余数R,1111001000商Q,4、循环冗余CRC检错码:解:F=R=01000,T=25M+F=110101110101000 若收到的T110101010101000,则不能被P除尽,检测到错误,若收到的T111111111111000,出错4位,但能够被P除尽CRC一般用多项式表示,
15、目前广泛使用的16次多项式P(X)标准有:CRC-16:X16+X15+X2+1CRC-CCITT:X16+X12+X5+1CRC计算过程的实现电路采用异或门电路和移位寄存器实现,3.3、数据链路层的差错检测技术,第三讲:数据链路层协议及差错控制技术,1、自动重传请求ARQ机制 当接收端检测出数据帧中的错误后,就将有错误的帧丢弃,那么出错的数据帧如何恢复呢?这就是差错控制技术,其基本技术就是自动重传请求ARQ技术,其核心是通过收发双方的确认和重传方式实现确认技术有:正确认超时重传:接收方在成功接收无差错的数据帧后,返回给发送方一个正确认消息ACK若发送方在超过一定时间间隔后,没有收到ACK,则
16、重新发送该数据帧。负确认重传:接收方在检测到数据帧有差错时,返回一个负确认NAK,发送方重发该数据帧,3.4、数据链路层的差错控制技术,第三讲:数据链路层协议及差错控制技术,2、停等ARQ协议停等差错控制技术采用的是正确认超时重传机制。就是发送方每发送一个数据帧就等待一个正确认,在收到接收方发送的ACK后才发送下一个数据帧帧的差错可能有:数据帧丢失和出错:接收方没有收到或检测到错误的数据帧时,丢弃该错误的数据帧,发送方通过超时重传方式,重发数据该数据帧ACK消息出错:帧正确到达目的地,接收端也正确接收,但是返回的ACK丢失或出错,发送方仍收不到正确认,超时后,发送方仍然重发该帧,这样,接收端收
17、到两个一样的数据帧如何处理?解决上述问题的方法是给每个数据帧编上序号,比如F0、F1、F2、F3,若接收方连续收到两个序号相同的帧,则为重复的数据帧,丢弃!,3.4、数据链路层的差错控制技术,第三讲:数据链路层协议及差错控制技术,2、停等ARQ协议,3.4、数据链路层的差错控制技术,第三讲:数据链路层协议及差错控制技术,2、停等ARQ协议 ACK要指明下一个准备接收的数据帧的序号,比如ACK2,表示准备接收的是F2,且F2以前的帧已全部正确接收停等ARQ最大优点就是简单,但是缺点是效率低下,每发一个数据帧,发送方都要停下来等待浪费了大量的网络时间 任何一个编号系统的序号所占用的比特数一定是有限
18、的,所以发送序号总是循环出现。序号占用的比特越少,数据传输的额外开销就越小。,3.4、数据链路层的差错控制技术,第三讲:数据链路层协议及差错控制技术,3、后退N-ARQ协议 后退N-ARQ技术,就是在发送方收到ACK之前可以连续发送多个数据帧,而不必等待正确认ACK(n)的到来但是,如果在这期间接收到一个错误的NCK(n),则n以后的所有已发送的帧都需重发.这就是后退N机制比如发送方最多可发送8个数据帧而无需确认,即窗口大小为8,如果第4个帧出错,即收到NCK(4),则表明03的数据帧正确接收,而帧4及以后的数据帧F5-F7全部被接收端丢弃和忽略,发送方从F7后退到F4,再重新发送F4-F7如
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据链 协议 差错 控制
链接地址:https://www.31ppt.com/p-4952692.html