个性化阅读
专注于IT技术分析

停止和等待,GoBackN和选择性重复之间的区别

可靠的数据传输是计算机网络中的主要问题之一。该服务部门掌握在TCP协议。主要的流量控制协议-停止和等待, 返回N和选择性重复。

停止并等待–

发送方发送数据包并等待数据包的ACK(确认)。 ACK到达发送方后, 它将发送行中的下一个数据包。如果未收到ACK, 它将再次重新发送前一个数据包。

返回N–

发送方发送等于窗口大小的N个数据包。一旦发送了整个窗口, 发送方便等待累积的ACK发送更多数据包。在接收器端, 它仅接收有序数据包, 并丢弃无序数据包。与丢包的情况一样, 整个窗口将被重新发送。

选择性重复–

发送方发送窗口大小为N的数据包, 而接收方确认所有数据包是否按顺序接收。在这种情况下, 接收方维护一个缓冲区以容纳乱序的数据包并对它们进行排序。发送方有选择地重新传输丢失的数据包并将窗口向前移动。

差异:

属性 停止并等待 返回N 选择性重复
发件人窗口大小 1 ñ ñ
接收器窗口大小 1 1 ñ
最小序号 2 N + 1 2N
效率 1 /(1 + 2 * a) N /(1 + 2 * a) N /(1 + 2 * a)
确认类型 个人 累积的 个人
接收端支持的订单 仅按订单交货 以及无序交货
丢包情况下的重传次数 1 ñ 1

其中

  • a =传播延迟与传输延迟之比,
  • 在N = 1时, 将”返回N”有效地减少为”停止并等待”, / li>
  • 当”返回N”累积地确认打包时, 它会拒绝乱序的数据包,
  • 由于选择性重复支持接收乱序数据包(在接收到数据包后对窗口进行排序), 因此它使用独立确认来确认数据包。

赞(0)
未经允许不得转载:srcmini » 停止和等待,GoBackN和选择性重复之间的区别

评论 抢沙发

评论前必须登录!