Wi-Fi Plugin

The Wi-Fi plugin enables deeper monitoring and insights from the enterprise Wi-Fi network by collecting additional Access Points (APs) and Wi-Fi Stations statistics connected to the Wi-Fi Controller. The Wi-Fi devices and objects are created via the Deferred Data Plugin.

Important: For details on Wi-Fi solution, please refer to Wi-Fi solution.

Configuration

Wi-Fi plugin requires a working SNMP plugin for the Wi-Fi Controller device. Ensure that working SNMP Credentials are populated on the SNMP Plugin, and the Wi-Fi Controller device is successfully discovered on SevOne NMS before the Wi-Fi plugin is enabled.

  1. To access the Device Manager from the navigation bar, click the Devices menu and select Device Manager.
  2. Either add a device with the Wi-Fi plugin or edit an existing device to enable the Wi-Fi plugin.
  3. Click the plugin drop-down. By default, it is set to SNMP. Select Wi-Fi.
  4. Select Enable Wi-Fi Integration check box.
    Note: This enables collection of advanced statistics for Wi-Fi Access Points (APs) and creates Wi-Fi APs as new devices on SevOne.
    wifiPlugin
  5. Select Monitor Wi-Fi Station check box to enable collection of advanced statistics for stations connected on the Wi-Fi network. This will create new WiFi Stations - mfg:<Manufacturer> devices and associate Objects for each Wi-Fi station.
  6. In Wi-Fi plugin poll frequency field, enter the poll frequency in minutes. The default value is 5 minutes. Allows Wi-Fi plugin poll frequency to be set at a slower rate than the SNMP Plugin - Poll Frequency.
  7. In Wi-Fi plugin SNMP timeout field, enter the SNMP timeout in seconds. The default value is 1 second. This is the SNMP timeout for the Wi-Fi plugin for the Wi-Fi controllers.
  8. From Distribute APs to Peers drop-down list, select one or more peers where the associated Wi-Fi devices (APs) and objects should get created. Leaving it empty ensures the APs are spread across all the peers in the cluster.
  9. Click Save As New to save the current changes as a New Device, or click Save to confirm the changes in the Edit Device page.
  10. When the desired changes have been saved, click the Cancel button to return to the Device Manager page.

Important:

Once the device is created, collection of Wi-Fi resources starts on SevOne NMS.

It may take ~15-20 minutes for collection data to appear.

Use-Cases & FAQs

WLC vendor-specific Metadata

Metadata common for both Cisco & Aruba
  • HW Version
  • MAC Address
  • Model
  • Name
  • Serial Number
  • WLC Name
Metadata for Aruba Only
  • License Count
  • Role
Metadata for Cisco Only
  • Make
  • Supported APs
  • SW Version

Edit Default Wi-Fi Station MAC Address to Manufacturer Mapping

The collector has a default MAC Address manufacturer list which allows the MAC Addresses to be mapped to their Manufacturers. It is possible to edit the default configuration and it must be edited at each peer. Peer level configuration allows for tenant level configuration on a multi-tenant cluster.

  1. The MAC Address manufacturer list is stored in /config/collectors/wifi/configuration/oui.csv.sample.
  2. The user can create a new file in /config/collectors/wifi/configuration named oui.csv and store the updated MAC Address manufacturer list there. For the latest CSV file, please refer to IEEE Registration Authority MAC Address Block Large (MA-L).
  3. The oui.csv file expects at least two fields.
    • Assignment - Mac Address
    • Organization Name - name used to create manufacturer device
      Note: All the other fields will be ignored.
  4. If oui.csv file is corrupted or empty, the collector will exit.
    Important: The user must not make any changes to oui.csv.sample file and also, if the oui.csv file is not present in the folder, oui.csv.sample file will be used.

Manual Removal of Wi-Fi Plugin from SevOne Appliance

Perform the following steps to remove the Wi-Fi data.

  1. Login into SevOne NMS.
  2. Disable the Wi-Fi plugin on the respective devices.
  3. Delete the following.
    1. Metadata Namespaces

      Administration > Metadata Schema > Wifi Station, Wifi Access Point, and WLC Device.

    2. Object Types > Filter for Deferred Data > Wifi Aggregation , Wifi Station , Wifi Access Point , Wifi Controller , Selfmon, and Wired Interface .
    3. Devices > Device Manager > remove all AP and station devices. You can filter these devices based on the device group.
      • AP devices: All device group > Wifi > APs
      • Station devices: All device group > Wifi > Stations.
    4. Devices > Device Groups > remove Wifi device group.
    5. Events > Configuration > Policy Browser > remove WiFi Selfmon: Polling duration is more than polling cycle, Unavailable AP devices (Unavailable APs set to zero), and Unavailable AP devices (Time since newest data point) policies.

