RE: [PATCH v6 1/2] cfg80211: Add API to change the indoor regulatory setting

2015-02-26 Thread Peer, Ilan


 -Original Message-
 From: linux-wireless-ow...@vger.kernel.org [mailto:linux-wireless-
 ow...@vger.kernel.org] On Behalf Of Luis R. Rodriguez
 Sent: Thursday, February 26, 2015 04:08
 To: Peer, Ilan
 Cc: Jouni Malinen; linux-wireless@vger.kernel.org; ArikX Nemtsov
 Subject: Re: [PATCH v6 1/2] cfg80211: Add API to change the indoor
 regulatory setting
 
 On Wed, Feb 25, 2015 at 02:30:40PM +, Peer, Ilan wrote:
  Hi Luis,
 
   -Original Message-
   From: Luis R. Rodriguez [mailto:mcg...@suse.com]
   Sent: Tuesday, February 24, 2015 02:03
   To: Peer, Ilan; Jouni Malinen
   Cc: linux-wireless@vger.kernel.org; ArikX Nemtsov
   Subject: Re: [PATCH v6 1/2] cfg80211: Add API to change the indoor
   regulatory setting
  
   On Sat, Feb 21, 2015 at 10:57:10PM -0500, Ilan Peer wrote:
Previously, the indoor setting configuration assumed that as long
as a station interface is connected, the indoor environment
setting does not change. However, this assumption is problematic
as:
   
- It is possible that a station interface is connected to a mobile
  AP, e.g., softAP or a P2P GO, where it is possible that both the
  station and the mobile AP move out of the indoor environment making
  the indoor setting invalid. In such a case, user space has no way to
  invalidate the setting.
  
   At the protocol level should we consider the need for a dynamic
   environment change? Until then a change of environment likely should
   implicate an AP disconnect, which is what Linux does. With your
   changes in place we could do something even more graceful should the
 protocol allow for it.
  
 
  Not sure I follow ...
 
 OK right now we should disconnect if there are some regulatory params that
 do not agree. This event will also ony happen *rarely*. Even though this
 happens rarely I can find use for forcing this to happen in a not so rare 
 case to
 help optimize RF spectrum use dynamically, if the protocol had a way to
 communicate a desired change in environment this could be reused for a
 dynaic RF spectrum change in environment.
 

I think that RF spectrum changes are addressed in some extend in 11h, 11k and 
11v etc. So maybe
What you are looking for is already there.

   For instance if the regulatory parameters for a country are the same
   for indoor and outdoro a change in environment should not require a
 disconnect.
  
 
  So you are suggesting to extend the mechanism to also indicate if a
  teardown of active interfaces is needed or not? And if so, not sure
  that this should be done by the kernel.
 
 If the AP *knew* a change in environment (now forget indoor/outdoor as that
 is rare today) was not disruptive this could be information that the STAs can
 get to use to evaluate and make a better decision as to whether or not it did
 need to tear down or not.
 
   If the change was from a more restrictive environment to a more
   liberal set of regulatory settings it could mean increasing TX power
   of the AP changing to a channel which perhaps was not allowed before.
  
 
  I think that such a flow needs to be handled in user-space by hostapd,
  which can leverage the proper mechanisms to do the change, e.g., eCSA.
 
 Right but that's the AP, how would the STAs get that information? This is why 
 I
 mentioned the idea of a possible protocol enhancement to let the AP inform
 STAs of an environmental change. The AP *could* feed more than just the
 boring parameters we're used to. Its OK this is just an idea, ignore it.
 

I think that APs (at least what the spec allows) have mechanisms to inform the 
client
on some change such as channel switch, operational bandwidth (11ac), tx power 
control etc.

   If the change was from a less restrictive environment to a more
   restrictive environment the AP might want to change channels for
   instance or reduce TX power.
  
 
  Same as above. For example, hostapd handles DFS related channel
  changes in user space. We also added flows to handle channel switch etc. in
 wpa_supplicant ...
  and I need to resubmit them to hostap.
 
 OK..
 
   While change in indoor/outdoor might be something silly to consider
   given the likelihood of it being a common thing to happen that you
   change an AP from indoor / outdoor regularly I'd consider instead
   the possibility to reuse such a dynamic environment change
   notification for purposes of dynamic environmental adjustments of
   BSSes. Typically BSSes settings are static but RF environments
   change regularly so its silly to expect a BSS and its initial
   Automatic Channel Selection algorithm to be corrrect during the lifetime
 of a BSS.
  
