Tag Archives: intel

Configuring NIC teaming with Intel prosetcl

If you’re configuring Intel NICs in your servers instead of Broadcom, I’ve tested Intels prosetcl-utility too… Seemed unfair that just the Broadcom-running people could create teams from command line 🙂

Intel has a different approach when you install proset, because you get an additional tab on the NIC in device manager. In Server Core there is no device manager with tabs, so you can’t get to the team configuration… Enter prosetCL.exe!

Before you start using prosetcl you’ll need to install the drivers for your NICs and Intel PROSet for Windows, otherwise it won’t work. PROSet has a bunch of unattended switches, but for this exercise we’ll just use the teaming and VLAN commands. To install this we’d run “setup /qn” from the command line.

Once you’ve got it installed it’s time to create your teams! Compared to Broadcom Intel actually supports creating a team from the command line without exporting configurations to files (just a hint…).

If you want to import and export settings you can use the SavResDX.vbs script. It’s stored in the DMIX folder, the path is normally C:Program FilesIntelDMIX. To use the script you’ll need the proset installed too. If you wanna run restore you’ll need the same version of the OS as you exported from.

Export: cscript SavResDX.vbs save c:tempnicsettings.txt
Import: cscript SavResDX.vbs restore c:tempnicsettings.txt

Another nice feature is that Intel supports the creation of teams with NICs from different vendors, as long as at least one NIC is from Intel. (For certain team types, see Intel documentation for full info)

Team creation with prosetcl.exe

List all adapters (you’ll need the index numbers to create the team…)
c:prosetcl.exe Adapter_Enumerate

Create the team
c:prosetcl.exe Team_Create 1,2 Team1 SFT

AdapterList – Comma delimited list of adapter indices (i.e., 1,2,3). To obtain adapter indices, use the Adapter_Enumerate command.
TeamName – Name to apply to the team.
TeamMode – Type of team to create. Valid team modes are: ALB, AFT, SLA, 8023AD, and SFT. Note: SFT teams can only be created with 2 or fewer adapters. (see further down for more info on teams)

List teams (will give you the index of the teams, you’ll need it for vlans and stuff…)
c:prosetcl.exe Team_Enumerate

Add vlan to team
c:prosetcl.exe Team_CreateVlan 1 5

TeamIndex (1 in the example above) – Index of the team. The team indices are obtained by running the Team_Enumerate command.
VlanID (5 in the example above) – ID number of the VLAN. Valid ranges for the VlanID are 1-4094 for a maximum of 64 VLANs. Only one VLAN can be ‘Untagged’ (0) per device.

Note 1: If a VLAN ID is already in use or an untagged VLAN already exists, an
error message is displayed.

Note2: A tagged VLAN must be present before an untagged VLAN can be created.

What’s the different team types?

Adapter Fault Tolerance (AFT)
Allows mixed models and mixed connection speeds as long as there is at least one Intel® PRO server adapter in the team. A ‘failed’ Primary adapter will pass its MAC and Layer 3 address to the failover (secondary) adapter. All adapters in the team should be connected to the same hub or switch with Spanning Tree (STP) set to Off.

Switch Fault Tolerance (SFT)
Uses two adapters connected to two switches to provide a fault tolerant network connection in the event that the first adapter, its cabling or the switch fail. Only two adapters can be assigned to an SFT team. Note Do not put clients on the SFT team link partner switches, because they will not pass traffic to the partner switch at fail.
Spanning Tree (STP) must be running on the network to ensure that loops are eliminated.
STP should be turned off on the incoming ports of the switches directly connected to the adapters in the team, or these ports should be configured for PortFast.
Only 802.3ad DYNAMIC mode allows failover between teams.

Adaptive Load Balancing (ALB)
Offers increased network bandwidth by allowing transmission over 2-8 ports to multiple destination addresses, and also incorporates Adapter Fault Tolerance. Only the primary receives incoming traffic. Only the primary transmits broadcasts/multicasts and non routed protocols. The ANS software load balances transmissions, based on Destination Address, and can be used with any switch. Simultaneous transmission only occurs at multiple addresses. This mode can be connected to any switch.

Receive Load Balancing (RLB)
Offers increased network bandwidth by allowing reception over 2-8 ports from multiple addresses.
Can only be used in conjunction with ALB.
RLB is enabled by default when an RLB team is configured.
Only the adapters connected at the fastest speed will be used to load balance incoming TCP/IP traffic. The primary, regardless of speed, will receive all other RX traffic.
Can be used with any switch. Any failover will increase network latency until ARPs are re-sent. Simultaneous reception only occurs from multiple clients.
Available for Microsoft Windows.
If using NetWare*1 Load Balancing, you can use ALB but not RLB.

Virtual Machine Load Balancing (VMLB)
Provides transmit and receive traffic load balancing across Virtual Machines bound to the team interface, as well as fault tolerance in the event of switch port, cable, or adapter failure.This teaming type works with any switch.

The driver analyzes the transmit and receive load on each member adapter and balances the traffic across member adapters. In a VMLB team, each Virtual Machine is associated with one team member for its TX and RX traffic. If only one virtual NIC is bound to the team, or if Hyper-V is removed, then the VMLB team will act like an AFT team.

Note VMLB does not load balance non-routed protocols such as NetBEUI and some IPX* traffic.
Note VMLB supports from 2 to 8 ports per team.
Note You can create an VMLB team with mixed speed adapters. The load is balanced according to the lowest common denominator of adapter capabilities and the bandwidth of the channel.