Reuse Access Points in a network with different hostnames

If an Access Point (AP) hardware is reused in a network with a different hostname, it will result in duplicate APs in SevOne NMS with the same IP address but a different hostname resulting in both access points co–existing with duplicate data.

Example

WiFi AP:tyo-ap1-FL7-S-36021-ad.sevone.com 10.90.103.39
WiFi AP:jap-ap3-FL7-N-37203-ad.sevone.com 10.90.103.39

In this situation, if an access point is decommissioned from a particular site, you must delete the old AP from NMS. When the AP comes alive after being renamed, it will be automatically get rediscovered and added to SevOne. This will avoid duplication of access points in SevOne NMS.

Cleanup Inactive Wi-Fi Stations

Follow the steps below to clean up the Wi-Fi stations which have been inactive. Inactivity is calculated based on the last time the station was connected to the Wi-Fi network. The configuration allows for different retention periods for different SSIDs. The default retention period for Wi-Fi Station objects is 360 hours (= 15 days).

This will only delete the station object data however, aggregated stats will not be impacted. Using the text editor of your choice, edit
/config/collectors/wifi/configuration/disable_config.json
configuration file to cleanup inactive Wi-Fi Stations.
Example: Format
{"SevOne": 168, "SevOne-guest": 48}
where,
  • SevOne and SevOne-guest are SSIDs.
  • 168 and 48 are the retention periods for the respective SSIDs in hours.

The user can change the following variables in /config/collectors/wifi/configuration/advanced_config.env so that the cleanup process can utilize and apply these variables. For additional variables, please see advanced_config.env table below.

ENVIRONMENT VARIABLES DEFAULT VALUES DESCRIPTION
DEL_OBJECTS true The flag must be set to true to be able to delete all unused objects as per the configuration defined in /config/collectors/wifi/configuration/disable_config.json file.

When set to false, it will not delete the objects. However, it will create a list of all the unused objects which can be reviewed in /config/collectors/wifi/configuration/unused_station_objects.json file.

This mechanism allows for regular deletion of objects which is executed between 12:00 am - 1:00 am (SevOne NMS time) daily.

DEL_FILE (optional) none This is an optional variable and is only used for a one-time deletion.

For regular deletions, variable DEL_OBJECTS must be used.

This mechanism is also useful when you want to review the objects to be deleted. Follow the steps below on how DEL_FILE variable can be used.

  1. Set variable DEL_OBJECTS to false.
  2. Go to Wi-Fi container.
    
    sudo podman exec -it nms-collections-wifi-collector bash
    
  3. Run the following script from the Wi-Fi container.
    
    /usr/local/bin/python /opt/WLCCollector/snmp/src/disable_object.py >> /var/log/wifi-wlc/disable_objects.log 2>&1
    
  4. Set variable DEL_FILE to /config/collectors/wifi/configuration/unused_station_objects.json.
  5. Set variable DEL_OBJECTS to true.
  6. Go to Wi-Fi container.
    
    sudo podman exec -it nms-collections-wifi-collector bash
    
  7. Run the following script from the Wi-Fi container.
    
    /usr/local/bin/python /opt/WLCCollector/snmp/src/disable_object.py >> /var/log/wifi-wlc/disable_objects.log 2>&1
    
  8. Remove variable DEL_FILE from /config/collectors/wifi/configuration/advanced_config.env.

Alerting for Wi-Fi Station Availability

To enable alerting on Wi-Fi stations that are unavailable for 10 minutes or more, a special Object Group (Wifi > Wifi Station Monitor) and Alert Policy (Wifi Station Monitor: Some stations are not available) are shipped OOTB.

  1. Either pin or create rules as per the Object Group capability.
  2. Enable the applicable alerting policy as mentioned above.

Additional Configuration Files

Important: Please ensure that the values for the environment variables are not in quotes.

Also, the format for defining these environment variables must be <variable name>=<value>. There must be no spaces.

wifi_global_settings.json

wifi_global_settings.json file can be found in /config/collectors/wifi/configuration directory.

