arendst / Tasmota

Alternative firmware for ESP8266 and ESP32 based devices with easy configuration using webUI, OTA updates, automation using timers or rules, expandability and entirely local control over MQTT, HTTP, Serial or KNX. Full documentation at
https://tasmota.github.io/docs
GNU General Public License v3.0
22.08k stars 4.78k forks source link

Roaming/Association decisions in multi-AP setup #4817

Closed unw1red closed 5 years ago

unw1red commented 5 years ago

IMPORTANT NOTICE If you do not complete the template below it is likely that your issue will not be addressed. When providing information about your issue please be as extensive as possible so that it can be solved by as little as possible responses.

FAILURE TO COMPLETE THE REQUESTED INFORMATION WILL RESULT IN YOUR ISSUE BEING CLOSED

Make sure these boxes are checked [x] before submitting your issue - Thank you!

(Please, remember to close the issue when the problem has been addressed)

When devices are in a multi-AP environment, poor roaming/association decisions are made. My situation involves four Aruba Networks AP-335 access points running in controller mode. The SSID being used runs on both 5 and 2.4GHz. The following is an example of current association of the above posted device.

(Aruba7210) #show ap association client-mac 84:0d:8e:96:0d:78

The phy column shows client's operational capabilities for current association

Flags: A: Active, B: Band Steerable, H: Hotspot(802.11u) client, K: 802.11K client, M: Mu beam formee, R: 802.11R client, W: WMM client, w: 802.11w client V: 802.11v BSS trans capable

PHY Details: HT : High throughput; 20: 20MHz; 40: 40MHz; t: turbo-rates (256-QAM) VHT : Very High throughput; 80: 80MHz; 160: 160MHz; 80p80: 80MHz + 80MHz

ss: spatial streams Association Table ----------------- Name bssid mac auth assoc aid l-int essid vlan-id tunnel-id phy assoc. time num assoc Flags Band steer moves (T/S) phy_cap ---- ----- --- ---- ----- --- ----- ----- ------- --------- --- ----------- --------- ----- ---------------------- ------- Pantry 90:4c:81:69:9f:20 84:0d:8e:96:0d:78 y y 12 100 Gr1ff1n-1X 27 0x10010 g-HT-20sgi-1ss 5m:48s 1 WA 0/0 g-HT-20sgi-1ss 84:0d:8e:96:0d:78-90:4c:81:69:9f:20 Stats ------------------------------------------ Parameter Value --------- ----- Channel 11 Channel Frame Retry Rate(%) 40 Channel Frame Low Speed Rate(%) 0 Channel Frame Non Unicast Rate(%) 2 Channel Frame Fragmentation Rate(%) 0 Channel Frame Error Rate(%) 1 Channel Bandwidth Rate(kbps) 255 Channel Noise 95 Client Frame Retry Rate(%) 66 Client Frame Low Speed Rate(%) 0 Client Frame Non Unicast Rate(%) 0 Client Frame Fragmentation Rate(%) 0 Client Frame Receive Error Rate(%) 40 Client Bandwidth Rate(kbps) 158 Client Tx Packets 3962 Client Rx Packets 5972 Client Tx Bytes 256380 Client Rx Bytes 824209 Client SNR 27 A2c_SM SeqNum, Old SeqNums 9513 0 This device is 3 meters from another access point. Although 27 SNR is good, you can see that the retry rate is quite high because of other 2.4GHz devices between this switch and the associated AP which is ~12 meters away. The perceived RSSI of this switch is currently 38%. If I force the device to connect to the nearest AP (MasterCloset), you can see that the association parameters are much better with much lower retry rate. (Aruba7210) #show ap association client-mac 84:0d:8e:96:0d:78 The phy column shows client's operational capabilities for current association Flags: A: Active, B: Band Steerable, H: Hotspot(802.11u) client, K: 802.11K client, M: Mu beam formee, R: 802.11R client, W: WMM client, w: 802.11w client V: 802.11v BSS trans capable PHY Details: HT : High throughput; 20: 20MHz; 40: 40MHz; t: turbo-rates (256-QAM) VHT : Very High throughput; 80: 80MHz; 160: 160MHz; 80p80: 80MHz + 80MHz ss: spatial streams Association Table ----------------- Name bssid mac auth assoc aid l-int essid vlan-id tunnel-id phy assoc. time num assoc Flags Band steer moves (T/S) phy_cap ---- ----- --- ---- ----- --- ----- ----- ------- --------- --- ----------- --------- ----- ---------------------- ------- MasterCloset 90:4c:81:69:fa:80 84:0d:8e:96:0d:78 y y 1 100 Gr1ff1n-1X 27 0x10009 g-HT-20sgi-1ss 51s 1 WA 0/0 g-HT-20sgi-1ss 84:0d:8e:96:0d:78-90:4c:81:69:fa:80 Stats ------------------------------------------ Parameter Value --------- ----- Channel 1 Channel Frame Retry Rate(%) 8 Channel Frame Low Speed Rate(%) 0 Channel Frame Non Unicast Rate(%) 22 Channel Frame Fragmentation Rate(%) 0 Channel Frame Error Rate(%) 0 Channel Bandwidth Rate(kbps) 41 Channel Noise 96 Client Frame Retry Rate(%) 0 Client Frame Low Speed Rate(%) 0 Client Frame Non Unicast Rate(%) 0 Client Frame Fragmentation Rate(%) 0 Client Frame Receive Error Rate(%) 0 Client Bandwidth Rate(kbps) 0 Client Tx Packets 77636 Client Rx Packets 22116 Client Tx Bytes 3348526 Client Rx Bytes 2484809 Client SNR 51 A2c_SM SeqNum, Old SeqNums 19211 0 Most enterprise wireless devices have roaming parameters within their drivers. They normally build a roaming candidates table of 5-20 choices and only decide to roam if the signal level (RSSI) is -72 or better and at least 3dB better than their current association. In my case, the device should have voluntarily roamed to the MasterCloset AP from the Pantry AP on its own. When running in a place with only one access point, this situation is moot. But with Google WiFi and other multi-AP setups, this can become an issue and make the devices far less responsive to MQTT. The QoS setting becomes much more important when poor association/roaming decisions are made. Although, I am running a commercial-grade wireless system and can force/nudge devices to make better decisions, the Google and Orbi systems do not have this granularity. Please let me know if further data can be supplied for this issue.
arendst commented 5 years ago

From your status information I see you do not use "auto detection of strongest wifi signal". In that case it just uses the first connecting configured SSID (either AP1 or AP2) without strongest signal detection. This was always the case until v6.4.0

Starting with 6.4.0 there are two options to select the strongest signal from the two configured AP SSID names. If you have many AP's with same name it will detect the stringest signal within a margin of 10%.

To use wifi signal detection you will have to enable SetOption56 and SetOption57. See wiki for background info.

unw1red commented 5 years ago

I have set both options on all devices. I will monitor for 24hrs and update or close ticket. Thank you.

ascillato2 commented 5 years ago

Closing this issue as it is duplicated

Support Information

See Wiki for more information. See Chat for more user experience.