ioerr 发表于 2015-03-06 16:53

OpenBSD 的top输出interrupt很高,网速很慢,求解

本帖最后由 ioerr 于 2015-03-16 17:26 编辑



top如图,下面的各个进程,没有占用很多的。

这台机器是用来做网关的,NAT转换,最近发现时常网速很慢,每次top都发现interrupt在20%--30%左右,idle75%上下。
请教这个问题的原因和解决方法,谢谢{:qq33:}

ioerr 发表于 2015-03-06 17:26

回复 1# ioerr
几个命令显示如下,供参考。


   

lsstarboy 发表于 2015-03-06 19:34

fxp0和fxp1中断都很高,如果没被攻击的话,是不是跳满百兆了?按82559的性能,这个中断还是比较正常的。

FreeBSD下的命令是:netstat -idbhI fxp0 1,或者用systat -if,都可以看到实时的流量。

ioerr 发表于 2015-03-09 08:49

本帖最后由 ioerr 于 2015-03-09 08:51 编辑

回复 3# lsstarboy


    谢版主,我去试试{:qq9:}

------------------
网卡信息:

fxp0 at pci2 dev 6 function 0 "Intel 8255x" rev 0x08, i82559: irq 5, address 00:30:48:51:17:6e
inphy0 at fxp0 phy 1: i82555 10/100 PHY, rev. 4

fxp1 at pci2 dev 7 function 0 "Intel 8255x" rev 0x08, i82559: irq 10, address 00:30:48:51:17:70
inphy1 at fxp1 phy 1: i82555 10/100 PHY, rev. 4

ioerr 发表于 2015-03-09 16:25

回复 3# lsstarboy


    能给提供点排查思路么?谢谢。:emn10:

lsstarboy 发表于 2015-03-09 16:56

回复 5# ioerr


    先netstat -idbhI fxp0 1,看一下每秒发送和接收的包,以及发送和接收的字节数,如果包数大于10K,或者字节数大于9M,就是网卡满了,没有多少可以调节的项目了。

这是我的机器上的,不过是千兆的:
# netstat -idbhI em0 1
            input          (em0)         output
   packetserrs idrops      bytes    packetserrs      bytes colls drops
       20K   0   0       7.4M      23K   0      24M   0   0
       20K   0   0       6.8M      23K   0      25M   0   0
       20K   0   0       6.7M      22K   0      23M   0   0
       21K   0   0       8.3M      24K   0      26M   0   0 如果fxp0或(注意这是逻辑或)fxp1的errs和idrops多,一般是有攻击了,攻击源一般就发生在连接该网卡的一边。
如果两个网卡都有errs或idrops,那就是网卡有问题了,可以考虑换一个,特别是errs多的时候。
drops多情况比较多。

还有一种情况就是有了广播风暴,一根网线两头同时进了交换机,这种可以用tcpdump看,会看到大量重复的数据包。

ioerr 发表于 2015-03-10 10:19

回复 6# lsstarboy


    如果包数大于10K,或者字节数大于9M,就是网卡满了
1.   这个9M是不是应该换算成9x8=72Mbps,基本等于100M网卡理论值,所以就是网卡满了。
2.   包数10K怎么定的呢?谢谢。

mrtg监测,网络慢那天的最高流量是70+Mbps。平时没这么高。

lsstarboy 发表于 2015-03-10 15:48

回复 7# ioerr


    那就是你的流量跑满了。百兆的线路持续能跑到72M,已经很不错了,测试的时候能超过90M,正常使用的时候很难达到。一般运营商到60以上就满足了。

10k数据包那是个经验值,一般1k对应1Mbytes/s的流量。

你的网络如果经常慢,那就要限速了,或者限连接数。

ioerr 发表于 2015-03-16 17:24

回复 8# lsstarboy


    抓个网速变化前后的图,有空看看:m01: 。上面一秒10Mbytes,下面是恢复了,流量是下降不少。我没看错吧?:m01:

lsstarboy 发表于 2015-03-16 18:54

两边严重不对称啊,如果长时间这样,就是被攻击了。
你开两个终端,对照着看看呗。

上面的em0显示进入的是10M/s,跑满带宽了,不可能再跑动了。

另外加个-h参数,可以看的更轻松一点。
页: [1] 2
查看完整版本: OpenBSD 的top输出interrupt很高,网速很慢,求解