1、确认哪个任务占用CPU时间长。
<S5800/5820X>sys
[S5800/5820X]_hide
[S5800/5820X-hidecmd] dis cpu task slot slot_id
对上述命令显示的常见任务进程,说明如下。
(1)VIDL任务占用率高是正常的,是空任务。
(2)FMCK:实时检测是哪种光模块插入。
(3)Brx1: CPU收包的。
(4)L2X1:从硬件地址表里边读取地址的。
当发现某个任务进程CPU占用率较高时,需按如下步骤收集信息,以L2X1占用CPU资源较高为例加以说明。
(1)通过“dis task”命令查看该任务进程的ID号。
[S5800/5820X-hidecmd] dis task slot slot_id
name Tid Vid TSize Mod priority Status Total/Max/Last(Millsecs)
======================================================================
VFS 83e3c000 1 40 N 100 queblock 0/ 0/ 0
CBU 8035ac00 2 40 N 100 queblock 0/ 0/ 0
VIDL 8035aa00 3 40 P 1 preemptready 1370113987/ 11/ 2
TICK 8035a800 4 40 P 250 preemptready 8559528/ 2/ 0
STMR 8035a600 5 40 N 150 eventblock 949276/ 8/ 0
L2X1 80363e00 17 16 N 55 sleep 49687940/ 3/ 0
(2)通过如下命令将该任务相关堆栈收集下来,以便反馈研发分析。
[S5800-hidecmd]dis task 17 slot slot_id
2、如果交换机上使能了STP,需查看当前系统是否收到了tc报文。
<S5800/5820X>dis stp tc slot slot_id (隔一段时间收集一次,多收集几次)
3、查看何种报文上送CPU。
<S5800/5820X>sys
[S5800/5820X]en_diag
[S5800/5820X-diagnose] debug rxtx -c 100 -s 100 pkt slot_id
上面命令参数说明如下:
-c <num>:显示报文的个数,缺省10个;
-s <length>:显示报文的长度,缺省64字节。
4、查看哪个端口上送CPU报文较多。
<S5800/5820X>sys
[S5800/5820X]en_diag
[S5800/5820X-diagnose] debug rxtx show slot_id 0
[S5800/5820X-diagnose] debug rxtx show slot_id 1
说明:其中P01_rx----P52_rx 中的端口信息是芯片端口号,可以通过debug port map 1查看芯片端口对应的面板端口号。
[S5800/5820X-diagnose]debug port mapping slot_id
[Interface] [Unit] [Port] [Name] [Combo?] [Active?] [IfIndex] [MID] [Link]
=============================================================
GE1/0/1 0 3 ge2 no no 0x900000 4 down
GE1/0/2 0 2 ge1 no no 0x900001 4 up
GE1/0/3 0 5 ge4 no no 0x900002 4 down
GE1/0/4 0 4 ge3 no no 0x900003 4 down
.........................
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作