FreeBSD Traffic Shaping
freebsd at top-consulting.net
freebsd at top-consulting.net
Wed Apr 2 12:38:07 UTC 2008
I can now confirm that these two commands do exactly what I mentioned
All outbound connections towards any host port 80 will have a maximum
bandwidth of 100Kbit/s individually ( output )
ipfw pipe 2 config mask all bw 100Kbit/s
ipfw add 10 pipe 2 tcp from localip to any 80
Problem solved :)
> I've tried
> ipfw pipe 2 config mask all bw 100Kbit/s
> ipfw add 10 pipe 2 tcp from localip to any 80
> it appears to be working but I don't have enough connections on
> right now to find out if it really gives 100kbit/sec to each or if
> it shares the bw
> will come back with an update :)
>> 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 :)
>>> I have personally tried that before and it did not worked as described, in
>>> fact it didn't work at all to limit anything on FBSD6.
>>> -----Original Message-----
>>> From: owner-freebsd-questions at freebsd.org
>>> [mailto:owner-freebsd-questions at freebsd.org] On Behalf Of
>>> Christopher Cowart
>>> Sent: Tuesday, April 01, 2008 7:55 PM
>>> To: freebsd at top-consulting.net
>>> Cc: freebsd-questions at freebsd.org
>>> Subject: Re: FreeBSD Traffic Shaping
>>> freebsd at top-consulting.net wrote:
>>>> I am trying to limit the bandwidth available to some connections and
>>>> I'm not sure FreeBSD can handle this. Maybe some of you can help.
>>>> Here's what I need to have exactly.
>>>> No matter what the number of connections, each connection should have
>>>> at most/least 50kbps guaranteed outbound on port 80.
>>>> I've tried dummynet but it doesn't do what I need because if I define
>>>> a pipe with 1mbps and if I have 1000 connections, each connection will
>>>> have less than 50kbps.
>>>> Any way to do this in FreeBSD ?
>>> The ipfw(8) man page describes a "mask" configuration parameter.
>>> # /sbin/ipfw pipe 1 config mask src-ip 0xffffffff bw 56Kbit/s
>>> This creates a separate dynamic pipe per source ip address. Each pipe has a
>>> dedicated 56kbps. The man page implies that the mask can combine fields, so
>>> to uniquely identify "each connection", you would mask all bits of source
>>> and destination IP and ports. It looks like the "all"
>>> keyword might do just the trick.
>>> Chris Cowart
>>> Network Technical Lead
>>> Network & Infrastructure Services, RSSP-IT UC Berkeley
>>> freebsd-questions at freebsd.org mailing list
>>> To unsubscribe, send any mail to
>>> "freebsd-questions-unsubscribe at freebsd.org"
>> freebsd-questions at freebsd.org mailing list
>> To unsubscribe, send any mail to "freebsd-questions-unsubscribe at freebsd.org"
> freebsd-questions at freebsd.org mailing list
> To unsubscribe, send any mail to "freebsd-questions-unsubscribe at freebsd.org"
More information about the freebsd-questions