public inbox for linux-wireless@vger.kernel.org
 help / color / mirror / Atom feed
* RECAP: indication of channel noise
@ 2009-10-26 13:42 Holger Schurig
  2009-10-26 13:52 ` Johannes Berg
  2009-10-27  3:45 ` Jouni Malinen
  0 siblings, 2 replies; 5+ messages in thread
From: Holger Schurig @ 2009-10-26 13:42 UTC (permalink / raw)
  To: linux-wireless, Johannes Berg, Felix Fietkau

On IRC, Johannes, Felix and I talked about how to indicate the 
noise level towards user-space.

Noise is not really a property of the link, althought derived 
values like SNR are. It can be nice to debug stuff.


However, what hardware value hardware says is a noise level 
variues. For ath5k, it's internal, thermal noise. For ath9k, 
it's external medium noise. Some hardware can determine noise 
only while in a connection, others can do it at any time.

However, noise is only one property of a channel, a wider 
approach would be to define a "site survey API". This could 
include hw cycle counters, e.g. to find out the channel 
utilization.

The idea is to have one API call "do site survey", where you tell 
the driver to scan on specified/all channels to determine those 
values.

And then there's an API call to retrieve this information. For 
hardware where you cannot really scan (e.g. Libertas, Orinoco), 
you can simply call the "retrieve site survey" call without the 
prior scanning and you just get what the hardware knows anyway. 

This makes the retrieve systeam call "cheap" in order to only get 
the noise level, but the API rich in case the hardware has much 
more versatile capabilities.



We did not yet come up with a clear API definition for this. My 
idea for an initial "retrieve site survey" response is:

NL80211_CMD_NEW_SURVEY_RESULTS
  NL80211_ATTR_GENERATION
  NL80211_ATTR_IFINDEX
  NL80211_BSS_FREQUENCY
  NL80211_BSS_NOISE_MBM

Of course this will extend over time, but that is easy due to 
nl80211.

-- 
M&N Solutions GmbH          Ein Unternehmen der Datagroup AG
Holger Schurig
Raiffeisenstr. 10
61191 Rosbach
Tel: 06003/9141-15          Fax 06003/9141-49
http://www.mn-solutions.de/

Handelsregister Friedberg, HRB 5903
Geschäftsführer: P.Schrittenlocher

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: RECAP: indication of channel noise
  2009-10-26 13:42 RECAP: indication of channel noise Holger Schurig
@ 2009-10-26 13:52 ` Johannes Berg
  2009-10-26 14:30   ` Holger Schurig
  2009-10-27  3:45 ` Jouni Malinen
  1 sibling, 1 reply; 5+ messages in thread
From: Johannes Berg @ 2009-10-26 13:52 UTC (permalink / raw)
  To: Holger Schurig; +Cc: linux-wireless, Felix Fietkau

[-- Attachment #1: Type: text/plain, Size: 1066 bytes --]

On Mon, 2009-10-26 at 14:42 +0100, Holger Schurig wrote:

> [snip descriptions]

sounds about right

> We did not yet come up with a clear API definition for this. My 
> idea for an initial "retrieve site survey" response is:
> 
> NL80211_CMD_NEW_SURVEY_RESULTS
>   NL80211_ATTR_GENERATION
>   NL80211_ATTR_IFINDEX
>   NL80211_BSS_FREQUENCY
>   NL80211_BSS_NOISE_MBM
> 
> Of course this will extend over time, but that is easy due to 
> nl80211.

I'm not really happy with having "BSS" in there. And the ifindex is
kinda not necessary either I think, you really want the wiphy index.
Also it's not necessary in the response since the request will contain
the wiphy index (or interface index).

I'd introduce a new
NL80211_CMD_GET_SURVEY_RESULT

which you use together with a dumpit call, for channels, which lists
channels one by one similar to nl80211_dump_scan()/nl80211_send_bss()
but with nl80211_dump_survey()/nl80211_send_survey_channel().

In this case I think a "last updated" value would be rather important
too.

johannes

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: RECAP: indication of channel noise
  2009-10-26 13:52 ` Johannes Berg
@ 2009-10-26 14:30   ` Holger Schurig
  0 siblings, 0 replies; 5+ messages in thread
From: Holger Schurig @ 2009-10-26 14:30 UTC (permalink / raw)
  To: Johannes Berg; +Cc: linux-wireless, Felix Fietkau

> >   NL80211_BSS_NOISE_MBM

Hmm, this could better be NL80211_CHANNEL_NOISE_MBM, to make
clear that this is not heat-related internal noise of the chip.



For the rest of your remarks: ok


-- 
M&N Solutions GmbH          Ein Unternehmen der Datagroup AG
Holger Schurig
Raiffeisenstr. 10
61191 Rosbach
Tel: 06003/9141-15          Fax 06003/9141-49
http://www.mn-solutions.de/

Handelsregister Friedberg, HRB 5903
Geschäftsführer: P.Schrittenlocher

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: RECAP: indication of channel noise
  2009-10-26 13:42 RECAP: indication of channel noise Holger Schurig
  2009-10-26 13:52 ` Johannes Berg
@ 2009-10-27  3:45 ` Jouni Malinen
  2009-10-27  7:03   ` Johannes Berg
  1 sibling, 1 reply; 5+ messages in thread
From: Jouni Malinen @ 2009-10-27  3:45 UTC (permalink / raw)
  To: Holger Schurig; +Cc: linux-wireless, Johannes Berg, Felix Fietkau

On Mon, Oct 26, 2009 at 02:42:44PM +0100, Holger Schurig wrote:

> The idea is to have one API call "do site survey", where you tell 
> the driver to scan on specified/all channels to determine those 
> values.

What would this command be? Just the existing scan trigger command with
a new attribute indicating that site survey is requested? In my first
use case (select best channel for an AP), I would like to combine the
normal scan (get all BSSes) and site survey (get tx/rx/idle hw counters
for each channel). Fetching the site survey data with a new command
would be fine, but trigger command should be shared.

-- 
Jouni Malinen                                            PGP id EFC895FA

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: RECAP: indication of channel noise
  2009-10-27  3:45 ` Jouni Malinen
@ 2009-10-27  7:03   ` Johannes Berg
  0 siblings, 0 replies; 5+ messages in thread
From: Johannes Berg @ 2009-10-27  7:03 UTC (permalink / raw)
  To: Jouni Malinen; +Cc: Holger Schurig, linux-wireless, Felix Fietkau

[-- Attachment #1: Type: text/plain, Size: 836 bytes --]

On Mon, 2009-10-26 at 20:45 -0700, Jouni Malinen wrote:
> On Mon, Oct 26, 2009 at 02:42:44PM +0100, Holger Schurig wrote:
> 
> > The idea is to have one API call "do site survey", where you tell 
> > the driver to scan on specified/all channels to determine those 
> > values.
> 
> What would this command be? Just the existing scan trigger command with
> a new attribute indicating that site survey is requested? In my first
> use case (select best channel for an AP), I would like to combine the
> normal scan (get all BSSes) and site survey (get tx/rx/idle hw counters
> for each channel). Fetching the site survey data with a new command
> would be fine, but trigger command should be shared.

That was my thinking (shared trigger) as well. Fetching the data cannot
be done with the same command anyway.

johannes

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-10-27  7:03 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-26 13:42 RECAP: indication of channel noise Holger Schurig
2009-10-26 13:52 ` Johannes Berg
2009-10-26 14:30   ` Holger Schurig
2009-10-27  3:45 ` Jouni Malinen
2009-10-27  7:03   ` Johannes Berg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox