Eric Dumazet 43e122b014 tcp: refine pacing rate determination
When TCP pacing was added back in linux-3.12, we chose
to apply a fixed ratio of 200 % against current rate,
to allow probing for optimal throughput even during
slow start phase, where cwnd can be doubled every other gRTT.

At Google, we found it was better applying a different ratio
while in Congestion Avoidance phase.
This ratio was set to 120 %.

We've used the normal tcp_in_slow_start() helper for a while,
then tuned the condition to select the conservative ratio
as soon as cwnd >= ssthresh/2 :

- After cwnd reduction, it is safer to ramp up more slowly,
  as we approach optimal cwnd.
- Initial ramp up (ssthresh == INFINITY) still allows doubling
  cwnd every other RTT.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Neal Cardwell <ncardwell@google.com>
Cc: Yuchung Cheng <ycheng@google.com>
Acked-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-08-25 11:33:54 -07:00
..
2015-06-14 12:55:49 -07:00
2014-09-18 10:54:36 +02:00
2015-03-04 00:23:23 -05:00
2015-06-28 16:55:44 -07:00
2015-03-06 21:50:02 -05:00
2015-08-18 14:17:21 -07:00
2013-11-07 19:28:58 -05:00
2014-09-30 01:02:26 -04:00
2015-03-12 14:39:40 -04:00
2015-01-18 01:56:32 -05:00
2015-03-12 14:39:40 -04:00
2015-07-29 22:44:04 -07:00
2014-01-03 20:56:48 -05:00
2015-07-21 10:39:05 -07:00
2014-06-02 11:00:41 -07:00
2015-03-12 22:58:12 -04:00
2015-08-25 11:33:54 -07:00
2014-05-22 14:57:15 -04:00
2015-08-23 15:59:56 -07:00
2015-08-11 12:41:35 +02:00