Redhat 7.1 - increase NIC ring buffer

13,190

Solution 1

Increasing Ring Buffers Beyond Driver Default Limits

You are trying to set RX to 8192, but the driver default limits are 4096 as per your output.

To increase the limits imposed by the driver, you will need to first see what driver you are using ethtool -i eth1 and use modinfo vmxnet3 in your case, or the driver documentation to get the options available for that driver.

You would then set the options as desired and as supported by the driver in a custom file /etc/modprobe.d/drivername.conf

You could either unload and reinstall the driver manually, or reboot for the settings to take effect.

Disclaimer: If you choose a setting that the driver does not properly support, you will lose network connectivity and will have to restore the configuration from a console or out-of-band console device such as iLo or iDrac or other remote management interface. I am providing this disclaimer for anyone doing this on bare metal. In this example, they are using VMWare, so they could use the vSphere console to regain access and restore settings.

Solution 2

Your maximum value is 4096, as per the ethtool output.

Please try that value.

The maximum value varies depending on your hardware. For instance:

[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
Share:
13,190
yael
Author by

yael

Updated on September 18, 2022

Comments

  • yael
    yael almost 2 years

    My target is to increase the ring buffer ( I have Linux red-hat 7.1 ) , but I get the following:

    ethtool -G eth1 rx 8192
    Cannot set device ring parameters: Invalid argument
    

    so how to enable this value? , or maybe this is the MAX value?

    the current status:

    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
    

    Remark - I want to increase the ring buffer because errors - pkts rx OOB - indicate that the network card is out of buffer

    # 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
    
  • yael
    yael over 8 years
    hi Aaron , first thank you for the excellent answer , I update my question with the details about the driver name and the only file that exist under /etc/modprob.d is the blacklist.conf file , so my question is how to update the driver from this point? , ( not know well to use the modprobe command ) and what we can learn from the file - /etc/modprobe.d/blacklist.conf ? ( remark I have Linux VM machine )
  • Aaron
    Aaron over 8 years
    Ah, vmware. modinfo vmxnet3 to get the supported options. For sure you would want to read up on the current documentation on vmware.com knowledgebase regarding their vmxnet3 network driver. You can ignore blacklist.conf. That just contains hardware that Redhat know they can't support.
  • yael
    yael over 8 years
    I updated again my question with the output of the command --> modinfo vmxnet3
  • yael
    yael over 8 years
    I little get lost with all the info from modinfo .... , not sure how to update the driver in order to support higher value from 4096 (RX)
  • Aaron
    Aaron over 8 years
    Based on your output, there are no confiigurable options. This does not surprise me. You will likely need to make changes in the hypervisor itself. I strongly suggest reading up on vmware docs, or opening a case with them and describing the goals, issues, etc. They will be more than happy to assist.
  • yael
    yael over 8 years
    Ok , I will try to open case to VMware , but what you suggest to focus on regarding the the case that I will open ? , for example wrong driver version? or firmware upgrade , install VMware tools update etc? ( by the way all VM machine are exists in HP blade machine )
  • Aaron
    Aaron over 8 years
    Best to just tell them what problems you are ultimately trying to solve and let them give you suggestions. If you just ask for ways to increase the ring buffer, they might tell you that isn't supported. I would give them the bigger picture you are trying to solve.
  • yael
    yael over 8 years
    hi ewwhite , as you see from my discussion with Aaron , I have VM machine ( vsphere version 5.5.0 )
  • yael
    yael over 8 years
    Ok , thank you for all , just for your info , this happens only on Linux version 7.x , other machines with 6.x or less not have this problem ,
  • ewwhite
    ewwhite over 8 years
    You shouldn't need to have to do this. Can you please provide more context on your environment?
  • yael
    yael over 8 years
    not understand do you mean that you not agree with Aaron conclusion?
  • yael
    yael over 8 years
    please tell me what of kind of details you need?, please see my question with deep detail about my Linux machine