xref: /openbmc/linux/net/dccp/ccids/Kconfig (revision 4f3865fb)
1menu "DCCP CCIDs Configuration (EXPERIMENTAL)"
2	depends on IP_DCCP && EXPERIMENTAL
3
4config IP_DCCP_CCID2
5	tristate "CCID2 (TCP-Like) (EXPERIMENTAL)"
6	depends on IP_DCCP
7	def_tristate IP_DCCP
8	select IP_DCCP_ACKVEC
9	---help---
10	  CCID 2, TCP-like Congestion Control, denotes Additive Increase,
11	  Multiplicative Decrease (AIMD) congestion control with behavior
12	  modelled directly on TCP, including congestion window, slow start,
13	  timeouts, and so forth [RFC 2581].  CCID 2 achieves maximum
14	  bandwidth over the long term, consistent with the use of end-to-end
15	  congestion control, but halves its congestion window in response to
16	  each congestion event.  This leads to the abrupt rate changes
17	  typical of TCP.  Applications should use CCID 2 if they prefer
18	  maximum bandwidth utilization to steadiness of rate.  This is often
19	  the case for applications that are not playing their data directly
20	  to the user.  For example, a hypothetical application that
21	  transferred files over DCCP, using application-level retransmissions
22	  for lost packets, would prefer CCID 2 to CCID 3.  On-line games may
23	  also prefer CCID 2.
24
25	  CCID 2 is further described in:
26	  http://www.icir.org/kohler/dccp/draft-ietf-dccp-ccid2-10.txt
27
28	  This text was extracted from:
29	  http://www.icir.org/kohler/dccp/draft-ietf-dccp-spec-13.txt
30
31	  If in doubt, say M.
32
33config IP_DCCP_CCID3
34	tristate "CCID3 (TCP-Friendly) (EXPERIMENTAL)"
35	depends on IP_DCCP
36	def_tristate IP_DCCP
37	---help---
38	  CCID 3 denotes TCP-Friendly Rate Control (TFRC), an equation-based
39	  rate-controlled congestion control mechanism.  TFRC is designed to
40	  be reasonably fair when competing for bandwidth with TCP-like flows,
41	  where a flow is "reasonably fair" if its sending rate is generally
42	  within a factor of two of the sending rate of a TCP flow under the
43	  same conditions.  However, TFRC has a much lower variation of
44	  throughput over time compared with TCP, which makes CCID 3 more
45	  suitable than CCID 2 for applications such streaming media where a
46	  relatively smooth sending rate is of importance.
47
48	  CCID 3 is further described in:
49
50	  http://www.icir.org/kohler/dccp/draft-ietf-dccp-ccid3-11.txt.
51
52	  The TFRC congestion control algorithms were initially described in
53	  RFC 3448.
54
55	  This text was extracted from:
56	  http://www.icir.org/kohler/dccp/draft-ietf-dccp-spec-13.txt
57
58	  If in doubt, say M.
59
60config IP_DCCP_TFRC_LIB
61	depends on IP_DCCP_CCID3
62	def_tristate IP_DCCP_CCID3
63
64endmenu
65