Darren Kitchen Posted March 9, 2014 Share Posted March 9, 2014 (edited) A few months ago I was doing quite a bit of research of stability and distance tuning for point to point wifi links. See Hak5 episodes 1515, 1516, 1517.' Like many of you I keep a scratch pad of useful nuggets while researching anything so I figured while it took me considerable time to find these gems I'll simply brain dump them here. If you have some of your own in regards to stability and distance, please share :) https://forum.openwrt.org/viewtopic.php?id=43188 Found an interesting setting in /var/run/hostapd-phy0.conf - disassoc_low_ack, that seems to impact the low ACK behaviour http://hostap.epitest.fi/gitweb/gitweb. … 50d22c2887 changed to: ..... ..... interface=wlan0 ctrl_interface=/var/run/hostapd-phy0 disassoc_low_ack=0 preamble=1 ..... ..... Now does not give me the excessive/missing ACK - however now can trigger this error pretty easilly: http://www.dd-wrt.com/phpBB2/viewtopic.php?t=171400&postdays=0&postorder=asc&start=15&sid=314d027d1a944d6df6c2cf843d88fbea Sensitivity Range (ACK Timing) Available Settings: 0 - 999999 Recommended Setting: 0 - 2000 for both 2.4 & 5 GHz, greater than 2000 only when needed for long distance links ACK timing is also a throughput controller, too high and your devices will literally be "waiting" too long and time will be passing with them at idle. Too low and active transmissions could be cut off causing retransmissions which create overhead, that lowers throughput. The AP sends a packet and all clients must wait for XXX time, where XXX is the ACK timing, the client then receives that packet and responds to the AP with an ACK(nowledgement), AP sees the AP then finally everyone is free to transmit. Most users want this between 0 - 2000 (2.4/5 GHz), the distance used is meters and needs to be doubled the distance of the furthest client from the AP (plus some headroom). Doubled because the signal travels to the client and back, double the distance. In earlier builds with the older madwifi driver reducing ACK from default 2000 to 1500 caused a throughput increase of 0.6 Mbps - 1 Mbps, though with modern builds (r18000+) using the new ath9k driver, along with the internal changes to ACK timing, reducing to 1500 does about nothing for throughput, one would have to drop below 900m at least, as well with the current ath9k builds an ACK timing of 0 DOES disable it completely like on Broadcom, this is generally the new best setting. But if you do not disable ACK timing remember an ACK timing too low can cause issues described above. Long distance links, such as 2 KM+ will need to increase this setting accordingly. 4000m for 2km, 6000m for 3km, and so on. So putting it to 0 would disable it or would it change it to automatic, hmmm https://supportforums.cisco.com/docs/DOC-4349 WPA stands for Wi-Fi Protected Access. There are two versions of WPA: WPA and WPA2. WPA is a standards-based security solution from the Wi-Fi Alliance that addresses the vulnerabilities in native WLANs and provides enhanced protection from targeted attacks. WPA addresses all known Wired Equivalent Privacy (WEP) vulnerabilities in the original IEEE 802.11 security implementation and brings an immediate security solution to WLANs in both enterprise and Small Office/Home Office (SOHO) environments. WPA uses Temporal Key Integrity Protocol (TKIP) for encryption. WPA is fully supported by the Cisco Wireless Security Suite and the Cisco Structured Wireless-Aware Network(SWAN). WPA2 is the next generation of Wi-Fi security. It is the Wi-Fi Alliance's interoperable implementation of the ratified IEEE 802.11i standard. It implements the National Institute of Standards and Technology (NIST) recommended Advanced Encryption Standard (AES) encryption algorithm using Counter Mode with Cipher Block Chaining Message Authentication Code Protocol (CCMP). WPA2 facilitates government FIPS 140-2 compliance, and it is fully supported by the Cisco Wireless Security Suite and by Cisco SWAN. WPA and WPA2 mixed mode operation permits the coexistence of WPA and WPA2 clients on a common SSID. WPA and WPA2 mixed mode is a Wi-Fi certified feature. During WPA and WPA2 mixed mode, the Access Point (AP) advertises the encryption ciphers (TKIP, CCMP, other) that are available for use. The client selects the encryption cipher it would like to use and the selected encryption cipher is used for encryption between the client and AP once it is selected by the client. http://hostap.epitest.fi/gitweb/gitweb.cgi?p=hostap.git;a=patch;h=0d7e5a3a29efd4bc138e74b19657e750d22c2887 The nl80211 driver can report low ACK condition (in fact it reports complete loss right now only). Use that, along with a config option, to disconnect stations when the data connection is not working properly, e.g., due to the STA having went outside the range of the AP. This is disabled by default and can be enabled with disassoc_low_ack=1 in hostapd or wpa_supplicant configuration file. http://wireless.kernel.org/en/users/Documentation/hostapd 802.11n Setting Summary 802.11n builds on the settings above, and adds additional functionality. If your hardware doesn't support 802.11n, or you don't plan on using it, you can ignore these. ieee80211n: Set to 1 to enable 802.11n support, 0 to disable it ht_capab: A list of the 802.11n features supported by your device The explanation of these settings in the sample config file are quite helpful, so I'll suggest reading those. You can use the command 'iw list' to find a short list of the capabilities of your device. http://hostap.epitest.fi/gitweb/gitweb.cgi?p=hostap.git;a=blob_plain;f=hostapd/hostapd.conf # Enable IEEE 802.11d. This advertises the country_code and the set of allowed # channels and transmit power levels based on the regulatory limits. The # country_code setting must be configured with the correct country for # IEEE 802.11d functions. # (default: 0 = disabled) #ieee80211d=1 https://bbs.archlinux.org/viewtopic.php?pid=1200765 adaptive noise immunity https://dev.openwrt.org/ticket/12372 echo 1 >/sys/kernel/debug/ieee80211/phy0/ath9k/disable_ani http://www.gargoyle-router.com/phpbb/viewtopic.php?f=14&t=2058 Sensitivity Range Adjusts the ACK timing in Atheros typical way based on the maximum distance in meters: 0 disables ACK timing completely 1 - 999999 adjusts ACK timing The default is 2000 meters. When a packet is sent out from the router, it waits for an "ACKnowledgement" frame from the other end. The router will wait for a response until a certain amount of time has elapsed, called the "ACK timeout" (or "window"). Conventional wisdom holds that should be set to the maximum distance in meters x 2 (doubled to account for round-trip). For example, if you roam with your laptop up to 50 meters from your AP, the setting would be 100. Under nominal conditions (obstructions, power limitations, in-band interference, etc), the usable range of 802.11b/g is perhaps less than 100 meters, so it might seem that this setting should never exceed 200. However, if using a directional antenna that boosts range, timing needs would increase. Maximum theoretical ACK timeouts are approximately 744µs (11 km) for 802.11b, and 372µs (55 km) for 802.11g. There have been reports of experimental, assisted WiFi connections in excess of 40 kilometers plus. Another use for ACK might be for restricting the distance at which people can connect. This could be useful for WDS access points or for minimizing the zone of connectivity. Keep in mind, the higher the ACK timing, the lower the throughput will be. If set too high, packets could be lost as the router waits for the ACK window to timeout. Conversely, if ACK is set too low, the window will expire too soon and returning packets could be dropped, also lowering throughput. Wifi tuning for long distance using UCI(Openwrt/Gargoyle) Wireless Calculator http://www.tp-link.com/en/support/calculator/ https://dev.openwrt.org/ticket/10084 option 'wpa_group_rekey' '0' config wifi-device 'radio0' option type 'mac80211' option channel '9' option hwmode '11g' option macaddr '00:13:37:a5:0f:89' option htmode 'HT20' list ht_capab 'SHORT-GI-20' list ht_capab 'SHORT-GI-40' list ht_capab 'RX-STBC1' list ht_capab 'DSSS_CCK-40' option short_preamble '0' option beacon_int '250' Edited March 11, 2014 by Mr-Protocol Put YouTube link in code tabs. Forums don't seem to load YouTube properly. Quote Link to comment Share on other sites More sharing options...
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.