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
..
2009-12-12 13:08:14 +01:00
2012-03-28 18:30:02 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2012-03-28 18:30:02 +01:00
2011-07-26 16:49:46 -07:00
2009-06-11 21:02:14 +02:00
2012-03-28 18:30:02 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2010-05-28 10:17:21 -07:00
2009-11-26 09:16:19 +01:00
2009-04-10 01:48:06 +01:00
2012-03-28 18:30:02 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2010-08-11 08:59:21 -07:00
2009-04-10 01:48:06 +01:00
2009-12-16 07:20:12 -08:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2012-03-28 18:30:02 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2011-03-11 12:23:31 +01:00
2010-05-25 08:07:02 -07:00
2009-04-10 01:48:06 +01:00
2011-07-26 16:49:47 -07:00
2012-03-20 21:48:30 +08:00
2009-04-10 01:48:06 +01:00
2011-12-04 16:00:12 +02:00
2009-04-10 01:48:06 +01:00
2010-10-22 10:20:00 -07:00
2012-01-03 22:55:18 -05:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2010-10-07 14:08:55 +01:00
2010-08-14 22:26:51 +02:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2010-06-09 11:12:36 +02:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2010-08-11 08:59:21 -07:00
2009-09-22 07:17:42 -07:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2010-01-06 18:16:02 -08:00
2011-12-12 13:56:04 +00:00
2011-03-31 11:26:23 -03:00
2009-04-10 01:48:06 +01:00
2011-12-21 11:01:07 +01:00
2009-07-27 12:10:38 -07:00
2010-10-26 16:52:08 -07:00
2009-04-10 01:48:06 +01:00
2012-02-14 12:01:28 -08:00
2012-05-17 18:00:51 -07:00
2011-07-26 16:49:43 -07:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2010-08-07 18:15:50 +02:00
2009-04-10 01:48:06 +01:00
2010-04-07 08:38:05 -07:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-06-13 13:17:28 -07:00
2009-04-10 01:48:06 +01:00
2020-12-12 21:36:54 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2011-03-31 11:26:23 -03:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2012-03-28 18:30:02 +01:00
2009-06-11 09:01:26 -07:00
2010-08-10 13:47:39 -07:00
2009-06-11 21:01:52 +02:00
2011-11-21 12:32:25 -08:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2012-01-03 22:55:17 -05:00
2010-04-07 08:38:05 -07:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2011-05-28 10:48:39 -07:00
2009-04-10 01:48:06 +01:00
2009-04-10 01:48:06 +01:00
2011-03-31 11:26:23 -03:00
2009-04-10 01:48:06 +01:00