Bandwidth control using Dummynet: 2A + B <= limit

Brett Glass brett at lariat.net
Tue Nov 11 04:31:38 UTC 2014


Everyone:

I have an interesting problem. I've been asked to build a bandwidth 
limiting ruleset that fairly limits the bandwidth a user consumes 
on an asymmetrical half duplex link. The limiting should be such 
that packets going upstream are scored as consuming twice as many 
resources as those going downstream, so that 2x(upstream bandwidth) 
+ 1x(downstream bandwidth) <= limit. It's easy to make ipfw 
distinguish between packets flowing in the two directions and feed 
them into the same bandwidth-limiting pipe, but I can't figure out 
how to make the upstream packets count twice as much toward the 
limit as the downstream ones without patching Dummynet. Am I 
missing something? Is there a way to do this with FreeBSD's IPFW as 
it exists now?

--Brett Glass



More information about the freebsd-questions mailing list