【发布时间】:2014-05-24 17:28:54
【问题描述】:
似乎最大 TCP 接收窗口大小为 1GB(使用缩放时)。因此,仍然可以用一个连接填充 100Gb 管道的最大 RTT 是 40ms(因为 2 * 40E-3 * 100E9 / 8 = 1GB)。这会将这种通信速度限制在 IRO 10000 公里的距离内。
另一个扩展问题似乎是 32 位序列号无法防止延迟超过 400 毫秒的重复数据包(因为它们在该时间量内回绕)。它们还将窗口大小限制为 2GB(因为它们需要在发送者和接收者窗口之间拆分)。
三个问题:
我知道 TCP 时间戳可以帮助解决序列号问题,但我想知道这是否是一个恰好有帮助但实际上是为其他目的而设计的功能。另外,我不明白时间戳实现了什么,这不能简单地通过增加用于序列号的位数来实现。
我不明白为什么最大接收窗口只有 1GB,而不是 2GB,而当前的标头可能很容易实现。
最后,我想知道 TCP 是否已经可以很好地扩展,可以在即将推出的那种链接上使用。
非常感谢。
【问题讨论】:
-
这只是可能是这里的主题,不确定。如果您没有得到答案或此处已关闭为题外话,您可以考虑Network Engineering。
-
+1 但我要说这无关紧要的原因是因为您在谈论一个 TCP 连接。我不确定您是否可以期望任何单个应用程序使 10Gb+ 管道饱和。不过我肯定是错的。
标签: tcp