Re: problem on ACS
flat view
From: Christian Lamparter <chunkeey@googlemail.com>
Date: 2011-07-26 00:13:21
Possibly related (same subject, not in this thread)
- 2011-08-01 · Re: problem on ACS · Luis R. Rodriguez <hidden>
- 2011-07-30 · Re: problem on ACS · Luis R. Rodriguez <hidden>
- 2011-07-30 · Re: problem on ACS · Christian Lamparter <chunkeey@googlemail.com>
- 2011-07-30 · Re: problem on ACS · Luis R. Rodriguez <hidden>
- 2011-07-30 · Re: problem on ACS · Christian Lamparter <chunkeey@googlemail.com>
On Tuesday, July 26, 2011 01:35:07 AM Luis R. Rodriguez wrote:
quoted hunk ↗ jump to hunk
On Mon, Jul 25, 2011 at 1:32 PM, Luis R. Rodriguez [off-list ref] wrote:quoted
On Thu, Jul 21, 2011 at 8:13 PM, MingAnn Ng [off-list ref] wrote:quoted
Hi Luis, I am thinking of using the ACS application for channel selection on IBSS network. I had run a test with the current git. But the result is not so convincing. 10 surveys for 2412 MHz: 11.382248 12.847997 13.223471 13.403065 13.454694 13.529891 12.556324 13.573309 13.616969 13.645601 10 surveys for 2417 MHz: 12.678072 10.299560 -inf -inf 9.678072 -inf -inf -inf -inf -inf 10 surveys for 2422 MHz: -inf -inf -inf -inf -inf -inf -inf -inf -inf -inf 10 surveys for 2427 MHz: -inf -inf 12.192645 -inf -inf -inf -inf -inf -inf -inf 10 surveys for 2432 MHz: -inf 9.192645 12.777608 12.192645 12.192645 -inf 12.192645 -inf 10.093109 12.192645 10 surveys for 2437 MHz: 11.192645 -inf 11.000000 10.093109 10.093109 11.192645 -inf 11.192645 -inf -inf 10 surveys for 2442 MHz: 10.192645 10.093109 -inf 10.061401 11.192645 -inf -inf -inf 11.192645 10.093109 10 surveys for 2447 MHz: -inf -inf -inf 11.777608 -inf 10.192645 -inf -inf -inf -inf 10 surveys for 2452 MHz: 11.192645 -inf -inf 11.192645 -inf -inf -inf 13.777608 11.337035 10.830075 10 surveys for 2457 MHz: 10.192645 -inf -inf -inf -inf -inf -inf -inf -inf -inf 10 surveys for 2462 MHz: 9.540568 9.192645 10.283793 8.476438 -inf -inf -inf -inf 10.192645 -inf 10 surveys for 2467 MHz: -inf -inf -inf -inf -inf -inf 9.752072 -inf -inf -inf 10 surveys for 2472 MHz: -inf -inf 10.192645 -inf -inf -inf -inf -inf 7.714598 -inf 10 surveys for 5180 MHz: 2.000000 1.830075 1.000000 0.678072 2.000000 2.000000 2.000000 0.678072 2.000000 2.000000 10 surveys for 5200 MHz: 2.000000 1.678072 2.000000 2.000000 2.000000 2.000000 1.678072 2.000000 0.678072 0.678072 10 surveys for 5220 MHz: 2.000000 1.415037 2.000000 0.000000 2.000000 2.000000 1.678072 2.000000 2.000000 2.000000 10 surveys for 5240 MHz: 3.000000 3.000000 3.000000 1.245112 3.000000 3.000000 3.000000 2.678072 2.000000 3.000000 10 surveys for 5260 MHz: 3.000000 2.000000 3.000000 3.000000 3.000000 3.000000 2.000000 2.678072 2.000000 2.678072 10 surveys for 5280 MHz: 3.000000 1.415037 3.000000 1.415037 1.678072 2.000000 1.245112 3.000000 3.000000 2.678072 10 surveys for 5300 MHz: 3.000000 3.000000 3.000000 1.415037 3.000000 3.000000 3.000000 2.000000 3.000000 3.000000 10 surveys for 5320 MHz: 3.000000 3.000000 3.000000 3.000000 3.000000 2.678072 3.000000 1.415037 3.000000 2.000000 10 surveys for 5500 MHz: -1.000000 -2.000000 -1.000000 -2.321928 -1.321928 -1.321928 -1.000000 -2.321928 -1.000000 -2.459432 10 surveys for 5520 MHz: -2.392317 -1.169925 -1.169925 -0.807355 -1.906891 -1.169925 -1.169925 -1.169925 -1.700440 -0.807355 10 surveys for 5540 MHz: -1.169925 -2.643856 -1.169925 -2.087463 -1.169925 -1.169925 -2.523562 -1.169925 -1.169925 -1.169925 10 surveys for 5560 MHz: -1.169925 -1.169925 -2.643856 -1.169925 -1.321928 -1.169925 -1.459432 -1.700440 -2.087463 -1.169925 10 surveys for 5580 MHz: -1.169925 -1.700440 -1.169925 -1.906891 -1.321928 -1.169925 -1.169925 -1.169925 -1.169925 -1.169925 10 surveys for 5600 MHz: -1.169925 -1.169925 -1.169925 -2.643856 -0.807355 -2.459432 -1.459432 -1.169925 -1.169925 -1.169925 10 surveys for 5620 MHz: -1.169925 -1.321928 -2.087463 -1.169925 -1.169925 -1.321928 -0.807355 -2.392317 -1.169925 -1.169925 10 surveys for 5640 MHz: -2.643856 -1.321928 -1.169925 -2.857981 -1.169925 -0.584963 -1.169925 -1.169925 -1.169925 -3.643856 10 surveys for 5660 MHz: -2.169925 -1.584963 -2.169925 -2.857981 -1.169925 -1.169925 -1.169925 -1.169925 -1.459432 -1.169925 10 surveys for 5680 MHz: -1.169925 -1.169925 -2.643856 -2.700440 -1.169925 -1.169925 -1.169925 -1.169925 -0.807355 -1.700440 10 surveys for 5700 MHz: -2.087463 -1.169925 -1.169925 -1.000000 -2.459432 -1.169925 -1.169925 -1.169925 -1.169925 -1.169925 2412 MHz: 13.123357 2417 MHz: -inf 2422 MHz: -inf 2427 MHz: -inf 2432 MHz: -inf 2437 MHz: -inf 2442 MHz: -inf 2447 MHz: -inf 2452 MHz: -inf 2457 MHz: -inf 2462 MHz: -inf 2467 MHz: -inf 2472 MHz: -inf 5180 MHz: 1.618622 5200 MHz: 1.671229 5220 MHz: 1.709311 5240 MHz: 2.692318 5260 MHz: 2.635614 5280 MHz: 2.243133 5300 MHz: 2.741504 5320 MHz: 2.709311 5500 MHz: -1.574714 5520 MHz: -1.346398 5540 MHz: -1.544436 5560 MHz: -1.506274 5580 MHz: -1.311873 5600 MHz: -1.438962 5620 MHz: -1.378062 5640 MHz: -1.690221 5660 MHz: -1.609185 5680 MHz: -1.487164 5700 MHz: -1.373637 Ideal freq: 2417 MHz The ideal channel is 2417MHz. But there are many interference in 2.4G at my testing place. the result for that channel is -inf.Right..quoted
I did not understand the outcome, maybe you can describe about -infinity and why that this result occurs.Sure, so -inf means the calculation resulted in a value out of bounds by the used data type. The issue lies in the wide range of values that we run into for analysis in very noisy environments. One alternative I considered was to use __float128 instead of long double for the interference_factor but I was unable to figure out how to print these correctly.quoted
will it be causing by scanning time for particular channel is too short?Can you test with the latest ACS patches I posted for hostapd with debugging and see the values you get there?Or you can try to split up the computation by using logarithm identities as follows:diff --git a/survey.c b/survey.c index ef47f95..13defc8 100644 --- a/survey.c +++ b/survey.c@@ -274,10 +274,9 @@ static long doublecompute_interference_factor(struct freq_survey *survey, __s8 { long double factor; - factor = survey->channel_time_busy - survey->channel_time_tx; - factor /= (survey->channel_time - survey->channel_time_tx); - factor *= (base_to_power(2, survey->noise - min_noise)); - factor = log2(factor); + factor = log2(survey->channel_time_busy - survey->channel_time_tx); + factor -= log2(survey->channel_time - survey->channel_time_tx); + factor += survey->noise + min_noise;
^^^^^ that "+" should a "-" right? btw, base_to_power can go as well. [now if only acs would stop freezing] Regards, Chr