SystemPrivileged EXEC

show memory statistics

Displays memory utilization statistics on the router, including total memory, used memory, free memory, and memory pool details, used to diagnose memory leaks or capacity issues.

Syntax·Privileged EXEC
show memory statistics

When to Use This Command

  • Check memory usage after adding new features or configurations to ensure sufficient free memory.
  • Troubleshoot router performance issues or crashes caused by memory exhaustion.
  • Monitor memory trends over time to plan for hardware upgrades.
  • Verify memory allocation after a software upgrade or patch.

Command Examples

Basic memory statistics output

show memory statistics
                Head    Total(b)     Used(b)     Free(b)   Lowest(b)  Largest(b)
Processor   8A3C0E0   512000000   345000000   167000000   150000000   160000000
      I/O    A000000    16000000     8000000     8000000     7500000     7800000

Processor memory pool: 512000000 bytes total, 345000000 bytes used, 167000000 bytes free
I/O memory pool: 16000000 bytes total, 8000000 bytes used, 8000000 bytes free

Head: Memory block header address (internal). Total(b): Total memory in bytes. Used(b): Memory currently in use. Free(b): Available memory. Lowest(b): Lowest free memory since boot (indicates peak usage). Largest(b): Largest contiguous free block. Processor pool is main memory; I/O pool is for packet buffers. Low free or fragmented memory may cause issues.

Memory statistics with high utilization

show memory statistics
                Head    Total(b)     Used(b)     Free(b)   Lowest(b)  Largest(b)
Processor   8A3C0E0   512000000   480000000    32000000    10000000    15000000
      I/O    A000000    16000000    15000000     1000000      500000      800000

Used memory is high (93.75% for processor), free memory is low, and lowest free memory is very low, indicating a potential memory leak or insufficient memory. I/O pool also has low free memory, which could affect packet processing.

Understanding the Output

The 'show memory statistics' command displays two memory pools: Processor and I/O. The Processor pool is the main memory used for routing tables, processes, and configurations. The I/O pool is used for packet buffers. Each row shows: Head (internal pointer), Total (total bytes in pool), Used (bytes currently allocated), Free (available bytes), Lowest (lowest free memory since last boot — a low value indicates a past memory crunch), and Largest (largest contiguous free block — a small value indicates fragmentation). In a healthy router, free memory should be a reasonable percentage of total (e.g., >20%), and lowest free should not be near zero. If free memory is consistently low or lowest free is very low, the router may experience performance degradation or crashes. Watch for memory leaks when free memory decreases over time without configuration changes.

CCNA Exam Tips

1.

CCNA exam may ask which command to check memory utilization; 'show memory statistics' is the correct answer.

2.

Know that the I/O pool is used for packet buffers; low I/O memory can cause packet drops.

3.

The 'Lowest' field indicates the worst-case free memory since boot; a very low value suggests a past memory shortage.

4.

Be able to identify memory exhaustion symptoms: high used memory, low free memory, and small largest block.

Common Mistakes

Confusing 'show memory statistics' with 'show processes memory' — the latter shows per-process memory usage.

Ignoring the I/O pool; low I/O memory can cause interface drops even if processor memory is fine.

Assuming free memory is the only indicator; a large 'Largest' block but low 'Lowest' indicates past issues.

Practice for the CCNA 200-301

Test your knowledge with hundreds of CCNA practice questions covering all exam domains.

Practice CCNA Questions