Provided by: freebsd-manpages_12.2-1_all bug

NAME

       mod_cc — Modular congestion control

DESCRIPTION

       The  modular  congestion  control  framework  allows  the  TCP  implementation  to dynamically change the
       congestion control algorithm used by new and existing connections.  Algorithms are identified by a unique
       ascii(7) name.  Algorithm modules can be compiled into the kernel or loaded as kernel modules  using  the
       kld(4) facility.

       The  default algorithm is NewReno, and all connections use the default unless explicitly overridden using
       the TCP_CONGESTION socket option (see tcp(4) for details).  The default can be changed using a  sysctl(3)
       MIB variable detailed in the “MIB Variables” section below.

       Algorithm specific parameters can be set or queried using the TCP_CCALGOOPT socket option (see tcp(4) for
       details).  Callers must pass a pointer to an algorithm specific data, and specify its size.

MIB Variables

       The framework exposes the following variables in the net.inet.tcp.cc branch of the sysctl(3) MIB:

       available         Read-only list of currently available congestion control algorithms by name.

       algorithm         Returns  the  current  default  congestion control algorithm when read, and changes the
                         default when set.  When attempting to  change  the  default  algorithm,  this  variable
                         should be set to one of the names listed by the net.inet.tcp.cc.available MIB variable.

       abe               Enable  support  for  RFC  8511, which alters the window decrease factor applied to the
                         congestion window in response  to  an  ECN  congestion  signal.   Refer  to  individual
                         congestion  control  man  pages  to determine if they implement support for ABE and for
                         configuration details.

       abe_frlossreduce  If non-zero, apply standard beta instead of ABE-beta  during  ECN-signalled  congestion
                         recovery episodes if loss also needs to be repaired.

SEE ALSO

       cc_cdg(4), cc_chd(4), cc_cubic(4), cc_dctcp(4), cc_hd(4), cc_htcp(4), cc_newreno(4), cc_vegas(4), tcp(4),
       mod_cc(9)

ACKNOWLEDGEMENTS

       Development and testing of this software were made possible in part by grants from the FreeBSD Foundation
       and Cisco University Research Program Fund at Community Foundation Silicon Valley.

HISTORY

       The mod_cc modular congestion control framework first appeared in FreeBSD 9.0.

       The framework was first released in 2007 by James Healy and Lawrence Stewart whilst working on the NewTCP
       research  project  at  Swinburne  University  of Technology's Centre for Advanced Internet Architectures,
       Melbourne, Australia, which was made possible in part by a  grant  from  the  Cisco  University  Research
       Program Fund at Community Foundation Silicon Valley.  More details are available at:

       http://caia.swin.edu.au/urp/newtcp/

AUTHORS

       The mod_cc facility was written by Lawrence Stewart <lstewart@FreeBSD.org>, James Healy <jimmy@deefa.com>
       and David Hayes <david.hayes@ieee.org>.

       This   manual   page   was   written   by   David   Hayes  <david.hayes@ieee.org>  and  Lawrence  Stewart
       <lstewart@FreeBSD.org>.

Debian                                           August 6, 2019                                        MOD_CC(4)