计算机网络学习笔记-流量控制和可靠传输

本文详细介绍了计算机网络中流量控制和可靠传输的重要性。分别探讨了停止等待协议、后退N帧(GBN)协议和选择重传(SR)协议的工作原理和特点。停止等待协议简单但效率低下;GBN通过累计确认提高了效率,但可能导致已接收数据的浪费;SR协议则通过仅重传丢失帧以避免不必要的重传,提高了效率。同时,讨论了各协议的窗口大小限制及其对信道利用率的影响。

计算机网络学习笔记

笔记主要用于记录自己的学习经历,便于日后复习。
主要参考资源:《王道计算机网络》。
视频资源转至b站:
https://www.bilibili.com/video/BV19E411D78Q?from=search&seid=1517288630122778145

流量控制和可靠传输

1.流量控制

流量控制是为了让传输过程中的发送速度和接受速度匹配,减少传输出错与资源浪费
可靠传输是发送端发送什么,接收端就要受到什么。

1.1 停止等待协议(Stop-and-Wait)

在这里插入图片描述

停止等待协议的无差错情况
注释:因为一次就一个,所以用0和1标记ack就行

在这里插入图片描述

停止等待协议的有差错情况

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

停止等待协议的特点
1.简单
2.信道利用率低。大部分时间数据都在路上,发送方很长时间闲置,资源浪费

在这里插入图片描述在这里插入图片描述

1.2 后退N帧协议(GBN)

因为停止等待协议太浪费时间了,所以尝试采用GBN,发送连续多个数据帧,以增大信道利用率。
注释:
累计确认:就是收到一个确认帧,那么它和它之前的所有帧都默认已收到,反之,如果某个确认帧没收到,那么它和它之后的所有帧都默认丢失(即使收到了也丢掉),进行重传。

在这里插入图片描述

下图是一个实例
注释:此图发送2帧时丢失,所以接收方几首收到后面的帧也是直接丢弃并且发送最晚收到的有效帧1的ACK,直至2帧的超时重传机制被触发进行重传并得到ACK之后,接收方才会接受2帧以及后面的帧

在这里插入图片描述
发送窗口不能无限大,与使用的编号的比特数有关
很简单,就是1比特编号0和1,同理2比特编号0-3,如果用1比特编号,却要4个窗口长度,那么窗口内数据编号都编不过来,直接乱套了
GBN的优缺点也显而易见,优点是提高了信道利用率,缺点是因为重传机制的原因导致已经收到数据却需要强行丢弃而造成浪费

1.3 选择重传协议(SR)

​ 为了解决GBN的缺点,我们打算尝试只重传错误的帧,这样的话就不用浪费资源吧已经收到的帧再重传一次了。和GBN相比,两者都有窗口了,和GBN的区别其实就是做了一个数据缓存,已经收到的帧不用扔了,等待之前因意外丢失的帧收到的时候确认即可,但是只能缓存窗口尺寸内的包含的帧(PS,缓存咋可能无限大)

注释:2帧丢失之后仍然在发送,但是2帧丢失之后只是缓存,并没有移动窗口,直至最后2帧收到后一次性确认2-5帧
在这里插入图片描述

同样的,因为编号的问题,发送窗口不能无限大。发送窗口最后和接受窗口大小相同,这样利用率比较高

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值