Server Load Balancing Configurations and Settings
Server load balancing requires a certain level of technical prowess to achieve the desired results: scalability, high availability, and predictability. Depending on the specific applications being used (especially custom applications), whether or not databases are involved, and if users will be uploading content, the synchronization of data between load balanced servers can be complicated to setup.
Once all the equipment has been confirmed (i.e. applicable servers have been ordered and setup), you will need to go to the server load balancing settings and configuration form to submit the specific information needed to setup load balancing for your account.
Load Distribution Policy & TCP Port Number
The first section to fill out in the form is the ‘Load Distribution Policy’ and the ‘TCP Port Number.’ Clicking on the Load Distribution Policy dropdown will give you four different options: Round Robin, Static Weight, Fastest Response, and Least Connections. As indicated below the line, the Load Distribution Policy refers to how visitors are distributed between the servers being load balanced. The Load Distribution Policy may not be determined as much by a personal preference as it is determined by the hardware or data that is being used in the load balancing. For example, it probably makes more sense for an individual with significantly different servers (with respect to the server processor) to use the Static Weight distribution policy than it does for an individual with identical servers. There are positives and negatives for each policy, so if you are unsure which Load Distribution Policy makes the most sense for you, you may wish to get feedback from your Sales Representative or our Technical Team. Below is a brief description of each Load Distribution Policy. More in-depth descriptions are available in our Server Load Balancing Basics document.
- Round Robin – The most common method. Each server is arbitrarily identified (i.e. A, B, C, D), and each visitor is sent to each server in that order. The first to A, the second to B, and so on.
- Weighted Round Robin – Servers are assigned a weight (i.e. 2:1=A:B), and visitors are sent accordingly (i.e. 2 to server A for every 1 to server B).
- Least Connections – New visitors are sent to the server with the least number of users connected.
- Fastest Response – New visitors are sent to the server that responds most quickly.
The acronym ‘TCP’ in TCP Port Number stands for Transmission Control Protocol, one of the core protocols of the Internet protocol suite. TCP is suitable for transfering files and E-mail, because it provides a reliable, in-order delivery stream of bytes. For more information about TCP, please see the TCP page on Wikipedia.
Active Content Verification
Active Content Verification is in addition to the standard ping test that is done to ensure that your server is online and responding.
Load Balancing Type (TCP, HTTP, HTTPS)
We offer three different types of load balancing, TCP or Layer 4 load balancing, HTTP or Layer 7 load balancing, and HTTPS or Layer 7 + SSL load balancing. In brief, Layer 4 or TCP load balancing distributes standard client requests between the server cluster while Layer 7 or HTTP/HTTPS load balancing can be implemented in kernel space or in user space. Depending on the type of load balancing that is chosen, you will have different specific settings to submit. If TCP is selected, you have the option of providing a Sticky Time and enabling or disabling the Probe SSL option; if HTTP or HTTPS is chosen, you have the option of providing a cookie age and a cookie domain. For HTTPS, you will also need to submit information regarding the SSL certificate. This will need to be done after submitting the form.
TCP (Layer 4)
Layer 4 load balancing distributes requests to the servers at transport layer, such as TCP, UDP and SCTP transport protocol. The load balancer distributes connections from clients who access a single IP address for a service to a cluster or group of servers that actually perform the work. Since connection must be established between client and server in connection-oriented transport before sending the request content, the load balancer will often select a server without reviewing the content of the request.
Layer-4 load balancing can also be used to balance traffic at mutliple Internet access links in order to increase Internet access speed.
Sticky time is also called ‘persistence.’ When load balancing, you can run into problems if the back-end server requires some information (i.e. state or session) to be stored across multiple requests on a per-user basis. For example, if a user connected to a server and logged in, but the next request was made to a different server that did not have the session information (or log-in information) stored, that request would be denied. Sticky time is broken down into 300 second intervals, 0, 300s (5 min), 600s (10 min), 900s (15 min), and 1200s (20 min). Choosing ‘0’ disables sticky sessions, otherwise, a given source IP is mapped to the same real server as long as they are received within this time period.
The Probe SSL option must be enabled for SSL protected TCP service to ensure that health checks do not fail.
HTTP/HTTPS (Layer 7)
Layer-7 load balancing is also known as application-level load balancing. It parses requests in the application layer and distributes requests to servers based on the different types of request contents, so that it can provide quality of service requirements for different types of contents and improve overall cluster performance. The overhead of parsing requests in application layer is high, thus its scalability is limited, compared to Layer-4 load balancing.
For both HTTP and HTTPS (encrypted) Layer 7 load balancing, you have the option of specifying a cookie age and cookie domain. As the name implies, the cookie age sets the time for a cookie to expire. Cookie age is set in seconds, usually from 600 sec (10 min) to 3600 sec (1 hour). The time set for a cookie to expire should match the web server’s sessions’ expiration. A cookie domain is the domain name that the cookie is being set for. This must also match the configurations on the web server.
For every server, specific settings need to be supplied: IP address, port, maximum number of connections, weight (only available if the Static Weight Load Distribution Policy is chosen), and hot spare.
IP Address – The IP Address of the server being load balanced.
Port – Normally the same Port as the Cluster Port (see above).
Maximum Connections – Limits the server to a maximum number of user connections. Helps prevent overloading and crashing servers.
Weight – When Static Weight is the chosen policy, each server must be assigned a relative weight. The total weight of the servers combined should equal 100.
Hot Spare – An on/off setting. When enabled, that server will only be given traffic if all other servers are down. A back-up server.
Adding Servers, Clusters
A minimum of two servers are required for load balancing, so the form, by default, has inputs for two servers to be configured. Additional servers can be added to the cluster by clicking on the grey ‘Add a server to this cluster’ button (see image on the right). When you add a server, another set of five inputs are added to the form (as seen above in the [Server Settings] section) that need to be filled out.
Additional clusters can be added by clicking on the blue ‘Add an additional cluster’ button (see image on the right). The entire form is duplicated when you add a cluster. Additional servers can be added to new clusters as described above. Should you wish to remove any added clusters or servers, click on the red button that corresponds with the component of the form that you wish to remove. Once clicked, the information is gone, so please be certain you wish to remove the cluster or server.
For More Information