In this post, we will discuss what exactly happens inside a cisco device when we power on a cisco device.
When you power on the Cisco router or switches, The first thing they try to discover is the device hardware like interface details, CPU details, Memory details, etc.
Once the hardware check will be Ok and ready to go, They will find the IOS image to load it. Once the IOS will be loaded then next the configuration file will be loaded from NVRAM.
The whole process we called a Power-on self-test.
Configuration File Types.
Start-up Configuration which will be present in NVRAM and Start-up Configurations are programs that dictate router what functions have to be done.
Running configuration which will be stored in RAM.
Types of Memory.
Read-only memory (ROM): This memory helps the router to save,
- bootstrap start up programs,
- IOS software.
- POST (Power On Self Test) programs.
Random-access memory (RAM):
This memory stores,
- Routing tables.
- Running configuration files
The RAM memory will lose the contents when the router is powered off or it is reloaded.
The router use to look into RAM at first for IOS files while booting by default.
There are 3 types of memory we have in devices,
2-NVRAM(Non-Volatile Random Access Memory).
3-DRAM(Dynamic Random Access Memory).
Flash memory is erasable and reprogramming ROM. Unlike RAM, ROM doesn’t lose its content when it is reloaded or powered off. which means after being powered off the device, The flash memory can keep the information and retain those files after getting power on.
NVRAM stores the router’s start-up configuration files.NVRAM also doesn’t lose the contents even if the router is powered off or reloaded.
NVRAM and FLASH are slow.
NVRAM is small in size. because it stores the configuration files only.
FLASH is a little large from NVRAM, This is where it stores the CISCO IOS.
- DRAM, When the power is off and the contents are lost.
- DRAM is very fast.
- DRAM size is large.
DRAM memory size is big because when you make the power ON cisco device, It finds the IOS from FLASH memory and copies it from flash and runs from DRAM. When you switch off the device the IOS stores in flash but it runs from DRAM. Once the IOS will be loaded then the device will load the Startup-configuration file from NVRAM and this is also copied from NVRAM to run from DRAM and the name would be running-configuration.
And also all the tables which we have in devices like MAC tables, ARP tables, VLAN tables, and Routing Tables, are the tables and databases displayed from the DRAM.
Router booting sequence.
Router booting sequence:
- The router is powered on.
- Bootstrap program(ROM) runs POST (Power On Self Test).
=> Bootstrap program is present in ROM (Read-only Memory), which performs the POST test and it will check where the IOS files are located. If it finds it, it will load the IOS.
=> By default, IOS images are present in flash memory. (When the IOS images are not found in flash memory, it will look for a TFTP server. Even if it is not available it will check for ROM).
- Now the IOS image will check for the configuration file which is present in NVRAM. As I mentioned earlier, start-up configurations are stored in NVRAM.
- If the Start-up configuration file is present in NVRAM, the router will load and it will become operational.
- After you configure the router, the configurations are stored in RAM. To store it in NVRAM so that it would be available on the next boot, need to copy the running configuration into the startup configuration.
Configuration register which basically tells the router initially how it should boot up, For example, where will you get the IOS and where will you get the Configuration files, etc.,
When a router starts up it needs to know which software to load and which configuration file to use. The way it determines these two things is by looking at its configuration register setting and its startup configuration in nonvolatile RAM (NVRAM).