there are 2 ways to sticky to a server based on srcip.
The first method is 'balance srcip' which uses a hash function to obtain a server id.
The advantage is that no database is required. The same ip will always provide the same hash result.
The only problem is if you add/remove servers [or if they go up and down] than the hash algorithm will give different results.
The 2nd option is to use a normal balance method like roundrobin or leastconn and combine it with 'advanced-balance sticky-srcip'.
In this case, a database is created with each entry indicating which server to use for a particular ip.
Gilles.