When the GRM L7 server rewrites a client request, it rotates the IP addresses of qualifying GRM agent caches it returns among multiple client requests so that no one cache is returned consecutively, even to different clients. In this way, GRM L7 performs load balancing in rewriting requests. Mechanisms for load balancing--GRM L7 server describes the rotation scheme that the GRM L7 server uses.
The GRM L7 server also provides load balancing through rotation of IP addresses when a proxy.pac file is used to direct client requests to a GRM L7 server and the GRM L7 server returns multiple addresses in an IP address list. Typically, when multiple IP addresses are returned in a proxy.pac file, client browsers select the first IP address in the list. If all clients were sent the same list of IP addresses, in the same order, all content requests would be sent to the same center or edge cache. The GRM L7 solution provides load balancing by rewriting the proxy.pac file in such a way that IP addresses in the lists returned to clients are themselves rotated.
The following table shows an example of the IP address rotation scheme that the GRM L7 server uses to generate the IP addresses returned in response to client requests. This scheme ensures that content requests are distributed over all caches in a group. The rotation order does not apply across groups.
For example, assume that three eligible center caches exist--A, B, and C. Each time the GRM L7 server receives a new client request, it rotates the IP address it returns to clients, as shown in the following table.
If client requests are directed to the GRM L7 server by a proxy.pac file, multiple IP addresses can be returned. If multiple IP addresses are returned, the rotation scheme is like that shown for the GRM DNS server in Rotation of IP addresses for load balancing--GRM DNS server.
Both the local DNS nameserver and the GRM DNS server include schemes that support load balancing of content requests over caches.
After the GRM DNS server returns a list of IP addresses of available caches to the local DNS nameserver, the local DNS nameserver caches the IP address list returned by the GRM server for one minute--the Time To Live (TTL) set by the GRM DNS server. During the one-minute time period, the local DNS nameserver rotates the list of IP addresses it received until the TTL set by the GRM DNS server expires. After the TTL expires, the local DNS nameserver requeries the GRM DNS server.
The GRM DNS server rotates the IP addresses it returns to local DNS nameservers based on the scheme described in Mechanisms for load balancing--GRM DNS server. As a result, even if the list of IP addresses that the GRM DNS server returns to different local DNS nameservers includes the same IP addresses, the order of the IP addresses would be different.
The rotation schemes provided by the local DNS nameservers and the GRM DNS server are beneficial because most client browsers have no mechanism for load balancing. Typically, when multiple IP addresses are returned in a DNS response, client browsers select the first IP address in the list of IP addresses. If all clients were sent the same list of IP addresses in the same order, all content requests would be sent to the same center or edge cache.
The following table shows an example of the IP address rotation scheme that the GRM DNS server uses to generate the IP addresses returned in response to DNS queries. This scheme ensures that content requests are distributed over all caches. For example, assume that three center caches exist--A, B, and C. Each time the GRM DNS server receives a new DNS query, it rotates the list of IP addresses it returns to clients, as shown in the following table. The rotation order does not apply across groups.
In most cases, the GRM DNS server mechanism for load balancing is sufficient to balance the load of content requests across caches.
Copyright © 1994-2002, Network Appliance, Inc. All rights
reserved.
Part No. 210-00374
File: grmcom12.htm
Last updated: 11/12/02 17:45:08