路由器中存储器的几个基本概念
从功能上看,路由器软件部分有以下几个概念:CFE、固件(Firmware)、NVRAM。
CFE的作用跟PC的BIOS一样是负责引导操作系统的;固件就是路由器的操作系统,就像PC上的Windows一样;NVRAM则用于存储路由器的设置,相当于PC的CMOS。
当路由器插上电后自动进入CFE,CFE进行类似PC的BIOS那样进行自检,自检通过后就引导路由器的固件了(相当于的PC的Windows了),正常情况下最多一分钟路由器的固件就会引导完毕,并且Power灯是常亮的。如果Power灯一闪一闪,那一般是CFE没有引导成功路由器的固件(固件不存在、不正确、已损坏等等)。
那么我们平常刷固件会把CFE也刷了吗?呵呵,不会的,就像你平时装Windows一样,不管你是装XP也好,Vista也好,Win7也好,都不会对你的BIOS进行更新。
那我想刷CFE该用什么方法?一般用户用路由器原厂的CFE即可,如果要玩的深入一些想刷CFE,那么可以通过JTAG或者telnet方式来刷(比较危险,而且受固件限制,有些固件不支持)。
需要说明的是,如果你刷路由器很不幸砖头了,如果没有把CFE搞坏,可以通过TFTP上传固件修复,也可以TTL修复,如果你把CFE弄坏了,那就要重新写FLASH芯片了····
从存储器的角度来看,路由器的内存主要有三类:RAM(Random Access Memory),NVRAM(Non-Volatile Random Access Memory)及EEPROM(Electronic Erasable Programmable Random Access Memory,又称为Flash)。
Flash:闪存(Flash)是可读写的存储器,存储路由器的操作系统(IOS:Internet Operating system)。
NVRAM:非易失性RAM(Nonvolatile RAM)是可读可写的存储器,在系统重新启动或关机之后仍能保存数据。由于NVRAM仅用于保存用户对路由器的配置,即启动配置文件(Startup-Config),故其容量较小,通常在路由器上只配置32KB~128KB大小的NVRAM。同时,NVRAM的速度较快,成本也比较高。
RAM:RAM也是可读可写的存储器,但它存储的内容在系统重启或关机后将被清除。和计算机中的RAM一样,Cisco路由器中的RAM也是运行期间暂时存放操作系统和数据的存储器,让路由器能迅速访问这些信息。RAM的存取速度优于前面所提到的3种内存的存取速度。运行期间,RAM中包含路由表项目、ARP缓冲项目、日志项目和队列中排队等待发送的分组。路由器在加电后,配置表也被从NVRAM中调入RAM中,称为运行配置文件(Running-config)。此外,RAM中的内容还包括正在执行的代码、IOS操作系统程序和一些临时数据信息。
路由器的类型不同,IOS代码的读取方式也不同。如Cisco 2500系列路由器只在需要时才从Flash中读入部分IOS;而Cisco 4000系列路由器整个IOS必须先全部装入RAM才能运行。因此,前者称为Flash运行设备(Run from Flash),后者称为RAM运行设备(Run from RAM)。
本文固定链接: https://blog.xieyc.com/certain-basic-conceptions-about-the-storage-in-router/ | 小谢的小站
老师,我用的DDwrt,备份配置之后,升级固件,还原配置,出现问题。按道理说,清空NVRAM不就可以吗?
2015-03-21 06:53可是多次清空,多次降级再清空,都一样,怎么解决呢,老师
@小新 ?
。。。。。
2015-04-07 22:45。。。我不是什么老师
2015-05-26 23:22不过你的这个问题,会不会是保存的备份文件的设置本身有问题呢 🙄 @小新
@xieyc 现在清空nvram之后,自己配置路由器,还有之前的设置存在
2015-05-28 23:21