2.5 Load Balancing

If a packet is not matched by any association, the IPFE creates a new association by choosing an application server from the target set IP list. The choice is based on the load balance algorithm setting. The IPFE is designed to keep the connection on the same MP across reconnection in a period, if possible. This enables the upper layer transaction to be complete after reconnection and minimizes the impact to other MPs for a bouncing case. If the original application server is not available, reconnecting connections is distributed to other application servers available. However, after the unavailable application server recovers, the connections are not redistributed back for continuity purpose, so ongoing traffic is not disturbed.

Regardless of the algorithm, the IPFE raises a minor alarm of Out of Balance: High or Out of Balance: Low on an application server whenever it is receiving a statistically high or low amount of traffic in comparison to others within the same target set.

If an application server determines that it has reached fully loaded capacity, then it notifies the IPFE not to send it further new connections. This is called Stasis. Application servers may go in and out of Stasis automatically according to the current traffic.

There are two load balance algorithms available:

  • Hash: load balancing achieves by sending the new connection to a server based on hashing the originating port and IP address. Hash load balancing removes an application server from consideration for new connections whenever it is incurring an Out of Balance: High alarm. In this way reconnecting connections are always directed to application servers that are moderately loaded. This feature is independent of Stasis notifications.
  • Least load : chooses the server with the least load as reported by the application server. If the loads of two or more of the least-loaded servers are within a configurable percentage of each other, they are considered equally loaded, and the IPFE distributes connections to them in a round-robin fashion. By using the load data reported from the application server, IPFE can better manage the actual traffic load on each MP, although this may introduce some latency between the distribution and the actual situation. In some extreme conditions, such as huge burst of traffic, the latency might cause uneven distribution of a newly assigned connection. However, the application reported data can benefit for cases like different server capabilities and other traffic assignment (not TSA traffic), which is more common than corner cases for latency issue.