当前课程知识点:计算机网络 >  第三章:数据链路层 >  3.8 选择性重传 >  Video

返回《计算机网络》慕课在线视频课程列表

Video在线视频

下一节:选择性重传

返回《计算机网络》慕课在线视频列表

Video课程教案、知识点、字幕

各位好

当我们连续发送W个数据帧

其中一帧出错

但其后续的帧被成功发送

有两种处理的方式

一种呢是丢弃出错帧

及其后续的帧

全部重传

它对应着协议5回退n帧

还有一种方式呢是丢弃出错的帧

缓存所有后续正确接受的帧

它只重传出错那一帧

这对应着协议6

叫选择性的重传

今天我们就来看一下选择性的重传

对于接收方来说

接收方它的接收策略是这样的

丢弃出错帧

但是后续的帧如果是正确接收的话

它会把它缓存下来

发送方的重传策略也变了

它只重传出错那一帧

我们来看这个图

来理解选择性重传

左边是发送方

假如我们的窗口W是等于8的

一次性的发8个帧到对方

接收方收到这8个帧发现呢

第2帧出错了

但是3456这些帧是没有错的

所以3456这些后续成功接收的帧

它把它接收下来

并且缓存起来

对于第2帧

出错这一帧

它把它丢掉

选择性重传它的工作原理的发送方

我们来看一下

正常发送

是对帧进行编号

缓存所有未被确认的帧

收到确认之后呢

就释放确认帧所对应的帧

所占的缓冲区

滑动发送窗口

如果出错的那个帧导致超时

它会重传

缓存的最后

被确认的那个帧以后的那一帧

就是重传出错那一帧

接收方呢

正常情况下就是正常接收

它会把收到的数据提取出来

上交给网络层

并且回发确认

滑动它的接收窗口

如果收到非期望的正确帧

那么它对它做缓存

并且回送对接收的

最后正确帧的确认

如果收到的

是对出错帧的重传帧的话

它会把这个帧跟以前缓存的那些帧

一起排序上交

在选择性重传里面

非常关键的步骤

第一个就是缓存

所有正确接收到的帧

接收方都要把它接收下来

并且缓存起来

第二个关键性的步骤

就是出错那一帧

因为没有得到确认

所以最终会导致发送方超时

把它进行重传

第三个关键性的步骤就是

接收方收到重传帧

它会和以前缓存的那些帧

一起重新排序

按序提交给上一层

我们在刚才的

选择性重传工作原理里面看到

我们的出错帧一定要等到超时之后

才重传

接收方才可能一次性的去缓解它的

缓存的压力

实际上

我们可以加快这个重传的动作

怎么加快呢

启用了一个机制叫否定确认NAK

否定确认就是

当我们收到那个

第二号出错帧的时候

我们把它丢了

原来我们是不理睬它

就让它超时之后重传

那么否定确认重传NAK启用了之后

我们收到这个二号错帧

我们就可以加一个NAK等于2

明确的告诉对方说

第二号帧错了

请你重传第二号帧

所以这个NAK采用了之后呢

有可能对方还没有超时

我的NAK已经到了

那么我的重传就可以开始启动了

加快了这个重传的节奏

现在呢我们把回退n帧协议5

和选择性重传协议6

两个协议呢做一个小小的对照

回退n帧呢

它是发送方需要比较大的缓冲区

以便可以重传所有的帧

它重传的帧数多

适合于那种信道出错率很少的情况

而选择性重传呢

它接收方是需要较大的缓冲空间

以便可以按正确的顺序

将分组提交到网络层

重传的帧数少

适合于那种信道质量非常糟糕的

那个通信环境

在协议6里边

滑动窗口W的选择

也是有考究的

如果我们的序列号是用三位表示的

它的最大序列号是7

那么我们的W窗口

只能选择等于4

而发送窗口通常小于接收窗口

我们来看一个反例

如果说我们的W

不是4或者4以下的话

取一个比较大的值

取W等于7会发生什么情况呢

我们来看一下

假如说我们的发送窗口和接收窗口

这个时候都用的是W等于7

