NetQueue takes advantage of the ability of some network adapters to deliver network traffic to the system in multiple receive queues that can be processed separately, allowing processing to be scaled to multiple CPUs, improving receive-side networking performance.

To use Rx queues effectively in the physical NICs by managing the vNIC and the VMkernel adapter filters, the NetQueue balancer in ESXi uses load balancing algorithms.

You can activate or deactivate different types of Rx queues. For more information, see the esxcli network nic queue loadbalancer set command in the ESXCLI Reference documentation.

Activate NetQueue on a Host

NetQueue is enabled by default. To use NetQueue after it has been deactivated, you must activate it again.

Prerequisites

Procedure

  1. In the ESXi Shell on the host, use the following command:
    esxcli system settings kernel set --setting="netNetqueueEnabled" --value="TRUE"
  2. To configure the NIC driver to use NetQueue, use the esxcli module parameters set command .
    To configure the driver with eight receive queues.on a dual-port Emulex NIC, run this ESXCLI command.
    esxcli system module parameters set -m tg3 -p force_netq=8,8 
  3. Reboot the host.

Deactivate NetQueue on a Host

NetQueue is activated by default.

Prerequisites

Familiarize yourself with the information on configuring NIC drivers in Getting Started with ESXCLI.

Procedure

  1. In the ESXCLI, use the following command depending on the host version:
    esxcli system settings kernel set --setting="netNetqueueEnabled" --value="FALSE"
  2. To deactivate NetQueue on the NIC driver, use the esxcli module parameters set command.
    To configure the driver with one receive queues, run the ESXCLI commands on a dual-port Emulex NIC.
    esxcli system module parameters set -m tg3 -p force_netq=1,1
  3. Reboot the host.