The configuration file should only be modified on the Cluster Leader appliance; from Command Line Interface, SSH to your Cluster Leader appliance as a root user to modify the configuration file. Any changes made will be automatically distributed to all peer nodes within the next 5 minutes.
ENVIRONMENT VARIABLES DEFAULT VALUES DESCRIPTION
AP_ESS_AGG_BL Flag to disable creation of ESS aggregation for a given list of ESSIDs under any AP devices. The flag is ignored if AP_ESS_AGG_BL_ALL flag is true.
AP_ESS_AGG_BL_ALL false The flag if set to true, will not create any ESS aggregation objects under any AP devices.
COLLECT_AUDIT_LOGS true Flag to collect audit logs for Access Points (APs) of specified WLCs. By default, audit logs are collected for APs of all WLCs. Acceptable values for COLLECT_AUDIT_LOGS are:
  • true (default) - If set to true, audit logs (for the selected vendor) are collected for that WLC and stored in SevOne NMS.
  • false - If set to false, no audit logs are collected for that WLC.
COLLECT_STATION_USERNAME true Flag to determine if SevOne NMS / Data Insight must display the username of the station or not.
NO_PREFIX true The flag if set to true, removes the prefix WiFi AP: from the name of AP devices that are created by Wi-Fi solution on SevOne NMS.

NOTE: This feature does not support the upgrade from earlier versions of the collector. Applicable in case of fresh installs only.

WLC_ESS_BL Wi-Fi ESS block list. This allows all, but monitoring of specific ESSIDs. These stations will still be considered for other aggregations.
WLC_ESS_WL Wi-Fi ESS allow list. This allows monitoring for selected ESSIDs only. Other stations will still be considered for other aggregations.
WLC_VERBOSE 2 Apply several times for more verbose logging. Options are:
  • Log Level = 1; -v for WARNING and up
  • Log Level = 2; -vv for INFO
  • Log Level = 3; -vvv for DEBUG
Example: /config/collectors/wifi/configuration/wifi_global_settings.json

{
    "AP_ESS_AGG_BL": "",
    "AP_ESS_AGG_BL_ALL": false,
    "COLLECT_STATION_USERNAME": true,
    "NO_PREFIX": true,
    "WLC_ESS_BL": "",
    "WLC_ESS_WL": "",
    "WLC_VERBOSE": 2,
    "COLLECT_AUDIT_LOGS": true
}

In addition to the updates made in wifi_global_settings.json file, it also requires advanced_config.env, oui.csv.sample, disable_config.json, and phy_types.json files. Please refer to the sections below for details on these files.

advanced_config.env

advanced_config.env file can be found in /config/collectors/wifi/configuration directory.

The configuration file should only be modified on the Cluster Leader appliance; from Command Line Interface, SSH to your Cluster Leader appliance as a root user to modify the configuration file. Any changes made will be automatically distributed to all peer nodes within the next 5 minutes.

CAUTION:

Do not modify advanced_config.env file. If you need to modify this file, you must contact IBM SevOne Support or your Technical Account Manager.

ENVIRONMENT VARIABLES DEFAULT VALUES DESCRIPTION
SEVONE_API_READ_TIMEOUT 60 seconds Read timeout for SevOne REST API connection. The default value is 60 seconds.
AUDIT_LOGS_RETENTION_PERIOD 48 hours Configure the time period during which the audit logs are retained in the environment files.
DEL_AUDIT_LOGS false
  • If set to true, all audit logs within the specified time range are retained and the rest will be deleted.
  • If set to false, all audit logs that are going to be deleted (when the flag is set to true) will be listed in the /config/collectors/wifi/configuration/audit_logs_to_be_deleted.json file. Logs will not actually be deleted.
DEL_OBJECTS false The flag must be set to true to delete all unused objects. If false, it will get all the ununsed objects and store them in /config/collectors/wifi/configuration/unused_station_objects.json and not delete them.
WLC_MAX_OBJ 67 Limits the number of objects to be sent to SevOne NMS within one API call.
MAX_BULK_META_CALLS 500 Limits the number of metadata attributes to be sent to SevOne NMS at a time within one API call.
META_THREADS 5 Number of metadata threads used for sending metadata of devices / objects.
METANS_THREADS 5 Number of metadata namespace threads used to create metadata schema on SevOne NMS.
POLLER_THREADS 10 Number of polling threads.
DESCRIPTION_THREADS 10 Number of description threads used to send the description of the device.
STATION_THREADS 10 Number of station threads used to update station object data within station mfg device.
INSERTION_THREADS 10 Number of threads to write to SevOne NMS.
AP_THREADS 5 Number of Access Point (AP) threads used to fetch access point devices from access point's device group and update the access point metadata.
LASTSEEN_THREADS 5 Number of threads used to fetch the last seen time of the station objects from SevOne NMS; used to disable the object script.
LOADER_THREADS 5 Number of threads used to fetch WLC and station mfg devices from SevOne NMS to load for processing.
MAX_WAIT_TIME 120 seconds Wait time for SevOne NMS Response timeout + WLC Response timeout. This must be less than the poll cycle.