- A station interface disconnection does not necessarily imply that
  the device is no longer operating in an indoor environment, e.g.,
  it is possible that the station interface is roaming but is still
  stays indoor.
  
   Sure.
  
   You also fail to explain how we currently provide the indoor thing
   to the kernel, I

RE: [PATCH v6 1/2] cfg80211: Add API to change the indoor regulatory setting

2015-02-25 Thread Peer, Ilan
Hi Luis,

 -Original Message-
 From: Luis R. Rodriguez [mailto:mcg...@suse.com]
 Sent: Tuesday, February 24, 2015 02:03
 To: Peer, Ilan; Jouni Malinen
 Cc: linux-wireless@vger.kernel.org; ArikX Nemtsov
 Subject: Re: [PATCH v6 1/2] cfg80211: Add API to change the indoor
 regulatory setting
 
 On Sat, Feb 21, 2015 at 10:57:10PM -0500, Ilan Peer wrote:
  Previously, the indoor setting configuration assumed that as long as a
  station interface is connected, the indoor environment setting does
  not change. However, this assumption is problematic
  as:
 
  - It is possible that a station interface is connected to a mobile
AP, e.g., softAP or a P2P GO, where it is possible that both the
station and the mobile AP move out of the indoor environment making
the indoor setting invalid. In such a case, user space has no way to
invalidate the setting.
 
 At the protocol level should we consider the need for a dynamic environment
 change? Until then a change of environment likely should implicate an AP
 disconnect, which is what Linux does. With your changes in place we could do
 something even more graceful should the protocol allow for it.
 

Not sure I follow ...

 For instance if the regulatory parameters for a country are the same for
 indoor and outdoro a change in environment should not require a disconnect.
 

So you are suggesting to extend the mechanism to also indicate if a teardown
of active interfaces is needed or not? And if so, not sure that this should be 
done by
the kernel.

 If the change was from a more restrictive environment to a more liberal set of
 regulatory settings it could mean increasing TX power of the AP changing to a
 channel which perhaps was not allowed before.
 

I think that such a flow needs to be handled in user-space by hostapd, which can
leverage the proper mechanisms to do the change, e.g., eCSA. 

 If the change was from a less restrictive environment to a more restrictive
 environment the AP might want to change channels for instance or reduce TX
 power.
 

Same as above. For example, hostapd handles DFS related channel changes in
user space. We also added flows to handle channel switch etc. in wpa_supplicant 
...
and I need to resubmit them to hostap.

 While change in indoor/outdoor might be something silly to consider given
 the likelihood of it being a common thing to happen that you change an AP
 from indoor / outdoor regularly I'd consider instead the possibility to reuse
 such a dynamic environment change notification for purposes of dynamic
 environmental adjustments of BSSes. Typically BSSes settings are static but RF
 environments change regularly so its silly to expect a BSS and its initial
 Automatic Channel Selection algorithm to be corrrect during the lifetime of a
 BSS.
 
  - A station interface disconnection does not necessarily imply that
the device is no longer operating in an indoor environment, e.g.,
it is possible that the station interface is roaming but is still
stays indoor.
 
 Sure.
 
 You also fail to explain how we currently provide the indoor thing to the
 kernel, I think its worth providing that in the commit log and also explaining
 how we don't use the country IE environment thing at all.
 

I explained some of the use cases in previous patches, e.g., AC power,
device type etc. I can add this, but I do not understand how country IE is 
related
here.

  To handle the above, extend the indoor configuration API to allow user
  space to indicate a change of indoor settings, and allow it to
  indicate weather it controls the indoor setting, such that:
 
  1. If the user space process explicitly indicates that it is going
 to control the indoor setting, do not clear the indoor setting
 internally, unless the socket is released. The user space process
 should use the NL80211_ATTR_SOCKET_OWNER attribute in the command
 to state that it is going to control the indoor setting.
  2. Reset the indoor setting when restoring the regulatory settings in
 case it is not owned by a user space process.
 
  While at it directly update the indoor setting without wrapping it as
  a regulatory request, to simplify the processing.
 
 Please wrap that specific change into its own separate commit, it will make it
 easier to review the changes and also make this change atomic.
 

Ok.

Thanks,

Ilan.
--
To unsubscribe from this list: send the line unsubscribe linux-wireless in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v6 1/2] cfg80211: Add API to change the indoor regulatory setting

