l SR66启动时占用的内存主要包括支撑模块占用的内存、转发占用的内存及特性占用的内存。
(1)支撑模块占用的内存
该部分内存用以支撑系统基本的任务调度、作业管理、人机交互和系统配置等功能,类似于PC机操作系统要求的最低内存。
(2)路由器转发占用的内存
转发功能是路由器的核心功能,系统需要预先分配内存保障高性能、大容量的转发。转发启动时分配了200M内存,初始使用了50M,后续转发所使用的任何内存都从初始分配的200M内存中申请,而不会占用公共的动态内存资源。正因为转发模块独享该块内存,整个转发过程在启动之后再不会受剩余内存容量的影响。但从整个系统角度来看,这200M是已经占用了的。
(3)配置或打开特性时分配的内存
很多特性在运行时也需要一定容量的内存保证,这部分内存通常也会在系统启动、特性配置或打开时分配。特性在申请内存时和转发类似,也是申请足够多内存保证特性使用过程中不需要频繁的动态申请内存。
举例来说,路由特性初始化时申请20M内存,可以支持10万条路由。系统运行过程中,新生成路由首先会从已分配的20M的空闲路由表中分配,只有超过10万条才会动态申请。
系统启动之后占用多少内存,和配置特性的多少有关系。已分配的内存可以支撑所有配置特性的基本运行,很少甚至不需要动态申请内存。
因此,虽然启动之后内存使用率超过50%,但是不会因为剩余内存太少,影响业务的正常运行。
l 运行时分配内存,主要是在业务转发过程中产生,如路由变化、用户上线、会话建立等。当需要分配的内存超过启动时特性预先申请的内存时,才会动态分配内存。例如,运行时建立了30万会话,每个会话表项占用400字节,会话模块启动时支持5万会话,需要动态申请内存为400*(300000-50000)= 100M。
l 综上所述,启动之后内存使用率超过50%,是正常现象,是由路由器设备的特性决定的。
系统最大占用的内存是和产品规格紧密相关的,产品在确定规格时就已经保证所有特性最大申请的内存之和不会超过系统总的内存。只要路由器运行时的负荷不超过对应内存容量下产品规格的要求,就不会导致系统内存使用超过内存的总容量。一般来说,只有系统运行时内存使用率超过90%时,才需要考虑扩容内存。
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作