ROM is read-only memory available on a router's processor board. The initial bootstrap software that runs on a Cisco router is usually stored in ROM. ROM also maintains instructions for Power-on Self Test (POST) diagnostics. For ROM Software upgrades, the pluggable chips on the motherboard should be replaced.
Flash memory is an Electronically Erasable and Re-Programmable memory chip. The Flash memory contains the full Operating System Image (IOS, Internetwork Operating System). This allows you to upgrade the OS without removing chips. Flash memory retains content when router is powered down or restarted.
RAM is very fast memory that loses its information when the router is shutdown or restarted. On a router, RAM is used to hold running Cisco IOS Operating System, IOS system tables and buffers RAM is also used to store routing tables, keep ARP cache, Performs packet buffering (shared RAM). RAM Provides temporary memory for the router configuration file of the router while the router is powered on.
RAM Stores running Cisco IOS Operating System, Active program and operating system instructions, the Running Configuration File, ARP (Address Resolution Protocol) cache, routing tables and buffered IP Packets.
NVRAM (Non-volatile Random Access Memory)
NVRAM is used to store the Startup Configuration File. This is the configuration file that IOS reads when the router boots up. It is extremely fast memory and retains its content when the router is restarted.