FreeBSD Traffic Shaping

Ted Mittelstaedt tedm at
Wed Apr 2 08:54:59 UTC 2008

> -----Original Message-----
> From: owner-freebsd-questions at
> [mailto:owner-freebsd-questions at]On Behalf Of
> freebsd at
> Sent: Tuesday, April 01, 2008 11:27 PM
> To: freebsd-questions at
> Subject: RE: FreeBSD Traffic Shaping
> I gave port 80 as an example but I need this configuration for  
> limiting other services as well.
> If you have a 100mbps connection and only one client, you want him to  
> only use 50kbps, not the full pipe. If you have 200 clients, they  
> still get 50kbps each.
> Is this feature that I need so complicated that it can't be  
> implemented easily into FreeBSD or is it that not many people need it  
> ? It sounds quite useful to me :)

It isn't that it's complicated or cannot be implemented easily.

It is that it's impossible to limit INCOMING bandwidth from the

The vast majority of people out there have asymmetrical bandwidth
limiting needs - that is, they have a pipe to the Internet and
have a lot more data coming from the Internet to them, than data
going from them to the Internet.  Their desire is to somehow make
it so that certain kinds of incoming data meeting certain criteria
are limited.  Their problem is that since they don't have control of
the end sending the data to them, they can't do this.

The fewer number of people not in this boat are quite often looking
to run bandwidth restrictions on private T1s - and the routers needed
for these kinds of circuits usually have limiting code built in.  Since
they have control of both ends of the pipe they can use the limit code.

And the people not falling into these groups are mostly website
hosters looking to restrict outbound bandwidth - and for that, they
use an apache mod file (bandwidth_mod, for
example) that works much better.

In short, the bandwidth limiting code really has little practical
value when implemented in FreeBSD that is why few do it.


More information about the freebsd-questions mailing list