Assigning Buckets to Appliances
The mapping of bucket to appliances is subject to several variables:
- Which appliances are available: If an appliance is down, its share of buckets are given to the available appliance. If a new appliance is added to the cluster, it is given its fair share of buckets.
- The mapping algorithm used (deterministic or least-disruptive).
- The order in which appliances come online (least-disruptive mapping only).
- The IP addresses of the appliances. WCCP algorithms can use a sorted list of appliance IP addresses; for example, assigning buckets to appliances in the same order as the appliance IP addresses.
The most important of these factors, from an administrator’s point of view, is the mapping algorithm.
Deterministic mapping. The deterministic mapping algorithm is less graceful than the least-disruptive algorithm, but it supports Hot Standby Router Protocol (HSRP) and Global Server Load Balancing (GSLB) routing, and is required when multiple routers using such protocols share the WCCP cluster.
Deterministic mapping is also the preferred method when the cluster has only two appliances.
Assignments are based on the IP addresses of the active appliances. Each appliance gets its fair share of bucket, with the lowest-numbered bucket being assigned to the appliance with the lowest IP address. If there are more appliances than buckets, the leftover appliances (with no bucket assigned to them) are the ones with the highest-numbered IP addresses. This deterministic assignment allows traffic to arrive for a single connection through any of the routers in the service group and be forwarded to the same appliance.
Reassignment can be disruptive to accelerated connections, which are reset if they migrate to a different appliance. With deterministic mapping, the number of buckets that are reassigned to new appliances can be quite high if there are three or more appliances.
Least-disruptive mapping. When a bucket is assigned to a different appliance, any open accelerated connections that used the old appliance is reset. The least-disruptive algorithm keeps the reassignment to a minimum. For example, if you have three appliances, and one appliance fails, the new mapping preserves roughly two-thirds of the assignments and remaps the remaining third (which fails anyway, because their appliance failed). The least-disruptive algorithm does not support HSRP or GSLB routing, because it is not guaranteed to result in identical mappings on all the routers in the service group, and therefore, packets from a single connection might be sent to two different appliances by two different routers, which causes accelerated connections to fail.