IEEE 802.3ad
This standard has been implemented in two ways:

Static Link Aggregation (SLA):
Equivalent to EtherChannel/Intel’s Link Aggregation
Must be used with an 802.3ad, FEC/GEC/ or Intel Link Aggregation capable switch.

Requires 802.3ad DYNAMIC capable switches.
Active aggregators in software determine team membership between the switch and the ANS software (or between switches).
There is a maximum of 2 aggregators per server and you must choose either maximum bandwidth or maximum adapters.
Both 802.3ad modes include adapter fault tolerance and load balancing capabilities. However in DYNAMIC mode load balancing is within only one team at a time.

To see Intels documentation on the subject: http://download.intel.com/support/network/sb/prosetcl.txt

NIC Teaming in Server Core or Hyper-V Server

Teaming with Intel ProsetCL
Teaming with Broadcom BACScli

If you’re running Server Core or Hyper-V Server 2008 R2 you’ve probably come across the problem of teaming nics. No matter which hardware vendor you choose, they all have they’re special way of doing things. Helping an old colleague out the other day it made me realize that it’s not as straightforward as it is in the full version, so I’ve tried it out with both Intel and Broadcom nics. Which you of course know covers the servers from both HP and Dell (where I work, shameless plug).

Installing the Broadcom software to support network teaming in Server Core / Hyper-V Server

Before you start you must install the prereq’s for the drivers, that comes down to .Net 2.0, .Net 2.0 WOW64 and SNMP.
The easiest way is to use OcSetup to install them:

Start /w ocsetup NetFx2-ServerCore
Start /w ocsetup NetFx2-ServerCore-WOW64
Start /w ocsetup SNMP-SC

The “/w” will let you wait during installation so you know when it’s finished, please note that roles/features are case sensitive for ocsetup so type it as it looks…

When that’s done you’ll need to download the 14.1.x-version of the BACS from Dell’s site and extract them to somewhere on your drive, default is c:broadcom. Navigate to the c:broadcomdriver_management_apps_installer and run setup.exe.

The wizard kicks in and when you’re done you can team your nics (and change other things too) through the c:/program files/broadcom/bacs.exe utility.

Installing the Intel software to support network teaming in Server Core / Hyper-V Server

Turns out that Intel has their own great post on the subject of command line installations which you can find at http://www.intel.com/support/network/sb/cs-016040.htm.

A short rundown otherwise is that you’ll need the setup.exe program for your nic, then you have multiple choices on how to install them. The base driver can be installed through the included pnputil.exe for Server Core or you could use the Intel setup.exe instead.

This is from Intel’s site and shows you what switches does what:

Setup.exe support the following command line parameters:

Parameter Definition
ANS Advanced Network Services
“0”, do not install ANS. If ANS is already installed, it will be uninstalled.

“1”, install ANS (default).

NOTE: If the ANS parameter is set to ANS=1, both Intel PROSet and ANS will be installed.

DMIX PROSet for Windows Device Manager
“0”, do not install Intel PROSet feature. If the Intel PROSet feature is already installed, it will be uninstalled.

“1”, install Intel PROSet feature (default).

NOTE: If DMIX=0, ANS will not be installed. If DMIX=0 and Intel PROSet and ANS are already installed, Intel PROSet and ANS will be uninstalled.

SNMP Intel SNMP Agent
“0”, do not install SNMP. If SNMP is already installed, it will be uninstalled.

“1”, install SNMP (default).

NOTE: Although the default value for the SNMP parameter is 1 (install), the SNMP agent will only be installed if:
The Intel SNMP Agent is already installed. In this case, the SNMP agent will be updated.
The Windows SNMP service is installed. In this case, the SNMP window will pop up and you may cancel the installation if you do not want it installed.

BD Base Driver and IOATDMA Driver
“0”, do not install the base driver.

“1”, install the base driver (default).

LOG [log file name]
LOG allows you to enter a file name for the installer log file. The default name is C:UmbInst.log.

-a Extract the components required for installing the base driver and I/OAT driver to C:Program FilesIntelDrivers. The directory where these files will be extracted to can be modified unless silent mode (/qn) is specified. If this parameter is specified, the installer will exit after the base driver and I/OAT driver are extracted. Any other parameters will be ignored.
-f Force a downgrade of the components being installed. NOTE: If the installed version is newer than the current version, this parameter needs to be set.

How to install the base driver on Windows Server 2008 and Windows Server 2003:

:Setup DMIX=0 ANS=0 SNMP=0

How to install the base driver on Windows Server 2008 and Windows Server 2003 using the LOG option:

:Setup LOG=C:installBD.log DMIX=0 ANS=0 SNMP=0

How to install Intel PROSet and ANS silently on Windows Server 2008 and Windows Server 2003 (32-bit version):

:Setup DMIX=1 ANS=1 /qn

How to install Intel PROSet without ANS silently on Windows Server 2008 and Windows Server 2003 x64 Edition:

:Setup DMIX=1 ANS=0 /qn

How to install components but deselect ANS for Windows Server 2008 and Windows Server 2003:

:Setup DMIX=1 ANS=0 /qn /liew C:install.log

The /liew log option provides a log file for the DMIX installation.

To install teaming and VLAN support on a system that has adapter base drivers and Intel PROSet for Windows Device Manager installed, type the command line :Setup ANS=1.