Monitor Memory Usage on a Router
Purpose
From a management station that has access to the router, you can monitor memory usage of components, applications, and associated elements that have run or are currently running on a router.
From a management station that has access to the router and using a tool, such as Snmpwalk, follow these steps:
Check Memory Utilization on Chassis Components
Purpose
The enterprise-specific chassis MIB provides information about the router and its components. Within the chassis MIB, the jnxMIBs branch contains one main subbranch, jnxBoxAnatomy, which in turn contains a section, jnxOperatingTable. Within jnxOperatingTable, you can use the jnxOperatingBuffer object to monitor memory usage on your router. (See Figure 18.)
Figure 18: Chassis MIB Tree

After each object description is a value in parenthesis, such as (1). This value can be used to enter an OID for the specific object. For example, to gather information on memory utilization, you can type the object description (jnxOperatingBuffer) or the OID (.1.3.6.1.4.1.2636.3.1.13.1.11).
Action
To check memory utilization using the Juniper Networks enterprise chassis MIB, from a management station that has access to the router, and using a tool such as Snmpwalk, enter the following commands:
Sample Output
user-nms % snmpwalk -Os -M /volume/~/mibs -m all tp1 public jnxOperatingBuffer
jnxOperatingBufferjnxOperatingBuffer.1.1.1.0 = Gauge32: 0
jnxOperatingBuffer.1.1.2.0 = Gauge32: 0
jnxOperatingBuffer.1.1.3.0 = Gauge32: 0
jnxOperatingBuffer.2.1.0.0 = Gauge32: 0
jnxOperatingBuffer.4.1.1.0 = Gauge32: 0
jnxOperatingBuffer.4.1.2.0 = Gauge32: 0
jnxOperatingBuffer.4.1.3.0 = Gauge32: 0
jnxOperatingBuffer.4.1.4.0 = Gauge32: 0
jnxOperatingBuffer.6.1.1.0 = Gauge32: 6
jnxOperatingBuffer.6.1.2.0 = Gauge32: 6
jnxOperatingBuffer.7.1.0.0 = Gauge32: 8
jnxOperatingBuffer.7.2.0.0 = Gauge32: 8
jnxOperatingBuffer.8.1.1.0 = Gauge32: 0
jnxOperatingBuffer.8.2.3.0 = Gauge32: 0
jnxOperatingBuffer.8.2.4.0 = Gauge32: 0
jnxOperatingBuffer.9.1.0.0 = Gauge32: 28
jnxOperatingBuffer.9.1.1.0 = Gauge32: 0
user-nms % snmpwalk -Os -M /volume/~/mibs -m all tp1 public jnxOperatingDescr
jnxOperatingDescr.1.1.1.0 = midplane
jnxOperatingDescr.1.1.2.0 = midplane
jnxOperatingDescr.1.1.3.0 = midplane
jnxOperatingDescr.2.1.0.0 = Power Supply A
jnxOperatingDescr.4.1.1.0 = Left Tray front fan
jnxOperatingDescr.4.1.2.0 = Left Tray second fan
jnxOperatingDescr.4.1.3.0 = Left Tray third fan
jnxOperatingDescr.4.1.4.0 = Left Tray fourth fan
jnxOperatingDescr.6.1.1.0 = CFEB Internet Processor IIv1
jnxOperatingDescr.6.1.2.0 = CFEB Internet Processor IIv1
jnxOperatingDescr.7.1.0.0 = FPC @ 0/*/*
jnxOperatingDescr.7.2.0.0 = FPC @ 1/*/*
jnxOperatingDescr.8.1.1.0 = PIC: 4x OC-3 SONET, MM @ 0/0/*
jnxOperatingDescr.8.2.3.0 = PIC: 1x Tunnel @ 1/2/*
jnxOperatingDescr.8.2.4.0 = PIC: 1x G/E, 1000 BASE-SX @ 1/3/*
jnxOperatingDescr.9.1.0.0 = Routing Engine
jnxOperatingDescr.9.1.1.0 = Routing Engine PCMCIA Card
user@R1> show chassis routing-engine
Routing Engine status:
Temperature 28 degrees C / 82 degrees F
DRAM 256 MB
Memory utilization 28 percent
CPU utilization:
User 0 percent
Background 0 percent
Kernel 6 percent
Interrupt 0 percent
Idle 94 percent
Model RE-5.0
Serial ID 1000431687
Start time 2003-11-20 11:42:04 PST
Uptime 63 days, 2 hours, 34 minutes, 4 seconds
Load averages: 1 minute 5 minute 15 minute
0.01 0.02 0.01
Meaning
The sample output shows the percentage of utilization for the FPC and Routing Engine. The first object, jnxOperatingBuffer, shows that the Routing Engine (9.1.0.0) has 28 percent memory utilization, the two CFEB processors are using 6 percent, and the FPCs have 8 percent memory utilization.
The second object, jnxOperatingDescr, provides a human readable description of the separate instances in the jnxOperatingBuffer object. For example, 1.1.0.0 represents the midplane, and 7.1.0.0 represents FPC @ 0/*/*.
The output for the show chassis routing-engine command shows similar information to that displayed in the output of the jnxOperatingBuffer object, with 28 percent memory utilization for the Routing Engine.
Check Memory Utilization per Process
Purpose
The standard System Application MIB (RFC 2287, Definitions of System-Level Managed Objects for Applications), describes a set of managed objects that are restricted to information that can be determined from the system itself. The object sysApplElmtRunMemory provides information about applications and associated elements that have run or are currently running on the host system. (See Figure 19.)
Figure 19: System Application MIB Tree

