blog header
Subscribe via: (Email / RSS)

VCDX Enterprise Admin Notes: Enable advanced networking capabilities

by Harley Stagner on January 8, 2010

This VCDX note will cover Objective 2.1.K.3 “Enable Advanced Networking Capabilities”. Let’s dive right in.

TCP Segmentation Offload (TSO)

TSO is enabled in the VMKernel by default. If you want to disable TSO on a vmkernel interface when you create it you must use the -t or --tso option. This disables TSO on the vmkernel interface that is being created.

  • e.g. esxcfg-vmknic -a -i -n -t vmkernel1

TSO must be enabled on Virtual Machines. The supported VM’s are
-Windows Server 2003 Enterprise and Datacenter with SP2 (32 and 64 bit)
-Red Hat Enterprise Linux 4 (64-bit)
-Red Hat Enterprise Linux 5 (32 and 64 bit)
-SUSE Linux Enterprise Server 10 (32 and 64 bit)

The virtual machine must use the Enhanced VMXNet driver for the virtual NIC. It is possible to use TSO in a Windows Server 2003 Standard Edition VM, for example, using this workaround posted by Scott Lowe. The bottom line is that the driver must be Enhanced VMXNet for TSO to work inside the guest VM.

Jumbo Frames

To enable Jumbo Frames for an entire vSwitch, the MTU must be adjusted to the max of 9000. You can also set the MTU when you create the switch. Adjusting the MTU is done with the -m or –mtu=MTU option.

  • e.g. esxcfg-vswitch vSwitch3 -m 9000 or esxcfg-vswitch -a vSwitch 3 -m 9000

To enable Jumbo Frames on a single vmkernel interface, it must be done at creation time.

  • e.g. esxcfg-vmknic -i -n -m 9000


NetQueue allows each virtual NIC to have a network queue instead of one common queue. This can increase the throughput capability of 10Gbe adapters. As of ESX 3.5 U2 the following network adapters support NetQueue:

  • Intel 82598 10 Gigabit Ethernet Controller
  • Neterion

NetQueue is disabled by default. To enable NetQueue at the command line, add the following line to the /etc/vmware/esx.conf file:

  • /vmkernel/netNetqueueEnabled = "TRUE"

You can also enable NetQueue using the VI Client by highlighting the host and going to the Configuration tab. From there, navigate to “Advanced Settings -> VMKernel” Select the checkbox for VMkernel.Boot.netNetqueueEnabled . Then you must enable NetQueue on the adapter module using the following commands:

  • esxcfg-module -s "intr_type=2 rx_ring_num=8" s2io (for the Neterion)
  • esxcfg-module -s "InterruptType=2,2 VMDQ=16,16" ixgbe (for the Intel)

You must reboot the ESX server for the changes to take effect. To disable NetQueue, remove the line you added to the esx.conf or deselect the VMkernel.Boot.netNetqueueEnabled checkbox. You must also disable NetQueue on the adapter modules by using the following commands:

  • esxcfg-module -s "" s2io (for the Neterion)
  • esxcfg-module -s "" ixgbe (for the Intel)

{ 2 trackbacks }

VCDX Enterprise Admin Notes: Objective 2.1- Skills and Abilities
January 9, 2010 at 8:03 am
VCDX Enterprise Admin Notes: Objective 2.3
January 9, 2010 at 1:39 pm

{ 0 comments… add one now }

Leave a Comment