计算机网络滑动窗口三种协议全解析:原理和应用
创作时间:
作者:
@小白创作中心
计算机网络滑动窗口三种协议全解析:原理和应用
引用
CSDN
1.
https://m.blog.csdn.net/SUN_Gyq/article/details/145197022
滑动窗口协议是计算机网络中用于流量控制和可靠传输的重要机制。本文将详细介绍三种常见的滑动窗口协议:停止等待协议(S-W)、后退N帧协议(GBN)和选择重传协议(SR),并分析它们的原理、应用场景和信道利用率。
一、流量控制、可靠传输与滑动窗口机制
在计算机网络中,流量控制和可靠传输是两个重要的概念。流量控制用于防止发送方发送数据的速度过快,导致接收方无法及时处理;可靠传输则确保数据能够准确无误地从发送方传输到接收方。滑动窗口协议通过维护一个发送窗口和接收窗口,实现了流量控制和可靠传输的双重目标。
二、停止等待协议(S-W)
停止等待协议是最简单的滑动窗口协议,其工作原理如下:
- 数据帧丢失:发送方会启动“计时器”,如果超时就会自动重传。
- 确认帧丢失:发送方接收不到确认帧时,计时器超时会自动重传,接收方会丢弃接收到的重复帧,并将重复帧的ACK返回。
为什么一定要给帧编号呢?如果没有“帧序号”会发生什么?
- 接收方将无法判别“重复帧”。
三、后退N帧协议(GBN)
后退N帧协议是一种改进的滑动窗口协议,其工作原理如下:
- 数据帧丢失:发送窗口中间有数据帧丢失时,若第i号帧超时,则需要将i号帧及其之后的数据帧全部重传。当接收到窗口之外的数据帧时,若目前已经正确接收数据帧,则返回已经正确接收的最后一个帧的ACK(确认帧),若还没有接收到位数据帧,则直接丢弃。
- 确认帧丢失:若第i号帧超时,则需要将i号帧及其之后的数据帧全部重传。收到一个非法帧时,返回已经正确接收的最后一个帧的ACK。
- 收到一个“非法帧”时:接收方会将此帧丢弃,并返回目前已接收的最后一个正确帧的ACK_i,提醒发送方“后退”回i+1号帧重新发送。
注意:“非法帧”包括落在接收窗口之外的帧、检测出差错的帧。
缺点:如果接收方接收帧的速度很慢,或在信道误码很高的情况下,可能会导致发送方的发送进度经常需要“后退”,传输效率低下。
四、选择重传协议(SR)
选择重传协议是一种更高效的滑动窗口协议,其工作原理如下:
- 数据帧丢失:每个帧发出时,设置“计时器”,哪个发送方未接收到ACK超时,就重传哪个。
- 数据帧因差错而被丢弃:接收方接收的第i号数据帧检测出错误,接收方将其丢弃,给第i号发送方返回一个NAK(否认帧),第i号发送方接收到NAK后,发送方(窗口最左侧移动到第一个没有接收到ACK的位置)会重传数据帧,计时器也会重置。
- 确认帧丢失:发送方没有接收到ACK(窗口最左侧移动到第一个没有接收到ACK的位置),发生超时重传,没有接收到ACK的重传,接收方哪个收到重复帧,返回其对应的ACK。
五、三种协议的信道利用率分析
SW 协议的信道利用率
理想状态下,信道利用率为 U=T/(T+RTT+TA)。如果确认帧(TA)非常短,可以忽略不计。即信道利用率为 U=T/(T+RTT)。
GBN、SR 协议的信道利用率
理想状态下,信道利用率为 U=NT/(TD+RTT+TA)。NTZT+RTT+TA,则最大信道利用率为 1。注意:信道利用率不可能超过 1。
热门推荐
探访贵州600多年古军事屯堡——隆里古城
如何做到HTML语义化
电动车充电器必须接地!
医生支招:科学护理让脚茧不再困扰你
光武帝刘秀的性格探析:仁慈与果断的双面性
引力透镜如何帮助我们探索宇宙?深入解析及实例
五款热门吹风机真实测评:风速、护发和噪音对比详解
秦之都城变迁史
捷途X90 PLUS功能下载与导航安装全攻略
送花礼仪指南:不同场合下适合赠送的花卉
醋鳖甲用了30克会中毒吗
债券利率风险的表现有哪些?如何降低债券利率风险?
股票左侧交易的策略是什么?这种策略在实际操作中有哪些风险?
现在广东哪个城市适合居住?五大宜居城市真实测评来了!
胃强脾弱的食疗方法
计入工资总额缴纳个税的员工福利费类型有哪些
网站建设中的字体选择与排版:提升阅读舒适度与视觉美感
OKR目标管理的思维方式是什么
10款适合新手小白种植的百合花品种
民俗文化吹糖人
福建泉州仙公山景区游玩攻略
美联储改变“叙事方式”来迎接经济衰退?
企业如何利用AI提升客户体验?
数字化助力,精准勾勒营销目标客户画像
农民工返乡创业的困难及对策建议
43岁范冰冰现状:在国外庄稼地插秧,为新电影狂增肥学外语
浮生若茶:深入解析其哲理寓意与人生启示
昨天洗的头,今天就油了,我到底哪一步做错了?
大曲酱香与麸曲酱香的区别
如何选择合适的收入改变方式?这些方式有什么效果?