ROS软路由论坛 ROSABC.com 网络方案网络工程交流

 找回密码
 会员注册

QQ登录

只需一步,快速开始

路由器的CPU利用率超高的分析和应对

2014-2-5 11:22| 发布者: admin| 查看: 524| 评论: 0

摘要: 在局域网或者公网中,作为连接各个网段的核心部件,路由器和交换机的应用是不可替代的。无线宽带路由器本身跟电脑一样,也拥有一个中央处理器,也就是俗称的CPU,而CPU利用率出现超高或者过高的问题,是一定需要处理 ...

在局域网或者公网中,作为连接各个网段的核心部件,路由器和交换机的应用是不可替代的。无线宽带路由器本身跟电脑一样,也拥有一个中央处理器,也就是俗称的CPU,而CPU利用率出现超高或者过高的问题,是一定需要处理与应对的,方能保证网络的正常运行。

下面分步骤详细分析和讲解针对路由器CPU利用率超高这个问题的应对策略,并附上全部操作命令:

第一步,show process cpu 如显示IP input process is using a lot of CPU resources,检查以下情况:

一、Fast switching

在大流量的外出接口上是否被disabled.可以用 show interfaces switching 命令察看接口流量.然后在接口上重新 Re-enable fast switching .记住 fast switching是配置在output 接口。

二、Fast switching on the same interface是否被disabled. 如一个接口配有多个网段(secondary addresses )并且在这些网段间流量很大时 路由器工作在process-switches方式 .这种情况下要在接口上enable ip route-cache same-interface。
 
三、不能被fast switched的包有:switching cache没有entry的包、目的地是路由器的包、需要协议转换的包、做了policy routing的包、X.25 encapsulation的包、Multilink PPP、压缩和加密的包目的地是router的包。

举例:1.路由更新信息(取决于路由协议)过快的更新值显示网络不稳定并增加了CPU utilization. 可以用show ip route检查路由表。
 
2.其它人登录运行命令导致大量log输出。
 
3.Spoof 攻击.用show ip traffic 命令确认,可发现大量到本地的包.

第二步,用http://www.luyouqiwang.com/13414 show interfaces 和show interfaces switching命令识别大量包进出的端口;一旦你确认进入端口后,打开 ip accounting on the outgoing interface看其特征.如果是攻击,源地址会不断变化但是目的地址不变.可以用access list暂时解决此类问题 (最好在接近攻击源的设备上配置), 最终解决办法是停止攻击源。

一.需policy routing的包.在 Cisco IOS version 11.3以前, policy-routed packets不能被 fast switched. IOS version 11.3 以后允许 policy-routed packets to be fast switched.使用接口命令ip route-cache policy。

二.通过X.25封装的包,因为有 flow control on the second Open System Interconnection (OSI) layer.7.Compressed traffic.如没有Compression Service Adapter (CSA) in the router, compressed packets must be process-switched.8.Encrypted traffic. 如没有 Encryption Service Adapter (ESA) in the router, encrypted packets must be process-switched.

三.大量的User Datagram Protocol (UDP) 流量. 可以用解决 spoof attack的步骤解决.

四.大量组播流穿越路由器。可以enable fast switching of multicast packets using the ip mroute-cache interface configuration command (fast switching of multicast packets is off by default).

五.大量广播包。 Check the number of broadcast packets in the show interfaces command output.

六.路由器被 over-used 不能处理amount of traffic, 可以用 load among other routers 或者 考虑另购买high-end router.

七.路由器配置了IP NAT (Network Address Translation)并且有很多 DNS (Domain Name System) 包穿越 router. UDP or TCP packets with source and/or destination port 53 (DNS) are always punted to process level by NAT.

无论是什么原因导致high CPU utilization in the IP Input process, 都可以用 debugging IP packets察看.因为 CPU utilization已经较高, debugging产生的许多信息只能通过 logging buffered而不能 Logging to a console。 debugging过程不要超过 3-5秒。如果发现可疑的源可以断掉其设备的连接或者用ACL过滤到目的地的包。

从上面的步骤,可以知道路由器CPU利用率超高并非无法解决的问题,多用和善用命令行和熟悉了解路由协议,对实际处理故障帮助很大。

不良信息举报Q:2000617
新用户7天后可回帖!

软路由

不良信息举报Q:2000617|Archiver|ROS软路由论坛 ROSABC.com 网络方案网络工程交流

GMT+8, 2025-12-31 18:35 , Processed in 0.030954 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部