Contents

Introduction

Prerequisites

Requirements

Components Used

SNMP OID to Monitor Cisco IOSd Memory Utilization

SNMP OID to Monitor RP/ESP/SIP CPU Utilization

SNMP OID to Monitor RP/ESP/SIP Memory Utilization

Enable CoPP in Order to Protect from SNMP Overpolling

Introduction

This document describes the recommended Object Identifiers (OIDs) to be used in order to monitor the CPU and memory resources on the Cisco ASR 1000 Series modular routers. Unlike the software-based forwarding platforms, the ASR 1000 Series comprises these functional elements in its system:

- ASR 1000 Series Route Processor (RP)

- ASR 1000 Series Embedded Services Processor (ESP)

- ASR 1000 Series SPA Interface Processor (SIP)

As such, it is required to monitor the CPU and memory utilization by each of these processors in a production environment which results in additional OIDs to be polled per managed device.

Prerequisites

Requirements

Cisco recommends that you have knowledge of these topics:

- Simple Network Management Protocol (SNMP)

- Cisco IOS®-XE

Components Used

This document is not restricted to specific software and hardware versions.

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.

SNMP OID to Monitor Cisco IOSd Memory Utilization

On the ASR 1000, you need to use the OIDs designed for 64-bit architecture platforms in order to monitor memory usage:

Processor Pool Free Memory

1.3.6.1.4.1.9.9.221.1.1.1.1.20.7000.1

(MIB-cempMemPoolHCFree)

Processor Pool Largest Memory

1.3.6.1.4.1.9.9.221.1.1.1.1.22.7000.1

(MIB-cempMemPoolHCLargestFree)

Processor Pool Used Memory

1.3.6.1.4.1.9.9.221.1.1.1.1.18.7000.1

(MIB-cempMemPoolHCUsed)

Processor Pool Lowest Memory

1.3.6.1.4.1.9.9.221.1.1.1.1.24.7000.1

(MIB-cempMemPoolHCLowestFree)

Note: If you use the less specific OID in order to poll the Cisco IOSd memory statistics, the system yields two outputs - Cisco IOSd free memory (OID-7000.1) and Linux Shared Memory Punt Interface (LSMPI) memory (OID-7000.2). This might cause the management station to report a low memory alert for the LSMPI pool. The LSMPI memory pool is used in order to transfer packets from the forwarding processor to the route processor. On the ASR 1000 platform, the lsmpi_io pool has little free memory - generally less than 1000 bytes which is normal. Cisco recommends that you disable monitoring of the LSMPI pool by the network management applications in order to avoid false alarms.

SNMP OID to Monitor RP/ESP/SIP CPU Utilization

ASR1K#show platform software status control-processor brief | section Load

Load Average

Slot      Status        1-Min   5-Min      15-Min

RP0      Healthy        0.75    0.47        0.41

ESP0     Healthy        0.00    0.00        0.00

SIP0     Healthy        0.00    0.00        0.00

It corresponds to:

1.3.6.1.4.1.9.9.109.1.1.1.1.24.2 = Gauge32: 75  -- 1 min RP0

1.3.6.1.4.1.9.9.109.1.1.1.1.24.3 = Gauge32: 0   -- 1 min ESP0

1.3.6.1.4.1.9.9.109.1.1.1.1.24.4 = Gauge32: 0   -- 1 min SIP0

1.3.6.1.4.1.9.9.109.1.1.1.1.25.2 = Gauge32: 47  -- 5 min RP0

1.3.6.1.4.1.9.9.109.1.1.1.1.25.3 = Gauge32: 0   -- 5 min ESP0

1.3.6.1.4.1.9.9.109.1.1.1.1.25.4 = Gauge32: 0   -- 5 min SIP0

1.3.6.1.4.1.9.9.109.1.1.1.1.26.2 = Gauge32: 41  -- 15 min RP0

1.3.6.1.4.1.9.9.109.1.1.1.1.26.3 = Gauge32: 0   -- 15 min ESP0

