Andres Salazar wrote:
Thank you for your suggestions.. however in this particular case I
still can download at 615Kbytes/sec .. at least now I can download at
a lesser rate with the following:

altq on $t_externa bandwidth 200Kb hfsc queue { bulk, ack }
queue ack bandwidth 20% priority 2 qlimit 500 hfsc (realtime 40Kb
upperlimit 40Kb)
queue bulk bandwidth 80% priority 1 qlimit 500 hfsc (realtime 120Kb
upperlimit 120Kb default)


But I still cannot accomplish what I need.

Andres

On Wed, Dec 9, 2009 at 2:01 PM, Bryan S. Leaman <lea...@bitbytes.com> wrote:
Andres Salazar wrote:
Hello,

For some reason I cannot get this to work properly... We have a
1Megabyte/sec connection, and I want this box to be capped at up to
200KiloBytes/sec .

However everytime I try, it just always ends up using the entire link.
If I modify it to 1Kb , it ends up using around 80Kilobytes/sec .

I don't think you can use the upperlimit directive in the altq definition,
but you can use it on each queue to force a maximum amount of bandwidth,
i.e. "queue ack bandwidth 20% priority 2 qlimit 500 hfsc (realtime 40Kb
upperlimit 40Kb)".

If you want each child to be able to borrow free bandwidth from the total
200Kb, then you can create a queue with upperlimit of 200Kb and create your
ack and bulk as subqueues with realtime of 40Kb and 160Kb so they have
guaranteed bandwidth, but then they can also borrow any free bandwidth from
the 200Kb parent when it's available.  I'm doing this in one case and it
works fine.

Bryan



Which way is the traffic flowing? You say download, and i only see one interface re0 labeled as externa(im assuming external from that name). So it sounds like you are trying to limit your inbound or download traffic correct?

If that is the case, its a bit if a circus trying to limit inbound BW when the traffic has already arrived at the box. So i wouldnt expect fully accurate limiting when trying to limit inbound on an interface. It is usually better to limit on the outbound interface.

Lawrence

Reply via email to