This feature request will implement 802.11ax for 2.4GHz AccessPoints.
Reasoning:
Users in areas which are clogged with 2.4GHz AccessPoints usually experience very low throughput on their WiFi networks. Throughput may be as low as only a low single-digit number in megabytes per second on networks based on 802.11n.
Tests showed that by implementing 802.11ax for 2.4GHz can significantly increase throughput in such areas, reaching up to 5 times the speed as 802.11n would be capable of.
Where range is needed, another advantage over using a 6GHz AccessPoint would be the increased range and less signal dampening for 2.4GHz based WiFi networks.
Testbeds:
Suggested hardware is the same as detailed in https://vyos.dev/T6320.
TODOs:
[x] Acquire a suitable NIC and make a testbed
[x] Find a stable hostapd.conf for WiFi-6 at 2.4GHz
[x] Implement new settings to vyos-1x
[x] Test thoroughly and bugfixes
[x] Issue PR against upstream vyos-1x (https://github.com/vyos/vyos-1x/pull/4028)
[x] Issue PR against upstream vyos-documentation (https://github.com/vyos/vyos-documentation/pull/1551)
where:
[ ]: TODO; [o] in-the-works; [x] complete
Configurations:
Rough throughput measurements for 2.4GHz at 20MHz bandwidth:
no walls | 10 - 20 MByte/s |
one wall | 10 - 20 MByte/s |
two walls | 5 - 15 MByte/s |
Working hostapd configuration for 802.11ax on 2.4GHz:
### Autogenerated by interfaces_wireless.py ### ### hostapd.conf reference: ### https://w1.fi/cgit/hostap/tree/hostapd/hostapd.conf?h=hostap_2_10&id=cff80b4f7d3c0a47c052e8187d671710f48939e4 # Description: 802.11ax 2.4GHz # User-friendly description of device; up to 32 octets encoded in UTF-8 device_name=802.11ax 2.4GHz interface=wlan0 bridge=br0 wds_sta=1 driver=nl80211 logger_syslog=-1 logger_syslog_level=0 logger_stdout=-1 logger_stdout_level=0 country_code=DE ieee80211d=1 ssid=test.ax channel=11 hw_mode=g ieee80211h=1 ieee80211ax=1 ieee80211w=0 beacon_prot=1 ht_capab=[40-INTOLERANT][TX-STBC][RX-STBC-2][HT20][HT40+][HT40-][SHORT-GI-20][SHORT-GI-40] ieee80211n=1 he_6ghz_reg_pwr_type=0 op_class=81 he_bss_color=13 he_6ghz_rx_ant_pat=1 he_su_beamformer=1 he_su_beamformee=1 he_mu_beamformer=1 macaddr_acl=0 accept_mac_file=/run/hostapd/wlan0_station_accept.conf deny_mac_file=/run/hostapd/wlan0_station_deny.conf auth_algs=1 wpa=2 rsn_pairwise=CCMP CCMP-256 GCMP-256 GCMP group_mgmt_cipher=AES-128-CMAC wpa_key_mgmt=WPA-PSK WPA-PSK-SHA256 wpa_passphrase=super-dooper-secure-passphrase tx_queue_data3_aifs=7 tx_queue_data3_cwmin=15 tx_queue_data3_cwmax=1023 tx_queue_data3_burst=0 tx_queue_data2_aifs=3 tx_queue_data2_cwmin=15 tx_queue_data2_cwmax=63 tx_queue_data2_burst=0 tx_queue_data1_aifs=1 tx_queue_data1_cwmin=7 tx_queue_data1_cwmax=15 tx_queue_data1_burst=3.0 tx_queue_data0_aifs=1 tx_queue_data0_cwmin=3 tx_queue_data0_cwmax=7 tx_queue_data0_burst=1.5 wme_enabled=1 wmm_enabled=1 wmm_ac_bk_cwmin=4 wmm_ac_bk_cwmax=10 wmm_ac_bk_aifs=7 wmm_ac_bk_txop_limit=0 wmm_ac_bk_acm=0 wmm_ac_be_aifs=3 wmm_ac_be_cwmin=4 wmm_ac_be_cwmax=10 wmm_ac_be_txop_limit=0 wmm_ac_be_acm=0 wmm_ac_vi_aifs=2 wmm_ac_vi_cwmin=3 wmm_ac_vi_cwmax=4 wmm_ac_vi_txop_limit=94 wmm_ac_vi_acm=0 wmm_ac_vo_aifs=2 wmm_ac_vo_cwmin=2 wmm_ac_vo_cwmax=3 wmm_ac_vo_txop_limit=47 wmm_ac_vo_acm=0
Proposed example VyOS configuration for 802.11ax on 2.4GHz:
vyos@wifi6# show interfaces wireless wlan0 capabilities { he { antenna-pattern-fixed beamform { multi-user-beamformer single-user-beamformee single-user-beamformer } bss-color 13 channel-set-width 81 } ht { 40mhz-incapable channel-set-width ht20 channel-set-width ht40+ channel-set-width ht40- short-gi 20 short-gi 40 stbc { rx 2 tx } } } channel 11 description "802.11ax 2.4GHz" hw-id be:ef:de:ad:be:ef mode ax physical-device phy0 security { wpa { cipher CCMP cipher CCMP-256 cipher GCMP-256 cipher GCMP mode wpa2 passphrase super-dooper-secure-passphrase } } ssid test.ax type access-point [edit] vyos@wifi6#