1.3.6.1.4.1.9.9.109.1.1.1.1.26.4 = Gauge32: 0   -- 15 min SIP0

Refer to Monitoring ASR Kernel Load CPU with EEM Script which explains how to use the above OIDs in order to monitor ASR 1000 kernel load CPUs.

Note: The RP2 contains two physical CPUs, but the CPUs are not monitored separately. The CPU utilization is the aggregate result of both the CPUs and therefore the cpmCPUTotalTable object contains only one entry for RP CPU. This might occasionally cause the management stations to report CPU utilization above 100%.

SNMP OID to Monitor RP/ESP/SIP Memory Utilization

These outputs list the OIDs to poll the individual memory statistics of each processor perceived by the show platform software status control-processor brief command.

ASR1K#show platform software status control-processor brief | s Memory

Memory (kB)

Slot   Status    Total         Used(Pct)          Free (Pct)          Committed (Pct)

RP0    Healthy   3874504       2188404 (56%)      1686100 (44%)       2155996 (56%)

ESP0   Healthy    969088        590880 (61%)       378208 (39%)        363840 (38%)

SIP0   Healthy    471832        295292 (63%)       176540 (37%)        288540 (61%)

(cpmCPUMemoryHCUsed)

1.3.6.1.4.1.9.9.109.1.1.1.1.17.2 = Counter64: 590880  -ESP Used memory

1.3.6.1.4.1.9.9.109.1.1.1.1.17.3 = Counter64: 2188404 -RP used memory

1.3.6.1.4.1.9.9.109.1.1.1.1.17.4 = Counter64: 295292  -SIP used memory

(cpmCPUMemoryHCFree)

1.3.6.1.4.1.9.9.109.1.1.1.1.19.2 = Counter64: 378208  -ESP free Memory

1.3.6.1.4.1.9.9.109.1.1.1.1.19.3 = Counter64: 1686100 -RP free Memory

1.3.6.1.4.1.9.9.109.1.1.1.1.19.4 = Counter64: 176540  -SIP free memory

cpmCPUMemoryHCCommitted)

1.3.6.1.4.1.9.9.109.1.1.1.1.29.2 = Counter64: 363840  -ESP Committed Memory

1.3.6.1.4.1.9.9.109.1.1.1.1.29.3 = Counter64: 2155996 -RP Committed Memory

1.3.6.1.4.1.9.9.109.1.1.1.1.29.4 = Counter64: 288540  -SIP committed memory

Note: The previous OIDs yields only a single output for 1RU (rack unit) platforms such as the ASR 1001 and ADR 1002-X. The control CPU on ASR 1001 has three logical functions - RP, FP (Forwarding Processor), and CC (Carrier Card). All the functions that would normally be spread across different boards in an ASR 1002 run on the same CPU in ASR 1001.

Enable CoPP in Order to Protect from SNMP Overpolling

The configuration of Control Plane Policing (CoPP) provides better platform reliability and availability in the event of a Denial of Service (DoS) attack. The CoPP feature treats the control plane as a separate entity with its own interface for ingress and egress traffic. This interface is called the punt/inject interface. The deployment of the CoPP policy needs to be done in a phased approach. The initial phase should police packets at a liberal state in order to allow for analysis in the testing and initial migration/deployment phases. Once deployed, each of the classes associated with the CoPP policy should be checked and rates adjusted. A typical example of how to enable CoPP in order to protect the control plane against overpolling is shown here:

class-map match-all SNMP

match access-group name SNMP

!

!

ip access-list extended SNMP

permit udp any any eq snmp

!

policy-map CONTROL-PLANE-POLICY

description CoPP for snmp

class SNMP

police rate 10 pps burst 10 packets

conform-action transmit

exceed-action drop

!

Activate the policy-map as indicated here:

ASR1K(config)#control-plane

ASR1K(config-cp)#service-policy input CONTROL-PLANE-POLICY

ASR1K(config-cp)#end