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 RFC 4341, 26 http://www.ietf.org/rfc/rfc4341.txt 27 28 This text was extracted from RFC 4340 (sec. 10.1), 29 http://www.ietf.org/rfc/rfc4340.txt 30 31 To compile this CCID as a module, choose M here: the module will be 32 called dccp_ccid2. 33 34 If in doubt, say M. 35 36config IP_DCCP_CCID2_DEBUG 37 bool "CCID2 debugging messages" 38 depends on IP_DCCP_CCID2 39 ---help--- 40 Enable CCID2-specific debugging messages. 41 42 When compiling CCID2 as a module, this debugging output can 43 additionally be toggled by setting the ccid2_debug module 44 parameter to 0 or 1. 45 46 If in doubt, say N. 47 48config IP_DCCP_CCID3 49 tristate "CCID3 (TCP-Friendly) (EXPERIMENTAL)" 50 depends on IP_DCCP 51 def_tristate IP_DCCP 52 ---help--- 53 CCID 3 denotes TCP-Friendly Rate Control (TFRC), an equation-based 54 rate-controlled congestion control mechanism. TFRC is designed to 55 be reasonably fair when competing for bandwidth with TCP-like flows, 56 where a flow is "reasonably fair" if its sending rate is generally 57 within a factor of two of the sending rate of a TCP flow under the 58 same conditions. However, TFRC has a much lower variation of 59 throughput over time compared with TCP, which makes CCID 3 more 60 suitable than CCID 2 for applications such streaming media where a 61 relatively smooth sending rate is of importance. 62 63 CCID 3 is further described in RFC 4342, 64 http://www.ietf.org/rfc/rfc4342.txt 65 66 The TFRC congestion control algorithms were initially described in 67 RFC 3448. 68 69 This text was extracted from RFC 4340 (sec. 10.2), 70 http://www.ietf.org/rfc/rfc4340.txt 71 72 To compile this CCID as a module, choose M here: the module will be 73 called dccp_ccid3. 74 75 If in doubt, say M. 76 77config IP_DCCP_TFRC_LIB 78 depends on IP_DCCP_CCID3 79 def_tristate IP_DCCP_CCID3 80 81config IP_DCCP_CCID3_DEBUG 82 bool "CCID3 debugging messages" 83 depends on IP_DCCP_CCID3 84 ---help--- 85 Enable CCID3-specific debugging messages. 86 87 When compiling CCID3 as a module, this debugging output can 88 additionally be toggled by setting the ccid3_debug module 89 parameter to 0 or 1. 90 91 If in doubt, say N. 92 93config IP_DCCP_CCID3_RTO 94 int "Use higher bound for nofeedback timer" 95 default 100 96 depends on IP_DCCP_CCID3 && EXPERIMENTAL 97 ---help--- 98 Use higher lower bound for nofeedback timer expiration. 99 100 The TFRC nofeedback timer normally expires after the maximum of 4 101 RTTs and twice the current send interval (RFC 3448, 4.3). On LANs 102 with a small RTT this can mean a high processing load and reduced 103 performance, since then the nofeedback timer is triggered very 104 frequently. 105 106 This option enables to set a higher lower bound for the nofeedback 107 value. Values in units of milliseconds can be set here. 108 109 A value of 0 disables this feature by enforcing the value specified 110 in RFC 3448. The following values have been suggested as bounds for 111 experimental use: 112 * 16-20ms to match the typical multimedia inter-frame interval 113 * 100ms as a reasonable compromise [default] 114 * 1000ms corresponds to the lower TCP RTO bound (RFC 2988, 2.4) 115 116 The default of 100ms is a compromise between a large value for 117 efficient DCCP implementations, and a small value to avoid disrupting 118 the network in times of congestion. 119 120 The purpose of the nofeedback timer is to slow DCCP down when there 121 is serious network congestion: experimenting with larger values should 122 therefore not be performed on WANs. 123 124 125endmenu 126