那么发送方会一次性的发送

7个帧过去

这7个帧它的编号是0123456

总共7个帧

这7个帧假设说

非常成功地到达了对方

对方呢也非常成功地接收到了

这7个帧

并且呢

把它交给上一层

并且移动了它的接收窗口

它的接收窗口原来是0123456

现在呢就滑动到7012345

这7个值了

也就是说它期待新窗口的那些帧

它的编号是7012345

这些编号

并且呢回发了确认回去

但是非常不幸

假如说这个确认帧

在路上遭遇到了一个雷

把它打掉了

这7个确认帧全部丢失

丢失了之后首先会导致0号帧超时

0号帧超时之后

发送方会重传0号帧

那么这个0号帧

顺利的到达了接收方

接收方收到这个帧之后

它打开一看

这个帧的序列号是等于0的

有没有落在我的接收窗口呢

它一看

它的接收窗口是7012345

正在它的接收窗口之内

所以它认为这是新的0号帧

它就把它收下来了

但事实上我们已经看到

这只是一个重传帧而已

它把它当做一个新帧收下来了

所以发生了错误

这是让协议工作失败

那么怎么解决这个问题呢

刚才我们看到发生这样的情况

实际上是新老窗口

重复了而带来的

它的第一个窗口是0123456

第二个窗口是7012345

有窗口是重合的

那么我们只要保证新老窗口不重叠

不交叠

那么就可以解决这个问题

比如说我们的W

如果取为4的话

那么第一个窗口是0123

第二个窗口是4567

它就不会再重复了

那么取成4是不是能避免刚才

碰到的那种情况呢

我们来看一下

第一个窗口发送了

0123四个帧出去

接收方正确的接收了

并且回发了确认

还移动了它的接收窗口

它的窗口从0123移动到4567

也就是说它期待

接收的下一个窗口的帧的编号

是4567

好了

假如说这四个确认帧也在路上丢了

也被一个雷打掉了

会发生什么情况呢

那么首先导致0号帧超时

0号帧超时之后重传

重传的这个O号帧

顺利地到达了接收方

接收方把它打开一看

它的帧的sequence number是等于0的

0并不在它的4567这个窗口的里面

所以它认为这是一个重传的帧

它已经收过了

所以它不要它了

你看

协议就正常的工作了

所以我们的窗口

一定不能超过二分之

最大的序列号加1

所以窗口的值

对协议工作的成败来说

影响非常的大

那么我们把这三个协议

三个滑动窗口协议

它的窗口的值总结一下

对于协议4来说

我们的发送窗口是01都行

而接收窗口呢是等于1的

对于回退n帧的协议5来说

它的接收窗口是等于1的

而发送窗口

可以在0到最大的序列号之间

对于协议6来说

它的接收窗口等于二分之

最大的序列号加1

而发送窗口通常小于接收窗口

小结一下今天的内容

批发数据的时候

其中一帧出错

可以从出错帧开始重传

也可以只重传出错那一帧

选择性重传

只重传出错那一帧

但是它需要接收方

付出更多的缓存代价

它适合出错率较高的传输环境

选择性重传的窗口数

接收窗口呢

是不能超过

最大的序列号加1的一半

而发送窗口通常是小于接收窗口

计算机网络课程列表:

第零章

-本课程简介

--课程组织

--课程简介和学习目标

--第44次中国互联网络发展状况统计报告201909

第一章 概述

-1.1 为什么要学习计算机网络?

--为什么要学习计算机网络?

--为什么要学习计算机网络?

-1.2 互联网络发展史

--Video

--互联网络发展史

-1.3 常用的基本概念

--Video

--常用的基本概念

-1.4 参考模型(重点)

--Video

--参考模型

-1.5 参考模型相关的概念

--Video

--数据如何传输

-1.6 本课程的组织

--Video

--课程组织

-附录1:思考题

--html

-附录2:术语中英对照表

--html

-附录3:伦敦奥运会开幕式之Tim Berners Lee

--伦敦奥运会开幕式之Tim Berners Lee

--附录说明

-第一章 概述--章节测试

