Creating Virtual NICs in Hyper-V

# Microsoft* Hyper-V* Overview

Microsoft* Hyper-V* makes it possible for one or more operating systems to run simultaneously on the same physical system as virtual machines. This allows you to consolidate several servers onto one system, even if they are running different operating systems. Intel® Network Adapters work with, and within, Microsoft Hyper-V virtual machines with their standard drivers and software.

See http://www.intel.com/technology/advanced_comm/virtualization.htm for more information on using Intel Network Adapters in virtualized environments.

# Using Intel® Network Adapters in a Hyper-V Environment

When a Hyper-V Virtual NIC (VNIC) interface is created in the parent partition, the VNIC takes on the MAC address of the underlying physical NIC. The same is true when a VNIC is created on a team or VLAN. Since the VNIC uses the MAC address of the underlying interface, any operation that changes the MAC address of the interface (for example, setting LAA on the interface, changing the primary adapter on a team, etc.), will cause the VNIC to lose connectivity. In order to prevent this loss of connectivity, Intel® PROSet will not allow you to change settings that change the MAC address.

## The Virtual Machine Switch

The virtual machine switch is part of the network I/O data path. It sits between the physical NIC and the virtual machine NICs and routes packets to the correct MAC address. Enabling Virtual Machine Queue (VMQ) offloading in Intel(R) ProSet will automatically enable VMQ in the virtual machine switch. For driver-only installations, you must manually enable VMQ in the virtual machine switch.

## Using ANS VLANs with Microsoft Hyper-V VLANs

If you create ANS VLANs in the parent partition, and you then create a Hyper-V Virtual NIC interface on an ANS VLAN, then the Virtual NIC interface *must* have the same VLAN ID as the ANS VLAN. Using a different VLAN ID or not setting a VLAN ID on the Virtual NIC interface will result in loss of communication on that interface.

## Using an ANS Team or VLAN as a Virtual NIC

If you want to use a team or VLAN as a virtual NIC you must follow these steps:

| Note: This applies only to virtual NICs created on a team or VLAN. Virtual NICs created on a physical adapter do not require these steps.

1. Use Intel® PROSet to create the team or VLAN.
2. Open the Network Control Panel.
3. Open the team or VLAN.
4. On the General Tab, uncheck all of the protocol bindings and click OK.
5. Create the virtual NIC. (If you check the "Allow management operating system to share the network adapter." box you can do the following step in the parent partition.)
6. Open the Network Control Panel for the Virtual NIC.
7. On the General Tab, check the protocol bindings that you desire.

   | Note: This step is not required for the team. When the Virtual NIC is created, its protocols are correctly bound.

### Command Line for Microsoft Windows Server Core

Microsoft Windows Server Core does not have a GUI interface. If you want to use an ANS Team or VLAN as a Virtual NIC, you must use the prosetcl.exe utility, and may need the nvspbind.exe utility, to set up the configuration. Use the prosetcl.exe utility to create the team or VLAN. See the prosetcl.txt file for installation and usage details. Use the nvspbind.exe utility to unbind the protocols on the team or VLAN. The following is an example of the steps necessary to set up the configuration.

| Note: The nvspbind.exe utility is not needed in Windows Server 2008 R2.

1. Use prosetcl.exe to create a team.
   prosetcl.exe Team_CreateTeam 1,2,3 ALB Team1
2. Use nvspbind to get the team’s GUID
   nvspbind.exe -n
3. Use nvspbind to disable the team’s bindings
   nvspbind.exe -d aaaaaaaa-bbbb-cccc-dddddddddddddddd *
4. Create the virtual nic by running a remote Hyper-V manager on a different machine. Please see Microsoft's documentation for instructions on how to do this.
5. Use nvspbind to get the Virtual NIC’s GUID.
6. Use nvspbind to enable protocol bindings on the Virtual NIC.
   nvspbind.exe -e tttttttt-uuuu-wwww-xxxxxxxxxxxxxxxx ms_netbios
   nvspbind.exe -e tttttttt-uuuu-wwww-xxxxxxxxxxxxxxxx ms_tcpip
   nvspbind.exe -e tttttttt-uuuu-wwww-xxxxxxxxxxxxxxxx ms_server

## Virtual Machine Queue Filter Offloading

Enabling VMQ Filter offloading increases receive and transmit performance, as the adapter hardware is able to perform these tasks faster than the operating system. Offloading also frees up CPU resources. Filtering is based on MAC and/or VLAN filters.

> ### Teaming Considerations

- If VMQ is not enabled for all adapters in a team, VMQ will be disabled for the team.
- If an adapter that does not support VMQ is added to a team, VMQ will be disabled for the team.
- Virtual NICs cannot be created on a team with Receive Load Balancing enabled. Receive Load Balancing is automatically disabled if you create a virtual NIC on a team.
- If a team is bound to a Hyper-V virtual NIC, you cannot change the Primary or Secondary adapter.

`Last modified on 1/15/10 9:27a Revision 14`