Files
Eric Dumazet e4a5e41c0c net: introduce SO_MAX_PACING_RATE
As mentioned in commit afe4fd062416b ("pkt_sched: fq: Fair Queue packet
scheduler"), this patch adds a new socket option.

SO_MAX_PACING_RATE offers the application the ability to cap the
rate computed by transport layer. Value is in bytes per second.

u32 val = 1000000;
setsockopt(sockfd, SOL_SOCKET, SO_MAX_PACING_RATE, &val, sizeof(val));

To be effectively paced, a flow must use FQ packet scheduler.

Note that a packet scheduler takes into account the headers for its
computations. The effective payload rate depends on MSS and retransmits
if any.

I chose to make this pacing rate a SOL_SOCKET option instead of a
TCP one because this can be used by other protocols.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Steinar H. Gunderson <sesse@google.com>
Cc: Michael Kerrisk <mtk.manpages@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Change-Id: Iea51b6104a5420d5c9ed1ea7382cbd53bdb8f4be
2020-12-12 21:36:54 +01:00
..
2011-03-31 11:26:23 -03:00
…
…
2011-09-27 18:08:04 +02:00
2011-03-31 11:26:23 -03:00
2011-12-07 22:03:45 +00:00
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00
2012-03-28 18:30:02 +01:00
…
…
…
…
2012-03-28 18:30:02 +01:00
…
2011-12-07 22:03:18 +00:00
…
…
…
2011-05-10 18:15:24 +01:00
…
…
2012-03-28 18:30:02 +01:00
…
…
…
…
…
…
2012-03-28 18:30:02 +01:00
…
…
…
2012-03-28 18:30:02 +01:00
…
…
2011-07-25 17:26:53 +01:00
…
…
…
…
…
2012-03-20 21:48:30 +08:00
2011-07-26 16:49:47 -07:00
…
…
…
…
2011-03-31 11:26:23 -03:00
…
…
…
…
…
…
…
…
…
2011-07-26 16:49:47 -07:00
…
…
2012-04-27 17:16:29 +01:00
…
…
…
…
…
2011-03-31 11:26:23 -03:00
…
…
2012-02-23 20:19:04 -07:00
…
…
…
…
2012-02-14 12:01:29 -08:00
2012-03-28 18:30:02 +01:00
…
…
…
…
…
…
…
2012-03-28 18:30:02 +01:00
…
…
2011-03-31 11:26:23 -03:00
…
…
2011-07-26 16:49:47 -07:00
2011-07-20 23:12:10 +01:00
…
…
2020-12-12 21:36:54 +01:00
…
…
…
…
…
…
2012-03-28 18:30:02 +01:00
…
…
…
…
2011-12-07 22:01:45 +00:00
2011-12-07 22:03:18 +00:00
…
…
…
2011-07-26 06:47:36 +01:00
…
…
…
…
2011-03-31 11:26:23 -03:00
…
…
…