一到晚上一台linux的服务器ksoftirqd/0 cpu居然100%

仙剑
一到晚上一台linux的服务器ksoftirqd/0 cpu居然100%

故障现象:
我一台服务器在路由器和交换机之间做桥连接,但一到晚上就出现ksoftirqd/0 和ksoftirqd/1的CPU100%,服务器安装的是suse10.1,内核是2.6.16.21-0.25-smp,双千兆网卡,至强5420的CPU(4内核2.5GHz),系统启用了irqbalance。
故障原因分析:
在网上找了很多原因,我进行了简单分类如下:
1、这两个进程是用来调度堆聚包的,不加载ip_conntrack模块时候CPU能降下来。--这个我没有测试过;
2、有个文章说网络风暴或包循环转发会造成这种问题,引文受机器cpu和网卡物理速度的限制一个系统的包转发能力是有极限的,而风暴或循环最容易到达这种极限。文章地址如下:[url]http://marc.info/?l=keepalived-devel&m=114040573028656&w=2[/url]


我的分析说下:
1、我另外一台服务器使用正常,硬件配置和软件设置一样,因此我怀疑有攻击,贴下有问题那台的top输出:

Tasks:  63 total,   1 running,  62 sleeping,   0 stopped,   0 zombie
Cpu0  :  0.0% us,  0.0% sy,  0.0% ni, 0% id,  0.0% wa,  0% hi, 100% si
Cpu1  :  0.0% us,  0.0% sy,  0.0% ni, 0% id,  0.0% wa,  0% hi, 100% si
Cpu2  :  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
Cpu3  :  0.0% us,  0.0% sy,  0.0% ni, 99.7% id,  0.3% wa,  0.0% hi,  0.0% si
Mem:   1022556k total,   175984k used,   846572k free,    41048k buffers
Swap:   795176k total,        0k used,   795176k free,    47360k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                               
32699 root      16   0 41236 2896 2236 S    0  0.3   0:00.08 sshd                                                                  
    1 root      16   0   780  296  252 S    0  0.0   0:02.50 init                                                                  
    2 root      RT   0     0    0    0 S    0  0.0   0:00.06 migration/0                                                            
    3 root      35  19     0    0    0 S    100  0.0   2526:42 ksoftirqd/0                                                            
    4 root      RT   0     0    0    0 S    0  0.0   0:00.04 migration/1                                                            
    5 root      34  19     0    0    0 S    100  0.0   1600:52 ksoftirqd/1     

各位大大碰到过类似问题没?高手回帖阿!!!

ssffzz1
1、看看流量大小。
2、可以考虑抓包。