linux/include/uapi/asm-generic
Eric Dumazet 62748f32d5 net: introduce SO_MAX_PACING_RATE
As mentioned in commit afe4fd0624 ("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>
2013-09-28 15:35:41 -07:00
..
auxvec.h
bitsperlong.h
errno-base.h
errno.h
fcntl.h allow O_TMPFILE to work with O_WRONLY 2013-07-20 03:11:32 +04:00
int-l64.h
int-ll64.h
ioctl.h
ioctls.h
ipcbuf.h
Kbuild
Kbuild.asm
kvm_para.h
mman-common.h
mman.h
msgbuf.h
param.h
poll.h net: rename low latency sockets functions to busy poll 2013-07-08 19:25:45 -07:00
posix_types.h
resource.h
sembuf.h
setup.h
shmbuf.h
shmparam.h
siginfo.h
signal-defs.h
signal.h consolidate kernel-side struct sigaction declarations 2013-02-03 15:09:22 -05:00
socket.h net: introduce SO_MAX_PACING_RATE 2013-09-28 15:35:41 -07:00
sockios.h
stat.h
statfs.h
swab.h
termbits.h
termios.h
types.h
ucontext.h
unistd.h sched: Rename sched.c as sched/core.c in comments and Documentation 2013-06-19 12:58:42 +02:00