《计算机网络》第4章数据链路层

《计算机网络》第4章数据链路层

ID:37810646

大小:785.00 KB

页数:69页

时间:2019-05-31

《计算机网络》第4章数据链路层_第1页
《计算机网络》第4章数据链路层_第2页
《计算机网络》第4章数据链路层_第3页
《计算机网络》第4章数据链路层_第4页
《计算机网络》第4章数据链路层_第5页
资源描述:

《《计算机网络》第4章数据链路层》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章数据链路层概述4.1流量控制4.2差错控制4.3PPP协议4.4HDLC协议4.5网络设备4.6数据链路层的基本功能:能够建立一条和维护一条或多条没有数据发送错误的数据链路,并在数据传输完毕后能够释放掉这条链路。4.1概述链路(link)就是从一个结点到相邻结点的一段无源的物理线路段,中间没有任何其它的交换结点。数据链路(datalink)则是当需要在一条线路上传送数据时,除了必须有一条物理线路外,还必须有一些必要的规程来控制这些数据的传输。2、数据链路层的功能(1)链路管理(2)帧同步(3)流量控制(4)差错控制(5)将数据信息和控制信息区分开(6)透明传输(7)寻址4.2流量

2、控制4.2.1、停止等待协议为了深入理解数据链路层的协议,可以先从一种假设的、完全理想化的数据传输过程开始讨论。所谓完全理想化的数据传输模型是基于以下两个假定:假定1:链路是理想的传输信道,所传送的任何数据既不会出错也不会丢失。假定2:不管发送方以多快的速率发送数据,接收方总是来得及收下,并及时上交主机。4.2.1停止等待协议具有最简单流量控制的数据链路层协议算法:在发送站点:1.从主机取一个数据帧;2.将数据帧送到数据链路层的发送缓冲区;3.将发送缓冲区中的数据帧发送出去;4.等待;5.若收到由接收结点发过来的信息,则从主机取一个新的数据帧,然后转到2。4.2.1停止等待协议在接收站

3、点:1.等待;2.若收到由发送结点发过来的数据帧,则将其放入数据链路层的接收缓冲区;3.将接收缓冲区中的数据帧上交主机;4.向发送结点回送一个信息,表示数据帧已经上交给主机;5.转到1。4.2.1停止等待协议(a)不需要任何数据链路层协议的数据传输(b)具有简单的流量控制的数据链路层协议4.2.1停止等待协议BB传输数据的信道不能保证使所传的数据不产生差错,并且还需要对数据的发送端进行流量控制。图4-3(a)画的是数据在传输过程中不出差错的情况。当发现差错时,结点B就向主机A发送一个否认帧NAK,以表示主机A应当重传出现差错的那个数据帧。图4-3(b)画出了主机A重传数据帧。4.2.1

4、停止等待协议有时链路上的干扰很严重,或由于其他一些原因,结点B收不到结点A发来的数据帧。这种情况称为帧丢失,如图4-3(c)所示。于是就出现了死锁现象。要解决死锁问题,可在结点A发送完一个数据帧时,就启动一个超时计时器(timeouttimer)。若到了超时计时器所设置的重传时间tout而仍收不到结点B的任何确认帧,则结点A就重传前面所发送的这一数据帧,如图4-3(c)和图4-3(d)所示。一般可将重传时间选为略大于“从发完数据帧到收到确认帧所需的平均时间”。4.2.1停止等待协议4.2停等协议重传丢失DATA0ACKDATA1ACKABDATA0NAKDATA0ABDATA0DATA

5、0AB超时ACKACKDATA0DATA0ABACKACK出错丢弃(1)正常情况(2)数据帧出错(3)数据帧丢失(4)确认帧丢失时间丢失重传超时重传送主机送主机送主机送主机送主机4.2.1停止等待协议实用的停止等待协议的算法:在发送结点:(1)从主机取一个数据帧;(2)V(S)取0{发送状态变量初始化};(3)令N(S)等于V(S);{将发送状态变量的数值写入发送序号}将数据帧送交发送缓冲区;(4)将发送缓冲区中的数据帧发送出去;(5)设置超时定时器{选择适当的超时时间};(6)等待{等待以下三个事件中最先出现的一个};(7)若收到确认帧ACK,则从主机取一个新的数据帧;令V(S)等于

6、[1-V(S)];{更新发送状态变量,变为下一个序号}转到(3)(8)若接收到否认帧NAK,则转到(4){重发数据帧};(9)若超时定时器时间到,则转到(4){重发数据帧};在接收站点:(1)V(R)取0{接收状态变量初始化,其数值等于欲接收的数据帧的发序号};(2)等待;(3)当收到一个数据帧,就检查有无传输差错产生(如用CRC)。若检查结果正确无误,则执行后续算法;否则转到(8);(4)若N(S)等于V(R),则执行后续算法;否则丢弃数据帧转到(7);(5)将收到的数据帧中的数据部分送交主机;(6)令V(R)等于[1-V(R)]{更新接收状态变量,准备接收下一个数据帧};(7)发送

7、确认帧ACK,并转到(2);(8)发送否认帧NAK,并转到(2)。4.2.1停止等待协议对于状态变量需要注意以下几点:(1)每发送一个数据帧,都要将发送状态变量V(S)的值(0或1)写到数据帧的发送序号N(S)上。但只有收到一个确认帧ACK后,才能更新发送状态变量V(S)一次,并发送新的数据帧。(2)在接收端,每接收到一个数据帧,就要将发方在数据帧上设置的发送序号N(S)与本地的接收状态变量V(R)相比较,若二者相等就表明是新的数据帧,否则为重

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。