Dummynet dynamically assigned bandwidth

Pawel Malachowski pawmal-posting at freebsd.lublin.pl
Sun Nov 7 05:03:55 PST 2004


On Sun, Nov 07, 2004 at 03:43:51PM +0300, Martes Wigglesworth wrote:

> I am so sorry to have to demonstrate my ignorance on this subject,
> however, I am not quite sure what you mean by 50*1.5KB/s/16KB/s. Where
> is that rational expression comming from?  Also, since I really have no
> good context for understanding your possible solution, could you supply
> more info, or an example?

Your example:
pipe 1 config bw 128Kbit/s
queue 1 config pipe 1 config mask dst-ip 0xffffffff
queue 1 ip from any to ${int_net} in recv ${ext_dev}

128Kbit/s = 16KBytes/s
As described in ipfw(8), default size of queues and pipes is 50 slots.
This may valid for 10Mbit/s, but not for 128Kbit/s...

Proposal:
pipe 1 config bw 128Kbit/s queue 4KB
queue 1 config pipe 1 mask dst-ip 0xffffffff queue 3KB
queue 1 ip from any to ${int_net} in recv ${ext_dev}

Lowering size of queues and pipes from 50 slots (which can give 75KB
with 1500B MTU) to 2 slots (or 3-4KBytes, I prefer specifying sizes
in bytes) will help TCP in `smooth' working by lowering maximum delay.
Just give it a try.

See also:
http://groups.google.pl/groups?selm=blc6oa%2416bm%241%40FreeBSD.csie.NCTU.edu.tw


-- 
Paweł Małachowski


More information about the freebsd-ipfw mailing list