When deploying multiple Edge SWG (ProxySG) proxies in a WCCP deployment, the traffic can be distributed among the Edge SWG appliances with hash buckets.
The WCCP Hash assignment bucket is calculated by the "Designated Cache" which is one of the Edge SWG appliances in the pool.
The designated cache has the lowest IP in the pool.
The default balancing scheme distributes hash buckets numbered 0-255 (256) evenly to each Edge SWG within the WCCP pool, but Hash assignment is an integer value and if the number of appliances in the pool does not evenly divide the 256 hash buckets, the excess hash buckets are assigned to one of the appliances in the pool, usually the designated cache.
Example Hash Assignments with 3 Edge SWG appliannces in the WCCP Pool
With three appliances in the Hash Assignment, there will be 85 hash buckets assigned to each unit, since 256 divded by 3 is 85 with a remainder of 1. The remaining hash bucket will be assigned to the designated cache:
Proxy 1 - 85+1=86 Hash buckets
Proxy 2 - 85 Hash buckets
Proxy 3 - 85 Hash buckets
For this example, the assignment will be:
Proxy 1 - assigned with hash buckets 170 - 255
Proxy 2 - assigned with hash buckets 85 - 169
Proxy 3 - assigned with hash buckets 0 - 84
Using the command "show wccp statistics" on Proxy CLI will reveal the effective WCCP Hash bucket, F is a Hex value which equivalent to 15 decimal
ProxySG203#sh wccp statistics
<removed>
Active caches :10.105.12.42, 10.105.13.203, 10.105.13.205
Assignment key :10.105.12.42,1
Router state :active
Cache :10.105.12.42,D
Index :0
Assign index :255
Active :1
Activation time :Wed, Jul 20 2011 08:48:22 UTC
Last hit count :0
Hash utilization :86
Hash revision :0,0
Bucket block [00] :0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Bucket block [10] :0,0,0,0,0,63,255,255,255,255,255,255,255,255,255,255
Assignment weight :0
Status :0
Cache :10.105.13.203,L
Index :1
Assign index :255
Active :1
Activation time :Wed, Jul 20 2011 08:48:12 UTC
Last hit count :0
Hash utilization :85
Hash revision :0,0
Bucket block [00] :0,0,0,0,0,0,0,0,0,0,7,255,255,255,255,255
Bucket block [10] :255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0
Assignment weight :0
Status :0
Cache :10.105.13.205
Index :2
Assign index :255
Active :1
Activation time :Wed, Jul 20 2011 08:48:22 UTC
Last hit count :0
Hash utilization :85
Hash revision :0,0
Bucket block [00] :255,255,255,255,255,255,255,255,255,255,248,0,0,0,0,0
Bucket block [10] :0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Assignment weight :0
Status :0
Using the command "show ip wccp <servicegroup> detail" on Cisco router which reveal the actual table assigned, F is a Hex value which equivalent to 15 decimal
ROUTER2811#sh ip wccp 90 detail
WCCP Client information:
WCCP Client ID: 10.105.13.203
Protocol Version: 2.0
State: Usable
Redirection: GRE
Packet Return: GRE
Assignment: HASH
Initial Hash Info: 00000000000000000000000000000000
00000000000000000000000000000000
Assigned Hash Info: 0000000000000000000007FFFFFFFFFF
FFFFFFFFFFC000000000000000000000
Hash Allotment: 85 (33.20%)
Packets s/w Redirected: 0
Connect Time: 00:32:39
Bypassed Packets
Process: 0
CEF: 0
Errors: 0
WCCP Client ID: 10.105.12.42
Protocol Version: 2.0
State: Usable
Redirection: GRE
Packet Return: GRE
Assignment: HASH
Initial Hash Info: 00000000000000000000000000000000
00000000000000000000000000000000
Assigned Hash Info: 00000000000000000000000000000000
00000000003FFFFFFFFFFFFFFFFFFFFF
Hash Allotment: 86 (33.59%)
Packets s/w Redirected: 0
Connect Time: 00:32:35
Bypassed Packets
Process: 0
CEF: 0
Errors: 0
WCCP Client ID: 10.105.13.205
Protocol Version: 2.0
State: Usable
Redirection: GRE
Packet Return: GRE
Assignment: HASH
Initial Hash Info: 00000000000000000000000000000000
00000000000000000000000000000000
Assigned Hash Info: FFFFFFFFFFFFFFFFFFFFF80000000000
00000000000000000000000000000000
Hash Allotment: 85 (33.20%)
Packets s/w Redirected: 0
Connect Time: 00:32:31
Bypassed Packets
Process: 0
CEF: 0
Errors: 0