netbsd man page for tcp_congctl

Query: tcp_congctl

OS: netbsd

Section: 9

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

TCP_CONGCTL(9)						   BSD Kernel Developer's Manual					    TCP_CONGCTL(9)

NAME
tcp_congctl -- TCP congestion control API
SYNOPSIS
#include <netinet/tcp_congctl.h> int tcp_congctl_register(const char *, struct tcp_congctl *); int tcp_congctl_unregister(const char *);
DESCRIPTION
The tcp_congctrl API is used to add or remove TCP congestion control algorithms on-the-fly and to modularize them. It includes basically two functions: tcp_congctl_register(const char *, struct tcp_congctl *) Registers a new congestion control algorithm. The struct tcp_congctl argument must contain a list of callbacks like the following: struct tcp_congctl { int (*fast_retransmit)(struct tcpcb *, struct tcphdr *); void (*slow_retransmit)(struct tcpcb *); void (*fast_retransmit_newack)(struct tcpcb *, struct tcphdr *); void (*newack)(struct tcpcb *, struct tcphdr *); void (*cong_exp)(struct tcpcb *); }; tcp_congctl_unregister(const char *) If found, unregister the selected TCP congestion control algorithm.
RETURN VALUES
tcp_congctl_register() and tcp_congctl_unregister() both return 0 when there is no error. If the name is already registered, tcp_congctl_register() will return EEXIST. tcp_congctl_unregister() can return ENOENT if there is no congestion control algorithm by that name and can return EBUSY if the matched algorithm is being used by userspace applications.
FILES
Implementation is in sys/netinet/tcp_congctl.c and the interface is in sys/netinet/tcp_congctl.h.
SEE ALSO
tcp(4)
BSD
October 15, 2006 BSD
Related Man Pages
bintime_addx(9) - netbsd
bintime_add(9) - netbsd
tcp_congctl(9) - netbsd
timeval2bintime(9) - netbsd
ccv(9) - freebsd
Similar Topics in the Unix Linux Community
Getting an ACK for RAW SYN packet
how to print struct in GDB
How type casting works ?
When should TCP congestion avoidance be used?
TCP initial congestion window (slow-start)