Wi-Fi Beacon Pollution
I've spent a number of years configuring and maintaining various wireless networks, from simple home networks to businesses and ISPs. In this article I'd like to highlight an increasingly common problem that's affecting a lot of people that I'll call "beacon pollution", as my tweet regarding this seemed to get a decent amount of interest.
WiFi Tip: Set your router to only support 802.11n / ac if possible. Older standards cause beacon frames to take up more radio airtime. pic.twitter.com/BlVK8u2Huh— Richard Stanway (@R1CH_TL) October 4, 2016
All Wi-Fi routers / access points broadcast something called a "beacon" every 100 milliseconds. This contains all the data that a device needs in order to be able to join the network. From what frequencies and encryption modes are used to what kind of power saving and 802.11n parameters are supported - it's all there. When you open up the list of wireless networks on your phone for example, the data from all the beacon frames is what's used to fill in the list of networks. Beacon frames are broadcast constantly, even if there are no clients connected.
Unfortunately the 802.11 specification requires that beacon frames are broadcast at the slowest speed and oldest standard that the access point supports, in order to allow compatibility with old devices. This means that beacons are often sent out using 802.11b at 1 mbps, a standard which dates back to 1999 and is very slow compared to today's 450 mbps 802.11n or 1.3gbps+ 802.11ac networks. As radio spectrum is a shared medium, no other nearby devices on the same frequency can send while a beacon is being transmitted.
Wireless devices are not supposed to begin sending until the spectrum is clear, which results in another problem when access points are in different locations (as is typically the case). A client in between two distant access points will see beacons from both of them, but the access points themselves are not aware of each other, thus creating interference when they transmit at the same time.
This means that as the number of access points on a channel increases, available radio bandwidth is reduced and interference increases. The 2.4 GHz spectrum is most affected by this problem due to the low number of channels and high number of devices. The same concept still applies to 5 GHz but because the number of channels are higher and the lowest speed is 6 mbps, the problem is greatly reduced.
OK, so bandwidth is reduced. But how bad is it really? First, keep in mind that wireless rates are quoted as a signaling rate. The usable data rate is often much lower. For example, 802.11g 54 mbps has a real-world usable data rate of about 20 mbps, depending on environmental conditions. So let's be generous and say 802.11b at 1mbps has a 0.5mbps usable data rate.
A beacon frame varies in size depending on the amount of data it has to carry. They are typically anywhere from 150 - 300 bytes which sent at 10 times a second results in an average data rate of 2250 bytes/sec, or 0.018 mbps. This means that a single access point consumes 3.6% of the channel data rate in beacon frames. Once you start reaching usage rates of 25%+ on a channel, there is a lot of interference from all the uncoordinated transmissions and throughput drops through the floor.
On average it would take just eight access points to make the frequency pretty horrible in terms of latency and throughput for everyone on the same channel.
Your ISP Isn't Helping
The problem is exasperated by a number of ISPs shipping combo modem/router/access point devices which include an "open" access point for other customers to use. For example, here in the Netherlands it's very common to see "Ziggo" or "KPN FON" access points everywhere, since these are broadcast from any Ziggo / KPN customer who uses the router supplied by the ISP. These networks are rarely used and contribute a lot to the "beacon pollution" problem. With two SSIDs per AP, it takes only four access points on the same channel before you have a messy spectrum.
What You Can Do To Help
Thankfully this is not a problem without solutions. There are a good number of ways to help combat beacon pollution and make 2.4 GHz a little cleaner:
Set your router to only support 802.11n / 802.11ac. This way you won't be broadcasting old and slow 802.11b beacons, but faster beacons which use less air time. 802.11n was standardized in 2009, so most devices in use these days should be compatible.
Set your minimum supported data rates to 12 or 24 mbps. Not all routers support this, but by forcing a faster minimum rate, the beacons are also transmitted at that rate. A 12 mbps minimum data rate takes beacons down to 0.36% of the air time.
Use short preamble. If you aren't able to disable 802.11b, this reduces the overhead of 802.11b frames by halving the amount of preamble data that clients use to "lock on" to the signal.
Increase your beacon interval. I haven't personally tested this one, but I don't see why you need to broadcast your network name and settings every 100ms. Setting your beacon interval higher will reduce how often beacons are sent, resulting in less air time wasted by them. 1000 ms (1 second) seems like it would be appropriate. This could cause compatibility issues with some devices though, so test after changing it!
Disable your ISP's SSID. If you have a modem/router from your ISP, you may be able to opt out of them using it to broadcast their own network. This varies from ISP to ISP, but is usually provided as an option. You can always supply your own router and ask your ISP to set theirs into "bridge mode" which will result in it disabling all non-modem related functionality.
Is your network on a channel with lots of other access points? Switching channels will both ease congestion on the affected channel and improve things for you.
Have the latest tech and a dual band router? Set it to 5 GHz only and disable the 2.4 GHz radio if all your wireless devices can support it.
- Spread the word! Most people probably have no idea that their router is still set to be compatible with 802.11b. Help your friends and neighbours to adjust their settings to get a cleaner spectrum for everyone.