我的目标是增加环形缓冲区(我有Linux的红帽7.1),但我得到以下几点:
ethtool -G eth1 rx 8192 Cannot set device ring parameters: Invalid argument
那么如何启用这个值呢? ,或者这可能是最大值?
当前状态:
ethtool -g eth1 Ring parameters for eth1: Pre-set maximums: RX: 4096 RX Mini: 0 RX Jumbo: 0 TX: 4096 Current hardware settings: RX: 256 RX Mini: 0 RX Jumbo: 0 TX: 512
备注 – 我想增加环形缓冲区,因为错误 – pkts rx OOB – 表示网卡超出缓冲区
# ethtool -i eth1 driver: vmxnet3 version: 1.1.30.0-k-NAPI firmware-version: bus-info: 0000:1b:00.0 supports-statistics: yes supports-test: no supports-eeprom-access: no supports-register-dump: yes supports-priv-flags: no more /etc/modprobe.d/blacklist.conf blacklist ipv6 more /etc/sysconfig/network-scripts/ifcfg-eth1 MTU=9000 DEVICE=eth1 HWADDR=70:10:76:9E:02:81 TYPE=Ethernet ONBOOT=yes BOOTPROTO=static NETMASK=255.255.255.0 IPADDR=12.160.0.36 modinfo vmxnet3 filename: /lib/modules/3.10.0- 229.14.1.el7.x86_64/kernel/drivers/net/vmxnet3/vmxnet3.ko version: 1.1.30.0-k license: GPL v2 description: VMware vmxnet3 virtual NIC driver author: VMware, Inc. rhelversion: 7.1 srcversion: EF80BF71B6F577C3370F410 alias: pci:v000015ADd000007B0sv*sd*bc*sc*i* depends: intree: Y vermagic: 3.10.0-229.14.1.el7.x86_64 SMP mod_unload modversions signer: Red Hat Enterprise Linux kernel signing key sig_key: 44:02:00:8F:2B:3F:DA:1F:6C:1C:64:BA:2C:10:BF:0C:FE:EC:AB:B7 sig_hashalgo: sha256
增加环形缓冲区超出驱动程序默认限制
您正试图将RX设置为8192,但驱动程序的默认限制是4096根据您的输出。
为了增加驱动程序的限制,您需要首先查看您使用的是ethtool -i eth1的驱动程序,并使用modinfo vmxnet3或驱动程序文档获取该驱动程序的可用选项。
然后,您可以根据需要设置选项,并在驱动程序的支持下,在自定义文件/etc/modprobe.d/drivername.conf
您可以手动卸载并重新安装驱动程序,也可以重新启动以使设置生效。
免责声明:如果您select驱动程序不能正确支持的设置,则将失去networking连接,并将不得不从控制台或带外控制台设备(如iLo或iDrac或其他远程pipe理界面)恢复configuration。 我正在为裸机上的任何人提供此免责声明。 在这个例子中,他们正在使用VMWare,所以他们可以使用vSphere控制台重新获得访问权限并恢复设置。
根据ethtool输出,您的最大值是4096 。
请尝试一下这个价值。
最大值取决于您的硬件。 例如:
[root@LAS ~]# ethtool -g eth1 Ring parameters for eth1: Pre-set maximums: RX: 2047 RX Mini: 0 RX Jumbo: 0 TX: 511 Current hardware settings: RX: 200 RX Mini: 0 RX Jumbo: 0 TX: 511