Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
CC_HTCP(4)		     Kernel Interfaces Manual		      CC_HTCP(4)

NAME
     cc_htcp -- H-TCP Congestion Control Algorithm

DESCRIPTION
     The  H-TCP  congestion  control algorithm was designed to provide increased
     throughput in fast and long-distance networks.   It  attempts  to	maintain
     fairness  when  competing	with legacy NewReno TCP in lower speed scenarios
     where NewReno is able to operate adequately.

     The congestion window is increased as a function of the time elapsed  since
     the  last	congestion  event.   The window increase algorithm operates like
     NewReno for the first second after a congestion event, and then switches to
     a high-speed mode based on a quadratic increase function.

     The implementation was done in a clean-room fashion, and is  based  on  the
     Internet Draft and other documents referenced in the "SEE ALSO" section be-
     low.

MIB Variables
     The   algorithm   exposes	 the   following   tunable   variables	 in  the
     net.inet.tcp.cc.htcp branch of the sysctl(3) MIB:

     adaptive_backoff  Controls use of the adaptive backoff algorithm, which  is
		       designed  to keep network queues non-empty during conges-
		       tion recovery episodes.	Default is 0 (disabled).

     rtt_scaling       Controls use of the RTT scaling algorithm, which  is  de-
		       signed  to make congestion window increase during conges-
		       tion avoidance mode invariant with respect to  RTT.   De-
		       fault is 0 (disabled).

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

     D. Leith and R. Shorten, H-TCP: TCP Congestion Control for High  Bandwidth-
     Delay Product Paths, https://tools.ietf.org/id/draft-leith-tcp-htcp-06.txt.

     D.  Leith,  R. Shorten, and T. Yee, "H-TCP: A framework for congestion con-
     trol in high-speed and long-distance networks", Proc. PFLDnet, 2005.

     G. Armitage, L. Stewart, M. Welzl, and J. Healy, "An independent H-TCP  im-
     plementation  under  FreeBSD 7.0: description and observed behaviour", SIG-
     COMM Comput. Commun. Rev., 3, 38, 27-38, July 2008.

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 cc_htcp congestion control module first appeared in FreeBSD 9.0.

     The module 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,  Aus-
     tralia,  which  was made possible in part by a grant from the Cisco Univer-
     sity Research Program Fund at Community Foundation  Silicon  Valley.   More
     details are available at:

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

AUTHORS
     The   cc_htcp   congestion  control  module  was  written	by  James  Healy
     <jimmy@deefa.com> and Lawrence Stewart <lstewart@FreeBSD.org>.

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

FreeBSD ports 15.quarterly	  May 13, 2021			      CC_HTCP(4)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=cc_htcp&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly>

home | help