2015-02-25 Thread Luis R. Rodriguez
On Wed, Feb 25, 2015 at 02:30:40PM +, Peer, Ilan wrote:
 Hi Luis,
 
  -Original Message-
  From: Luis R. Rodriguez [mailto:mcg...@suse.com]
  Sent: Tuesday, February 24, 2015 02:03
  To: Peer, Ilan; Jouni Malinen
  Cc: linux-wireless@vger.kernel.org; ArikX Nemtsov
  Subject: Re: [PATCH v6 1/2] cfg80211: Add API to change the indoor
  regulatory setting
  
  On Sat, Feb 21, 2015 at 10:57:10PM -0500, Ilan Peer wrote:
   Previously, the indoor setting configuration assumed that as long as a
   station interface is connected, the indoor environment setting does
   not change. However, this assumption is problematic
   as:
  
   - It is possible that a station interface is connected to a mobile
 AP, e.g., softAP or a P2P GO, where it is possible that both the
 station and the mobile AP move out of the indoor environment making
 the indoor setting invalid. In such a case, user space has no way to
 invalidate the setting.
  
  At the protocol level should we consider the need for a dynamic environment
  change? Until then a change of environment likely should implicate an AP
  disconnect, which is what Linux does. With your changes in place we could do
  something even more graceful should the protocol allow for it.
  
 
 Not sure I follow ...

OK right now we should disconnect if there are some regulatory params that do 
not
agree. This event will also ony happen *rarely*. Even though this happens rarely
I can find use for forcing this to happen in a not so rare case to help optimize
RF spectrum use dynamically, if the protocol had a way to communicate a desired
change in environment this could be reused for a dynaic RF spectrum change in
environment.

  For instance if the regulatory parameters for a country are the same for
  indoor and outdoro a change in environment should not require a disconnect.
  
 
 So you are suggesting to extend the mechanism to also indicate if a teardown
 of active interfaces is needed or not? And if so, not sure that this should 
 be done by
 the kernel.

If the AP *knew* a change in environment (now forget indoor/outdoor as that is
rare today) was not disruptive this could be information that the STAs can
get to use to evaluate and make a better decision as to whether or not it
did need to tear down or not.

  If the change was from a more restrictive environment to a more liberal set 
  of
  regulatory settings it could mean increasing TX power of the AP changing to 
  a
  channel which perhaps was not allowed before.
  
 
 I think that such a flow needs to be handled in user-space by hostapd, which 
 can
 leverage the proper mechanisms to do the change, e.g., eCSA. 

Right but that's the AP, how would the STAs get that information? This is why
I mentioned the idea of a possible protocol enhancement to let the AP inform
STAs of an environmental change. The AP *could* feed more than just the boring
parameters we're used to. Its OK this is just an idea, ignore it.

  If the change was from a less restrictive environment to a more restrictive
  environment the AP might want to change channels for instance or reduce TX
  power.
  
 
 Same as above. For example, hostapd handles DFS related channel changes in
 user space. We also added flows to handle channel switch etc. in 
 wpa_supplicant ...
 and I need to resubmit them to hostap.

OK..

  While change in indoor/outdoor might be something silly to consider given
  the likelihood of it being a common thing to happen that you change an AP
  from indoor / outdoor regularly I'd consider instead the possibility to 
  reuse
  such a dynamic environment change notification for purposes of dynamic
  environmental adjustments of BSSes. Typically BSSes settings are static but 
  RF
  environments change regularly so its silly to expect a BSS and its initial
  Automatic Channel Selection algorithm to be corrrect during the lifetime of 
  a
  BSS.
  
   - A station interface disconnection does not necessarily imply that
 the device is no longer operating in an indoor environment, e.g.,
 it is possible that the station interface is roaming but is still
 stays indoor.
  
  Sure.
  
  You also fail to explain how we currently provide the indoor thing to the
  kernel, I think its worth providing that in the commit log and also 
  explaining
  how we don't use the country IE environment thing at all.
  
 
 I explained some of the use cases in previous patches, e.g., AC power,
 device type etc. I can add this, but I do not understand how country IE is 
 related
 here.

Mention it and the country IE is important given its the other place folks
expect it to be deduced from -- and we don't use it at all. Without that
information folks can assume we do unless they are familiar with the code.
It provides useful context for your change, even for me!

  Luis
--
To unsubscribe from this list: send the line unsubscribe linux-wireless in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http