修改网卡缓存,解决Linux 网卡丢包严重问题
Posted zhangyunfei-blog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了修改网卡缓存,解决Linux 网卡丢包严重问题相关的知识,希望对你有一定的参考价值。
修改网卡缓存,解决Linux 网卡丢包严重问题
Linux 网卡丢包严重
生产中有一台linux设备并发比较大,droped包比较多,尤其是在跑游戏数据包的时候,存在严重的丢包现象,怀疑网卡性能不足,在更换设备前想能不有通过软件方法解决,通过网上一些资料显示,出现这种现象,也有可能是网卡buffer size 太小的原因,遂尝试更改buffer 大小解决,下面的设备运行了64天,丢包超过20多亿
找了一些国外的文章,可以通过ethtool来修改网卡的buffer size ,首先要网卡支持,我的服务器是是INTEL 的1000M网卡,我们看看ethtool说明
-g –show-ringQueries the specified ethernet device for rx/tx ring parameter information.
-G –set-ringChanges the rx/tx ring parameters of the specified ethernet device.查看当前网卡的buffer size情况
ethtool -g eth0
Ring parameters for eth0:
Pre-set maximums:
RX: 4096RX Mini: 0
RX Jumbo: 0
TX: 4096
Current hardware settings:
RX: 256
RX Mini: 0
RX Jumbo: 0
TX: 256由于我的是rx包会有droped的情况我们用
ethtool -G eth0 rx 2048
同样对于eth1也是如此ethtool -G eth1 rx 2048
再看看修改过后的
ethtool -g eth0
Ring parameters for eth0:
Pre-set maximums:
RX: 4096
RX Mini: 0
RX Jumbo: 0
TX: 4096
Current hardware settings:
RX: 2048
RX Mini: 0
RX Jumbo: 0
TX: 2048几个小时后,已经没有丢包增加的情况了
以上是关于修改网卡缓存,解决Linux 网卡丢包严重问题的主要内容,如果未能解决你的问题,请参考以下文章