Showing results for 
Search instead for 
Did you mean: 
Create Post

ISR 4331 Memory Utilization FIX

see the attached fix for ISR 4331 router memory issues.

Orion Platform 2016.1.5300, IVIM 2.1.2, NetPath 1.0, QoE 2.1.0, UDT 3.2.4, NCM 7.5, NPM 12.0, NTA 4.2.0 © 1999-2016 SolarWinds Worldwide, LLC. All Rights Reserved.


Thank you for documenting the fix. Much appreciated!!

Thanks for this

We've actually found that you can fix this just by opening the PollerChecker tool and changing the Memory poller from CiscoGen4 to CiscoGen3.

Good article. Thanks

I think it's more complicated than that. What do you exactly want to monitor ?

A good reference :

Cisco 4000 series ISR routing platforms run Cisco IOS XE that has a distributed software architecture running a Linux kernel where Cisco IOS runs as one of many Linux processes. Cisco IOS runs as a daemon, which hereafter is referred to as Cisco IOSd (IOS-Deamon). This allows other Linux process to share responsibility for the operation of the router. A distinction must be made between system memory (which is managed by the base operating system, that is the Linux kernel), and memory that is allocated for, and managed by the Cisco IOSd process. In addition, the data plane (referred to as QFP for Quantum Flow Processor) runs outside the context of Cisco IOSd. Depending on the platform, the QFP may run on a separate hardware device with its own dedicated memory (Cisco 4400 ISR), or it may run as separate Linux processes on the main CPU (Cisco 4300 Series ISR) sharing memory with the rest of the system.

Cisco IOSd runs as its own process, it allocates memory from the system and has its own memory manager for features running within Cisco IOSd.

CLI Command : show memory

Post from lordnykkon is what we need = changing to Ciscogen3

Linux Kernel :

CLI command : show platform software status control-processor brief

Memory used for the above command includes filesystem cache, much of which can be used when the system memory requires it. In general, used memory does not reflect how much more memory can be used by the new feature configuration; a more accurate estimate from this command comes from using the committed memory

Memory Usage for Data Plane

CLI command : show platform hardware qfp active infrastructure exmem statistics

Usage will depend on your devices (see above) You would need another poller to track this.

What i understand is that to properly monitor the memory of these routers, Solarwinds should be able to collapse all these information, it looks like a big challenge.

I have fixed all my 4300 series router memory issue by importing Memory for Cisco ISR 4000 poller under THWACK COMMUNITY POLLERS tab and enable it on all 4300 routers. So if you running NPM 12.0, it is under Settings > All Settings > Manage Pollers, then you can see the Whwack Community Pollers tab. Click on it and browse to memory (10); After you click on it, it will list all 10 memory items, check the Cisco ISR 4000 and click on Import Device Poller, you also have a option to Test Device Poller. After Imported successfully, you then can assign the pollor to the devices. Have a good luck!

I have fixed all my 4300 series router memory issue by importing Memory for Cisco ISR 4000 poller under THWACK COMMUNITY POLLERS tab and enable it on all 4300 routers. Worked for me.

I've tried this solution and get this error message


Does anyone have any idea what the problem is?

Exceptional work, corrected my issue as well.  Thank you.  I was unable to change the memory poller to Gen3 using the pollerchecking tool.  However, that solution only pertained to 4300 series ISRs.  We had 4400 series and this poller corrected it.

Orion Platform 2017.1.2 SP2, VNQM 4.4.0, NCM 7.6, CloudMonitoring 1.0.0, NPM 12.1, DPAIM 11.0.0, QoE 2.3, NTA 4.2.2, VIM 7.1.0, SAM 6.4.0, NetPath 1.1.0

This worked for me as well.  Thank you for the detailed steps and the poller configuration file. 

Thank you this was very helpful. Just in case someone would like more information on how this is done I added it below.
Used this guide to find PollChecker tool and figure how to use it

Steps to change memory to CiscoGen3 using PollCheck tool

  1. Selected all my 4331's
  2. Selected Polling method: SNMP and Test on: Node
  3. Expanded Memory drop down and selected: "N.Memory.SNMP.CiscoGen3"
  4. Click Detect Pollers
  5. highlight poller for device and click Add/Replace Pollers
  6. repeat for each 4331
  7. go back into NPM and do a poll now and correct value will be updated

Thanks for detailed information, It work for me for ISR 4331 as well as ISR 4351 ..

Hi Datrigga,

"Expanded Memory drop down " where's this? In node details? And where's this -

  1. Click Detect Pollers?

I am running NPM v12 and would appreciate the steer! Thanks

This worked for me!

Version history
Revision #:
1 of 1
Last update:
‎09-19-2016 09:00 AM
Updated by: