计算机网络数据链路层研究培训资料.ppt
《计算机网络数据链路层研究培训资料.ppt》由会员分享,可在线阅读,更多相关《计算机网络数据链路层研究培训资料.ppt(69页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算机网络数据链路层研究Q Q:物理:物理链路链路与逻辑链路(或称与逻辑链路(或称数据链路数据链路)的不同?)的不同?物理链路物理链路是指在是指在物理层物理层设备和相应物理层通信规程设备和相应物理层通信规程作用下形成的;作用下形成的;逻辑逻辑链路链路是指在是指在数据链路层数据链路层设备和相应的通信规程设备和相应的通信规程作用下建立的;作用下建立的;是在是在“物理链路物理链路”基础上建立的。基础上建立的。把实现数据传输规程把实现数据传输规程(即通信协议即通信协议)加到链路上,就加到链路上,就构成了构成了逻辑链路逻辑链路。二者的二者的本质作用都是一样的,就是用来构建进行网本质作用都是一样的,就是用
2、来构建进行网络通信、访问的通道,只不过络通信、访问的通道,只不过“物理层物理层”构建的是一构建的是一条物理通道,而条物理通道,而“数据链路层数据链路层”构建的是真正用于数构建的是真正用于数据传输的逻辑通道。据传输的逻辑通道。2它们之间的关系如下图所示。它们之间的关系如下图所示。3链路链路(link)(link)是从一个结点到是从一个结点到相邻结点相邻结点的一段的一段物理线物理线路路,中间没有任何其他的交换结点。(,中间没有任何其他的交换结点。(物理链路物理链路)一条链路只是数据传输通路的一个组成部分。43.1 3.1 数据链路层的功能数据链路层的功能 物理层只负责比特流的接收和发送,而不考虑信
3、息物理层只负责比特流的接收和发送,而不考虑信息本身的意义,同时物理层也不能解决数据传输的控本身的意义,同时物理层也不能解决数据传输的控制,而这就是数据链路层所要解决的制,而这就是数据链路层所要解决的。因此因此,数据链路层的功能是实现系统实体之间二进数据链路层的功能是实现系统实体之间二进制数据单元的正确传输,通过必要的同步控制、差制数据单元的正确传输,通过必要的同步控制、差错控制、流量控制,为其上层(网络层)提供可靠、错控制、流量控制,为其上层(网络层)提供可靠、无差错的数据信息。无差错的数据信息。数据链路层的主要功能(总结)数据链路层的主要功能(总结)(1)(1)封装成帧:封装成帧:帧头和帧尾
4、就是作为帧的起始和结束标帧头和帧尾就是作为帧的起始和结束标志,也就是帧边界。志,也就是帧边界。(2)(2)透明传输:透明传输:其目的就是要实现其目的就是要实现“帧同步帧同步”,就是接,就是接收端能从收到的比特流中准确地识别收端能从收到的比特流中准确地识别“帧帧”的边界。的边界。(3)(3)差错控制:差错控制:在通信过程中能够自动检测出错误并进在通信过程中能够自动检测出错误并进行纠正的方法;行纠正的方法;(4)(4)流量控制:流量控制:控制帧在物理信道上的传输;控制帧在物理信道上的传输;(5)(5)数据链路管理:数据链路管理:链路的建立、维持和释放管理。链路的建立、维持和释放管理。61.1.帧帧
5、的封装的封装2.2.透明传输透明传输-帧同步帧同步在数据链路层中,数据的传输单位是帧。帧是具在数据链路层中,数据的传输单位是帧。帧是具有一定长度的格式,每个帧除了要传送的数据外,有一定长度的格式,每个帧除了要传送的数据外,还包括校验码,以使接收方能发现传输中的差错。还包括校验码,以使接收方能发现传输中的差错。帧同步即接收端应当能从收到的比特流中准确地帧同步即接收端应当能从收到的比特流中准确地识别一个识别一个帧的开始和结束帧的开始和结束。数据链路层常见的数据链路层常见的几种帧同步方法几种帧同步方法包括:字节计包括:字节计数法、字符填充的首尾定界符法、比特填充的首、数法、字符填充的首尾定界符法、比
6、特填充的首、尾定界符法、违例编码法。尾定界符法、违例编码法。3.3.差错控制差错控制 为了将比特流在传输中的差错率控制在一定的范围为了将比特流在传输中的差错率控制在一定的范围之内,广泛地采用了各种编码技术。之内,广泛地采用了各种编码技术。编码技术可分为两类:编码技术可分为两类:一类是一类是向前纠错向前纠错,当接收方收到出错的数据帧后,当接收方收到出错的数据帧后,能够自动将错误修正过来。这种方法的系统开销能够自动将错误修正过来。这种方法的系统开销大,不适合于计算机网络;大,不适合于计算机网络;另一类是另一类是检错重传检错重传,即接收方检错到错误的帧后,即接收方检错到错误的帧后,就通知发送方就通知
7、发送方重新发送重新发送该帧,直到收到正确的帧该帧,直到收到正确的帧为止。这种方法的系统开销较小,通常应用于计为止。这种方法的系统开销较小,通常应用于计算机网络中。算机网络中。常用的差错控制技术有反馈检测、自动请求重常用的差错控制技术有反馈检测、自动请求重发(发(ARQARQ)和前向纠错()和前向纠错(FECFEC)。)。1 1)反馈检测反馈检测 反馈检测方法又称回送校验法。双方在进行数反馈检测方法又称回送校验法。双方在进行数据传输时,接收方将接收到的数据重新发回发送方,据传输时,接收方将接收到的数据重新发回发送方,由发送方检查是否与原始数据完全相符。如不相符,由发送方检查是否与原始数据完全相符
8、。如不相符,则发送方发送一个控制信息通知接收方删去出错的则发送方发送一个控制信息通知接收方删去出错的数据。并重新发送该数据;如相符,则发送下一个数据。并重新发送该数据;如相符,则发送下一个数据。数据。2 2)自动请求重发自动请求重发 自动请求重发(自动请求重发(Automatic Repeat requestAutomatic Repeat request,ARQARQ),是计算机网络中较常采用的差错控制方法。),是计算机网络中较常采用的差错控制方法。ARQARQ的原理的原理:P P5252特点:特点:3 3)前向纠错前向纠错前向纠错简称前向纠错简称FECFEC(Forward Error F
9、orward Error CorrectionCorrection)。其原理是:发送方将要发送的数据附加上一其原理是:发送方将要发送的数据附加上一定的冗余纠错码一并发送,接收方则根据纠定的冗余纠错码一并发送,接收方则根据纠错码对数据进行差错检测,如发现差错,由错码对数据进行差错检测,如发现差错,由接收方进行纠正。接收方进行纠正。4.4.流量控制流量控制 为防止接收端缓存能力不足而造成的阻塞和数据丢为防止接收端缓存能力不足而造成的阻塞和数据丢失,将数据高速、可靠地传输到接收方,发送端发失,将数据高速、可靠地传输到接收方,发送端发送数据的速率必须使接收端来得及接收,当接收方送数据的速率必须使接收端
10、来得及接收,当接收方来不及接收时,接收方必须及时控制发送方发送数来不及接收时,接收方必须及时控制发送方发送数据的速率,这就是流量控制功能。据的速率,这就是流量控制功能。概括地讲,概括地讲,流量控制就是使发送方和接收方的数据流量控制就是使发送方和接收方的数据处理速率保持一致。处理速率保持一致。数据链路层常用的流量控制方法有数据链路层常用的流量控制方法有:停等协议和滑停等协议和滑动窗口机制,将在介绍动窗口机制,将在介绍ARQARQ协议时再重点介绍。协议时再重点介绍。5.5.数据数据链路管理链路管理 当网络中的两个节点间要进行通信时,数据的发送当网络中的两个节点间要进行通信时,数据的发送方必须知道接
11、收方是否处于准备接收状态。为此,方必须知道接收方是否处于准备接收状态。为此,在传输数据之前通信双方必须事先交换一些必要的在传输数据之前通信双方必须事先交换一些必要的信息,让通信双方做好数据发送和接收的准备。同信息,让通信双方做好数据发送和接收的准备。同样,在传输数据时要维持数据链路,而在通信完毕样,在传输数据时要维持数据链路,而在通信完毕时要释放数据。时要释放数据。数据链路的建立、维持和释放数据链路的建立、维持和释放就叫做链路管理。就叫做链路管理。3.2 3.2 差错控制差错控制3.2.1 3.2.1 传输差错的特性传输差错的特性 当数据从信源出发,经过通信信道时,由于通信当数据从信源出发,经
12、过通信信道时,由于通信信道总是有一定的噪声存在,因此在到达信宿时,信道总是有一定的噪声存在,因此在到达信宿时,接收信号是信号与噪声的叠加。在接收端,接收电接收信号是信号与噪声的叠加。在接收端,接收电路在取样时判断信号电平。如果噪声对信号叠加的路在取样时判断信号电平。如果噪声对信号叠加的结果判断出现错误,就会引起传输数据的错误。结果判断出现错误,就会引起传输数据的错误。我们把通过通信信道后接收数据与发送数据不一致我们把通过通信信道后接收数据与发送数据不一致的现象称为的现象称为传输差错。传输差错。比特在传输过程中可能会产生差错,比特在传输过程中可能会产生差错,1 1 可能会变成可能会变成 0 0
13、而而 0 0 也可能变成也可能变成 1-1-比特差错。比特差错。差错差错的类型:的类型:通信信道的噪声分为通信信道的噪声分为热噪声和冲击噪声热噪声和冲击噪声两种。由这两种噪声两种。由这两种噪声分别产生两种分别产生两种随机差错和突发差错随机差错和突发差错。热噪声是由传输介质导体的电子热运动产生的,它的特点是热噪声是由传输介质导体的电子热运动产生的,它的特点是时刻存在,幅度较小且强度与频率无关,但频谱很宽,是一时刻存在,幅度较小且强度与频率无关,但频谱很宽,是一类随机噪声。由热噪声引起的差错称为类随机噪声。由热噪声引起的差错称为随机差错随机差错。此类差错。此类差错的特点是差错是孤立的,在计算机网络
14、应用中是极个别的。的特点是差错是孤立的,在计算机网络应用中是极个别的。与热噪声相比,冲击噪声幅度较大,是引起传输差错的主要与热噪声相比,冲击噪声幅度较大,是引起传输差错的主要原因。冲击噪声的持续时间要比数据传输中的每比特发送时原因。冲击噪声的持续时间要比数据传输中的每比特发送时间要长,因而冲击噪声会引起相邻多个数据位出错。冲击噪间要长,因而冲击噪声会引起相邻多个数据位出错。冲击噪声引起的传输差错称为声引起的传输差错称为突发差错突发差错。计算机网络中的差错主要是计算机网络中的差错主要是突发差错。突发差错。差错产生的原因?差错产生的原因?P P4747误码率是衡量一个信道质量的重要参数。误码率是衡
15、量一个信道质量的重要参数。是是在一段时间内,传输错误的比特占所传在一段时间内,传输错误的比特占所传输比特总数的比率。输比特总数的比率。v在数值上近似等于:在数值上近似等于:P Pe e=N=Ne e/N/N;v其中:其中:N N为传输的二进制比特总数,为传输的二进制比特总数,NeNe为被传错的比特数。为被传错的比特数。173.2.2 3.2.2 常用的简单差错控制编码常用的简单差错控制编码 为了保证数据传输的可靠性,在计算机网络传输数据时,必为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种须采用各种差错检测措施差错检测措施来减少误码率。来减少误码率。差错控制编码的差错控制编码的原
16、理原理是:发送方对准备传输的数据进行抗干是:发送方对准备传输的数据进行抗干扰编码,即按某种算法附加上一定的冗余位,构成一个码字后扰编码,即按某种算法附加上一定的冗余位,构成一个码字后再发送。接收方收到数据后进行校验,即检查信息位和附加的再发送。接收方收到数据后进行校验,即检查信息位和附加的冗余位之间的关系,以检查传输过程中是否有差错发生。冗余位之间的关系,以检查传输过程中是否有差错发生。差错控制编码分差错控制编码分检错码和纠错码检错码和纠错码两种,两种,检错码检错码是能自动发现是能自动发现差错的编码,差错的编码,纠错码纠错码是不仅能发现差错而且能自动纠正差错的是不仅能发现差错而且能自动纠正差错
17、的编码。编码。常用的差错控制编码方法主要有奇偶校验、海明码、常用的差错控制编码方法主要有奇偶校验、海明码、循环冗循环冗余检错余检错。3.2.3 3.2.3 海明码海明码 自主学习自主学习 1950 1950年,海明发明了从待发送的数据位中生成一定数年,海明发明了从待发送的数据位中生成一定数量的特殊码字,并发明了通过此特殊码字来检测和纠正差量的特殊码字,并发明了通过此特殊码字来检测和纠正差错代码的理论和方法。按照海明的方法,要求在比特串发错代码的理论和方法。按照海明的方法,要求在比特串发送前插入多个奇偶校验位,奇偶校验位校验在关键位置上送前插入多个奇偶校验位,奇偶校验位校验在关键位置上的奇偶性的
18、思想是如果比特位改变了,它们的位置将决定的奇偶性的思想是如果比特位改变了,它们的位置将决定一个特定的奇偶校验错误组合。比特串被发送后,接收方一个特定的奇偶校验错误组合。比特串被发送后,接收方就可以将这些在传输中出现错误的比特位纠正到正确的值。就可以将这些在传输中出现错误的比特位纠正到正确的值。海明码在内存寻址及海明码在内存寻址及RAMRAM与寄存器之间传送比特时非常有用。与寄存器之间传送比特时非常有用。3.2.4 3.2.4 循环冗余码循环冗余码 重点掌握重点掌握目前在数据链路层广泛使用目前在数据链路层广泛使用循环冗余检验码循环冗余检验码(即(即CRCCRC码码)的检错)的检错码编码方法之一码
19、编码方法之一,简称循环码。简称循环码。CRCCRC是一种被广泛采用的是一种被广泛采用的多项式编码多项式编码,具有良好的数,具有良好的数学结构,易于实现,具有较强的检错能力,特别适学结构,易于实现,具有较强的检错能力,特别适合于检测突发性的错误。合于检测突发性的错误。CRCCRC的工作方法是在发送端产生一个冗余码,附加在的工作方法是在发送端产生一个冗余码,附加在信息位后面一起发送到接收端,接收端收到的信息信息位后面一起发送到接收端,接收端收到的信息按发送端形成按发送端形成循环循环冗余码同样的算法进行校验,如冗余码同样的算法进行校验,如果发现错误,则通知发送端重发。任何一个由二进果发现错误,则通知
20、发送端重发。任何一个由二进制数位串组成的代码,都可以唯一的与一个只含有制数位串组成的代码,都可以唯一的与一个只含有0 0和和1 1两个系数的多项式建立一一对应的关系。两个系数的多项式建立一一对应的关系。CRCCRC码字由两部分组成,前一部分是码字由两部分组成,前一部分是k k个比特的待发送信个比特的待发送信息码,固定不变的,后一部分是息码,固定不变的,后一部分是n n个比特的冗余码。个比特的冗余码。Q Q:如何得出:如何得出n n个比特的冗余码?个比特的冗余码?冗余码的计算方法冗余码的计算方法是,先将信息码后面补是,先将信息码后面补0 0,补,补0 0的的个数是生成多项式的个数是生成多项式的最
21、高次幂最高次幂n n;将补零之后的信息码除以将补零之后的信息码除以G(XG(X),注意除法过程中所),注意除法过程中所用的减法是用的减法是模模2 2减法减法,即没有借位的减法,也就是,即没有借位的减法,也就是异异或运算或运算。当被除数逐位除完时,得到比除数少一位。当被除数逐位除完时,得到比除数少一位的余数。此余数即为的余数。此余数即为冗余位冗余位(冗余码)(冗余码),将其添加,将其添加在信息位后便构成在信息位后便构成CRCCRC码字码字。21循环冗余检验循环冗余检验CRCCRC的原理的原理 在在发送端发送端,先把数据划分为组。假定每组,先把数据划分为组。假定每组 k k 个比特。个比特。假设待
22、传送的一组数据假设待传送的一组数据 M M=101001=101001(现在(现在 k k=6=6)。那么在)。那么在 M M 的后面再添加供差错的后面再添加供差错检测用的检测用的 n n 位位冗余码冗余码一起发送。一起发送。计算计算n n 位位的冗余码。的冗余码。22冗余码的计算冗余码的计算 实际的实际的CRCCRC校验码生成是采用二进制模校验码生成是采用二进制模2 2运算,运算,是一种是一种异或运算异或运算(相同为(相同为0 0,不同为,不同为1 1);将发送数据比特序列将发送数据比特序列左移左移n n位位以放入余数,这以放入余数,这相当于在相当于在 M M 后面后面添加添加 n n 个个
23、 0 0。得到的得到的 (k k+n n)位的位的CRCCRC码字除以事先选定好码字除以事先选定好的长度为的长度为 (n n+1)+1)位的位的除数除数P P,得出,得出商商是是 Q Q 而而余数余数是是R R,即,即R R为为n n位的冗余码。(余数位的冗余码。(余数R R 比比除数除数 P P 少少1 1 位,所以位,所以 R R 是是 n n 位。位。)实例:见下页实例:见下页23冗余码的计算实例冗余码的计算实例 现在现在 k k=6,=6,M M=101001=101001。设设 n n=3,=3,除数除数 P P=1101=1101,被除数是被除数是 101001 101001000
24、000左移左移3 3位,用位,用0 0填充填充。模模 2 2 运算的结果是:运算的结果是:商商 Q Q=110101=110101,余数余数 R R=001=001。把余数把余数 R R 作为作为冗余码冗余码添加在数据添加在数据 M M 的后面发送出的后面发送出去。发送的数据是:去。发送的数据是:2 2n nM M+R R 即:即:101001101001001001,共,共 (k k+n n)位。位。24循环冗余检验的原理说明循环冗余检验的原理说明 110101 Q(商)P(除数)1101 101001000 2nM(被除数)1101 1110 1101 0111 0000 1110 110
25、1 0110 0000 1100 1101 001 R(余数),作为 FCS说明:做题过程中要有此计算过程。说明:做题过程中要有此计算过程。25接收端接收端对收到的每一帧进行对收到的每一帧进行 CRC CRC 检验检验 (1)(1)若若得得出出的的余余数数 R R =0 0,则则判判定定这这个个帧帧没有差错,就没有差错,就接受接受(accept)(accept)。(2)(2)若若余余数数 R R 0 0,则则判判定定这这个个帧帧有有差差错错,就就丢弃丢弃。CRCCRC的特点:的特点:P P5050但但这这种种差差错错校校验验方方法法并并不不能能确确定定究究竟竟是是哪哪一个或哪几个比特出现了差错
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机网络 数据链 研究 培训资料
限制150内