32
Microsoft Network Load Balancing
This functionality is supported on the MXL platforms.
Network Load Balancing (NLB) is a clustering functionality that is implemented by Microsoft on Windows
2000 Server and Windows Server 2003 operating systems. NLB uses a distributed methodology or
pattern to equally split and balance the network traffic load across a set of servers that are part of the
cluster or group. NLB combines the servers into a single multicast group and attempts to use the
standard multicast IP or unicast IP addresses, and MAC addresses for the transmission of network traffic.
At the same time, it also uses a single virtual IP address for all clients as the destination IP address, which
enables servers to join the same multicast group in a way that is transparent to the clients (the clients do
not notice the addition of new servers to the group). The clients use a cluster IP address to connect to
the server. The NLB functionality enables flooding of traffic over the VLAN ports (for unicast mode) or a
subset of ports in a VLAN (for multicast mode) to avoid overloading and effective performance of the
servers for optimal processing of data packets.
NLB functions in two modes, namely unicast mode and multicast mode. The cluster IP address and the
associated cluster MAC address are configured in the NLB application running on the Windows Server. In
the unicast mode, when the server IP address is attempted to be resolved to the MAC address using the
ARP application, the switch determines whether the ARP reply, obtained from the server, is of an NLB
type. The switch then maps the IP address (cluster IP) with the MAC address (cluster MAC address). In
multicast mode, the cluster IP address is mapped to a cluster multicast MAC address that is configured
using a static ARP CLI configuration command. After the NLB entry is learned, the traffic is forwarded to
all the servers in the VLAN corresponding to the cluster virtual IP address.
NLB Unicast Mode Scenario
Consider a sample topology in which four servers, namely S1 through S4, are configured as a cluster or a
farm. This set of servers is connected to a Layer 3 switch, which in turn is connected to the end-clients.
The servers contain a single IP address (IP-cluster address of 172.16.2.20) and a single unicast MAC
address (MAC-Cluster address of 00-bf-ac-10-00-01) for load-balancing. Because multiple ports of a
switch cannot learn a single MAC address, the servers are assigned with MAC addresseses of MAC-s1 to
MAC-s4) respectively on S1 through S4 in addition to the MAC cluster address. All the servers of the
cluster belong to the VLAN named VLAN1.
In unicast NLB mode, the following sequence of events occurs:
• The switch sends an ARP request to resolve the IP address to the cluster MAC address.
• The ARP servers send an ARP response with the MAC cluster address in the ARP header and a MAC
address of MAC-s1/s2/s3/s4 (for servers S1 through S4) in the Ethernet header.
• The switch associates the IP address with the MAC cluster address with the last ARP response it
obtains. Assume that in this case, the last ARP reply is obtained from MAC-s4.(assuming that the ARP
882
Microsoft Network Load Balancing