步骤1、 检查CPU进程信息,查看是否存在特殊进程占用导致CPU利用率增高。
1.使用命令show cpu连续查询设备的CPU利用率,确定由于BPDU报文的接收导致了核心设备CPU较高,以下的操作过程log务必保存。
(注:交换机在不开启STP的情况下,对于接受到的BPDU报文也要送到CPU处理,即接收到过多的BPDU报文丢弃操作也可能对导致CPU升高。)
方法:在设备控制台show cpu
Switch#sho cpu
=======================================
CPU Using Rate
Information
CPU utilization in five seconds: 87%
CPU utilization in one minute : 65%
CPU utilization in five minutes: 16%
NO 5Sec 1Min 5Min Process
0 0% 0% 0% LISR INT
1 0% 0% 0% HISR INT
2 0% 0% 0% ktimer
3 0% 0% 0% atimer
4 0% 0% 0% printk_task
5 0% 0% 0% waitqueue_process
6 0% 0% 0% tasklet_task
7 0% 0% 0% Ttipc_timer
..............................................
34 0% 0% 0% psnp
35 0% 0% 0% mld_snp
36 80% 60% 15% mstp_event
37 0% 0% 0% GVRP_EVENT
38 0% 0% 0% lacp_event
.............................................
检查标准:
1. 检查输出结果中是否存在mstp_event进程在5Sec内CPU利用率高的情况,且在连续3次的收集过程中均发现此进程利用率较高。(某进程CPU利用率达到15%及以上时,通常可定义为较高)。
说明:mstp_event用于处理MSTP相关事件,如收发BPDU,接口事件和状态机处理。虽然没有开启STP,如果该进程较高,也可能是因为接收并丢弃BPDU报文导致的。可以继续通过show
cpu-protect mboard确认。
2.使用show
cpu-protect mboard收集bpdu报文接收和丢弃数量
Switch#show
cpu-protect mboard
Type
Pps
Total Drop
------------------- --------- ---------
---------
tp-guard
0
0
0
arp
0
1394
0
dot1x
0
0
0
rldp
0
0
0
lldp
0
3173
0
cdp
0
0
0
rerp
0
0
0
reup
0
0
0
slow-packet
0
0
0
bpdu
0
206099 101088
isis
0
0
0
检查标准:如果接收到的BPDU报文并且有大量报文丢弃,则可确认交换机接收到大量的BPDU报文并被CPP硬件丢弃,一部分CPU处理的由软件丢弃。
如果show
cpu / show cpu-protect mboard看到的生成树相关的进程的数值都比较少,按照步骤2的要求继续排查。