CMX FastLocate Deployment Guide MSE Release 8.0

CMX FastLocate Overview

Current WiFi Location technology rely purely on mobile devices sending RSSI/Location information, based on pure probe request messaging, to the Access Points (AP). The information is sent on most channels and received by neighbor APs on different channels, which is good for location estimation.

Device probing frequency is reducing; updates vary from 10 seconds to 5 minutes depending on client, OS, driver, battery, current, and client activity. This results in inadequate data points to represent real-world movement.

With FastLocate, we add the capability to get RSSI/Location information using data packets received by the AP for higher location refresh rates. Using data packet, Location Based Services (LBS) updates are initiated by the network and are available more frequently. This provides more data points to accurately represent end user activity. While it is tempting to think of capturing RSSI from data packets as an incremental improvement over capturing RSSI from probe frames, it is actually a significant step forward. When WiFi mobile devices connect to the AP, neighboring APs are unable to hear the data packets because they are on different channel. This is bad for location estimation. FastLocate technology uses Cisco’s modular APs, 3600 and 3700, with Wireless Security Module (WSM). WSM in the associated AP and the neighboring APs scan channels at the same time to get multiple RSSI readings from a data packet transmission and thus locate the mobile device. This can occur without taxing the data serving radios and no performance hit to the data service on the serving radios in 2.4-GHz and 5-GHz band.

Relying on data packets makes the location more consistent across devices. This also works with iOS8 implementations, where a device may randomize their MAC address in probe frames.

Figure 1. The Real impact: More Granular LBS data for business critical information


How does it work?

The key characteristics of FastLocate are as follows:

  • Get location from all the packets coming from (associated/unassociated) client.

  • Try to get the associated clients to send packets regularly, so that you can estimate their location frequently and periodically.

  • The WSM modules repeatedly scan different channels by cycling the list of RRM channels to receive the data based RSSI of the client device. The dwell time per channel is 250 msec. The scan cycle time is 250 ms × number of RRM channels on WLC (max. 24). The total time taken to scan is 6 seconds.

  • After testing, it is observed that the location refresh rate is between 6 and 15 seconds.

  • Location refresh rate is client dependent, and hence it may be missed by the WSM module during its scan cycle.

Requirements and Supported Deployments

  • Requires all APs to be 3600 / 3700 with Wireless Security Modules (WSM).


    Note

    The Wireless Security Module was previously called the Wireless Security and Spectrum Intelligence module.


  • FastLocate in Release 8.0 is only supported on 20 MHz BW. FastLocate with Channel bonding (40 and 80 MHz) will be supported in WLC release version 8.1.

  • No mixed mode support in FastLocate 8.0 (ALL APs in same zone/floor must be modular with WSM module present).

  • POE+/Enhanced POE switching for WSM modules.

  • WLC 8.0 and WLC 8.1 for 40 and 80 MHz support.

  • MSE 8.0.

  • PI 2.1.1 (PI 2.2 if using AP 3700).

  • Requires valid NTP clock source.

  • Security monitoring can be done simultaneously with FastLocate.


    Note

    MSE treats packet RSSI values the same as probe packet RSSI values.


  • FastLocate is supported in Central switch mode.

  • FlexConnect Local Switched mode is NOT supported in this release.

  • An MSE can support both probe based and FastLocate based RSSI packets.


    Note

    You can have one floor in a building doing only probe based RSSI (APs without WSM) and another floor doing only FastLocate (APs with WSM module); both floors can be synced to the same MSE.


  • Healthcare installations that use tags are not associated to WLC/AP, and will not see location refresh rate improvements from FastLocate. In 8.0 release, this could be data or probe frame RSSI.

  • IOS-XE does not support modules (WSM/802.11ac) with AP 3600/3700, and hence FastLocate is not supported with IOS-XE currently.

MSE 8.0 Scaling

When FastLocate is enabled, each FastLocate client device consumes an equivalent of ~5 x the compute requirement then a Probe based client.

