Hi,

I'm trying to get my head round Queue'ing / Atlq and have read 
(http://www.openbsd.org/faq/pf/queueing.html).

We are getting a Gigabit connection to the local internet peering exchange, and 
I would like to offer other tenants in our building internet access to help 
offset our costs.

What I plan to do is offer 4 users the following, 2Mb International with burst 
to 10Mb, 5Mb National with burst to 20Mb, and 25Mb Local IX burst to 100Mb.

Can I do this with the following rules, (assuming similar rules for inbound 
traffic (outbound on the internal NIC))?

altq on ext0 cbq bandwidth 1Gb queue { intl_ext, nat_ext, ix_ext }

queue intl_ext bandwidth 10Mb { intl_ext_pool1 }
        queue int_ext_pool1 10Mb { intl_ext_pool1_usr1, intl_ext_pool1_usr2, 
intl_ext_pool1_usr3, intl_ext_pool1_usr4 }
                intl_ext_pool1_usr1 2Mb cbq(borrow)
                intl_ext_pool1_usr2 2Mb cbq(borrow)
                intl_ext_pool1_usr3 2Mb cbq(borrow)
                intl_ext_pool1_usr4 2Mb cbq(borrow)

queue nat_ext bandwidth 20Mb { nat_ext_pool1 }
        queue nat_ext_pool1 20Mb { nat_ext_pool1_usr1, nat_ext_pool1_usr2, 
nat_ext_pool1_usr3, nat_ext_pool1_usr4 }
                nat_ext_pool1_usr1 5Mb cbq(borrow)
                nat_ext_pool1_usr2 5Mb cbq(borrow)
                nat_ext_pool1_usr3 5Mb cbq(borrow)
                nat_ext_pool1_usr4 5Mb cbq(borrow)

que ix_ext 100Mb { ix_ext_pool1 }
        ix_ext_pool1 100Mb { ix_ext_pool1_usr1, ix_ext_pool1_usr2, 
ix_ext_pool1_usr3, ix_ext_pool1_usr4 }
                ix_ext_pool1_usr1 25Mb cbq(borrow)
                ix_ext_pool1_usr2 25Mb cbq(borrow)
                ix_ext_pool1_usr3 25Mb cbq(borrow)
                ix_ext_pool1_usr4 25Mb cbq(borrow)

Assuming the queue's are matched by using some BGP route magic (to determine if 
connection is Local IX, National, or International), and the user's local 
subnet, (assuming a /29 for each local user).

Does this make sense? Am I approaching things the right way? Is there any 
particular material I should be reading up on?



Cheers

Liam

Reply via email to