github.com/GeniusesGroup/libgo@v0.0.0-20220929090155-5ff932cb408e/tcp/cca.go (about)

     1  /* For license and copyright information please see the LEGAL file in the code repository */
     2  
     3  package tcp
     4  
     5  // CCA or CongestionControlAlgorithm
     6  // https://en.wikipedia.org/wiki/TCP_congestion_control
     7  type CCA uint8
     8  
     9  const (
    10  	CongestionControlAlgorithm_Unset CCA = iota
    11  	CongestionControlAlgorithm_Reno
    12  	CongestionControlAlgorithm_Vegas
    13  	CongestionControlAlgorithm_CUBIC
    14  	CongestionControlAlgorithm_BBR
    15  
    16  	// BIC-TCP is a sender-side-only change that ensures a linear RTT fairness
    17  	// under large windows while offering both scalability and
    18  	// bounded TCP-friendliness. The protocol combines two
    19  	// schemes called additive increase and binary search
    20  	// increase. When the congestion window is large, additive
    21  	// increase with a large increment ensures linear RTT
    22  	// fairness as well as good scalability. Under small
    23  	// congestion windows, binary search increase provides TCP friendliness.
    24  	CongestionControlAlgorithm_BIC
    25  )