网工干货知识

超全学习笔记
当前位置:首页 > 干货知识

Stop-and-Wait、GoBackN以及Selective Repeat之间的区别

更新时间:2026年03月27日   作者:spoto   标签(Tag):

在网络中,流量控制负责管理设备之间数据的传输速率,以确保数据能够高效处理,同时避免数据溢出。当某个设备接收到的数据量超过其处理能力时,就有可能丢失信息或需要重新发送数据。流量控制协议会指导发送方应该发送多少数据,并且通常需要在发送更多数据之前得到接收方的确认。

主要有三种流量控制方法:

  • 停止并等待的ARQ方式
  • 返回N ARQ状态
  • 选择性重传ARQ

可靠的数据传输是计算机网络中的关键问题之一。这一服务的提供完全取决于……TCP它们的主要流量控制协议包括“停止等待”、“退回去重试”以及“选择性重传”。

停止并等待的ARQ算法

发送方发送数据包后,会等待接收方的确认。一旦收到确认消息,发送方就会继续发送下一个数据包。如果确认消息在规定的超时时间内没有到达发送方,那么发送方会再次发送相同的数据包。

停止并等待的ARQ方式

返回N ARQ状态

发送方会发送与窗口大小相等的N个数据包。当整个窗口中的数据包都被发送完毕后,发送方会等待接收方的确认,然后再继续发送更多数据包。在接收端,只会接收到按顺序排列的数据包,而乱序的数据包则会被丢弃。如果发生了数据包丢失的情况,那么整个窗口中的数据包都需要重新传输。

返回N ARQ状态

选择性重传ARQ

发送方会发送窗口大小为N的数据包,而接收方会确认所有接收到的数据包,无论这些数据包是否按顺序排列。在这种情况下,接收方会维护一个缓冲区来存储那些没有按顺序排列的数据包,并对这些数据进行排序。发送方则会根据情况选择性地重新传输丢失的数据包,同时让窗口继续向前移动。

选择性重传ARQ

Stop-and-Wait、GoBackN以及Selective Repeat之间的区别

属性/特征停止并等待的ARQ方式返回N ARQ状态选择性重传ARQ
发送方窗口大小1NN
接收窗口大小11N
最小序列号2N+12N
效率1/(1+2*a)N/(1+2*a)N/(1+2*a)
确认类型个人/个体累积的/累计的个人/个体
在接收端支持订单处理。仅提供顺序配送服务仅提供顺序配送服务同时,还存在无法按时交付的情况。
在数据包丢失的情况下,需要进行的重传次数。1N1
传输类型半双工全双工全双工
实施难度温和的/适度的复杂的事物/难以理解的东西

在哪儿呢?

  • a = 传播延迟与传输延迟的比率
  • 在N=1的情况下,Go Back N实际上就简化为“停止并等待”机制了。
  • 由于Go Back N能够正确处理那些被连续发送过来的数据包,因此它会拒绝那些顺序混乱、无法被正确处理的数据包。
  • 由于Selective Repeat支持接收乱序的数据包(它在接收数据包后会对其进行排序),因此它采用独立确认机制来确认这些数据包。

结论

流量控制是网络中的一项重要机制,它通过管理数据在设备之间的传输速率来确保数据的可靠传输。目前主要有三种流量控制方法:停止并等待的ARQ算法, 返回N ARQ状态,以及选择性重传ARQ每种方案都采用了不同的方法来处理数据传输、确认以及重传等问题。

虽然Stop and Wait ARQ结构简单且易于理解,但其效率却不如Go Back N ARQ和Selective Repeat ARQ。后两种算法能够更有效地处理数据传输,因为它们允许在一定的窗口时间内发送并确认多个数据包。 所选的协议取决于网络的具体需求,比如是否需要简单、高效的操作方式,或者是否能够处理乱序的数据包。 理解这些协议对于设计可靠且高效的网络通信系统来说至关重要。

              马上抢免费试听资格
意向课程:*必选
姓名:*必填
联系方式:*必填
QQ:
思博SPOTO在线咨询

相关资讯

即刻预约

免费试听-咨询课程-获取免费资料