Date: Wed, 22 Feb 2006 12:42:17 -0600 From: "Bill Marquette" <bill.marquette@gmail.com> To: "Christopher McGee" <chris@xecu.net> Cc: freebsd-pf@freebsd.org, Jon Simola <jon@abccomm.com> Subject: Re: Hfsc configuration problems Message-ID: <55e8a96c0602221042re25f819g1e3815384c022590@mail.gmail.com> In-Reply-To: <43FCA7B8.3090300@xecu.net> References: <43FC9F63.5070009@xecu.net> <8eea04080602220957v46f9d11ev2544e8cbe893365d@mail.gmail.com> <43FCA7B8.3090300@xecu.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2/22/06, Christopher McGee <chris@xecu.net> wrote: > Jon Simola wrote: > > >On 2/22/06, Christopher McGee <chris@xecu.net> wrote: > > > > > >>I've been trying to get hfsc working properly, but I'm obviously doing > >>something wrong because I keep getting errors like this: > >> > >>pfctl: link-sharing sc exceeds parent's sc > >> > >> > > > >Yeah, the percentages in link-sharing are calculated against the > >physical interface, but bandwidth is against the parent queue > >(usually). > > > >Here's my working sample, which does not make any great sense either. > >I had just started playing with upperlimit, which should be settable > >on multiple queues. > > > ># backbone queueing > >altq on em0 hfsc bandwidth 100Mb queue { q_em0_high, q_em0_high_bulk, > >q_em0_med, q_em0_med_bulk, q_em0_low, q_em0_low_bulk } > >queue q_em0_high bandwidth 10% hfsc(linkshare 1%) priority 7 > >queue q_em0_high_bulk bandwidth 40% hfsc(linkshare 4%) priority 6 > >queue q_em0_med bandwidth 10% hfsc(linkshare 1%) priority 5 > >queue q_em0_med_bulk bandwidth 20% hfsc(linkshare 2%) priority 4 > >queue q_em0_low bandwidth 10% hfsc(linkshare 1%) priority 1 > >queue q_em0_low_bulk bandwidth 10% hfsc(linkshare 1% default) priority 0 > > > ># vlan trunk queueing > >altq on em1 hfsc(ecn upperlimit 500Mb) queue { q_cust, q_dmz } > >queue q_cust hfsc(ecn realtime 2Mb upperlimit 40Mb ) \ > > { q_cust_h, q_cust_hb, q_cust_m, q_cust_mb, q_cust_l, q_cust_lb } > >queue q_cust_h bandwidth 10% hfsc(linkshare 1%) priority 5 > >queue q_cust_hb bandwidth 40% hfsc(linkshare 4%) priority 4 > >queue q_cust_m bandwidth 10% hfsc(linkshare 1%) priority 4 > >queue q_cust_mb bandwidth 20% hfsc(linkshare 2%) priority 2 > >queue q_cust_l bandwidth 10% hfsc(linkshare 1%) priority 1 > >queue q_cust_lb bandwidth 5% hfsc(linkshare 1% default) priority 0 > >queue q_dmz hfsc(ecn realtime 50Mb upperlimit 90Mb) \ > > { q_dmz_h, q_dmz_hb, q_dmz_l, q_dmz_lb } > >queue q_dmz_h bandwidth 10% hfsc(linkshare 5%) priority 7 > >queue q_dmz_hb bandwidth 40% hfsc(linkshare 10%) priority 4 > >queue q_dmz_l bandwidth 10% hfsc(linkshare 2%) priority 3 > >queue q_dmz_lb bandwidth 20% hfsc(linkshare 5% ) priority 0 > > > > > > > > > >>Here's my current configuration: > >> > >>altq on $ext_if bandwidth 100Mb hfsc queue { queue1, queue2, queue3 } > >>queue queue1 bandwidth 500Kb priority 7 hfsc(realtime 128Kb red) > >>queue queue2 { queue2_1, queue2_2, queue2_3, queue2_4, queue2_5 } > >> queue queue2_1 priority 5 hfsc(realtime 3Mb linkshare 100% default re= d) > >> queue queue2_2 bandwidth 1.5Mb priority 3 hfsc(red) > >> queue queue2_3 bandwidth 1Mb hfsc(red) > >> queue queue2_4 bandwidth 4Mb hfsc(red) > >> queue queue2_5 priority 3 hfsc(linkshare 100% red) > >>queue queue3 { queue3_1, queue3_2 } > >> queue queue3_1 hfsc(linkshare 100% red) > >> queue queue3_2 hfsc(linkshare 100% red) > >> > >>I've given some minimum bandwidth to queues. I want queue2_1, 2_5, 3_1, > >>3_2 to be able to utilize all of the spare bandwidth when they need it. > >>I've read over the man pages, however, documentation on hfsc seems > >>fairly limited. > >> > >>Chris > >>_______________________________________________ > >>freebsd-pf@freebsd.org mailing list > >>http://lists.freebsd.org/mailman/listinfo/freebsd-pf > >>To unsubscribe, send any mail to "freebsd-pf-unsubscribe@freebsd.org" > >> > >> > >> > I can move the queues to 1 level. I've even tried. It seems the > problem has something to do with allowing multiple queues to have 90 or > 100% linkshare. This is where I'm stuck because I'm just not sure how > to make multiple queues all share the same pool without doing it that way= . Yeah, the link share percentages need to add up to less than 100%.=20 Upperlimit is what you want to set, I've never managed to get linkshare to do anything (apparently) useful. --Bill
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?55e8a96c0602221042re25f819g1e3815384c022590>