-附录4:本章的无背景乐的视频

--1-2互联网网络发展史

--1-3 常用的基本概念

--1-4参考模型

--1-5参考模型相关的概念

--关于附录4的说明

第二章 物理层

-2.1 数据通信的理论基础

--Video

--数据通信的理论基础

-2.2 有导向的传输介质

--Video

--有导向的传输介质

-2.3复用技术

--Video

--复用技术

-2.4调制技术

--Video

--调制技术

-2.5公共交换电话网络

--Video

--公共交换电话网络

-2.6物理层设备

--Video

--物理层设备

-附录1:思考题

--html

-附录2:术语中英对照表

--html

-附录3:光纤熔接

--Video

-附录4:海底光缆

--ABB投资建造世界领先的海底电缆敷设船

--动画演示海底光缆铺设

--附录说明

--外部链接

-第二章 物理层--章节测试

-附录5:本章的无背景乐的视频

--2-1物理层概述及信号分析

--2-2引导性传输介质

--2-3复用技术

--2-4调制技术

--2-5公共交换电话网络

--关于附录5的说明

第三章:数据链路层

-3.1 数据链路层概述

--Video

--数据链路层概述

-3.2 差错处理概述

--Video

--差错处理概述

-3.3 纠1位错的海明码

--Video

--纠1位错的海明码

-3.4 检错码

--Video

--检错码

-3.5基本数据链路协议1~3

--Video

--基本数据链路协议1~3

-3.6 滑动窗口协议

--Video

--滑动窗口协议

-3.7 回退n帧

--Video

--回退n帧

-3.8 选择性重传

--Video

--选择性重传

-附录1:思考题

--html

-附录2:术语中英对照表

--html

-第三章:数据链路层--章节测试

-附录3:本章的无背景乐的视频

--3-1数据链路层功能和成帧

--3-2差错处理概述

--3-3纠1位错的海明码

--3-4检错码

--3-5 6个模拟的DLL协议之1-3

--3-6 滑窗协议

--3-7 回退n帧

--3-8 选择性重传

--关于附录3的说明

第四章 介质访问控制子层

-4.1 MAC子层概述

--Video

--MAC子层概述

-4.2 ALOHA协议

--Video

--ALOHA协议

-4.3 CSMA协议

--Video

--CSMA协议

-4.4 以太网概述

--Video

--以太网概述

-4.5 以太网帧格式

--Video

--以太帧格式

-4.6 二层交换的基本格式

--Video

--二层交换的基本原理

-4.7 生成树协议

--Video

--生成树协议

-4.8 虚拟局域网

--Video

--虚拟局域网

-4.9 二层设备

--Video

--二层设备

-附录1:思考题

--html

-附录2:术语中英对照表

--html

-第四章 介质访问控制子层--章节测试

-附录3:本章的无背景乐的视频

--4-1 MAC子层概述

--4-2 ALOHA协议

--4-3 CSMA协议

--4-4 以太网概述

--4-5 以太帧格式

--4-6_二层交换的基本原理

--4-7 生成树协议

--4-8 虚拟局域网

--4-9 二层设备

--关于附录3的说明

第五章 网络层

-5.1 网络层引言

--Video

--网络层引言

-5.2 IP地址

--Video

--IP地址

--子网规划实例

-5.3 子网规划

--Video

--子网规划

-5.4 IP寻址

--Video

--你手机的IPv4地址跟地理位置绑定在一起吗?

--IP寻址

-5.5 IP分组

--Video

--IP分组

-5.6 什么是IPv6?

--Video

--什么是IPv6?

-5.7 IPv6地址

--Video

--IPv6地址

-5.8 IPv6分组

--Video

--IPv6分组

-5.9 IPv6过渡技术

--Video

--IPv6过渡技术

-5.10 路由从何而来?

--Video

--你了解路由器和家用路由器及二者的区别吗?

--路由如何而来

-5.11 距离矢量路由选择协议

--Video

--距离矢量路由选择协议

-5.12 路由信息协议RIP

--Video

--RIP

-5.13 RIP为什么衰落?

--Video