Example: /config/collectors/wifi/configuration/advanced_config.env


SEVONE_API_READ_TIMEOUT=60
# AUDIT_LOGS_RETENTION_PERIOD accepts hours.
# It only accepts whole numbers. Fractional times are not accepted.
AUDIT_LOGS_RETENTION_PERIOD=
DEL_AUDIT_LOGS=
DEL_OBJECTS=True

oui.csv.sample

oui.csv.sample file can be found in /config/collectors/wifi/configuration directory.

The CSV file contains mapping information between the first six characters of MAC addresses for station objects and their corresponding manufacturers. The collector utilizes this data to identify the manufacturers of the station objects. Modifications to this file must be made on each peer.

Registry,Assignment,Organization Name,Organization Address
MA-L,002272,American Micro-Fuel Device Corp.,2181 Buchanan Loop Ferndale WA US 98248 
MA-L,00D0EF,IGT,9295 PROTOTYPE DRIVE RENO NV US 89511 
MA-L,086195,Rockwell Automation,1 Allen-Bradley Dr. Mayfield Heights OH US 44124-6118 
MA-L,F4BD9E,"Cisco Systems, Inc",80 West Tasman Drive San Jose CA US 94568 
MA-L,5885E9,Realme Chongqing MobileTelecommunications Corp Ltd,"No.24 Nichang Boulevard, Huixing Block, Yubei District, Chongqing. Chongqing China CN 401120 "
MA-L,BC2392,BYD Precision Manufacture Company Ltd.,"No.3001, Bao He Road, Baolong Industrial, Longgang Street,Longgang Zone, Shenzhen shenzhen  CN 518116 "
MA-L,405582,Nokia,600 March Road Kanata Ontario CA K2K 2E6 
MA-L,A4E31B,Nokia,600 March Road Kanata Ontario CA K2K 2E6 
MA-L,D89790,Commonwealth Scientific and Industrial Research Organisation,GPO Box 1700 Canberra ACT AU 2601 

...
...
...

MA-L,E48EBB,Rockwell Automation,1 Allen-Bradley Dr. Mayfield Heights OH US 44124-6118 
MA-L,F4AAD0,OHSUNG,"335-4,SANHODAERO,GUMI,GYEONG BUK,KOREA GUMI GYEONG BUK KR 730-030 "
MA-L,24BF74,Hamamatsu Photonics K.K.,"1126-1, Ichino-cho, Higashi-ku Hamamatsu-City Shizuoka-ken JP 435-8558 "
MA-L,641C10,Texas Instruments,12500 TI Blvd Dallas TX US 75243 
MA-L,58569F,"Cisco Systems, Inc",80 West Tasman Drive San Jose CA US 94568 
MA-L,142D41,Silicon Laboratories,400 West Cesar Chavez Street Austin TX US 78701 
MA-L,A82AD6,Arthrex Inc.,1370 Creekside Boulevard Naples FL US 34108 
MA-L,A06636,Intracom SA Telecom Solutions,19.7 klm Marcopoulo Ave PEANIA ATTIKI GR 19002 
MA-L,5843AB,"GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP.,LTD","NO.18 HAIBIN ROAD, DONG GUAN GUANG DONG CN 523860 "
MA-L,141844,Xenon Smart Teknoloji Ltd.,Tatlisu Mh. Akdag Cd. No:3-5 Umraniye Istanbul TR 34774 

disable_config.json

disable_config.json file can be found in /config/collectors/wifi/configuration directory.

This is an input file for the script that disables objects. It is in JSON format, where the key represents the SSID and the value indicates the number of hours since the station was last updated, determining its eligibility for deletion. Modifications to this file must to be made on each peer.

{
  "ssid": 48,
  "unknown": 360
}

