In message <[EMAIL PROTECTED]>, Greg Wooledge writes:
> The particular policy I want isn't very complicated. I have three
> classes of service to the internet: high, medium, and low. What I
> would like is for all packets in the high queue to be sent out
> first, as long as there is bandwidth available. Then if the high
> queue is empty, send out all packets from the medium queue as longer
> as bandwidth is available. Finally, send out all low priority
> packets, bandwidth available as usual. If "high" and "medium"
> starve "low", then so be it. However, don't get worried about this
> particular policy: I think there is a problem with *ANY*
> configuration where you want to be able to say: don't waste any
> bandwidth if there are packets to be sent in any queue and no matter
> what, don't overrun the available external bandwidth.
That should be pretty straightforward using priority queueing.
Yeah, except I have those pesky DMZ hosts that I am trying to get full
speed connectivity to. Too bad the router isn't smart enough to run
IPSP, or some like tunnelling protocol, or I could get a virtual
interface for the outbound traffic.
> From my reading of the pf.conf, this should all be supported, yet I
> am having problems, specifically I am having problems getting the
> bandwidth management policy I described above working.
> Specifically, bandwidth is not borrowed from the parent queue. I
> will include the config snipet and the example output below.
That's because you're trying to make CBQ work like PRIQ. :)
Well, I thought that was what I wanted--to make a CBQ subqueue PRIQ
instead. I didn't actually try that, though. Should I have?
> pf.conf queue in use
> --------------------------------------------------
> altq on $lan_if cbq queue { q_lan, q_dsl }
> queue q_lan priority 7
> queue q_dsl bandwidth 650Kb priority 5 cbq(red, default) { q_pri, q_def, =
q_low }
> queue q_pri bandwidth 6Kb priority 5 cbq(red, borrow)
> queue q_def bandwidth 6Kb priority 3 cbq(red, borrow)
> queue q_low bandwidth 6Kb priority 1 cbq(red, borrow)
> --------------------------------------------------
I don't understand what you're trying to achieve here; the labels
are confusing. You have "lan" and "dsl" in the same category, but in
my mind those would be two completely separate interfaces. Also you
appear to be attempting to apply queueing policy to the LAN interface,
but you really need it on the DSL interface.
"q_lan" is for my DMZ hosts that I want full speed connectivity to.
Perhaps a poor choice of names.
Your experience suggests that there should be a way to get what I
want, the only question is how...
-Seth Robertson
[EMAIL PROTECTED]