Load balancing over several Network Adapters

It is possible to have the OS to balance the network load for the computer when having several Network Adapters.

This is controlled by these DWORD values :

[HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Services \NetBT \Parameters]
RandomAdapter = 1 (Disabled = 0, Enabled = 1, Default = 0)
SingleResponse = 1 (Send All = 0, Send One = 1, Default = 0)

The RandomAdapter specifies whether it should respond back with a random IP-Address (One for each adapter), or if it should respond back with the IP Address for the adapter the request was received from.

The SingleResponse says that it should only send one IP address when WINS does a name query request.

More Info MS KB131736
More Info MS KB175767

Note there is also a technology called Windows NT Load Balancing Service (WLBS - NT4) or Network Load Balancing (NBL - Win2k+), which handles clustering of several machines to act like a single unit. The cluster of several machines can provide redundancy for critical applications and higher load handling. The above registry settings does not have anything to do with this kind of service.

Note not all applications supports that the underlying TCP/IP layer responds with random IP-addresses. Instead one can try to setup Manual load balancing using metric.

Note hardware solutions (Ex. from Intel) for network load balancing also exists where several NIC’s are bound together (Also called “teaming”/”trunking”/”grouping”), to team together as a single NIC using only one IP-Address.

Credits regedit.com