Sample configurations:

  • Maximum number of devices on a standard MSE supporting probe based location only is 25000 devices. The same standard MSE supporting only FastLocate devices tracks only 5000 devices.

  • A venue has a standard MSE with 10K devices, 8K are not associated (probing), and 2K are associated. With FastLocate enabled, the MSE utilization is (8K+(2K*5)=18K devices, well below 25K limit.

  • A venue has a standard MSE with 10K devices, 5K are not associated (probing), and 5K are associated. With FastLocate enabled, the MSE utilization is (5K+ (5K*5)=30K devices, and hence this MSE is oversubscribed. A new standard or high end MSE needs to be added to meet capacity.

Verifying WSM Module Operation

Procedure


Step 1

Insert WSM in AP and attached to POE+ Switch ports.

Step 2

Use the “show power inline” command to verify whether all APs are operational on the switch port utilizing POE + ~20 W per port.

Step 3

From the WLC GUI main menu, choose Wireless > Access Points > Radios > Dual-Band Radios, and verify that the WSM module is operational. The Admin Status is "Enable" and the Operational Status is "UP".

Once the above steps are completed, you can enable the FastLocate feature from the WLC or Prime Infrastructure.


Enabling FastLocate Feature on MSE

To enable the FastLocate feature on MSE:

  1. Enter the provided MSE CLI - CMD shell commands in root mode.

  2. Enable FastLocate from WLC GUI, CLI, or PI.

Enabling FastLocate Using MSE CLI commands

To increase or tune the location accuracy with FastLocate enabled, enable the following commands from MSE console.

Procedure


Step 1

Login to MSE console as a root user.

Step 2

Type the following command to invoke cmdshell.

cmdshell

Step 3

Type the following command for “Do not limit the RSSI numbers”.

cmd>config max-per-node-rssi-entries 16

Step 4

Type the following command for “Use the new aggregation algorithm”.

cmd>config use-new-location-algorithm enable

Step 5

Type the following command for exiting cmdshell.

cmd>exit


Enabling FastLocate Through WLC GUI

Procedure


Step 1

Go to Wireless > Access Points > Global Configuration.

Step 2

Enable the Packet RSSI Location Config Parameters feature:

  1. Enter the valid NTP server IP address.

    This IP address is used by all APs for time synchronization.

  2. Check the Enable Packet RSSI Location check box.

  3. Adjust the Packet Detection RSSI minimum (dBm) if required.

    Adjust this value to filter out weak RSSI readings from location calculation. Consider only strong RSSI value for FastLocate location calculation.

  4. Leave Scan Count Threshold for Idle Client Detection at default value.

  5. Click the button at top right corner of the page to enable the service.


Enabling FastLocate Service Through WLC CLI

To enable the FastLocate Service through WLC CLI:

Procedure


Step 1

Type the following commands at the WLC CLI:

Step 2

To verify that the FastLocate service is enabled via the GUI, type the following command at the WLC CLI:


Enabling FastLocate service Through Prime Infrastructure

Procedure


Step 1

Go to Configure > Controllers > WLC_IP_Address > Location > Location Configuration.

Step 2

Click the Advanced tab.

Step 3

Provide the NTP server information and check the Enable check box.

Step 4

Click Save.

Note 

To enable the FastLocate feature on several WLCs, you can create a Location Controller template and apply it to all the WLCs in your network.


Verifying and Troubleshooting FastLocate Operation

Verifying FastLocate Service Through WLC GUI

To verify that the FastLocate service is utilized, type the following debug command at the WLC CLI:

Debug client <mac-addr>

The client MAC address that you want to debug. This is recommended as console will be flooded if no client MAC filter is set.

Debug dot11 probe error enable/disable

Debug disable-all

This command disables all debugging.


Note

You may need to input the commands several times as the WLC console is pretty busy with data output, when above debugs are enabled.


The output should look as follows:

apfProbeThread: Jun 27 10:38:13.456: b4:b6:76:a0:1f:5e probing client, ver=1, slot=2, wlan=0, snr=0, tx_pwr=0, chan=36, reg_class=0, ts_diff=195ms, seq_num=0, ant_cnt=2, rssi[0]=189, rssi[1]=128 ,subType = 2
  • b4:b6:76:a0:1f:5e—MAC address that is being debugged.

  • Slot=2—Using the WSM module.

  • SubType=2—Utilizing FastLocate RSSI; SubTypye=1—Utilizing Pobe RSSI.

Verifying FastLocate Service Through Prime Infrastructure (PI) and MSE

To verify that LBS is utilizing FastLocate service through Prime Infrastructure (PI) and MSE:

  1. Log into PI and go to the MSE running the Context Aware Service (CAS).

  2. Click the Logs tab.

  3. Under Logging Options, check the following check boxes:

    • General

    • MSE/Location Servers

    • NMSP Protocol

  4. Under Advance Parameters, check the Advanced Debug check box.

  5. Under MAC Address Based Logging Parameters, do the following:

    1. Check the MAC Address Logging check box.

    2. Add the MAC addresses of the devices for which you want to capture the logs (maximum 5).

Once the MAC Address logging is enabled, you will find all the entered MAC address debug files in the MSE, under /opt/mse/logs/locserver.

You can download these files and verify that the client device is utilizing FastLocate for LBS.

Following is a sample output from the file.

IfSlotId = 2 → WSM module being used.

RssiSource = 6 → Data RSSI PKT being used.

Additional Optional Changes to Reduce Total System Latency


Note

These changes should be tested in a POC, non-production environment as it could impact MSE scalability.


From MSE CLI

Procedure


Step 1

Type the following command in the cmdshell:

cmd>config use-new-location-algorithm enable

Step 2

Type the following command for "Reduce aggregation time":

cmd>config nmsp-rssi-aggregation-window-milli-seconds 1000 (default 4000)

Step 3

Type the following command for exiting cmdshell:

cmd>exit


From WLC CLI

Procedure


Step 1

Telnet to the controller.

Step 2

Change the aggregation time using the following command:

(Cisco Controller)>config nmsp notification interval rssi clients 1

Step 3

Save the setting using the following command:

(Cisco Controller)>save config

Step 4

Type the following command to exit:

(Cisco Controller)>logout


From WLC GUI

Procedure


Step 1

Scan fewer channels where possible under:

RRM > Dynamic Channel Assignment (DCA)

Step 2

Reduce the scan count threshold to 0 or 1 from WLC GUI.

Step 3

Click the WIRELESS tab and then click the Global Configuration from the left hand menu.

Step 4

Change Scan Count Threshold for Idle Client Detection to 1.

Step 5

Click the APPLY button to save the settings.


Changing the RSSI Threshold to 0

Procedure


Step 1

Go to Services > Mobility Services > Mobility Services Engines.

The Mobility Services Engines page appears.
Step 2

Click the MSE name in the list to open the required MSE page.

Step 3

In the left pane, navigate to Context Aware Service > Advanced > Location Parameters.

Step 4

In the Movement Detection area, change Individual RSSI change threshold and Aggregate RSSI change threshold to 0.

Step 5

Click Save.


Conclusion

In release 8.0, CMX FastLocate technology uses the MSE, WLAN controllers, and modular Cisco access points (AP 3600 and AP 3700 with Wireless Security Module (WSM)) to build a foundation for collecting more data points for a granular location data set. Enterprises can use Connected Mobile Experiences (CMX) Analytics to translate location data into business metrics displayed on charts. They can offer location based guest access with CMX Connect or meaningfully engage the users by capturing context from the location data.