]> git.baikalelectronics.ru Git - kernel.git/commit
tcp: don't use F-RTO on non-recurring timeouts
authorYuchung Cheng <ycheng@google.com>
Mon, 13 Jul 2015 19:10:20 +0000 (12:10 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 16 Jul 2015 00:17:21 +0000 (17:17 -0700)
commit5f1790c61b423a6c93b2a0966fffe619c455dde2
treef609823a121510cd1de4697305b916f674ea0db1
parent8d666cf4ca579456424290fb58e4226ae97e30e8
tcp: don't use F-RTO on non-recurring timeouts

Currently F-RTO may repeatedly send new data packets on non-recurring
timeouts in CA_Loss mode. This is a bug because F-RTO (RFC5682)
should only be used on either new recovery or recurring timeouts.

This exacerbates the recovery progress during frequent timeout &
repair, because we prioritize sending new data packets instead of
repairing the holes when the bandwidth is already scarce.

Fix it by correcting the test of a new recovery episode.

Signed-off-by: Yuchung Cheng <ycheng@google.com>
Signed-off-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp_input.c