====== Wireless ====== This menu contains settings for advanced tuning of WiFi interfaces. Changing the settings from defaults isn't recommended unless you are experienced with advanced WiFi settings. Default menu settings are noted with an asterisk ( * ). For basic WiFi settings, see the [[:basic-network|Network]] wiki page. \\ \\ \\ {{:pasted:20220309-082430.png}} \\ \\ ==== Afterburner ==== (Supported only on MIPS RT & RT-N branch/images, NOT ARM) Checking Afterburner enables support for Broadcom's frame-bursting and compression technology to improve 802.11g WiFi throughput. This feature is also known as //125 High Speed Mode// (or //125HSM//) and goes by other names with other hardware vendors. In theory, this boosts signaling rates to 125 Mb/s. Realistically, one can expect 30-40 Mb/s throughput. Since this is a proprietary protocol extension, effectiveness varies depending on the client device vendor maker as well. \\ * Disable * * Enable * Auto \\ ==== Authentication Type ==== This controls whether clients must use shared keys to authenticate. In some WiFi security modes, Shared Key is disabled for compatibility reasons. \\ * Auto * * Shared Key \\ ==== Protected Management Frames ==== (Default: Off). (ARM-only). Protected Management Frames (PMF), or MFP. * Disable * - turns off PMF. * Capable - allows all WiFi clients to connect to the network, \\ whether or not they're PMF-capable. Check your WiFi clients \\ for connectivity problems. * Required - only PMF-capable WiFi clients may connect to WiFi. \\ This option has been supported since release 2021.6. It is disabled by default, since not all WiFi clients support it. Protected Management Frames provide security for unicast and multicast management action frames. PMF prevents unicast management action frames from eavesdropping and forging data. It also prevents forged multicast management action frames. PMF augments existing privacy protections for data frames with mechanisms that improve the resilience of mission-critical networks. \\ ==== Basic Rate ==== The //Basic Rate Set// is a list of rates at which the router reports it can sync. with wireless client devices. A router regularly broadcasts the Basic Rate Set in its beacon packets. In this way, wireless clients in your network know which rates will be used. The Router will also advertise that it will automatically select the best rate for transmission. \\ * Default * * 1-2 Mbps * All \\ [Default]: Tomato advertises it can synchronize at all //standard// WiFi rates, including 6, 9, 12, 18, 24, 36, 48, and 54 Mbps, and 802.11b rates of 1, 2, 5.5 and 11 Mbps. [1-2 Mbps]: This setting is sometimes needed for compatibility with 802.11b clients, if they don't connect via the default setting. [All]: This setting makes Tomato advertise all wireless rates supported in hardware. \\ \\ {{:pasted:20220309-082608.png|:pasted:20220309-082608.png}} \\ ==== Beacon Interval ==== (Default: 100 ms). This sets the time period between one beacon broadcast and the next. A beacon packet is broadcast by the router to synchronize the WiFi network and serve administrative functions. Typically, beacons include information like the SSID, Timestamp, various parameters and available router services. Beacons use up some network bandwidth which could be used for transmission of user data. Therefore, using a higher value (with more time between broadcasts) may achieve better network throughput. Using higher beacon values may also extend the battery life of some mobile client devices. This is because WiFi adapters are able to “sleep” in between beacon broadcasts. When beacons are less frequent, your devices have more time to sleep, saving energy in the process. Battery life increases. Setting a lower beacon interval allows faster router discovery. When the router sends beacons more frequently, clients can discover it more quickly. This can help with in environments with weak signals and poor reception. After all, the more frequently beacons are sent, the more likely client devices will receive them. This can also be helpful when using roaming features with multiple Access Points. It helps client devices better choose which AP to connect to. \\ ==== CTS Protection Mode ==== \\ * Disable * * Auto - Determines which client can reach the router at a specific time \\ through CTS and its send (RTS) packet. \\ This function could more appropriately be called RTS/CTS Protection Mode. WiFi client devices transmitting to a router cannot detect when other devices on the same network are transmitting. When more than one client transmits at a time, data collisions occur. The router is then forced to discard data from both clients. This increases error rates and reduces speed. When Clear-to-Send Protection is on, a computer must send a //RTS// (Request to Send) frame to the router. This is basically a request to be allowed to transmit at that moment. In return, the router must send back a //Clear-To-Send// frame indicating the client can send data. In this way, CTS Protection Mode determines the order in which computers contact the access router. Typically, CTS frames aren't needed until the client has a data frame to send that meets a size threshold. That threshold frame size is set in the //RTS Threshold// field. See below for details. CTS is typically used for 802.11b/g/n/ac protocols. RTS-CTS is typically used with 802.11a/b/g protocols. Disable is the recommended setting, as well-designed networks rarely need this. However, if you see a lot of physical layer collisions, try enabling this and tuning the //RTS Threshold// setting. \\ ==== Regulatory Mode ==== This lets you choose which WiFi standards are followed. \\ * Off * * 802.11d * 802.11h \\ \\ In the 802.11 specification, countries that share a common set of regulations are called //regulatory domains//. Four major regulatory bodies have authority over almost all technology regulations: - Federal Communications Commission or "FCC" (USA) - European Telecommunications Standards Institute or "ETSI" - Telecom Engineering Center or "TELEC" (Japan) - (South) Korea Communications Commission (KCC) \\ Each domain has strict regulations for parameters like antenna gain, transmit power, channel selection. Many countries adhere to the standards completely. A few countries modify an existing standard to their unique needs. This can create complications. [802.11d] - This supplemental standard adds requirements/definitions necessary to allow 802.11 gear to operate in markets //not// served by the current standard. This includes anywhere outside the Americas (FCC), Europe (ETSI), Japan (TELEC), China, Israel, Singapore, and Taiwan.[[https://en.wikipedia.org/wiki/IEEE_802.11d-2001#cite_note-1|[1]]] [802.11h]** -** This is the standard for Spectrum and Transmit Power Management Extensions. It solves problems like interference with satellites and radar that use the same 5 GHz band Wifi does. The standard provides Dynamic Frequency Selection (DFS) and Transmit Power Control (TPC) to the IEEE 802.11a MAC layer. \\ ==== Country/Region and Revision ==== (Default: Singapore / 12) [ARM] The Country/Region AND Country Rev(ision) codes define the possible channel list, power and other regulations for a country. The current WiFi driver (year 2023) and newer support approximately 194 countries and thousands of country code/revision combinations. Please See: [[https://www.linksysinfo.org/index.php?threads/country-code-country-rev-collection-for-freshtomato.77788/|Country Code / Country Rev Collection for FreshTomato]] \\ \\ \\ {{:pasted:20220309-082745.png|:pasted:20220309-082745.png}} \\ Some Country/Rev. combinations are invalid, and won't work together. For example, on ARM routers, setting Country to USA by just changing Country to "US" and leaving Revision set to "12" is invalid. You need to change Country / Region to "US" and revision to "0" for a valid combination. Using an invalid combination can cause problems with WiFi operation. \\ //**SDK6** Example Country / Region and Country Rev choices (ARM Routers):// * EU / 13 - Country: EU (Europe) AND Country Rev: 13 (Asus defaults for Germany and SDK6 routers: RT-N18U, RT-AC56U, RT-AC68U C1) * EU / 13 - Country: EU (Europe) AND Country Rev: 13 (Asus defaults for UK [alias "EU"] and SDK6 routers: RT-AC68U C1 - Bought in: UK) * EU / 33 - Country: EU (Europe) AND Country Rev: 33 (Asus defaults for Germany and SDK6 router: RT-AC66U_B1) * US / 0 - Country: US (USA) AND Country Rev: 0 (Asus defaults for USA and SDK6 routers: RT-AC68U A1/A2) * US / 0 - Country: US (USA) AND Country Rev: 0 (Asus defaults for Canada and SDK6 router: RT-AC68U A2 - Bought in: Canada) * US / 10 - Country: US (USA) AND Country Rev: 10 (Asus defaults for USA and SDK6 router: RT-AC56U - Bought in: USA [CFE: 1.0.2.7]) * Q2 / 33 - Country: Q2 (USA) AND Country Rev: 33 (Asus defaults for USA and SDK6 router: RT-AC68U C1) * Q2 / 40 - Country: Q2 (USA) AND Country Rev: 40 (Asus defaults for USA and SDK6 router: RT-AC68U B1/B2) * CA / 58 - Country: CA (Canada) AND Country Rev: 58 (Asus defaults for Canada and SDK6 router: RT-AC1900P) * SG / 12 - Country: SG (Singapore) AND Country Rev: 12 (default *) \\ //**SDK7** Example Country / Region and Country Rev choices (ARM Routers):// * E0 / 989 - Country: E0 AND Country Rev: 989 (Asus default setup for UK [alias "E0"] and SDK7 router RT-AC3200 - Bought in: UK) * Q2 / 96 - Country: Q2 (USA) AND Country Rev: 96 (Asus default setup for USA and SDK7 router RT-AC3200) * SG / 12 - Country: SG (Singapore) AND Country Rev: 12 (Default *) \\ //**SDK714** Example Country / Region and Country Rev choices (ARM Routers):// * E0 / 946 - Country: E0 AND Country Rev: 946 (Asus default for Germany [alias "E0"] and SDK714 router RT-AC5300) * E0 / 962 - Country: E0 AND Country Rev: 962 (Asus default for Spain and SDK714 router RT-AC88U HW: A6 - Bought in: Spain [CFE: 3.0.0.2]) * Q2 / 992 - Country: Q2 AND Country Rev: 992 (Asus default for USA [alias "Q2"] and SDK714 router RT-AC3100) * Q1 / 984 - Country: Q1 AND Country Rev: 984 (Asus default for USA [alias "Q1"] and SDK714 router RT-AC5300) * TBD. - CFE default value used \\ //Example Country / Region and Country Rev choices (MIPS Routers, RT-N and RT-AC):// * EU / 4 - Country: EU (Europe) AND Country Rev: 4 * EU / 13 - Country: EU (Europe) AND Country Rev: 13 * PL / 2 - Country: PL (Poland) AND Country Rev: 2 * DE / 3 - Country: DE (Germany) AND Country Rev: 3 * US / 10 - Country: US (USA) AND Country Rev: 10 * CN / 1 - Country: CN (China) AND Country Rev: 1 * TW / 4 - Country: TW (Taiwan) AND Country Rev: 4 \\ Advanced users can see the complete list of settings and their code commit entries here: **SDK6 ARM** routers: \\ [[https://bitbucket.org/pedro311/freshtomato-arm/commits/ffb286c7afa64b02bc2136d6bd67ba6f7f6b42b2|https://bitbucket.org/pedro311/freshtomato-arm/commits/ffb286c7afa64b02bc2136d6bd67ba6f7f6b42b2]] \\ **SDK7 ARM** routers: \\ [[https://bitbucket.org/pedro311/freshtomato-arm/commits/92da4ad49c2df3bc6d17f58c1b564891ce87a048|https://bitbucket.org/pedro311/freshtomato-arm/commits/92da4ad49c2df3bc6d17f58c1b564891ce87a048]] \\ **SDK714 ARM** routers: Not yet available. \\ **SDK5 MIPS** (RT-N) routers: \\ [[https://bitbucket.org/pedro311/freshtomato-mips/commits/5c72e2e4753e2e2db86c519fa5d89f18ee555aff|https://bitbucket.org/pedro311/freshtomato-mips/commits/5c72e2e4753e2e2db86c519fa5d89f18ee555aff]] \\ \\ **MIPS SDK5** (RT) builds: There is only a Country setting. \\ **SDK6 MIPS** (RT-AC) routers: \\ [[https://bitbucket.org/pedro311/freshtomato-mips/commits/65128b4b2de5c677349dcbd7fe018e23e45c8bba|https://bitbucket.org/pedro311/freshtomato-mips/commits/65128b4b2de5c677349dcbd7fe018e23e45c8bba]] \\ \\ For example: for SDK6 and ARM models/builds, and country: USA, open file "wlc_clm_data.c" in directory:\\ "sysdeps/RT-AC68U/clm/src/wlc_clm_data.c" and go to line ~98738. You should see the following: \\ \\ /** Region definitions */ static const clm_country_rev_definition10_fl_t country_definitions[] = { /* CC rev 2.4 5 2.4 HT 5 HT flags */ ... ... REGION("US", 0 /* 0 */, A6_58, 29e_2, An7_62, 29en_9, SCR_2 | CLM_DATA_FLAG_REG_TXBF), /* US/0 */ <-- Line: 98738 (Example provided at advanced-wireless page) REGION("US", 1 /* 1 */, A6_58, 29e_2, An7_62, 29en_9, SCR_2 | CLM_DATA_FLAG_REG_TXBF), /* US/1 */ REGION("US", 2 /* 11 */, A1, 19b, An4, 19bn, SCR_NONE), /* US/11 */ REGION("US", 3 /* 13 */, A5, 15, An6, 15n, SCR_NONE), /* US/13 */ REGION("US", 4 /* 14 */, A6, 15, An7, 15n, SCR_NONE), /* US/14 */ REGION("US", 5 /* 18 */, A9, 15, An6_2, 15n, SCR_NONE), /* US/18 */ REGION("US", 6 /* 19 */, A6, 19, An8_T2, 19cn, SCR_NONE), /* US/19 */ REGION("US", 7 /* 20 */, A3, 19_1, An1_T3, 19n_1, SCR_NONE), /* US/20 */ ... ... \\ \\ In the comment field (right) are valid Country / Rev combinations. Notice that Country: "US" and Country Rev: "12" is NOT a valid setting for the WiFi driver. Do not use "#a" or "#r". These are special values designated for testing only. \\ Starting with MIPS SDK6 (RT-AC) builds and all ARM Branches/Versions, you must choose a Country and a Country Rev. This applies to release 2020.6 and later. With release 2022.4 and later, you'll also need to choose a Country and Revision code for RT-N models. \\ **Asus models:** To check the factory Country/Rev. combination in the bootloader, type these system commands. \\ For example, on an RT-AC66U_B1 ARM router: \\ root@RT-AC66U_B1:/tmp/home/root# cat /dev/mtd0ro | grep ccode 0:ccode=EU 1:ccode=EU root@RT-AC66U_B1:/tmp/home/root# cat /dev/mtd0ro | grep regrev 0:regrev=33 1:regrev=33 root@RT-AC66U_B1:/tmp/home/root# \\ On some older routers, the WiFi driver may no longer support some combinations. For examples, see this forum post: [[https://www.linksysinfo.org/index.php?threads/how-to-improve-wireless-signal-strength.77642/page-2#post-338960|example]]. \\ \\ To check the current wireless country setup: \\ root@R7000:/tmp/home/root# wl -i eth1 country DE (DE/7) GERMANY root@R7000:/tmp/home/root# wl -i eth2 country DE (DE/7) GERMANY root@R7000:/tmp/home/root# \\ ==== Bluetooth Coexistence ==== \\ * Disable * * Enable * Preemption \\ {{:pasted:20220309-082841.png| :pasted:20220309-082841.png}} \\ Bluetooth and 2.4 GHz WiFi radio waves can interfere with each other, since both operate on the same band. Choosing [Enable] can help reduce that interference, by asking the Bluetooth devices to take turns using the same channels as your WiFi. The [Preemptive] function will make FreshTomato inform the Bluetooth device about which Bluetooth channel it's operating on. The Bluetooth device can then mark that channel as "in use" and use alternate channels for its own communications. Bluetooth devices must support the Bluetooth Coexistence function, or they won't be able to share nicely, and this option will have no effect. This option is available only on the 2.4GHz interface. \\ ==== Distance / ACK Timing ==== (Default: 0) When a router sends a packet to a client, it waits for an ACKnowledgement frame from the client to ensure the packet was received. The time period the router waits for that acknowledgement is called the "ACK timeout" ("Timing"). Traditionally, ACK Timing is set to the maximum distance of the furthest client device in meters x 2. The doubling is to account for the round-trip distance/time, including the time it takes for the client to receive the packet, and the time for the response to travel back to the router. For example, if you roam with your laptop up to 50 meters from your A/P, the setting would be 100. The default is recommended, except where administrators have strong knowledge of timing or are building long-distance WiFi links. Typically, 802.11b/g has a range of less than 100 meters. Therefore, one might assume this should never be set higher than 200. However, in scenarios with high power antennas or other long-range gear, the timing settings would need to increase. Longer distance links have been established far beyond the theoretical limits of 802.11 b/g. However, higher ACK Timing can cause lower throughput. If set too high, packets could be lost, as the router waits for the ACK window to timeout for ACK frames that were never going to arrive. It will also resend the "unacknowledged" packet to the client, thinking it might not have received it yet. If ACK Timing is too low, the router may drop returning ACK frames too early, and again resend the original "unacknowledged" packet. This too might lower throughput. \\ ==== Inactivity Timer ==== Sets the threshold time after which virtual interfaces are removed in Media Bridge mode. (Default: "0 / Disabled"). (Range: 60 - 3600 seconds) If Media Bridge is enabled, the field appears under the corresponding Media Bridge Radio. Media Bridge mode creates a Virtual Interface ("wlX.Y") for every router client connected. Those interfaces will be removed after the time period set here. If set to "O"/Disabled", a "wlX.Y" interface is retained for every connected client until the router reboots, including inactive, disconnected devices.\\ \\ ==== Roaming Assistant ==== (Default: 0 / Disabled) This function lets you "kick" users off the WiFi network that have a weak signal signal strength at or below a set value. After enabling it, you can define the value for disconnecting clients with RSSI lower than -XY dBm (Valid range: -90 to -45) from your WiFi radio interface (eth1/eth2/eth3). Support for this started with release 2022.1 (ARM & MIPS hardware; Some MIPS models may not include this option). \\ ==== DTIM Interval ==== (Default: 1) Some beacon frames include a field called the Delivery Traffic Indication Message (DTIM) message. It tells clients that the router has buffered or multicast/broadcast data to receive. When in power-save mode, a client device may sleep for one or more beacon intervals, then wake up for beacon frames that include DTIMs. A DTIM message notifies sleeping clients that they need to wake up to receive waiting frames. The DTIM Interval specifies how often a beacon frame includes a DTIM message, expressed as //the number of beacon frames that will be sent before a DTIM is included in a beacon frame//. DTIM Interval values range 1 to 255. The DTIM Interval value is included in each beacon frame. After a beacon frame that includes a DTIM, the router releases buffered broadcast and/or multicast data. This means the DTIM message is included in every second beacon frame. \\ * Shorter DTIM Intervals force clients to wake up more often to be ready \\ to receive broadcast/multicast traffic. This puts higher loads on the clients, \\ which may increase power consumption. This may cause battery-powered \\ devices to drain faster. * Longer DTIM Intervals let clients sleep longer to save power. \\ However, with the router waiting to send the data, it may have to buffer \\ more of the broadcast/multicast data. The extra buffering could cause overruns \\ if the router can't store all the data until it can be sent. Thus, longer intervals \\ can slow throughput. \\ When in power-save mode, WiFi clients may have conflicting requirements for power consumption and communication throughput. \\ ==== Fragmentation Threshold ==== (Default: 2346) IP fragmentation occurs when the IP layer breaks down datagrams into smaller pieces (fragments). The destination host, or sometimes routers in between, reassemble fragments to make the message whole again. This is done to reduce the datagram size so the pieces can pass through a link with a smaller MTU than the original datagram size. This specifies the maximum datagram size that can occur before it's fragmented into multiple datagrams. Similar to //RTS Threshold//, tuning Fragmentation Threshold may reduce frequent network collisions. Values too low may cause poor performance. The default is recommended. \\ ==== Frame Burst ==== \\ * Disabled * * Enabled \\ Frame-bursting is a link layer protocol used to increase the throughput on links between 802.11a/b/g/n hosts under certain network conditions. It works by reducing the overhead used in a session between hosts. It grew from standards introduced in the 802.11e QoS specification. Network protocols for shared media are designed so any host that has sent a MAC layer frame is then supposed to yield the medium and wait for a fixed period of time. This helps allow fair use of the medium for multiple users. Frame bursting lets WiFi clients upload data at faster speeds by using the wait intervals between frames to "burst" a series of up to three frames before waiting a required period. One compromise: Frame Burst can cause unfair allocation of airtime on networks where only some clients support it. The wait periods between frames weren't originally designed to include data traffic. The recommended setting is Disabled, unless your network is very small. Broadcom's implementation of this is called: "Express Technology". \\ \\ \\ {{:pasted:20220309-083035.png}} \\ ==== Maximum Clients ==== (Default: 128) This sets the maximum number of clients allowed on the WiFi network. Increasing this number isn't advised. The the likely result will be an overloaded network with slow throughput. There is little risk in testing a lower number. This can be useful to reduce network traffic, or for security purposes. \\ ==== Multicast Rate ==== \\ * Auto * * 1 Mbps * … up to * 54 Mbps \\ This setting controls the rate at which hosts can send multicast packets to a multicast group. Traffic exceeding this rate is discarded. Optimizing this rate can lower collisions, especially when multiple devices/services are being run at the same time. Optimization may be essential for applications that stream video and corporate communications. For small, simple networks, the default should work fine. On larger networks, you are advised to adjust this setting. Typically, switching to the lowest setting is the quickest, easiest way to optimize your system. However, networks with more clients will likely require higher settings to be effective. Setting this too high can impact performance, so you may need to test to ensure that setting isn’t using all of the bandwidth on just one device. \\ ==== Preamble ==== \\ * Long * * Short \\ In WiFi, the preamble (or "header") is a section of data at the front of data link layer frames that contains information WiFi devices need to exchange data. Part of the preamble is the length of the CRC (Cyclic Redundancy Check) block for communication between the router/AP and roaming WiFi adapters. CRC is commonly used to detect transmission errors. \\ \\ Generally, all LAN WiFi devices should use the same preamble type. If they don't, they will have trouble communicating. On some legacy Wifi equipment, Preamble type may be set with a physical switch. In modern hardware, it's set via the web interface or command-line interface.\\ \\ The default setting is Long, to maintain legacy compatibility. Also, Long preamble is recommended for long-distance connections or links with weak signals, since both require more extensive error checking. Short preamble can be used on modern gear with strong signals in a low-interference environment. \\ ==== 802.11n Preamble ==== \\ * Auto * Mixed Mode * * Greenfield * GF-BRCM \\ For an explanation of wireless preamble basics, see the //Preamble// section above. [Auto]: TBD. [Mixed Mode]:** **In this mode, transmissions can be decoded by 802.11a/g clients, for backwards compatibility. In this mode, 802.11n devices transmit a legacy format preamble, followed by an HT format preamble and a legacy radio signal. A Mixed mode device must also send legacy format CTS-to-Self or RTS/CTS frames before transmitting. These mechanisms let other 802.11a/b/g devices sense a busy network medium and wait for another turn to transmit. This allows backwards compatibility with earlier protocols, but reduces throughput, compared with the other modes available. [Greenfield]:** **This 802.11n mode is also known as "High Throughput" mode. In this mode, 802.11n improves efficiency by using a high throughput modulation method and a shorter preamble. Neither feature is supported on 802.11a/b/g devices. This mode breaks backwards compatibility and can reduce throughput on some devices not fully Greenfield-compatible. See the GF-BRCM explanation for a possible solution to these problems. [GF-BRCM]:** **"Greenfield-Broadcom" is Broadcom's proprietary pre- or draft-802.11n implementation of Greenfield. Using this may prevent problems with devices that aren't fully Greenfield compliant. \\ ==== Overlapping BSS Coexistence ==== \\ * Off * Channel width settings will function as configured. * On: If FreshTomato senses interference, it switches from 40 MHz channel \\ width to 20MHz width. \\ {{:pasted:20220309-083807.png}} \\ This feature helps prevent interference between WiFi networks. When you enable it, the router’s 2.4 GHz radio will use a 40 MHz channel (if configured that way) until it detects another router/AP using a 40 MHz channel width. If this happens, the router falls back to using 20 MHz channel width to avoid interference with "nearby" networks. Depending on your network, disabling Overlapping BSS Coexistence might help your devices synchronize with WiFi at faster link speeds. \\ ==== RTS Threshold ==== (Default: 2347) When CTS (Clear-to-Send) Protection is on, a host must send the router an //RTS// (//Request-to-Send//) frame to get permission to transmit data frames. In return, the router must send back a //Clear-To-Send// frame, indicating the client can send data. In this way, CTS Protection Mode determines the order in which clients contact the router. Typically, CTS frames aren't needed until the client has a data frame to send that meets a size threshold. The RTS Threshold is that threshold frame size. \\ ==== Transmit Power ==== (Default: 0) This lets you override regulatory and other limitations to increase/lower Transmit Power, in milliwatts. The default setting ("0") uses the regulated power level for your chosen Country setting. Before you increase Transmit Power to improve signal range, it's wise to try signal-reception solutions first, such as relocating your router to a more central location, elevating it, or using higher gain, external antennas. Lower Transmit Power can help increase security. For example, if power is too low to reach past the boundaries of your property, it will be harder for others, off your property to snoop on your connection. Lowering Transmit Power can reduce interference received by other, nearby radio equipment. \\ ==== Transmission Rate ==== This is the rate at which data are transferred between a router and a WiFi client. Several factors affect this, including the WiFi protocol used, signal strength, channel width, and the use of MIMO/SU-MIMO. This setting is outdated and mostly applies to older protocols such as 802.11g. In general, it is best to leave it set to Auto. \\ * Auto * * 1 Mbps * … up to * 54 Mbps \\ ==== AC-PHY Interference Mitigation ==== External interference can affect a router's ability to detect and process WiFi signals effectively. Starting with 802.11ac, WiFi chipsets that contain the Advanced Chipset Physical Layer function can use 3 different strategies, or combinations of them, to reduce interference from "nearby" devices. The options available depend on the WiFi chipset/radio in the router. The same is true for client devices. \\ * None * * desense based on glitch count (opt. 1) * limit pktgain based on hwaci (opt. 2) * limit pktgain based on w2/nb (opt. 3) * opt. 1 AND opt. 2 * opt. 1 AND opt. 3 * opt. 2 AND opt. 3 * opt. 1 AND opt. 2 AND opt. 3 (All option enabled) \\ \\ [Desense based on glitch count]: With this enabled, FreshTomato monitors the received signal for anomalies or "glitches" that might indicate interference. If the number of detected glitches exceeds a certain threshold, the radio receiver can adjust its sensitivity, making it less susceptible to the interference. This approach tries to strike a balance between maintaining sensitivity for weak signals and avoiding interference from strong nearby signals. \\ Some events which might indicate glitches: - Packet Errors - An increase in them, or in corrupted data packets. - (Sudden) Signal-to-Noise Ratio Fluctuations. - Retransmission Rates - A spike in packet retransmissions. - Error Vector Magnitude (EVM) - A measure that detects deviations \\ from the ideal signal. - CRC errors - An increase in them, indicating data corruption. - Frame Check Sequence Failures - Could indicate corrupted frames, \\ possibly caused by interference. \\ There is no universal standard or "acceptable" range for glitch count. It depends on various factors, including network environment and device capabilities. However, a good rule of thumb is that if you're seeing 40-50% of the theoretical maximum throughput based on your connection rate, your network performance is reasonably good, regardless of specific glitch counts. \\ [Limit pktgain based on hwaci]: This option is appropriate where multiple WiFi networks/devices are operating on adjacent channels. "ACI", or adjacent channel interference, is caused when there is another, "nearby" WiFi device on an adjacent channel. There can be significant frequency overlap between the two adjacent channels. "Pktgain" relates to the signal strength of received packets. Hwaci is more targeted than some older mitigation methods. It adjusts power/sensitivity specifically in response to detected ACI, rather than doing a "blanket" reduction. It mitigates ACI without necessarily changing the operating channel/frequency. It can incorporate advanced filtering techniques specifically optimized for ACI. It focuses on spectral aspects (rather than temporal) separation of signals. Since it's fully implemented in hardware, it may offer lower latency and more direct control over radio parameters than older mitigation methods. \\ [Limit pktgain based on w2/nb] \\ This option causes the router to monitor the W2/NB Ratio continuously. The w2/nb ratio refers to a ratio between wide band (w2) and narrow band (nb) signal measurements. This ratio can be used to detect potential interference from "nearby" systems. When interference is detected (indicated by changes in the w2/nb ratio), the router limits the packet gain, reducing the impact of interference. \\ \\ ==== Interference Mitigation (pre-802.11ac) ==== This sets the WiFi Interference Mitigation mode when using protocols before 802.11ac. This is only available on wireless chipsets that do NOT support 802.11ac. For chipsets supporting 802.11ac and later, see "//AC-PHY Interference Mitigation//". \\ * None * (Default) * Non-WLAN * WLAN Manual * WLAN Auto * WLAN Auto with Noise Reduction \\ [None]: This is recommended if there are no other "nearby" electronic devices that may cause interference. [Non-WLAN]: Use this if the main interference source is a non-Wireless LAN device, like a cordless phone or microwave. [WLAN Manual]: This activates mitigation against other Wireless LAN Access Points. [WLAN Auto]: Similar to WLAN Manual, this activates mitigation only if the router detects other APs transmitting at the same time. This seems to work better in most cases, but try disabling it if you see WiFi stability issues. It sometimes causes instability and poor throughput. [WLAN Auto with Noise Reduction]: \\ ==== WMM ==== \\ * Auto * Disable * Enable * (Default / recommended) \\ {{:pasted:20220309-083906.png}} \\ Wireless MultiMedia (extensions) is a simple, best-effort form of QoS that maintains the priority of audio/video/voice applications over those less time-critical. WMM ensures applications that need better throughput/performance are inserted in a higher position in priority queues. \\ WMM - prioritizes WiFi traffic into 4 Access Categories: - Voice - High-priority traffic for real-time voice applications. - Video - High-priority traffic for video streaming and online gaming. - Best Effort - Medium-priority traffic for Internet browsing and file transfers. - Background - Low-priority traffic for background tasks and maintenance. \\ WMM **does not** guarantee throughput. It's suitable for simple applications that require QoS, such as VoIP on WiFi phones. Operation is limited to the LAN. It doesn't operate over the Internet. For example, audio/video applications will get higher priority over file transfers. Setting these priorities prevents parties in a (VoIP) conversation from having delays, as the network will ensure packets arrive on time. A user watching a video is more likely to see smooth action. WMM can be very bandwidth demanding. With old protocols like 802.11a/b/g, it may use too much. You can disable it to free up bandwidth. However, WMM is a requirement of the 802.11n, 802.11ac and 802.11ax specifications. Disabling it will cause fully WMM-compliant clients to fall back to 802.11a/g legacy rates (54 Mb/s). Note that some Apple products, like the iPhone, iPad, iPod touch, or Apple TV may not connect via WiFi without WMM enabled. \\ \\ ==== No ACK ==== ACKnowledgement frames are sent on networks to acknowledge receipt of data frames. This allows applicable protocols to guarantee data delivery. However, it can also slow throughput. If your network is reliable enough without acknowledgements, disabling them may improve throughput. Caution is advised before enabling this. \\ * Enable * Disable * (Default) \\ ==== APSD Mode ==== Automatic Power Save Delivery options: \\ * Disable * Enable * (Default) \\ When a client device's WiFi adapter enters into power saving mode (“sleep”) mode, FreshTomato can buffer data and hold it for your mobile devices with the WMM APSD function. This can help save power, which is especially important for battery-powered devices. This feature can also reduce the latency of traffic flow to/from WiFi clients. There are two types of APSD power saving features. With U-APSD (Unscheduled Automatic Power Save Delivery), the clients signal the router to transmit any buffered data. With S-APSD (Scheduled Automatic Power Save Delivery), the router sends buffered data on a fixed schedule known to the power-saving device without any signal from the client device. \\ ==== Wireless Multicast Forwarding ==== \\ * Disable * (Default) * Enable \\ {{:ft_wl_advanced_turbo_qam.png}} \\ \\ Wireless Multicast Forwarding allows data to be transmitted to multiple WiFi devices simultaneously, while using less network resources. Broadcasts on the LAN use up valuable bandwidth/resources because the data are sent through all network ports. In contrast, with IGMP, data are sent to a multicast IGMP address. IGMP then allows network switches to inspect (or "snoop") IGMP messages between hosts and routers. This lets the switches determine which ports are members of a specific multicast group. As a result, multicast traffic is then only forwarded to ports that have members of the relevant group. Only clients intended to receive the data actually receive it. The result is reduced overall network traffic WMF uses IGMP to manage multicast groups and keep track of participating devices. WMF is particularly useful for applications that require simultaneous transmission to multiple devices, such as: - IPTV (Internet Protocol Television) - Satellite connections - Streaming broadcast-type media (e.g., internet radio) \\ The downside of Wireless Multicast Forwarding is that it can be very bandwidth-demanding. With old WiFi versions like 802.11a/b/g, it might "hog" the connection, causing low throughput. To reduce that, you may want to disable the feature. \\ ==== Modulation Scheme ==== (Called Turbo QAM before release 2022.7) This setting enables Turbo QAM, Broadcom's name for 256-QAM. Don't confuse this with Broadcom's other Turbo QAM, a modulation scheme used for cable modem technology. (Requires //Wireless Network Mode// set to Auto) Turbo QAM is a modulation method in which the two carrier signals are shifted in phase by 90 degrees. The two signals are then modulated and combined. The 90° difference in phase between the two signals means they are "in quadrature". In theory, this method makes it possible to transmit more bits per symbol, and thus increase data rates. In reality, most claims of large increases in transfer rates may be exaggerated. QAM links are more susceptible to noise. As a result, Turbo QAM is generally only useful in very low-noise/interference WiFi environments. Many people report it being effective on line-of-sight links of up to about 25 feet. Vendors claim effective Turbo QAM range may improve if beamforming is used. You may need to experiment to see what works best. \\ \\ NitroQAM/1024-QAM is only available for SDK714 Routers like the RT-AC5300, RT-AC3100 or RT-AC88U.\\ \\ {{:pasted:20220309-083958.png}} \\ \\ \\ \\ ==== Explicit beamforming ==== Checking this enables Explicit beamforming technology. Traditionally, most WiFi gear included omnidirectional antennas. These radiate radio signals equally in all directions. This isn't always the most effective/efficient way to exchange radio signals with a client device. Much of the signal goes off in directions away from the client device. Explicit beamforming improves on this. Beamforming radiates the signals more towards the receiver. If the hardware has adequate information to send the radio energy in a particular direction, it will do so. The result can be an increase the signal-to-noise ratio and data rates between the devices. Beamforming was introduced with 802.11n, but vendors used different standards. As a result, there was little performance improvement. With 802.11ac, the method was standardized (Explicit). Good compatibility developed across vendors. Explicit beamforming requires both client and router/AP support. If both devices support it, they'll use a handshake at the start of the session to help establish their locations and the channel on which to communicate. Beamforming works best at medium range. At short range, the signal power is high enough that the signal-to-noise ratio will support the maximum data rate. At long ranges, beamforming does not offer gains when used with an omnidirectional antenna. \\ ==== Universal/Implicit beamforming ==== Beamforming is a performance feature included in WiFi protocols starting with 802.11n. Beamforming radiates signals more directly towards the receiver, instead of in an omnidirectional pattern, like older equipment. This can result in a higher signal-to-noise ratio and faster data rates between the two devices exchanging data. Traditionally, most WiFi routers and APs included omnidirectional antennas. These radiate radio energy equally in all directions. This is not the most effective/efficient way to exchange radio signals to another device. Much of the signal goes off in directions away from the other wireless device. With 802.11n, some beamforming methods were allowed, but no standard existed. A lack of standards meant it usually provided little performance improvement. Implicit beamforming is used with legacy devices that don't support (Explicit) beamforming. With Implicit beamforming, the router estimates the channel and determines the radiation direction to improve signal/transmission rate to the client. However, it won't be able to radiate signal as precisely to the device as it could if the endpoint supported Explicit beamforming. (See above section). Theoretically, Implicit ("Universal") beamforming can work with almost all client equipment, even if it doesn't doesn't support beamforming. Both APs and clients (that support it) can use beamforming. However, the higher processing power and larger distance between antennas in routers/APs means most performance gains should be expected in transmissions from router/AP to client. \\ ==== Optimized for Xbox ==== \\ * Disable * (enables LDPC) * Enable \\ LDPC is a forward error correction capability that allows for single bit errors to be corrected automatically. Starting with 802.11n, LDPC was added as an optional function that must be negotiated as part of the association process. If LDPC is enabled, an AP will advertise that capability in its beacon packets. LDPC can increase signal-to-noise ratio, (SNR) approximately 1-2 dB, depending on the channel being used. Consequently, when LDCP increases SNR it can improve data rates, and in doing so, reduce airtime utilization. Enabling this feature //disables// LDPC. \\ ==== Airtime Fairness ==== \\ This function was developed for two reasons: - In general, WiFi clients and a broadcaster have a first-come, \\ first-serve relationship. - WiFi is half-duplex. Communication travels in both directions, \\ but only in one direction //at a time//. \\ In half-duplex systems, if more than one client transmits at the same time, a collision occurs, resulting in lost messages. Imagine two people trying to talk with each other on walkie talkies at the same time. Of course, WiFi uses CSMA/CA as its media access control protocol, and this helps minimize collisions. However, before a client radio has completed sending packets, another client may have started sending some. The first radio may not be aware that the second radio has started sending packets. This could cause issues for the first sender. If the first client hasn't finished sending data before the second client begins sending, data from both clients could be lost/corrupted. A specific radio might not get a turn to transmit (within normal time limits) and could timeout. This could cause a connection error. The chances of this happening increase when the channel uses a small inter-packet gap. \\ For example, consider a scenario in which a router has: * Two radios * An 802.11ac client running at 1300 Mb/s towards the A/P and; * An 802.11g client is running at 54 Mb/s. \\ Previous WiFi protocols used fairness functions based on //the amount of packets// the client was allowed to transmit at a time. The result was that slower clients often used more bandwidth. Without Airtime Fairness, if both clients wanted to transmit the same packet, it would take the 802.11g client (1300Mb/s/54) ~ 25 times longer to do so than the 802.11ac client. The 802.11g client could "hog" the connection because it gets less radio-on time ("airtime"). \\ **Comparison of bandwidth with and without Airtime Fairness**\\ {{advanced-wireless-airtime_fairness.png?537}} \\ \\ Often, Airtime Fairness can solve the problems described above. In contrast with previous fairness protocols, Airtime Fairness regulates fairness based on the //amount of time a sender gets to transmit//. With Airtime Fairness, each client gets the same airtime, regardless of its capability and capacity. The 802.11ac client gets as much "radio-on" time as the 802.11g client. High throughput clients do not get penalized because of slower client transmissions that take more airtime due to slower transmit rates. \\ This option is most helpful in mixed environments with 802.11ac/a/g/n clients that **support Airtime Fairness**. Airtime Fairness also has a downside. Sometimes, using it can lead to lower throughput. \\ \\