User Tools

Site Tools


en:users:documentation:acs

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
en:users:documentation:acs [2015/05/14 21:47]
Rafał Miłecki Start "Driver implementation details" section
en:users:documentation:acs [2018/02/12 08:19]
Chaitanya T K Fix typo in the heading
Line 16: Line 16:
 ===== Survey based algorithm ===== ===== Survey based algorithm =====
  
-The survey based algorithm relies on the nl80211 survey API command to query the interface for channel active time, channel busy time, channel tx time and noise. The active time consists of the amount of time the radio has spent on the channel. The busy time consists of the amount of time the channel ​has spent on the channel but noticed the channel was busy and could not initiate communication if it wanted to. The tx time is the amount of time the channel ​has spent on the channel transmitting data. The survey algorithm relies on these values to build an //​interference factor// to give a sense of how much interference was detected on the channel and then picks the channel with the lowest //​interference factor//​. ​+The survey based algorithm relies on the nl80211 survey API command to query the interface for channel active time, channel busy time, channel tx time and noise. The active time consists of the amount of time the radio has spent on the channel. The busy time consists of the amount of time the radio has spent on the channel but noticed the channel was busy and could not initiate communication if it wanted to. The tx time is the amount of time the radio has spent on the channel transmitting data. The survey algorithm relies on these values to build an //​interference factor// to give a sense of how much interference was detected on the channel and then picks the channel with the lowest //​interference factor//​. ​
  
 The //​interference factor// is defined as the ratio of the observed busy time over the time we spent on the channel, this value is then amplified by the noise floor observed on the channel in comparison to the lowest noise floor observed on the entire band.  The //​interference factor// is defined as the ratio of the observed busy time over the time we spent on the channel, this value is then amplified by the noise floor observed on the channel in comparison to the lowest noise floor observed on the entire band. 
Line 66: Line 66:
  
  
-===== Example ​survet-based ACS analysis printout from hostapd =====+===== Example ​survey-based ACS analysis printout from hostapd =====
  
  
Line 184: Line 184:
  
 As explained is algorithm section, driver needs to provide (fill) few different informations about a channel: As explained is algorithm section, driver needs to provide (fill) few different informations about a channel:
-  * Noise floor (''​NL80211_SURVEY_INFO_NOISE''​) +  * Noise floor (''​SURVEY_INFO_NOISE_DBM''​) ​put into ''​NL80211_SURVEY_INFO_NOISE''​ 
-  * Channel time (''​NL80211_SURVEY_INFO_CHANNEL_TIME''​)+  * Channel time (''​SURVEY_INFO_TIME''​) ​put into ''​NL80211_SURVEY_INFO_TIME''​
   * Time of channel unavailability which is **one** of:   * Time of channel unavailability which is **one** of:
-    * RX time (''​NL80211_SURVEY_INFO_CHANNEL_TIME_RX''​) +    * RX time (''​SURVEY_INFO_TIME_RX''​) ​put into ''​NL80211_SURVEY_INFO_TIME_RX''​ 
-    * Busy time (''​NL80211_SURVEY_INFO_CHANNEL_TIME_BUSY''​)+    * Busy time (''​SURVEY_INFO_TIME_BUSY''​) ​put into ''​NL80211_SURVEY_INFO_TIME_BUSY''​
  
 ===== Hostapd setup ===== ===== Hostapd setup =====
Line 194: Line 194:
 Only the following drivers support the current (2014-08-19) survey based ACS implmenetation in hostapd ([[http://​w1.fi/​cgit/​hostap/​tree/​hostapd/​defconfig#​n309|http://​w1.fi/​cgit/​hostap/​tree/​hostapd/​defconfig#​n309]]). ​ Only the following drivers support the current (2014-08-19) survey based ACS implmenetation in hostapd ([[http://​w1.fi/​cgit/​hostap/​tree/​hostapd/​defconfig#​n309|http://​w1.fi/​cgit/​hostap/​tree/​hostapd/​defconfig#​n309]]). ​
   * ath5k    * ath5k 
-  * ath9k +  * ath9k (The pcie version only)
   * ath10k When building make sure you enable ACS in hostapd'​s .config file:    * ath10k When building make sure you enable ACS in hostapd'​s .config file: 
  
en/users/documentation/acs.txt · Last modified: 2021/03/01 04:28 by Nikolas Nyby