首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >AIMD:发送的数据包总数

AIMD:发送的数据包总数
EN

Network Engineering用户
提问于 2018-03-09 14:48:51
回答 2查看 483关注 0票数 2

在回答“计算机网络入门”(斯坦福拉格尼塔) 4-3的问题时,我发现自己无法解释其中一个问题的答案:

考虑由(仅)使用AIMD控制窗口大小的传输协议在1 kB数据包中传输的长流。最初,窗口大小为10 kB。每当窗口打开到20 kB时,窗口中的最后一个数据包就会被丢弃,在一次往返时间后准确地被检测到,然后重新传输。Q1:有多少数据包被发送到并包含第一个丢弃的数据包?Q2:一共发送了多少个数据包,其中包括丢弃的第二个数据包?提示:第二轮将是相同的。别忘了重传的数据包。

答案:

Q1:可立即发送10个数据包。当确认这10个数据包时,会发送11个数据包,然后是12个,然后是13个,…。直到20个包被发送,其中一个被丢弃。即和(10至20) = 100 + 10 + Sum (1.10)= 165包。Q2:该窗口在丢包后再次减半到10 to,然后重新启动,发送相同数量的数据包加上重新传输的数据包。即165 + 165 = 330分组。(注:先前指出的答案是331,这是不正确的。)

虽然Q1的答案在我看来是完全合乎逻辑的,但对于Q2来说却不是这样。我猜是331,因为首先发送了165个数据包,然后是重传,然后是下一批165个数据包。

331错在哪一方面?重传是否整合到下一批数据包?

EN

回答 2

Network Engineering用户

回答已采纳

发布于 2018-03-09 19:35:29

是的,重传被整合到下一批数据包中。例如:

  1. RTT 1:包1
  2. RTT 2:数据包2,3
  3. RTT 3:数据包4,5,6 (X:数据包6被丢弃)
  4. RTT 4:数据包6 <--数据包因上一轮丢弃而感到不满
  5. RTT 5:数据包7、8
  6. 等等等等..。

这种可视化可以帮助您理解为什么在第一轮和第二轮中发送的数据包数量是相同的:

来源:http://www.potaroo.net/ispcol/2005-06/faster.html

票数 2
EN

Network Engineering用户

发布于 2018-03-09 20:06:29

重新传输的丢弃包成为第二批的一部分--它不是单独重新传输的。

票数 2
EN
页面原文内容由Network Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://networkengineering.stackexchange.com/questions/48989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档