September 4, 2014
This part of the CVD discusses location fundamentals, including the definition of a location ready point, location currency, location accuracy, and location latency. We also discuss two methods of getting location from a client, i.e., the Probe RSSI method and the FastLocate method.
For mobile devices to be tracked properly, a minimum of three access points (with four or more preferred for better accuracy and precision) should be detecting and reporting the received signal strength (RSSI) of any client station. It is preferred that this detected signal strength level be -75dBm or better.
As of WLAN controller software Release 220.127.116.11, each tracked entity (WLAN client) is detected by up to sixteen registered access points at any time on each WLAN controller. This helps to improve the tracking of devices in motion across many access point coverage cells by assuring that the latest device RSSI is properly reflected.
A point in a WLAN deployment is location ready if the following are all determined to be true:
- At least four access points are deployed on the floor.
- At least one access point is found to be resident in each quadrant surrounding the point-in-question.
- At least one access point residing in each of at least three of the surrounding quadrants is located within 70 feet of the point-in-question.
Figure 13-1 Location Ready Point
The point in red in Figure 13-1 may be thought of as a Wi-Fi client at a given location in a venue. In simplistic terms we can say that the MSE triangulates the location of a client by the RSSI at which client is heard at different APs. At a minimum for triangulation to work, three APs should hear the client at a RSSI level above -75 dBm. The MSE uses this information as well as device fingerprinting to calculate the location of the device.
The Cisco CMX solution gathers location of the client using two methods:
The default way in which MSE computes the location of a client is via triangulation and finger printing of the device. The MSE triangulates the location of the client by the RSSI of the probe packets which are heard by different APs. From 802.11 Join Process—Association in “802.11 Fundamentals,” we know that Wi-Fi clients perform active scanning by sending out probe requests on each channel to look for a SSID to which to connect. The APs respond to the probe request with a probe response detailing characteristics of what they can serve to the client. The client in turn makes a decision to join an AP that provides the best signal strength. We also know that clients periodically perform active scanning in background, which helps them keep an updated list of Access Points with best signal strength to which to connect. When the client can no longer connect to AP, it uses the AP list stored to connect to another AP that gives it the best signal strength.
This back and forth exchange of Probe Requests and Probe Responses is also useful to MSE to calculate the location of the client. Just as the probe response is heard by the AP at a particular RSSI, the probe request of a client is heard at the AP at a particular RSSI. In Figure 13-1, consider the red dot as a Wi-Fi client. The way the MSE would locate the client is:
- Client broadcasts probe requests on all channels.
- APs near the client respond back to the client with probe response. At the same time MSE creates a client entry with the RSSI at which different APs heard the client.
- MSE knows the location of all APs on the maps. Based on the location of APs on the maps and with triangulation, the MSE can approximately triangulate the location of the client based on which APs hear it.
For location of the client to be accurate, it is important that at a minimum at least three APs can hear the client. If the Wi-Fi client is heard by fewer APs, the accuracy of the location calculation can vary significantly because while probe RSSI tells the APs the strength at which they can hear the client, it does not tell the direction of the client where it is coming from.
Figure 13-2 Location Readiness of Client
In Figure 13-2, three APs can hear the client probe requests at different RSSI. However none of the APs can determine the direction in which the client is by itself. The MSE knows the location of APs on the Maps. Using the location of APS on the maps and RSSI at which client has been detected by APs, the MSE can triangulate the approximate location of the client.
However it is wrong to assume that because three or more APs can hear a client that the client “location” can be accurately tracked. A good location ready deployment is a deployment that not only determines the client existence, but also the location of the client with reasonable accuracy (the MSE provides a 90% confidence level that a client will be within 10 meters of its actual location). To get to that level of accuracy, it is very important to understand Access Point placement and how to deploy a WLAN that is location aware and ready. Chapter 14, “Pre-Deployment Radio Frequency Site Survey” goes into more detail about AP placement and RF planning.
While the Probe RSSI method was a good way to calculate the location of the client, it has some limitations with current mobile devices, tablets, and smartphones. Traditionally the Wi-Fi clients transmitted probe requests every 10ms seconds which provided MSE with enough probe requests and RSSI information to calculate the location of the client. Transitions in technology have meant that the latest clients do not nearly probe for Wi-Fi networks as frequently as they used to. iOS-based devices such as iPhones, iPads, etc. probe much less frequently (up to 30 seconds between probes instead of 1-2 seconds previously). Moreover Wi-Fi clients in general do not tend to probe for Wi-Fi networks if they are in motion. Some clients may probe more when not associated versus when they are actively associated with a SSID. Some devices may send probes regularly at intervals, while some devices may do probes in burst. To save on battery and power, devices may not probe frequently. All these issues can have a negative effect on location accuracy. For more details on refresh rates of devices, see Chapter6, “CMX Additional Considerations”
Figure 13-3 illustrates how long it can take for a client’s location to be determined with the Probe RSSI method.
Figure 13-3 Location Latency
- Wi-Fi Client probe (5 seconds to 5 mins depending on client).
- AP radio reports strength of client in dB every 500ms.
- AP groups messages and sends them to WLC via CAPWAP every 2 seconds.
- WLC aggregates and sends RSSI report to MSE via NMSP (min 2 seconds, default at 4 seconds).
- MSE Aggregates data for 5 seconds, calculates location (sends push and batches db write).
As seen above, in the best case scenario using the probe RSSI method, determining the initial location of a client that sends probe requests every 30 can be calculated as:
Initial Client probe + 2.5 seconds (AP reports & sends) + 2 seconds (best case WLC ->MSE transfer) + 5 seconds (MSE aggregation window) = 8.5 seconds.
An update to the client’s location however if the client is sending probes every 30 seconds would be:
Client probe (30seconds) + 8.5 seconds = 38.5 seconds.
Note that not all clients send probe requests at 30 seconds; they may send at lower or higher rates. Also once the client sends the probes, the client waits in the channel for 10ms for the probe response. Again this value of 10ms is not mandated and a client Wi-Fi station may choose to wait longer. However as we are only concerned with RSSI of the probe request, we take that into account to see how quickly we can determine the location.
The problem is clear from above. As the probe requests get slower and devices tend to move, they send out infrequent probe requests. These infrequent probe requests mean no updates to the MSE, so a client location may not be updated on the map because the MSE does not have enough information to update the location of the client. This may result in unsatisfactory experience for a CMX deployment where location is the key to provide services to client and also for location analytics.
To improve location updates, starting with CUWN 8.0 release, MSE can now use FastLocate or Data packet RSSI to get faster updates on RSSI. The FastLocate or Data RSSI method is detailed below.
Note The FastLocate feature is only available with addition of the WSM module.
FastLocate with addition of the WSM module provides a way to mitigate the low frequency of probe requests. Note that FastLocate does not improve location accuracy; rather, FastLocate provides a way of getting faster updates about a client and signal it can be heard. This increase in frequency means that location updates for a client are faster, even if the client is in motion. FastLocate supplements Mobile Probing with All Network Packets for Higher Location Resolution. Some of its advantages include:
- Initiated by network—Available more frequently
- Provides more data points to accurately represent end user activity
- Device agnostic—Consistent across devices and works even when device is sleeping
- Has minimal impact on battery life of mobile device
The idea behind FastLocate is to use the WSM module to gather RSSI information from data packets coming in from client devices and pass it on to the MSE to calculate location. The advantage of using data packet RSSI is that it is more likely that a Wi-Fi client is sending data after it is associated with a network than not. An application that uses CMX infrastructure may also be configured to send data packets proactively to enable better location updates, however it is not necessary.
Figure 13-4 illustrates how FastLocate works.
Figure 13-4 Fast Locate Operation
- All devices (Access Points, WLC, MSE) are synchronized to the same clock source. This is very important requirement for FastLocate.
- Associated device send packets for regular data access only to connected access points (A).
- Other AP (B,C) that “hear” that MAC address talking to associated AP can report on signal strength to WLC/MSE.
- Additional smart techniques are used for quiet devices (for example, an App on the device can send data packets to AP periodically).
- The WLC aggregates the data as before and sends this information back to MSE.
- MSE locates the client as before, but now has more RSSI measurements more frequently, and so MSE is able to better update the location.
Figure 13-5 Probe RSSI versus Fast Locate
Because the WSM module can scan channels independently and on demand, FastLocate enables faster location calculations. FastLocate- location updates occur almost every 6-8 seconds in contrast to a probe RSSI method where the device may send a probe anywhere from 30 to 300 seconds. Clearly there is a huge advantage to using FastLocate in a CMX deployment.
However frequent location updates should not be confused with location accuracy as the location accuracy of a client is different from location updates. Irrespective of whether probe RSSI or FastLocate are used, an understanding of Location Accuracy and Currency is important while designing a location aware CMX deployment.
Location Accuracy and Currency
Location accuracy of a given client is the magnitude of error between the actual position and predicted position. MSE relies on RSSI collected from various access points to calculate location. Factors like AP height, AP density require careful planning. RF reflection and multipath can cause large variations in RSSI even at small distances. Mobile clients’ transmit power can change over a short period of time even when client is stationary at the test spot. Client software drivers that control the transmit power can cause differences between mobile devices and in some cases within different software versions of the same device type. Also different mobile devices can vary in their antenna placements. For these reasons, sometimes location calculated for two mobile devices at the same location can vary. In practice, to analyze the location accuracy of a system, statistical tools are used.
When evaluating location accuracy, multiple test points throughout the venue are chosen. Several tests are run with various types of mobile clients at designated spots to obtain a statistically significant sample set of data. Clients are stationary at the test spot. Location error from these tests are analyzed using statistical tool such as a cumulative distribution function (CDF). 50 and 90 percentile location errors are derived from the CDF and are important metrics to understand before planning location based services.
Accuracy (error in prediction) is distinct from currency (last time of prediction) which is a function of the client device probing frequency and not the Wi-Fi infrastructure directly (following the guidelines herein will maximize currency).
Figure 13-6 Accuracy and Currency
From Figure 13-6 we see that the total location error is the sum of the initial position estimation error (accuracy) [as a result of the uncertainty in exact RF propagation loss between the client and the AP] plus the movement error (currency) as a result of the uncertainty in speed of the user (since the client device reports position periodically).