延迟确认如何影响TCP的拥塞避免阶段?

时间:2016-03-25 19:04:31

标签: tcp congestion-control

根据我的研究,每次收到新的确认时,拥塞避免阶段都会设置CWND = CWND + MSS * (MSS/CWND)。这假设我们不会遇到重复的ACKStimeouts。但是如果延迟确认会发生什么呢?

以下是我对延迟交易研究的看法(不知道这是否正确):

基本上,延迟ACK是保留ACK段一段时间的目的地,期望两件事之一。 由于接收器接收到新的数据包,在定时器启动之前将需要发送更多的ACK。或者接收方需要将一些数据发送回发送方,在这种情况下,它可以在该数据包上捎带消息。 这如何影响拥塞避免阶段? 这对于TCP的拥塞避免阶段是不利的,这取决于新的Ack以增加CWND。这将导致CWND窗口大小改变的延迟,从而导致分组发送的延迟。这意味着当TCP可以向接收方发送数据包时,实际上并不是因为确认被延迟了。

1 个答案:

答案 0 :(得分:0)

这会影响拥塞避免阶段,就像影响其他阶段(SS)一样:会减慢流量。但是,请记住,有两种不同的网络用途,一种是交互式的(例如telnet),另一种是批量的。延迟的Ack可能会与发送少量数据的交互式协议一起使用,但是如果另一端使用Nagle的算法,则会带来新的问题。如果不确定,请禁用延迟的Acks。