网络第四章数据链路层汇总课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《网络第四章数据链路层汇总课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 第四 数据链 汇总 课件
- 资源描述:
-
1、数据链路层第1页,共70页。本章内容本章内容 掌握链路、数据数据链路的概念,理解掌握链路、数据数据链路的概念,理解数据链路层的功能数据链路层的功能 理解停止等待协议的工作原理与过程理解停止等待协议的工作原理与过程 理解数据链路层差错控制原理理解数据链路层差错控制原理 理解数据链路层流量控制的意义与方法理解数据链路层流量控制的意义与方法 掌握面向比特数据链路层协议掌握面向比特数据链路层协议HDLC的的帧结构与帧分类帧结构与帧分类 理解理解PPP链路协议的工作过程链路协议的工作过程第2页,共70页。难点与重点难点与重点 数据链路层基本概念与功能数据链路层基本概念与功能 ARQ协议原理协议原理 链路
2、层差错控制原理链路层差错控制原理 HDLC协议与帧结构协议与帧结构第3页,共70页。4.1 数据链路层功能数据链路层功能 链路概念(链路概念(Link):是一条无源的点到是一条无源的点到点的物理线段,中间没有任何其他节点,点的物理线段,中间没有任何其他节点,进行通信的两台计算机的通路往往由许进行通信的两台计算机的通路往往由许多链路组成。多链路组成。数据链路(数据链路(Data Link):在不可靠的物在不可靠的物理链路上添加一些由硬件及软件实现的理链路上添加一些由硬件及软件实现的控制规程,构成数据链路,以保证准确控制规程,构成数据链路,以保证准确传输数据帧。传输数据帧。第4页,共70页。数据链
3、路层功能数据链路层功能 链路管理链路管理 链路的建立、维持与释放。链路的建立、维持与释放。帧同步帧同步 保证接收方能从比特流中分离出数据帧保证接收方能从比特流中分离出数据帧 流量控制流量控制 协调发送方与接收方同步工作协调发送方与接收方同步工作 差错控制差错控制 接收方能检验出有错误的帧,并采取相接收方能检验出有错误的帧,并采取相应措施。应措施。第5页,共70页。数据链路层功能数据链路层功能 透明传输透明传输 数据链路层并不关心所传数据内容,按数据链路层并不关心所传数据内容,按一定规则能从帧中区分数据与控制信息。一定规则能从帧中区分数据与控制信息。寻址寻址 在多点连接时保证帧被准确送达目的节在
4、多点连接时保证帧被准确送达目的节点。点。第6页,共70页。4.2 停止等待协议停止等待协议 理想的链路:理想的链路:链路很可靠,数据帧不会出错与丢失;链路很可靠,数据帧不会出错与丢失;不管发送方以多快的速率发送,接收方都能来不管发送方以多快的速率发送,接收方都能来得及接收而保证不丢失数据帧。得及接收而保证不丢失数据帧。此时不需要链路层协议。此时不需要链路层协议。主机主机链路层链路层主机主机链路层链路层节点节点A节点节点B帧帧第7页,共70页。停止等待协议停止等待协议不可靠的链路导致可能出现的情况:不可靠的链路导致可能出现的情况:数据帧出错数据帧出错(噪声干扰)(噪声干扰)数据帧不能到达数据帧不
5、能到达(链路错误)(链路错误)接收溢出接收溢出(结点差异)(结点差异)数据帧重复数据帧重复(链路阻塞)(链路阻塞)第8页,共70页。数据链路层差错控制数据链路层差错控制解决解决“数据帧出错数据帧出错”方法:方法:可对欲发送的帧进行可对欲发送的帧进行差错编码差错编码,接收方,接收方通过通过差错校验差错校验,可判断出接收的数据帧,可判断出接收的数据帧是否发生错误。如果是否发生错误。如果接收错误接收错误,就向发,就向发送方发送一出错标识帧送方发送一出错标识帧,称为称为否认帧否认帧NAK,通知发送方重新传送原数据帧。通知发送方重新传送原数据帧。第9页,共70页。数据链路层差错控制示意图数据链路层差错控
6、制示意图DATA0校验出错校验出错NAKDATA0确认出错确认出错重新传送重新传送节点节点A节点节点B校验正确校验正确提交主机提交主机第10页,共70页。数据链路层简单流量控制数据链路层简单流量控制解决解决“接收溢出接收溢出”方法:方法:可以采用发送方每发送一帧,就可以采用发送方每发送一帧,就停止发停止发送送,等待接收方的确认信息。接收方每,等待接收方的确认信息。接收方每收到一个正确的数据帧就向发送方发送收到一个正确的数据帧就向发送方发送一确认标识帧,称为一确认标识帧,称为确认帧确认帧ACK。发送发送方接收到确认帧,则继续发送下一帧。方接收到确认帧,则继续发送下一帧。第11页,共70页。数据链
7、路层简单流量控制示意图数据链路层简单流量控制示意图节点节点A节点节点BDATA0校验正确校验正确提交主机提交主机发确认帧发确认帧ACKDATA1收到确认收到确认发送新帧发送新帧停止发送停止发送等待确认等待确认ACKDATA2第12页,共70页。超时自动重新传送超时自动重新传送解决解决“数据帧丢失数据帧丢失”方法:方法:可在发送方每发送完一个数据帧就启动可在发送方每发送完一个数据帧就启动一个一个超时计时器超时计时器,其时间可设为略大于,其时间可设为略大于“从发完数据帧到收到确认帧所需的平从发完数据帧到收到确认帧所需的平均时间均时间”。如果超时,发送方还没有收。如果超时,发送方还没有收到到ACK,
8、则认为帧丢失,自动将数据帧,则认为帧丢失,自动将数据帧重新发送重新发送。第13页,共70页。超时重新传送示意图超时重新传送示意图节点节点A节点节点BACKDATA0DATA1DATA0数据帧丢失数据帧丢失超时超时确认丢失确认丢失重新传送重新传送校验正确发校验正确发送确认帧送确认帧收到确认收到确认发送新帧发送新帧第14页,共70页。重复帧处理重复帧处理 当接收方正确接收数据帧并发出确认帧,当接收方正确接收数据帧并发出确认帧,但确认帧丢失。发送方在规定时限内没但确认帧丢失。发送方在规定时限内没有接收到确认信息,认为数据帧丢失,有接收到确认信息,认为数据帧丢失,自动重新传送原数据帧。这样接收方又自动
9、重新传送原数据帧。这样接收方又收到一个同样的数据帧,称为收到一个同样的数据帧,称为重复帧重复帧。可通过对可通过对数据帧编号数据帧编号的方法解决。发送的方法解决。发送方将欲发送的数据帧编好序号,如接收方将欲发送的数据帧编好序号,如接收方收到序号相同的帧,则将重复帧丢弃,方收到序号相同的帧,则将重复帧丢弃,并向发送方并向发送方重新发送确认帧重新发送确认帧。第15页,共70页。重复帧处理示意图重复帧处理示意图节点节点A节点节点BACKDATA100确认帧丢失确认帧丢失超时超时DATA100ACKDATA101接收正确接收正确保留副本保留副本发送确认发送确认收到重复收到重复帧,帧,丢弃丢弃发送确认发送
10、确认认为丢失认为丢失重新传送重新传送收到确认收到确认发送新帧发送新帧第16页,共70页。停止等待协议停止等待协议 发送方每发送完一帧就要等待接收方的发送方每发送完一帧就要等待接收方的确认信息。如果出错可由发送方自动重确认信息。如果出错可由发送方自动重传。因此称为自动请求重传,即传。因此称为自动请求重传,即ARQ(Automatic Repeat reQuest)。)。因为每因为每次只发送一帧,可用次只发送一帧,可用1个比特为帧序号个比特为帧序号编码,来区分重复帧。编码,来区分重复帧。第17页,共70页。停止等待协议停止等待协议 数据帧出错或丢失(数据帧出错或丢失(发送确认与否认帧发送确认与否认
11、帧)确认帧出错或丢失(确认帧出错或丢失(超时重传超时重传)否认帧出错或丢失(否认帧出错或丢失(超时重传超时重传)溢出(溢出(停止等待停止等待)重复数据(重复数据(帧编号帧编号)上层数据 检错序号标志地址数据帧数据帧接收序号 检错标志 地址确认帧确认帧第18页,共70页。停止等待协议发送算法停止等待协议发送算法 vs0 发送序号初始化发送序号初始化 dataget_host()从主机取数据从主机取数据 data_s(data,vs,CRC)数据帧编码数据帧编码 send(data_s)发送数据帧发送数据帧 time_out()启动超时计时器启动超时计时器 data_rrecive()接收数据帧接
12、收数据帧 if(data_r=null)and(time_out()=0)goto if(data_r=ACK)vs=1-vs,goto 正确正确 if(data_r=NAK)goto 出错重传出错重传 if(time_out()=1)goto 超时重传超时重传 第19页,共70页。停止等待协议接收算法停止等待协议接收算法 vr0 接收序号初始化接收序号初始化 data_r=recive()if(data_r=null)goto 等待接收等待接收 if CRC(data_r)send(NAK),data_r=null,goto 帧错误,发送否认帧帧错误,发送否认帧 if(ns!=vs)data
13、_r=null,goto 丢弃重复丢弃重复 if(data_r!=null)send_host(data_r)vr=1-vr 变接收序号,准备接收下一帧变接收序号,准备接收下一帧 send(ACK),goto 第20页,共70页。ARQ算法总结算法总结 在发送方只有收到在发送方只有收到ACK后后,才改变发送序号;接收,才改变发送序号;接收方只有接收到无误的且与方只有接收到无误的且与发送序号相同的帧发送序号相同的帧,才改,才改变接收序号,如果序号不同,则丢弃帧并发送变接收序号,如果序号不同,则丢弃帧并发送ACK。数据000AC 数据000AC01ACC11A1AC1C 数据110AC 数据110
14、1AC0A上层数据 检错序号标志地址第21页,共70页。差错控制方法差错控制方法 在所发送的数据块上附加一定的冗余位,在所发送的数据块上附加一定的冗余位,使接收方能够推导出已发送数据应该是使接收方能够推导出已发送数据应该是什么,如果发现错误,可以自动纠正错什么,如果发现错误,可以自动纠正错误。附加的冗余位,称为误。附加的冗余位,称为自动纠错编码自动纠错编码。在数据块上附加冗余位,使接收方能检在数据块上附加冗余位,使接收方能检测出是否有差错,但并不知道差错在哪测出是否有差错,但并不知道差错在哪里,也不会自动纠正错误,而是里,也不会自动纠正错误,而是请求发请求发送方重新传送数据送方重新传送数据,以
15、消除错误。,以消除错误。第22页,共70页。CRC校验技术校验技术 计算机网络数据链路层广泛采用循环冗计算机网络数据链路层广泛采用循环冗余码作为差错编码,有较强的检错能力。余码作为差错编码,有较强的检错能力。要求双方事先约定一个生成多项式要求双方事先约定一个生成多项式G(X),其高位与低位必须是),其高位与低位必须是1。编码时。编码时将检验和附加在传输帧后,形成特定的将检验和附加在传输帧后,形成特定的数据帧,使其能被数据帧,使其能被G(X)除尽。当接)除尽。当接收方收到此帧后,用收方收到此帧后,用G(X)去除它,)去除它,若有余数,则有传输错误,请求发送方若有余数,则有传输错误,请求发送方重传
16、该帧。重传该帧。第23页,共70页。常用的国际标准生成多项式常用的国际标准生成多项式CRC-12 G(X)=X12+X11+X3+X2+X+1CRC-16 G(X)=X16+X15+X2+1CRC-CCITT G(X)=X16+X15+X5+1 CRC-32 =X23+X26+X23+X22+X16+X12+X11+X10+X8+X7+X5+X4+X2+X+1 第24页,共70页。4.3 连续连续ARQ协议协议 ARQ协议是一个实用的链路层协议。每发送完一协议是一个实用的链路层协议。每发送完一帧都要等待确认帧,通信双方不需要太多的帧缓帧都要等待确认帧,通信双方不需要太多的帧缓存,且算法简单易实
17、现。但信道利用率并不高。存,且算法简单易实现。但信道利用率并不高。可采用连续自动请求重传方案,即连续可采用连续自动请求重传方案,即连续ARQ协议。协议。不用等待前一帧被确认便可发送下一帧。这就不用等待前一帧被确认便可发送下一帧。这就需要在发送方设置一个较大的缓冲存储空间,需要在发送方设置一个较大的缓冲存储空间,用以存放若干待确认的信息帧。当发送方收到用以存放若干待确认的信息帧。当发送方收到对某信息帧的确认帧后便可从帧缓存中将该信对某信息帧的确认帧后便可从帧缓存中将该信息帧删除,并继续发送数据帧。所以,连续息帧删除,并继续发送数据帧。所以,连续ARQ协议使得信道利用率大大提高。协议使得信道利用率
18、大大提高。第25页,共70页。连续连续ARQ协议原理协议原理123465发送完第一发送完第一帧后并不等帧后并不等待,继续发待,继续发送后续几帧送后续几帧每个确认帧每个确认帧都要有编号,都要有编号,说明对相应说明对相应的帧确认的帧确认节点节点A节点节点B第26页,共70页。Go-BACK-N 超时超时重传重传发送方发送方接收方接收方01XDDD2345023452345出错出错丢弃丢弃1012345第27页,共70页。连续连续ARQ协议协议 发送方将待发送的帧编好序号。发送完发送方将待发送的帧编好序号。发送完第第0号帧后,不是停止等待确认帧,而号帧后,不是停止等待确认帧,而是继续发送第是继续发送
19、第1号帧、第号帧、第2号帧等。由于号帧等。由于连续发送了很多帧,所以接收方应对确连续发送了很多帧,所以接收方应对确认帧或否认帧编号,以通知发送方是对认帧或否认帧编号,以通知发送方是对哪一帧进行的确认或否认。哪一帧进行的确认或否认。由此可见连续由此可见连续ARQ协议可大大提高信道协议可大大提高信道的利用率,但重传时造成的利用率,但重传时造成数据重复传送,数据重复传送,又会降低通信效率。又会降低通信效率。第28页,共70页。选择重传选择重传 为了进一步提高信道的利用率,接收方为了进一步提高信道的利用率,接收方只将出错的帧丢弃,接收正确的帧保存只将出错的帧丢弃,接收正确的帧保存在接收缓存中,设法要求
20、发送方只传送在接收缓存中,设法要求发送方只传送出现差错的那一帧,一旦收到重新传来出现差错的那一帧,一旦收到重新传来的帧后,就可以将原已存于缓冲区中的的帧后,就可以将原已存于缓冲区中的其余帧一并按正确的顺序上交主机。这其余帧一并按正确的顺序上交主机。这种方法称为种方法称为选择重传选择重传(Select Repeat),显然,选择重传减少了浪费,但要求接显然,选择重传减少了浪费,但要求接收方有足够大的缓冲区空间。收方有足够大的缓冲区空间。第29页,共70页。4.4流量控制流量控制 链路层的流量控制是通信双方能协调工链路层的流量控制是通信双方能协调工作的保障,如果没有合理的流量控制手作的保障,如果没
21、有合理的流量控制手段,可能造成数据丢失。段,可能造成数据丢失。增加缓冲存储空间在某种程度上可以缓增加缓冲存储空间在某种程度上可以缓解收、发双方在传输速率上的差异,但解收、发双方在传输速率上的差异,但并不能完全解决这一矛盾。并不能完全解决这一矛盾。经常使用的流量控制方法有经常使用的流量控制方法有XON/XOFF与窗口机制。与窗口机制。第30页,共70页。XON/XOFF XON/XOFF主要应用于面向字符通信中,主要应用于面向字符通信中,使用一对控制字符来实现流量控制。其使用一对控制字符来实现流量控制。其中中XON采用采用ASCII字符集中的控制字符字符集中的控制字符DC1,XOFF采用采用AS
22、CII字符集中的控字符集中的控制字符制字符DC3。当通信路上的接收方发生。当通信路上的接收方发生过载时,便向发送方发送一个过载时,便向发送方发送一个XOFF字字符,发送方接收符,发送方接收XOFF字字 第31页,共70页。XON/XOFF工作原理工作原理节点节点A节点节点BXOFFXON连续发送字符连续发送字符继续发送字符继续发送字符接收缓存将满接收缓存将满接收完毕接收完毕第32页,共70页。窗口机制窗口机制 在在ARQ协议中,因为每发送完一帧都要协议中,因为每发送完一帧都要停止等待确认信息,流量控制简单。只停止等待确认信息,流量控制简单。只要求通信双方拥有一帧的缓存空间,只要求通信双方拥有一
23、帧的缓存空间,只要超时时限选择合理,不需要额外的流要超时时限选择合理,不需要额外的流量控制机制。量控制机制。对于连续对于连续ARQ协议如果发送方没有收到协议如果发送方没有收到任何来自收方的确认信息,发送方是不任何来自收方的确认信息,发送方是不能无限制地发送数据帧的。能无限制地发送数据帧的。第33页,共70页。窗口机制窗口机制 发送方缓存中需保留未被确认的帧副本,发送方缓存中需保留未被确认的帧副本,以备重传。计算机的硬件资源是有限的,以备重传。计算机的硬件资源是有限的,缓存容量不能无限制增加。缓存容量不能无限制增加。发送数据帧过多,一旦有一帧出现错误,发送数据帧过多,一旦有一帧出现错误,可能有很
24、多帧需要重传,造成很大的浪可能有很多帧需要重传,造成很大的浪费,增加了很多不必要的开销。费,增加了很多不必要的开销。为了对连续发送的大量数据帧进行编号,为了对连续发送的大量数据帧进行编号,每帧的发送序号也要占用较多的比特,每帧的发送序号也要占用较多的比特,又增加了一定的开销。又增加了一定的开销。第34页,共70页。滑动窗口的概念滑动窗口的概念 需要对连续需要对连续ARQ协议中连续发送的未被确认的帧协议中连续发送的未被确认的帧数做一定的限制。数做一定的限制。在发送方设置发送窗口,用来对发送方进行流在发送方设置发送窗口,用来对发送方进行流量控制,其大小量控制,其大小WT代表在发送方还没有收到对方代
25、表在发送方还没有收到对方确认信息情况下最多可以连续发送的数据帧数。确认信息情况下最多可以连续发送的数据帧数。在接收方设置接收窗口。接收窗口用来控制接收方在接收方设置接收窗口。接收窗口用来控制接收方应该接收哪些帧,只有收到的数据帧的发送序号落应该接收哪些帧,只有收到的数据帧的发送序号落入接收窗口内才允许将该数据帧收下。入接收窗口内才允许将该数据帧收下。第35页,共70页。104237560 1已收到已收到0号帧号帧,准备接收准备接收1号帧号帧ab接收方接收方0 14237560 1接收窗口接收窗口Wr=1,准备接收准备接收0号帧号帧接收方接收方0 14237560 1发送窗口发送窗口Wt=5,允
展开阅读全文