【发布时间】:2014-11-19 21:22:31
【问题描述】:
我想弄清楚的问题是:
在这个问题中,我们考虑 TCP 慢启动引入的延迟 阶段。考虑一个客户端和一个 Web 服务器直接相连 速率 R 的链接。假设客户端想要检索一个对象,其 size 正好等于 15S,其中 S 是最大段大小 (MSS)。将客户端和服务器之间的往返时间表示为 RTT (假定为常数)。忽略协议头,确定 检索对象的时间(包括 TCP 连接建立) 当
- 4S/R > S/R + RTT > 2S/R
- 8S/R > S/R + RTT > 4S/R
- S/R > RTT
我已经有了解决方案(这是教科书上的问题),但我不明白他们是如何得到答案的。
- RTT + RTT + S/R + RTT + S/R + RTT + 12S/R = 4 · RTT + 14 · S/R
- RTT + RTT +S/R + RTT +S/R + RTT +S/R + RTT + 8S/R = 5 · RTT + 11 ·S/R
- RTT + RTT + S/R + RTT + 14S/R = 3 · RTT + 15 · S/R
这是与答案相关的图像:
哪种情况对我有意义:每种情况都是 RTT 时间大于或小于传输一定数量段所需时间的情况。因此,对于第一个,每个 RTT 需要 3S/R 到 S/R 秒。从那里我不明白慢启动是如何运作的。我认为它只会增加每个确认数据包的窗口大小。但是,例如在#1 的解决方案中,似乎只有两个数据包被发送和确认,而窗口大小却跳到 12S?我在这里错过了什么?
【问题讨论】:
标签: tcp network-protocols flow-control congestion-control