From what I understood PCC is that it is a modulo of some fields (source IP, source port …) of the packet header. And based on the result for the connection will be tagged to see a different routing on WAN
Consider that we have 4 WAN
to a load balancing rules there will be 4 CPC for example
per-connection-classifier = src-address-and-Ports: 4/0 new-connection-mark = W01
per-connection-classifier = src-address-and port 4/1 new-connection-mark = W02
per-connection-classifier = src-address-and port 4/2 new-connection-mark = W03
per-connection-classifier = src-address-and-Port: 4/3 new-connection-mark = W04
We can say with great traffic connections will be divided into equal shares between 4 wans
But if we have ADSL that does not have the same rate
by exemple
WAN 1 = 1000kbs
WAN 2 = 1000kbs
WAN 3 = 1000kbs
WAN 4 = 2000kbs
I read a lot of script they proposed a fair type marking
per-connection-classifier = src-address-and-Ports: 4/0 new-connection-mark = W01
per-connection-classifier = src-address-and port 4/1 new-connection-mark = W02
per-connection-classifier = src-address-and port 4/2 new-connection-mark = W03
per-connection-classifier = src-address-and-Port: 4/3 new-connection-mark = W04
per-connection-classifier = src-address-and-Port: 4/4 new-connection-mark = W04
but tell me if I’m wrong but a number modulo 4 is never equal to 4 ?
a number modulo 4 may result 0 or 1 or 2 or 3
if you want to make a correct balacing, I have to do ?:
per-connection-classifier = src-address-and-Port: 5/0 new-connection-mark = W01
per-connection-classifier = src-address-and port 5/1 new-connection-mark = W02
per-connection-classifier = src-address-and port 5/2 new-connection-mark = W03
per-connection-classifier = src-address-and-Port: 5/3 new-connection-mark = W04
per-connection-classifier = src-address-and-Port: 5/4 new-connection-mark = W04
Now if I have the following rates
WAN 1 = 1000kbs
WAN 2 = 1000kbs
WAN 3 = 2000kbs
WAN 4 = 2000kbs
src-address Is the easy way to go, every thing function any other way and lots of sites and games break. Only other way is to first do src-address of connections that needs same src ip and then do rest of data with other methode. Lots of rules, but possible.