Network Load Balancing Services (NLBS) is a Microsoft implementation of clustering and load balancing that is intended to provide high availability and high reliability, as well as high scalability. NLBS is intended for applications with relatively small data sets that rarely change (one example would be web pages), and do not have long-running in-memory states. These types of applications are called stateless applications, and typically include Web, File Transfer Protocol (FTP), and virtual private networking (VPN) servers. Every client request to a stateless application is a separate transaction, so it is possible to distribute the requests among multiple servers to balance the load. One attractive feature of NLBS is that all servers in a cluster monitor each other with a heartbeat signal, so there is no single point of failure.
In its current incarnation in Windows Server 2003, NLBS does not support automatic removal of a failed server from a cluster unless the server is completely offline, or if its NLBS service is stopped. For example, if a web server is returning an error page instead of correct content, it is still perceived as "alive" by NLBS. As such, a monitoring script is typically required on every participating node, which checks the correctness of local web page delivery, and calls the nlb.exe utility to add or remove itself from the cluster as needed.
History
Windows NT Load Balancing Service (WLBS) is a feature of Windows NT that provides load balancing and clustering for applications. WLBS dynamically distributes IP traffic across multiple cluster nodes, and provides automatic failover in the event of node failure. WLBS was replaced by Network Load Balancing Services in Windows 2000.
Auto fail over is also a part in this frame.