TCP连接的段中的最大窗口大小是多少?

Kit*_*zhi 5 tcp network-protocols

考虑使用10 Mbps链路的单个TCP(Reno)连接.假设此链接不缓冲数据,并且接收器的接收缓冲区远大于拥塞窗口.假设每个TCP段的大小为1500字节,发送器和接收器之间的连接的双向传播延迟为200毫秒.此外,假设TCP连接始终处于拥塞避免阶段(忽略慢启动).

此TCP连接可以实现的段中的最大窗口大小是多少?

所以我们知道连接的吞吐量和延迟,我认为我们应该能够操作以下公式,以便我们能够找到窗口大小.

吞吐量=窗口大小/ RTT

吞吐量*RTT =窗口大小

10 Mbps*200毫秒=窗口大小

我不确定这是否正确.我很难找到除了这个公式之外找到窗口大小的任何其他内容.

小智 1

我认为您要问的是如何在网络上端到端传输数据。在这种情况下,你就很接近了。吞吐量*RTT [单位:B/S * S] 是电线容纳的量。忽略 PMTU、数据包开销、硬件编码等,然后吞吐量*RTT/PacketSize 将为您提供估计值。但等一下,我用的是 RTT。我的接收窗口实际上是关于在一个方向上可以容纳多少电线,因此将其分成两半。

如果您的实现不支持窗口缩放,则使用 2^16 进行最小化。如果是这样,那么你用 2^30 来最小化它。