Making sense of RSSI
Back to the future with this Airheads Online article from July 2007.
This week we're going to discuss a topic of great interest for any radio-based infrastructure, namely RSSI or Received Signal Strength Indication. RSSI is a much used and abused term in the 802.11 world and yet it holds the keys to the kingdom if used properly.
First, let's review some commonly used terms:
RSSI (Received Signal Strength Indication) is a general term used by any radio-based technology. However IEEE 802.11 wireless devices are somewhat different in that they have direct knowledge of RSSI for any other device. The 802.11 standard defines signal strength as the RSSI making them functionally equivalent.
Signal to noise ratio (SNR) is another general term that is used in a slightly different manner by WLANs. For Wi-Fi networks, SNR is the strength of the signal at the receiver antenna to relative to the background, non-802.11 RF signals on the same channel.
Signal quality is often used interchangeably with SNR, but it is ill-defined by the 802.11 standard. A better way to think of signal quality is as how well a received signal matches a theoretical ideal signal.
Confusingly enough, RSSI is not measured in specific units. Instead each wireless device vendor uses an arbitrary set of numerical units. It is incorrect therefore to attempt to match a given RSSI value with, say, a power unit such as mW. Each vendor's RSSI measurement typically consists of a range in which 0 (zero) indicates no signal and 1 is the minimum possible signal strength that device can detect. After that the values are wholly vendor-dependent. For example, the Atheros Wi-Fi chipset is one of the most popular on the market today and is used in virtually all wireless Access Points (APs). An Atheros-based device measures RSSI based on values between 0 (no signal) and 60 (maximum signal). However other chipsets might use different values such as 0 to 100 or even 0 to 255.
The arbitrariness of RSSI units and how they are computed and reported is an important fact to keep in mind when attempting to interpret RSSI in a WLAN environment. This also implies RSSI is not necessarily accurate or precise and the RSSI reading from one vendor's device might be very different from that reported by another.
Note that RSSI is very different from decibel-milliWatt (dBm) measurements. dBm indicates the precise transmit power of a device. While it is always possible to know the power a wireless device uses to transmit a signal, this does not help us when we try to determine how well another device can hear that signal. Why? Because the strength of a radio signal is an inverse ratio over distance minus any signal loss due to interference (walls, etc.). This imprecision with regards to a received signal is a large part of the reason why RSSI is reported as an arbitrary unit rather than more precisely.
How RSSI is used in Wireless LANs
RSSI is of great interest to any Wi-Fi device since much of the perceived performance of a wireless network is based upon inferences made via the use of RSSI. These usages include:
Performance - the higher the RSSI, the higher the transmit rate (up to the maximum). Conversely, the lower the RSSI the lower the transmission speed until we reach 0, or no connectivity.
Client communication - Client devices can monitor the amount of signal detected on a channel. When this number drops below a certain threshold, the device may assume it is clear to send (CTS) and transmit data. This is a variation on the more traditional RTS/CTS method of CSMA/CA. The RTS/CTS packet size threshold is 0-2347 octets. Often RTS frames are turned off by default by setting the threshold >=2347. If the packet size the node wants to transmit is larger than the threshold, the RTS/CTS handshake gets triggered. If the packet size is equal to or less than threshold the data frame gets sent immediately.
Client association - Which AP a client connects to is almost entirely determined by the wireless client driver. Thus, when a client is given a choice between multiple APs offering the same ESSID, it will almost always choose the AP with the highest RSSI.
Roaming - Just like the initial association sequence, client devices also use RSSI to determine when to disassociate from an AP and associate with another.
Real Time Location Tracking (RTLS) - Since every WLAN device has an understanding of RSSI for every other device it can hear, RSSI is useful as part of location triangulation.
As you read through this list you can see why many WLAN engineers and administrators often attempt to plan their WLANs around a minimum signal strength for the client devices. So much depends on the client's ability to receive a given signal. This is a valid approach and one that is generally used as part of any site survey.
How Much RSSI is Enough?
So now we come to the all-important question: how much RSSI do you need exactly? This is a tough question and very client-dependent to boot. We said RSSI is not exact, but how precise can we be? Fortunately, you probably already have everything you need to figure this out: a typical client (or the top 3-5 device types you expect to use on the WLAN), a measuring tape, and a Wi-Fi scanning tool such as NetStumbler or iStumbler. If your client comes with it's own utility I'd recommend using that instead; as a general rule, a vendor's own tools tend to be more reliable than generic software.