How is NLB used for load distribution computing?

Source: Internet
Author: User

[Transfer] http://blog.csdn.net/ghj1976/article/details/4003370

Network Load Balancing uses a completely distributed algorithm based on the IP address and port of the incoming clientStatistical MethodMap it to the cluster host. This process does not require any communication between hosts. When a packet arrives is found, all hosts execute this ing at the same time to quickly determine which host should process this package. The ing remains unchanged until the number of cluster hosts changes. Compared with centralized load balancing applications, the network load balancing filtering algorithm is more efficient in processing data packets, because the former must modify and re-transmit data packets.

For example:

  • Requests are sent to all NLB hosts
  • Only one host will process the request, and other hosts will discard the request.
  • This process does not require any communication between hosts.
  • You do not need to modify or re-transmit request packets.

This statistical algorithm is implemented in the Wlbs. sys component.

For details about this Algorithm, you can search for the keyword "Load Balancing Algorithm"

Links to related articles are as follows:

How Network Load Balancing Algorithm works internally
Http://www.codedigest.com/Articles/Windows%20and%20Clustering/49_How_Network_Load_Balancing_Algorithm_Works_Internally.aspx

To coordinate its operations, the network load balancing host periodically exchanges detection signals within the cluster. IP multicast allows the host to monitor the cluster status. When the cluster status changes (for example, when the host fails, leaves, or joins the cluster), network load balancing calls a process called "aggregation". In this process, the host exchanges a limited number of messages to determine the new consistent status of the cluster, and specify the highest host priority for the host, that is, as the new default host. When all cluster hosts are consistent in the correct new cluster status, they will record aggregation completion in Windows event logs. It generally takes less than 10 seconds to complete this process.

During aggregation, other hosts continue to process incoming network communication. Client requests to the working host are not affected. After the aggregation is completed, the communication aimed at the faulty host is resold to the active host. After load balancing, the communication will be re-divided among the still working hosts, so as to achieve a better load balancing for specific TCP or UDP ports.

If a host is added to the cluster, aggregation allows the host to receive its own load balancing communication. Cluster Expansion does not affect ongoing cluster operations, and its implementation process is transparent to Internet clients and server applications. However, when "client similarity" is selected, it may affect client sessions across multiple TCP connections, because the client may be rereflected to different cluster hosts between connections. For more information about similarity, see network load balancing and controllable connections.

Network Load Balancing assumes that the host's normal operation time in the cluster is as long as it exchanges detection signals with other cluster hosts. If no response from any member is received by other hosts during multiple detection signal exchanges, aggregation is started to resend the load originally processed by the failed host.

You can control the message exchange period and the number of lost messages required to start aggregation. The default value is 1000 ms (1 second) and 5 lost message exchange periods. Because these parameters are not modified, you cannot configure them in the "Network Load Balancing properties" dialog box. If necessary, you can manually adjust them in the registry. Adjust the aggregation parameters to describe the process of completing this operation.

As shown in.

NLB cluster before Aggregation

NLB cluster after aggregation

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.