]> 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)
commita18ca1a7f61a400b14621a4ee580ae962cc7a946
treef609823a121510cd1de4697305b916f674ea0db1
parentaaced85d7b8e1330f39f842611d6d8800558f4a0
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