Under normal circumstances, adding network interface cards to servers doesn't increase throughput or reliability because TCP/IP wasn't designed with NIC clustering capabilities in mind. Even if multiple server NICs have the same IP address, workstations tend to gravitate toward one, often the NIC with the lowest media access control (MAC) address. The result: One card gets the lion's share of work while others on that host remain under-utilised.
We found two products that help alleviate the problem. NSI Software's Balance Suite 2.6 and IPMetrics Software's NIC Express 1.0 are designed to increase server throughput and increase reliability at the network layer under Windows NT Server 4.0 (Balance Suite runs under NetWare as well). During our tests, the products detected a failed NIC when the server was connected to a switch and distributed bandwidth among a cluster of network cards. But Balance Suite takes our Blue Ribbon on the strength of additional features - including a graphical monitoring application, dynamic network card re-balancing and PerfMon add-ins - that are lacking in the more spartan but less expensive NIC Express.
To provide fault tolerance, the cards detect the failure of any NIC in a cluster. The cards send Address Resolution Protocol (ARP) packets to the list of workstations connected to the failed NIC, telling them the address of a functioning network card. Both products add a protocol driver file into the server's Network Property Protocol sheet that re-establishes connections to a remaining working NIC.
The business end of each product is a product-specific protocol driver file that runs between the TCP/IP stack and the drivers that come with network cards. You can associate network cards with the adapter driver files to make a cluster. Balance Suite's intermediary driver is slightly smarter and more controllable, offering several more options than the equivalent driver in NIC Express.
NIC Express uses watchdog packets that loop back and forth among the network cards. When a loop isn't completed, the product knows there's a communications problem with the NIC. NIC Express can also read status information, such as error conditions, from a network card if the card's driver is compliant with Microsoft's Network Driver Interface Specification 4.0 (NDIS). IPMetrics says if a network card driver is NDIS 4.0-compliant, it can sense an outage in less than half a second rather than the 2 to 4 seconds (or longer when the network is busy) needed with watchdog packets.
Both packages are able to detect an adapter failure very quickly. You can select the failure polling frequency in Balance Suite, but not in NIC Express. Nonetheless, all three network card types we tested had NDIS 4.0 drivers, and NIC Express was able to reconfigure more quickly under load than Balance Suite. When we used an NDIS 3.1 driver to test the Compaq NetFlex-3 network cards, NIC Express took several seconds longer to recover than Balance Suite.
In our small network, recovery was almost instant. We suspect it might take longer for both products to ARP a long list of workstations, especially if the workstations were distributed through a WAN.
Balance Suite can also change the specific workstations attached to network cards to perform what NSI calls dynamic balancing. With this feature, instead of looking at just the connection count of each NIC, Balance Suite redistributes uneven workloads over a period of time to balance traffic.
NSI's Balance Suite and IPMetrics' NIC Express do the job of adaptively increasing system throughput (as long as the server's internal PCI bus isn't saturated) while providing connection redundancy and failover fault tolerance. NIC Express is relatively new, while Balance Suite has been around for several years. The difference shows in the level of control, monitoring and dynamic balancing capabilities you get with Balance Suite. It's almost twice the price of NIC Express, but the older product's maturity makes the cost difference worthwhile.
Henderson runs ExtremeLabs, a product testing and evaluation facility in Indianapolis. You can reach him at email@example.com.