Action
To check memory utilization per process, from a management station that has access to the router, and using a tool such as Snmpwalk, enter the following command:
Sample Output
use-nms % snmpwalk -Os -M /volume/~/mibs -m all tp1 public sysApplElmtRunMemorysysApplElmtRunMemory.0.0.0 = Gauge32: 0 Kbytes sysApplElmtRunMemory.0.0.2 = Gauge32: 0 Kbytes sysApplElmtRunMemory.0.0.3 = Gauge32: 0 Kbytes sysApplElmtRunMemory.0.0.4 = Gauge32: 0 Kbytes sysApplElmtRunMemory.0.0.5 = Gauge32: 0 Kbytes sysApplElmtRunMemory.0.0.6 = Gauge32: 0 Kbytes sysApplElmtRunMemory.0.0.7 = Gauge32: 0 Kbytes sysApplElmtRunMemory.0.0.8 = Gauge32: 0 Kbytes sysApplElmtRunMemory.0.0.9 = Gauge32: 0 Kbytes sysApplElmtRunMemory.0.0.10 = Gauge32: 0 Kbytes sysApplElmtRunMemory.0.0.11 = Gauge32: 0 Kbytes sysApplElmtRunMemory.0.0.12 = Gauge32: 0 Kbytes sysApplElmtRunMemory.0.0.116 = Gauge32: 526164 Kbytes sysApplElmtRunMemory.0.0.2023 = Gauge32: 416 Kbytes sysApplElmtRunMemory.0.0.2131 = Gauge32: 1100 Kbytes sysApplElmtRunMemory.0.0.2160 = Gauge32: 984 Kbytes sysApplElmtRunMemory.0.0.2161 = Gauge32: 1100 Kbytes sysApplElmtRunMemory.0.0.2174 = Gauge32: 996 Kbytes sysApplElmtRunMemory.0.0.2324 = Gauge32: 0 Kbytes sysApplElmtRunMemory.0.0.16781 = Gauge32: 1072 Kbytes sysApplElmtRunMemory.0.0.18311 = Gauge32: 1284 Kbytes sysApplElmtRunMemory.0.0.26827 = Gauge32: 1368 Kbytes sysApplElmtRunMemory.3.1.1 = Gauge32: 4028 Kbytes sysApplElmtRunMemory.3.2.2163 = Gauge32: 3196 Kbytes sysApplElmtRunMemory.3.3.2185 = Gauge32: 1624 Kbytes sysApplElmtRunMemory.3.4.2194 = Gauge32: 9768 Kbytes sysApplElmtRunMemory.3.7.2168 = Gauge32: 2484 Kbytes sysApplElmtRunMemory.3.9.2169 = Gauge32: 3004 Kbytes sysApplElmtRunMemory.3.12.2172 = Gauge32: 2108 Kbytes sysApplElmtRunMemory.3.13.2173 = Gauge32: 1888 Kbytes sysApplElmtRunMemory.3.14.2164 = Gauge32: 1672 Kbytes sysApplElmtRunMemory.3.15.2175 = Gauge32: 1644 Kbytes sysApplElmtRunMemory.3.16.2165 = Gauge32: 1632 Kbytes sysApplElmtRunMemory.3.17.2176 = Gauge32: 2716 Kbytes sysApplElmtRunMemory.3.19.2177 = Gauge32: 1668 Kbytes sysApplElmtRunMemory.3.20.2178 = Gauge32: 2160 Kbytes sysApplElmtRunMemory.3.21.2179 = Gauge32: 2164 Kbytes sysApplElmtRunMemory.3.23.2188 = Gauge32: 1688 Kbytes sysApplElmtRunMemory.3.25.2186 = Gauge32: 1292 Kbytes sysApplElmtRunMemory.3.26.2180 = Gauge32: 1676 Kbytes sysApplElmtRunMemory.3.27.2181 = Gauge32: 2052 Kbytes sysApplElmtRunMemory.3.30.2187 = Gauge32: 1236 Kbytes sysApplElmtRunMemory.3.31.2184 = Gauge32: 1032 Kbytes sysApplElmtRunMemory.3.34.2171 = Gauge32: 1156 Kbytes sysApplElmtRunMemory.3.35.2047 = Gauge32: 1132 Kbytes sysApplElmtRunMemory.3.36.2189 = Gauge32: 1836 Kbytes sysApplElmtRunMemory.3.37.2191 = Gauge32: 1052 Kbytes sysApplElmtRunMemory.5.5.7495 = Gauge32: 7628 Kbytes sysApplElmtRunMemory.5.6.2167 = Gauge32: 11824 Kbytes sysApplElmtRunMemory.5.6.26829 = Gauge32: 11880 Kbytes sysApplElmtRunMemory.5.8.26828 = Gauge32: 7984 Kbytes sysApplElmtRunMemory.5.28.2182 = Gauge32: 1468 Kbytes sysApplElmtRunMemory.5.29.2183 = Gauge32: 1828 Kbytes user-nms % snmpwalk -Os -M /volume/~/mibs -m all tp1 public sysApplElmtRunName sysApplElmtRunName.0.0.0 = (swapper) sysApplElmtRunName.0.0.2 = (pagedaemon) sysApplElmtRunName.0.0.3 = (vmdaemon) sysApplElmtRunName.0.0.4 = (bufdaemon) sysApplElmtRunName.0.0.5 = (syncer) sysApplElmtRunName.0.0.6 = (netdaemon) sysApplElmtRunName.0.0.7 = (if_pfe) sysApplElmtRunName.0.0.8 = (if_pfe_listen) sysApplElmtRunName.0.0.9 = (cb_poll) sysApplElmtRunName.0.0.10 = (vmuncachedaemon) sysApplElmtRunName.0.0.11 = (scs_housekeeping) sysApplElmtRunName.0.0.12 = (if_pic_listen) sysApplElmtRunName.0.0.116 = mfs sysApplElmtRunName.0.0.2023 = pccardd sysApplElmtRunName.0.0.2131 = cron sysApplElmtRunName.0.0.2160 = /sbin/watchdog sysApplElmtRunName.0.0.2161 = /usr/sbin/tnetd sysApplElmtRunName.0.0.2174 = /usr/sbin/tnp.sntpd sysApplElmtRunName.0.0.2324 = (peer proxy) sysApplElmtRunName.0.0.16781 = /usr/libexec/getty sysApplElmtRunName.0.0.18311 = /usr/sbin/xntpd sysApplElmtRunName.0.0.26827 = telnetd sysApplElmtRunName.3.1.1 = /sbin/preinit sysApplElmtRunName.3.2.2163 = /usr/sbin/chassisd sysApplElmtRunName.3.3.2185 = /usr/sbin/dfwd sysApplElmtRunName.3.4.2194 = /sbin/dcd sysApplElmtRunName.3.7.2168 = /usr/sbin/snmpd sysApplElmtRunName.3.9.2169 = /usr/sbin/mib2d sysApplElmtRunName.3.12.2172 = /usr/sbin/apsd sysApplElmtRunName.3.13.2173 = /usr/sbin/vrrpd sysApplElmtRunName.3.14.2164 = /usr/sbin/alarmd sysApplElmtRunName.3.15.2175 = /usr/sbin/pfed sysApplElmtRunName.3.16.2165 = /usr/sbin/craftd sysApplElmtRunName.3.17.2176 = /usr/sbin/sampled sysApplElmtRunName.3.19.2177 = /usr/sbin/ilmid sysApplElmtRunName.3.20.2178 = /usr/sbin/rmopd sysApplElmtRunName.3.21.2179 = /usr/sbin/cosd sysApplElmtRunName.3.23.2188 = /usr/sbin/fsad sysApplElmtRunName.3.25.2186 = /usr/sbin/irsd sysApplElmtRunName.3.26.2180 = /usr/sbin/nasd sysApplElmtRunName.3.27.2181 = /usr/sbin/fud sysApplElmtRunName.3.30.2187 = /usr/sbin/rtspd sysApplElmtRunName.3.31.2184 = /usr/sbin/smartd sysApplElmtRunName.3.34.2171 = /usr/sbin/inetd sysApplElmtRunName.3.35.2047 = syslogd sysApplElmtRunName.3.36.2189 = /usr/sbin/spd sysApplElmtRunName.3.37.2191 = /usr/sbin/eccd sysApplElmtRunName.5.5.7495 = /usr/sbin/rpd sysApplElmtRunName.5.6.2167 = /usr/sbin/mgd sysApplElmtRunName.5.6.26829 = mgd: (mgd) (user)/dev/ttyp0 sysApplElmtRunName.5.8.26828 = -cli sysApplElmtRunName.5.28.2182 = /usr/sbin/ppmd sysApplElmtRunName.5.29.2183 = /usr/sbin/lmpd
Meaning
The sample output shows the total amount of real system memory, measured in kilobytes, currently allocated to the processes retrieved by the sysApplElmtRunMemory object.
The sysApplElmtRunMemory object shows granular, per-process information about memory usage. For example, the sampled process (3.17.2176) is using 2716 kilobytes of memory.
The sysApplElmtRunName object provides a description of the separate instances displayed in the sysApplElmtRunMemory object. For example, the sampled process is represented by the OID 3.17.2176.
Hide Navigation Pane
Show Navigation Pane
SHA1