7.1.2 IBM WebSphere Edge Components Load Balancer

IBM WebSphere Edge Components Load Balancer consists of multiple components that can be used separately or together.

For IP spraying, we only need to use the Dispatcher component. See Chapter 4, "Introduction to IBM WebSphere Edge Components," in WebSphere Application Server V6 Scalability and Performance Handbook, SG24-6392, for a detailed introduction to Load Balancer as part of IBM WebSphere Edge Components.

Note: We only describe the features that are essentially necessary for our scenarios. We do not cover optional features that are deprecated when using IBM WebSphere Application Server Network Deployment V6.1. Most of the features of IBM WebSphere Edge Components V6.0 are deprecated in V6.1, where they are provided by the IBM WebSphere Application Server Network Deployment proxy server and the IBM HTTP Server Plug-in.

Deprecated features include all components except Dispatcher, and all Dispatcher forwarding methods except MAC. As at the time of writing this book, WebSphere Commerce does not support IBM WebSphere Application Server Network Deployment V6.1, though we still describe some features that are deprecated with V6.1.

For a complete list of deprecated features in IBM WebSphere Application Server Network Deployment V6.1, visit the following URL of the V6.1 Info Center:

http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.nd.doc/info/ae/ae/rmig_deprecationlist.html

Dispatcher has internal components that are responsible for various load balancing tasks. The components and tasks are:

Figure 7-2 shows the Dispatcher components and their interactions.

Figure 7-2 Dispatcher components interaction (from WebSphere Application Server V6 Scalability and Performance Handbook, SG24-6392)

All requests are routed to Dispatcher, which in turn sprays them among the members of the Web server cluster (IP spraying). The Web server cluster consists of identical Web servers running on different physical machines (or in different LPARs). All Web servers need to be set up in the same way to serve static content and route requests to the application server tier for WebSphere Commerce. See 11.1, Add additional Web servers. In the event of a failure of one of the Web servers, Dispatcher discontinues directing work to the failed server. Dispatcher provides two IP spraying methods:

1.xxxx

MAC forwarding is the fastest forwarding method because Dispatcher receives only the incoming traffic. All outbound traffic is sent directly from the balanced server to the client. Each Web server in the topology is configured with at least one physical IP address and a loopback alias configured with a shared virtual IP address, also called the cluster address. The cluster address is configured as an alias of the Load Balancer's network interface. HTTP clients make HTTP requests to this virtual IP address, and Dispatcher forwards the requests to the Web servers by changing the source and destination MAC address of the packet. The IP addresses remain the same. Because the IP header is not changed, the Web servers send their responses directly to the client, as shown in Figure 7-3.

Figure 7-3 MAC forwarding - network flow (from WebSphere Application Server V6 Scalability and Performance Handbook, SG24-6392)

However, the Load Balancer and the Web servers must all be on the same IP subnet. Also, for server affinity, which is a useful feature in performance tuning (see Chapter 19, Monitor and tune Load Balancer), source IP affinity (across multiple ports) is the only available option.

2.xxxx

Network Address Translation (NAT) and Content Based Routing (CBR) allow the Load Balancer and the Web servers to be on different IP subnets. Cookie and SSL session ID based server affinity are also possible.

This method does not use loopback aliases. Instead, a return address is configured as an additional alias of the Load Balancer's network interface. The requests made to the cluster address are changed at the IP layer, such that the Web server's IP address is put into the request as the destination and the return address as the source for each packet. The packets can then be routed to the Web server, and the Web server will send the response back to the Load Balancer, which needs to change the IP headers of the response packets so that they can be routed back to the client, as shown in Figure 7-4.



Figure 7-4 NAT forwarding - network flow (from WebSphere Application Server V6 Scalability and Performance Handbook, SG24-6392)

We describe how to set up Load Balancer for our scenario in 8.6, Install Load Balancer. For detailed instructions on how to set up the two different forwarding methods, refer to 11.2.1, MAC forwarding, and 11.2.2, NAT forwarding.
xxxx