madwifi: fix a node refcounting imbalance with a low (but nonzero) crash probability
[openwrt.git] / package / madwifi / Config.in
1 # MadWifi configuration
2
3 config MADWIFI_DEBUG
4         bool "Enable compilation of debugging features"
5         depends on EXPERIMENTAL && PACKAGE_kmod-madwifi
6         default n
7
8 choice
9         prompt "Madwifi version"
10         depends on PACKAGE_kmod-madwifi
11         default MADWIFI_STABLE
12         help
13           This option allows you to select the version of MadWifi to be built.
14
15 config MADWIFI_STABLE
16         bool "Use the OpenWrt stable version of madwifi"
17
18 config MADWIFI_TESTING
19         depends BROKEN
20         bool "Use the OpenWrt testing version of madwifi"
21
22 config MADWIFI_UPSTREAM
23         depends !LINUX_2_6_26
24         depends !TARGET_atheros
25         bool "Use the upstream release version 0.9.4"
26
27 endchoice
28
29 choice
30         prompt "Rate control algorithm selection"
31         depends on PACKAGE_kmod-madwifi
32         default MADWIFI_RCA_MINSTREL
33         help
34           This option controls how MadWifi chooses its bitrate.
35
36 config MADWIFI_RCA_MINSTREL
37         bool "Use the Minstrel rate control algorithm"
38         help
39           This code is takes a wandering minstrel approach. Wander around the
40           different rates, singing wherever you can. And then, look at the
41           performance, and make a choice. Note that the wandering minstrel will
42           always wander in directions where he/she feels he/she will get paid
43           the best for his/her work.
44
45 config MADWIFI_RCA_ONOE
46         bool "Use the Onoe rate control algorithm"
47         help
48           Onoe is a credit based RCA where the value of the credit is determined
49           by the frequency of successful, erroneous and retransmissions
50           accumulated during a fixed invocation period of 1000 ms. If less than
51           10% of the packets need to be retransmitted at a particular rate, Onoe
52           keeps increasing its credit point till the threshold value of 10 is
53           reached. At this point, the current transmission rate is increased to
54           the next available higher rate and the process repeated with credit
55           score of zero. Similar logic holds for deducting the credit score and
56           moving to a lower bit-rate for failed packet
57           transmission/retransmission attempts. However, once a bit-rate has
58           been marked as failure in the previous attempt, Onoe will not attempt
59           to select that bit-rate until 10 seconds have elapsed since the last
60           attempt. Due to the manner in which it operates, Onoe is conservative
61           in rate selection and is less sensitive to individual packet failure.
62
63 config MADWIFI_RCA_AMRR
64         bool "Use the AMRR rate control algorithm"
65         help
66           AMRR uses Binary Exponential Backoff (BEB) technique to adapt the
67           length (threshold) of the sampling period used to change the values of
68           bit-rate and transmission count parameters. It uses probe packets and
69           depending on their transmission status adaptively changes the threshold
70           value. The adaptation mechanism ensures fewer failed
71           transmission/retransmission and higher throughput by not switching to a
72           higher rate as specified by the backoff mechanism. In addition to this,
73           the AMRR employs heuristics to capture the short-term variations of the
74           channel by judiciously setting the rate and transmission count
75           parameters.
76
77 config MADWIFI_RCA_SAMPLERATE
78         bool "Use the SampleRate rate control algorithm"
79         help
80           SampleRate decides on the transmission bit-rate based on the past
81           history of performance; it keeps a record of the number of successive
82           failures, the number of successful transmits and the total transmission
83           time along with the destination for that bit-rate. Stale samples are
84           removed based on a EWMA windowing mechanism. If in the sampling
85           process, no successful acknowledgment is received or the number of
86           packets sent is multiple of 10 on a specific link, it transmits the
87           packet with the highest rate which has not failed 4 successive times.
88           Other than that it transmits packets at the rate which has the lowest
89           average transmission time.
90
91 endchoice