phy_types.json

phy_types.json file can be found in /config/collectors/wifi/configuration directory.

This file contains mapping information for the physical radio types of stations. It must be updated on each peer.

{
  "cisco": {
    "1": "dot11a",
    "2": "dot11b",
    "3": "dot11g",
    "4": "unknown",
    "5": "mobile",
    "6": "dot11n24",
    "7": "dot11n5",
    "8": "ethernet",
    "9": "dot3",
    "10": "dot11ac",
    "11": "dot11ax5",
    "12": "dot11ax24",
    "13": "dot11ax6"
  },
  "aruba": {
    "1": "dot11a",
    "2": "dot11b",
    "3": "dot11g",
    "4": "dot11ag",
    "5": "wired"
  }
}

OOTB Alerts

The following alerts are shipped Out-of-the-Box (OOTB).

Access Point

The Wifi Collector handles AP migrations in the following manner.
  • The access point will not be updated if they are not polled from the WLC. Only the values for the Access Points received from the WLC will be updated.
  • A policy has been created named Unavailable AP devices (Time since newest data point) which is not enabled by default. It raises an alert when the Access Point device's availability indicator does not receive any data for the past 600 seconds.

    NMS AP Condition Time Since Newest

Important: Both the unavailable AP Policies get created the first time collector is installed and then they are not updated by the collector, the user needs to manually change these policies if required. Also, these policies are not enabled by default; user must enable them.
Self-Monitoring DeviceWiFi Selfmon: Polling duration is more than polling cycle
  • During the collector installation, a policy WiFi Selfmon: Polling duration is more than polling cycle is created for a WiFi Selfmon device's indicator. By default, it is disabled. If enabled, it creates an alert for the respective object if the newly created indicator, container_run_time, exceeds the base limit of 300 seconds.
  • To generate this alert, please ensure that SELF_MONITORING environment variable in cisco.env | aruba.env files is set to true.

    Wifi Selfmon

WiFi Selfmon: WLC skipped due to error
  • Collector skips WLCs that are timed out when querying MAC addresses. The count of skipped WLCs is displayed as an indicator wlc_skipped under the Wifi Selfmon device.
  • A policy WiFi Selfmon: WLC skipped due to error triggers a Critical alert when the count of skipped WLCs becomes > 0 for more than past 1 minute. It clears an alert when the count becomes 0 for the past 1 minute. By default, the policy remains disabled.

Controller

Wifi Controller: APs skipped due to error
  • Collector skips APs when name or MAC address is not valid. The count of skipped APs is displayed as an indicator ap_skipped under the Wifi Controller device.
  • A policy Wifi Controller: APs skipped due to error triggers a Critical alert when the count of skipped APs becomes > 0 for more than past 1 minute. It clears an alert when the count becomes 0 for the past 1 minute. By default, the policy remains disabled.
Wifi Controller: Stations skipped due to error
  • Collector skips stations only when one of the following conditions occurs.
    • When the Access Points (APs) are skipped for stations.
    • When bss, essid, or ap_slot is invalid for stations.
  • The count of skipped stations is displayed as an indicator station_skipped under the Wifi Controller device.
  • A policy Wifi Controller: Stations skipped due to error triggers a Critical alert when the count of skipped stations becomes > 0 for more than past 1 minute. It clears an alert when the count becomes 0 for the past 1 minute. By default, the policy remains disabled.
Wifi Controller: SelfMon - Metric Collection takes too long to complete
  • A policy Wifi Controller: SelfMon - Metric Collection takes too long to complete triggers a Warning alert when the Average Total time to metric availability exceeds 90% (of the poll duration) for more than 20 minutes. It clears an alert when the Average Total time to metric availability falls below or equals 50% (of the poll duration) for more than 20 minutes. By default, the policy remains disabled.
Stations
  • During the collector installation, Wifi Station Monitor: Some stations are not available, is created for monitoring wifi stations. By default, it is disabled. If enabled, it generates alerts when specific wifi stations (pinned under Wifi Station Monitor object group) disconnect from the wifi network.
  • The value for all indicators (related to the Wifi Station Monitor object group) will be set to 0 (zero) during the first polling cycle after the wifi stations went missing. WLC and AP names will be set to unknown for the disconnected stations.
  • Can pin wifi stations to the Wifi Station Monitor object group.
Important: The value for indicators will not be updated until the wifi station rejoins a WLC.