【互联网后台技术】网卡的ring buffer调整
(2011-10-13 13:57:43)标签:
网卡ringbufferit |
分类: 互联网运维技术 |
服务器的NIC(eth0)上的RX dropped数量一直在增多时可以考虑试着调整ring busffer看看效果
$ ifconfig eth0 Link encap:Ethernet HWaddr 00:22:19:6A:67:F8 |
RX : Receive eXchange(数据接收)
TX : Transmit eXchange(数据发送)
尝试增加rx的(ring buffer)大小。
◆ 现在配置
Ring parameters for eth0: Pre-set maximums: RX: 2040 ← 最大值 RX Mini: 0 RX Jumbo: 8160 TX: 255 Current hardware settings: RX: 255 ← 配置值 RX Mini: 0 RX Jumbo: 0 TX: 255 |
g --show-ring
Queries the specified ethernet device for rx/tx ring parameter
information.
目前我还不知道用什么命令确认当前的ring buffer使用率,有知道的朋友请一定告知。 ring buffer如果已经被占满,则后续的数据帧回会覆盖当前最古老的数据帧。
◆ 修改配置
用以下命令可以修改大小(需要根用户权限)。
$ ethtool -G eth0 rx 512
-G --set-ring
Changes the rx/tx ring parameters of the specified ethernet
device.
注意:命令输入之后会有link down/up发生,数据通信出现瞬断。
◆ 配置之后的结果确认
Ring parameters for eth0: Pre-set maximums: RX: 2040 ← 最大值 RX Mini: 0 RX Jumbo: 8160 TX: 255 Current hardware settings: RX: 512 ← 配置成功 RX Mini: 0 RX Jumbo: 0 TX: 255 |
◆ 确认配置修改之后的效果
确认修改配置之后是不是drop数还在不断增加,注意ring buffer更改后nic的统计数据会被reset 等待一段时间后确认dropped数量没有增加。
$ ifconfig eth0 Link encap:Ethernet HWaddr 00:22:19:6A:67:F8 |
◆ 配置永久化
把配置加入到rc.local。
$ vi /etc/rc.d/rc.local #!/bin/sh ethtool -G eth0 rx 512 |