aragon said:No one played with PF's load balancing features? It works very well. I'm not sure if this documentation still works on FreeBSD:
http://www.openbsd.org/faq/pf/pools.html
Haven't tried this, but you can try add the 4 Mbps connection into the pool twice, with the hope of it being round-robinned twice as frequently as the 2 Mbps connection.bbzz said:Unfortunately that doesn't work well for this scenario since you either end up with static hash mappings or round-robin (basically equal load balancing which won't work well with 2 Mbps and 4 Mbps connections).
aragon said:No one played with PF's load balancing features? It works very well. I'm not sure if this documentation still works on FreeBSD:
http://www.openbsd.org/faq/pf/pools.html
#
# Macros
#
INT_IF = "em0"
EXT_IF = "bge0"
EXT_IF2 = "bge1"
table <private_nets> persist { 127/8, 172.16/12, 192.168/16, 169.254/16 }
#
# Options and default policy
#
set block-policy drop
set state-policy if-bound
#
# Packet normalization
#
scrub in all
scrub out on $EXT_IF all random-id
scrub on $EXT_IF all reassemble tcp
#
# NAT/redirects
#
# NAT
nat on $EXT_IF from <private_nets> to any -> ($EXT_IF)
nat on $EXT_IF2 from <private_nets> to any -> ($EXT_IF2)
#
# Filter rules
#
pass all
#pass in from 192.168.100.0/24 to any rtable 0
#pass in from 192.168.150.0/24 to any rtable 1