1

从网站下载文件时,可以达到每秒数兆字节的速度。如果 TCP 需要拆分并单独发送超过 1500 字节的数据包,那么这些速度如何实现?客户端是否不必等待每个 1500 字节的片段,这应该需要一段时间?

谢谢

4

1 回答 1

5

客户端是否不必等待每个 1500 字节的片段,这应该需要一段时间

不,这就是 的魔力TCP,你不必ACK每个片段,你可以ACK偶尔。在客户端肯定必须至少确认一些之前,服务器可以推送很多段。

TCP 使用一个称为“窗口”的概念。发送者可以将数据推送到窗口中,从而使其缩小。接收方确认数据,导致窗口扩大。如果接收方不确认数据,传输就会停止。

在现代 TCP 中,知道何时确认数据是协议的要点。过于频繁或不够频繁都会对性能产生巨大影响。

于 2012-05-21T22:30:29.877 回答