Configure VPX instances to use single root I/O virtualization (SR-IOV) network interfaces

After you have installed and configured a NetScaler VPX instance on XenServer, you can configure the virtual appliance to use SR-IOV network interfaces.

Limitations

XenServer does not support the following features on SRIOV interfaces:

  • L2 mode switching
  • Clustering
  • Admin partitioning [Shared VLAN mode]
  • High Availability [Active - Active mode]
  • Jumbo frames
  • IPv6 protocol in Cluster environment

Prerequisites

On the XenServer host, ensure that you:

  • Add the Intel 82599 Network Interface Card (NIC) to the host.
  • Blacklist the ixgbevf driver by adding the following entry to the /etc/modprobe.d/blacklist.conf file:
    blacklist ixgbevf
  • Enable SR-IOV Virtual Functions (VFs) by adding the following entry to the /etc/modprobe.d/ixgbe file:
    options ixgbe max_vfs=<number_of_VFs> where <number_VFs> is the number of SR-IOV VFs that you want to create.
  • Verify that SR-IOV is enabled in BIOS.

IXGBE driver version 3.22.3 is recommended.

Assign SR-IOV VFs to the VPX instance by using the XenServer host

To assign SR-IOV network interfaces to NetScaler VPX instance, follow these steps:

1. On the XenServer host, use the following command to assign the SR-IOV VFs to the NetScaler VPX instance:

     xe host-call-plugin plugin=iovirt host-uuid=<Xen host UUID> fn=assign_free_vf args:uuid=<Netscalar VM UUID>  args:ethdev=<interface name> args:mac=<mac addr>

     Where:

<Xen host UUID> is the UUID of the XenServer host.

<Netscalar VM UUID> is the UUID of the NetScaler VPX instance.

<interface name> is the interface for the SR-IOV VFs.

<mac addr > is the mac address of the SR-IOV VF.

Note

Specify the mac address that you want use in the args:mac= parameter, if not specified, the iovirt script randomly generates and assigns a mac address. Also, if you want use the SR-IOV VFs in Link Aggregation mode, make sure that you specify the mac address as 00:00:00:00:00:00.

2. Boot the NetScaler VPX instance.

Unassign SR-IOV VFs to the VPX instance by using the XenServer host

If you have assigned an incorrect SR-IOV VFs or if you want modify the a assigned SR-IOV VFs, you need to unassign and reassign the SR-IOV VFs to the NetScaler VPX instance.

To unassign SR-IOV network interface assigned to a NetScaler VPX instance, follow these steps:

1. On the XenServer host, use the following command to assign the SR-IOV VFs to the NetScaler VPX instance and reboot the NetScaler VPX instance:

     xe host-call-plugin plugin=iovirt host-uuid=<Xen_host_UUID> fn=unassign_all args:uuid=<Netscalar_VM_UUID>

     Where:

• <Xen_host_UUID> - The UUID of the XenServer host.

<Netscalar_VM_UUID> - The UUID of the NetScaler VPX instance

2. Boot the NetScaler VPX instance.

Configuring VLAN on the SR-IOV Interface

Important

While you are assigning the SR-IOV VFs to the NetScaler VPX instance, make sure that you specify MAC address 00:00:00:00:00:00 for the VFs.

To use the SR-IOV virtual functions in link aggregation mode, you need to disable spoof checking for virtual functions that you have created. On the XenServer host, use the following command to disable spoof checking:

ip link set <interface_name> vf <VF_id> spoofchk off

Where:

  • <interface_name> is the interface name.
  • <VF_id> is the virtual function ID.

After disabling spoof checking for all the Virtual Function that you have created, restart the NetScaler VPX instance and configure link aggregation. For instructions, see Configure link aggregation.

Configure VLAN on the SR-IOV interface

You can configure VLAN on the SR-IOV Virtual Functions, for instructions, see Configuring a VLAN.

Important

Make sure that the XenServer host does not contain VLAN settings for the VF interface.