Understanding the concept
In simple words I must say the network load balancing(NLB) technology distributes traffic across TCP/IP network. Hence using NLB increases availability, scalability, and load-balancing performance of your applications on network. Each host runs a separate copy of the desired server applications (such as applications for Web, FTP, and Telnet servers). NLB distributes incoming client requests across the hosts in the cluster. The load weight to be handled by each host can be configured as necessary. You can also add hosts dynamically to the cluster to handle increased load. In addition, NLB can direct all traffic to a designated single host, which is called the default host. When we configure NLB between two servers we have two static IP address those servers and a commonly shared IP address assigned as cluster IP. The machines all run an algorithm that determines whose turn is next at responding to requests. They also exchange heartbeats with one another, so they all know if one server goes down then it won’t allocate any more requests to him(By default, when a host fails to send heartbeat messages within five seconds, it has failed) and you can have up to 32 machines in a cluster.
For more information refer the below links,
Configuring NLB cluster
Note :NLB does not support Dynamic Host Configuration Protocol (DHCP). NLB disables DHCP on each interface that it configures, so the IP addresses must be static. We must have another static IP address which should be assigned as cluster IP. So make sure that you have it before this process.
1. You must install the feature NLB on all servers which and all need to be take part in NLB clustering. In order to achieve that, From Server manager select Features->Add features and select Network load balancing, Click Next to continue.
2. Click on install button and close the installation results window once it succeeds.
3. To configure the cluster open NLB window. Start->Administrative tools->Network load balancing manager.
4. Now you need to create the cluster and its hosts which will handle the traffic. Right-click Network Load Balancing Clusters->Select New Cluster or Cluster->New to start.
5. In the Host text box type the name or IP address of the host that is going to be the member of your NLB(If you are adding the server which is a remote host, make sure that the feature NLB is installed on that server as well, follow the above steps to achieve this), and then click Connect.
You may fail to connect to another server if the NLB feature is not installed on another server. Select the interface you wish to use for cluster and click Next.
6. In Host Parameters, select a value in Priority which will be Unique for each host . The host with the lowest numerical priority among the current members of the cluster handles all of the cluster's network traffic that is not covered by a port rule. You can override these priorities or provide load balancing for specific ranges of ports by specifying rules on the Port rules defines on step 9.
Also you can add a dedicated IP address if required by clicking Edit button, Click Next.
7. In Cluster IP Addresses, click Add and type the cluster IP address that is shared by every host in the cluster. NLB adds this IP address to the TCP/IP stack on the selected interface of all hosts that are chosen to be part of the cluster, Click Next.
8. In Cluster Parameters, select values in IP Address and Subnet mask and type the full Internet name that users will public domain name that users request for access(Its going to be your NLB cluster name as well). If your are configuring NLB for a website you can specify that as your website name itself else leave as blank. Microsoft recommends to use Unicast operation mode for cluster operation, hence leave the cluster operation mode default and click Next.
9. The next step defines the most vital part which will help you to define the traffic across the cluster nodes. If you wish to control the server loads automatically you can click on Finish which will create the cluster node now. Let us consider the scenario that either of your server is having higher hardware configuration and obviously that server will be able to handle more load, so this can be achieved by defining the port requests. Means, the request from defined ports will hit to the defined server and the rest will go to another server. Click on Edit, Now define the port range that is required redirect to this host.
In Protocols, select TCP as the specific TCP/IP protocol that a port rule should cover. Only the network traffic for the specified protocol is affected by the rule. Traffic not affected by the port rule is handled by the default host. I would prefer the request through TCP/IP and UDP to hit on the same server, hence selected as Both.
In Filtering mode, select Multiple host which specifies that multiple hosts in the cluster handle network traffic for this port rule.
In Affinity ( It is the mode that determines how the servers are going to balance the load, for more http://technet.microsoft.com/en-in/library/cc733056.aspx )Select Single and click OK->Finish. Wait for few seconds to complete the configuration.
10. The below screen describes the steps that will happen during the configuration of NLB.
Steps 3 to 9 has helped us to create the cluster and one of its host. In a NLB structure we will have multiple host to handle the traffic and in order to add the another host,
Right click on the newly created cluster and select Add Host To Cluster. The above steps will help you as required(Except step 8 as we have already created the cluster). Once it succeeds you will have the below structure.