Network Management

Wireless polling causes high CPU consumption on the polled device

This article addresses an issue that causes high CPU consumption on a polled wireless device.

First published date

4/12/2019 8:13 PM

Last published date

4/18/2023 7:36 AM

Overview

When you poll a wireless device, the device CPU displays high consumption in the SolarWinds Platform Web Console. 

Product section

Network Performance Monitor

Cause

When NPM sends an SNMP bulk request for the wireless information, the targeted device uses a high CPU percentage to deliver the information. This issue occurs because it does not handle SNMP requests correctly. 

    Resolution

    Decrease the size of the bulk requests globally or for individual nodes (2023.2 and later).

    Decrease the size of bulk requests globally

    1. Back up the SolarWinds Orion database using SQL Server Management Studio.
    2. On the Orion server, open the Database Manager.
    3. Click Add Orion Server.
    4. Expand the SQL server.
    5. Right-click the Orion database and select New Query.
    6. Enter the following query, and then click Execute Query.

      The following query defines a maximum size of 10 on the bulk request. You can change this value to any value between 1 and 50.

      INSERT INTO [Settings]
      ([SettingID],[Name],[Description],[Units],[Minimum],[Maximum],[CurrentValue],[DefaultValue])
      VALUES('SWNetPerfMon-Settings-SNMP MaxReps','SNMP Retries',N'Maximum size of SNMP Bulk request.','count',1,50,10,5)
    7. Restart the Orion Services. See How to Start, Stop, or Restart Orion Services with the Orion Service Manager in Orion Platform.

    Decrease the size of bulk per node

    This workflow requires SolarWinds Platform 2023.2 or later.
    1. Back up the SolarWinds Orion database using SQL Server Management Studio.
    2. On the Orion server, open the Database Manager.
    3. Click Add Orion Server.
    4. Expand the SQL server.
    5. Right-click the Orion database and select New Query.
    6. Enter the following query:
      declare @NodeID int = <node_id_goes_here>
      delete from NodeSettings where SettingName = 'WLP_Settings_SnmpThrottle' or SettingName = 'WLP_Settings_SnmpMaxReps' and NodeID = @NodeID
      insert into NodeSettings values(@NodeID, 'WLP_Settings_SnmpThrottle', '<custom_value_goes_here>')
      insert into NodeSettings values(@NodeID, 'WLP_Settings_SnmpMaxReps', '<custom_value_goes_here>')
    7. Change <node_id_goes_here> to NodeID you want to apply settings.
    8. Change <custom_value_goes_here> to set values for SNMP-Throttling and SNMP-Max-Replies. Note: default values for SNMP-Throttling: "0" ; SNMP-Max-Replies: "5".
    9. Restart the Orion Services or unmanage the node, wait for 1min, and then manage the node again.

    Note: The throttle is an interval between retrieving the next batches of SNMP table lines, so applying the SNMP-Throttling could increase overall wireless polling time for the node and it could lead to the SNMP-timeouts or job-timeouts.
    You can configure the SNMP-timeout time in the web console by clicking Settings > All Settings > Orion Polling Settings > NETWORK (section) > SNMP TIMEOUT
    To configure the Wireless-job-timeout, go to Advanced Settings (paste /Orion/Admin/AdvancedConfiguration/Global.aspx to the web console URL and search for WirelessPollingJobTimeout.