2009-10-02 168 views
1

根据网络的不同,超时间隔会动态更改。它通常由 TimeoutInterval = EstimatedRTT + 4 * DevRTT在TCP中设置超时

但是我们为什么4 * DevRTT?

为什么不能是2 * DevRTT?

回答

2

您可以将其设置为该值,但是您会减少一半RTT变化的缓冲量。

如果你在RTT中有很大的差异,在比你意识到的更多的情况下会发生这种差异,那么你将设置超时值相对较低。

由于此超时控制着数据的重新传输,因此设置该级别几乎肯定意味着在某些情况下重新传输的次数会增加。担心的是这些重新传输是不必要的,并且可能会增加已经饱和的网络的利用率。