--RIP为什么会衰败

-5.14 链路状态路由选择LS

--Video

--链路状态路由选择LS

-5.15 单区域OSPF

--Video

--开放的最短路径优先(OSPF)

-5.16 无类域间路由 CIDR

--Video

--CIDR

-5.17 网络地址翻译 NAT

--Video

--NAT

-5.18 互联网控制消息协议 ICMP

--Video

--ICMP

-5.19 地址解析协议 ARP

--Video

--ARP

-5.20 拥塞控制

--Video

--拥塞控制

-5.21 流量整形

--Video

--流量整形

-附录1:思考题

--html

-附录2:术语中英对照表

--html

-第五章 网络层--章节测试1

-第五章 网络层--章节测试2

-第五章主观测试题

-附录3:本章的无背景乐的视频

--5-1_网络层引言

--5-2_IP地址

--5-3_子网规划

--5-4_IP寻址

--5-5_IP分组

--5-6 什么是IPv6?

--5-7_IPv6地址

--5-8IPv6分组

--5-9过渡技术

--5-10_路由从何而来?

--5-11 距离矢量路由选择协议

--5-12_路由信息协议RIP

--5-13_ RIP为什么会衰落

--5-14_链路状态路由选择协议

--5-15_单区域OSPF

--5-16 无类域间路由 CIDR

--5-17_网络地址翻译 NAT

--5-18_互联网控制消息协议ICMP

--5-19_地址解析协议 ARP

--5-20_拥塞控制

--5-21流量整形

-说说你在家的用网体验

-RIP是否会卷土重来?

-说说你遭遇过的ARP病毒

第六章 传输层

-6.1 传输层概述

--Video

--传输层概述

-6.2 用户数据报协议 UDP

--Video

--用户数据报协议 UDP

-6.3 通信模型

--Video

--通信模型

-6.4 TCP数据段

--Video

--TCP数据段

-6.5 TCP三次握手建立连接

--Video

--TCP三次握手建立连接

-6.6 TCP连接释放

--Video

--TCP连接释放

-6.7 TCP传输策略

--Video

--TCP传输策略

-6.8 TCP拥塞控制

--Video

--TCP拥塞控制

-6.9 TCP定时器等

--Video

--TCP定时器等

-附录1:思考题

--html

-附录2:术语中英对照表

--html

-第六章 传输层--章节测试

-附录3:本章的无背景乐的视频

--6-1传输层概念

--6-2UDP

--6-3通信模型

--6-4TCP数据段

--6-5 TCP三次握手建立连接

--6-6 TCP连接释放

--6-7 TCP传输策略

--6-8 TCP拥塞控制

--6-9 TCP定时器等

套接字编程

-linux

--1_Socket_UDP_简介(linux)

--1_Socket_TCP_简介(linux)

--2_Socket_UDP_代码讲解(linux)

--2_Socket_TCP_代码讲解(linux)

--3_Socket_UDP_调试(linux)

--3_Socket_TCP_调试(linux)

-windows

--UDP_1_SOCKET简介

--UDP_2_代码讲解

--UDP_3_代码调试

--TCP_1_Socket简介

--TCP_2_代码讲解

--TCP_3_代码调试

第七章 应用层

-7.1 应用层概述

--Video

--应用层概述

--说说你用得最多的应用是哪个?

--畅想你想研发的一个应用

-7.2 域名系统 DNS 概述

--Video

--域名系统 DNS 概述

-7.3 DNS之域名解析

--Video

--域名解析

-7.4 电子邮件 e-mail

--Video

--电子邮件 e-mail

-7.5 万维网 WWW

--Video

--万维网 WWW

--如果没有Web,互联网会怎样?

-7.6 其它应用

--Video

--其它应用

-附录1:思考题

--html

-附录2:术语中英对照表

--html

-第七章 应用层--章节测试

-附录3: 本章无背景音乐的视频

--7-1_应用层概述

--7-2_域名系统 DNS 概述

--7-3_DNS之域名解析

--7-4_电子邮件

--7-5_万维网 WWW

--7-6_其它应用

Video笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。