Network Load Balancing Clusters
In Part 1 and Part 2 of this series, Is a Server Cluster Right for Your Organization? and Choosing the Cluster Type that's Right For You , I explained about the two different types of server clusters in Windows 2000. In this article, I'll discuss the issues involved in planning a network load balancing (NLB) server cluster in more depth. In the final article of this series, I'll present an in-depth discussion of server clusters.
|If you just need a refresher, an NLB cluster refers to an environment in which each server contains its own hard disks, and therefore, its own copy of the application you're clustering. Each server in an NLB environment functions as an independent entity. The cluster can contain between 2 and 32 servers. The extent of the actual clustering process is that each server communicates its present workload and other status information to other servers in the cluster. This is done so that as more clients try to use the clustered application, they are sent to the server with the least current workload.|
The NLB models
There are four basic models of NLB clusters for single or multiple network adapters running in either multicast or unicast mode. Multicasting refers to sending packets to a group of recipients. For example, when you send an e-mail message to a mailing list, you're multicasting. Unicasting, on the other hand, refers to sending packets to a single recipient. Each model has its own specific hardware requirements as well as a unique set of advantages and disadvantages.
The four models are as follows:
- Each server contains a single network adapter running in unicast mode.
- Each server contains a single network adapter running in multicast mode.
- Each server contains multiple network adapters running in unicast mode.
- Each server contains multiple network adapters running in multicast mode.
Each Server Contains a Single Network Adapter Running in Unicast Mode
NLB clusters that use a single network adapter and run in unicast mode are among the easiest types of cluster environments to configure. They are also perhaps the cheapest, because minimal hardware is needed. However, as you might expect with a starter system, you need to be aware of some rather significant limitations.
Most of the limitations are caused by having a single network card. The network card must maintain the normal network traffic flow along with carrying the backbone traffic that flows between servers in the cluster. Forcing so much data to flow across a single network card per server means that overall network performance will usually be compromised. Another limitation is that with the NLB cluster implementation, NetBIOS can't be run in single network card environments. These details are trivial, though, when compared to the fact that ordinary communications between servers within the cluster are impossible in this model.
Each Server Contains a Single Network Adapter Running in Multicast Mode
Even with a single network adapter present, running your clustered servers in multicast mode is a much better alternative to running in unicast mode. For starters, this model makes ordinary communications between clustered servers possible. The downside to this model is that not all routers support multicast Media Access Control (MAC) addresses. As with the other single network card model, this model also suffers from the performance issues related to channeling all of the network traffic through a single network card. Likewise, this model doesn't offer any NetBIOS support within the cluster.
Each Server Contains Multiple Network Adapters Running in Unicast Mode
Configuring your clustered servers to run in unicast mode with multiple network cards is considered by many to be the preferred configuration. Sure, this configuration is a little more expensive than single card models, but network cards are cheap these days. Even the extra hub ports that will be required are much cheaper than they were a year or two ago.
This particular NLB model offers excellent network performance, because all load balancing traffic is sent through a dedicated backbone that connects to one network card on each server. Because this backbone isn't connected to the general network in any way, traffic can flow freely without becoming congested by the usual network traffic. Likewise, your clients won't notice a slow down because communications between servers don't place additional traffic on the line that the clients use.
As you might have guessed, this model doesn't impose any limitations as to ordinary communications between the servers. NetBIOS support is available across one adapter on each server, and this NLB model works with all routers
Each Server Contains Multiple Network Adapters Running in Multicast Mode
You'd use this model only if some of your servers contain multiple network adapters and some have only a single network card. If this is the case, you're forced to use multicast mode because you can't mix unicast and multicast in an NLB environment. This particular solution may cause problems with communication across some types of routers; but assuming that your router is up to the job, this solution works well until you can add a second network card to the servers that contain only a single network card.
Before I conclude this article, I'd like to say a few words about capacity planning in an NLB environment. As I've mentioned, an NLB cluster may have between 2 and 32 servers. Generally speaking, a few really fast servers will perform better and cost less than several slower servers. Although 32 servers is the limit, there is a way of using more. You can use several different clusters, each containing up to 32 servers. You can then use your DNS server to rotate the clusters that it assigns to clients in round-robin style. //
Brien M. Posey is an MCSE who works as a freelance writer. His past experience includes working as the director of information Systems for a national chain of health care facilities and as a network engineer for the Department of Defense. Because of the extremely high volume of e-mail that Brien receives, it's impossible for him to respond to every message, although he does read them all.