Hello I am using htb (krenel 2.6.14.3 + esfq patch from fatooh.org) to limit the bandwidth. But I want the absolute maximum rate to be for example 5Mbit and not to exceed it. here is the script: $tc qdisc add dev ${NETIF} root handle 1 htb r2q 4 $tc class add dev ${NETIF} parent 1: classid 1:21 htb rate 5Mbit ceil 5Mbit $tc class add dev ${NETIF} parent 1:21 classid 1:101 htb rate 2Mbit ceil 5Mbit prio 1 $tc class add dev ${NETIF} parent 1:21 classid 1:102 htb rate 1Mbit ceil 5Mbit prio 2 $tc class add dev ${NETIF} parent 1:21 classid 1:103 htb rate 3Mbit ceil 5Mbit prio 3 when I don''t specify burst the flow always exceeds 5Mbit when I try to play with it (the burst) for example turning it off completely burst 0 cburst 0 for parent and children classes the rate falls ot 2-3 Mbits removing the esfq qdiscs doesn''t change anything... I want exact rate of 5Mbit for the parent class and no more? any suggestions are welcome :) -- Anton Glinkov network administrator
Your subclass''s combined rate''s should never exceed your parent class''s rate, and in this case your parent class is 5mbit, yet your subclasses have a combined guarenteed bandwidth of 6mbit. In my setup, the root classes rate is followed strictly. With burst, it may go over temporarily but over say a minute''s time, the bandwidth is pretty close to the set rate, usualy within ~0.4%. I''m unsure on what the behavior is when you allocate more bandwidth to subclasses than the root, but it may be the reason you''re not seeing accurate results. - Jody On 12/14/05, Anton Glinkov <lartc@ssi.bg> wrote:> > Hello > I am using htb (krenel 2.6.14.3 + esfq patch from fatooh.org) to limit the > bandwidth. But I want the absolute maximum rate to be for example 5Mbit > and not to exceed it. > > here is the script: > > $tc qdisc add dev ${NETIF} root handle 1 htb r2q 4 > $tc class add dev ${NETIF} parent 1: classid 1:21 htb rate 5Mbit ceil > 5Mbit > $tc class add dev ${NETIF} parent 1:21 classid 1:101 htb rate 2Mbit ceil > 5Mbit prio 1 > $tc class add dev ${NETIF} parent 1:21 classid 1:102 htb rate 1Mbit ceil > 5Mbit prio 2 > $tc class add dev ${NETIF} parent 1:21 classid 1:103 htb rate 3Mbit ceil > 5Mbit prio 3 > > when I don''t specify burst the flow always exceeds 5Mbit > when I try to play with it (the burst) for example turning it off > completely > burst 0 cburst 0 for parent and children classes the rate falls ot 2-3 > Mbits > > removing the esfq qdiscs doesn''t change anything... > > I want exact rate of 5Mbit for the parent class and no more? > > any suggestions are welcome :) > > -- > Anton Glinkov > network administrator > > _______________________________________________ > LARTC mailing list > LARTC@mailman.ds9a.nl > http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc >_______________________________________________ LARTC mailing list LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc
What confuses me is, how the popular HTB script ''wondershaper'' works! The sum of its subclasses'' rates is way over the parent''s rate. ----- Original Message ----- From: Jody Shumaker To: Anton Glinkov Cc: lartc@mailman.ds9a.nl Sent: Friday, December 23, 2005 4:22 AM Subject: Re: [LARTC] exact rate Your subclass''s combined rate''s should never exceed your parent class''s rate, and in this case your parent class is 5mbit, yet your subclasses have a combined guarenteed bandwidth of 6mbit. In my setup, the root classes rate is followed strictly. With burst, it may go over temporarily but over say a minute''s time, the bandwidth is pretty close to the set rate, usualy within ~0.4%. I''m unsure on what the behavior is when you allocate more bandwidth to subclasses than the root, but it may be the reason you''re not seeing accurate results. - Jody On 12/14/05, Anton Glinkov <lartc@ssi.bg> wrote: Hello I am using htb (krenel 2.6.14.3 + esfq patch from fatooh.org) to limit the bandwidth. But I want the absolute maximum rate to be for example 5Mbit and not to exceed it. here is the script: $tc qdisc add dev ${NETIF} root handle 1 htb r2q 4 $tc class add dev ${NETIF} parent 1: classid 1:21 htb rate 5Mbit ceil 5Mbit $tc class add dev ${NETIF} parent 1:21 classid 1:101 htb rate 2Mbit ceil 5Mbit prio 1 $tc class add dev ${NETIF} parent 1:21 classid 1:102 htb rate 1Mbit ceil 5Mbit prio 2 $tc class add dev ${NETIF} parent 1:21 classid 1:103 htb rate 3Mbit ceil 5Mbit prio 3 when I don''t specify burst the flow always exceeds 5Mbit when I try to play with it (the burst) for example turning it off completely burst 0 cburst 0 for parent and children classes the rate falls ot 2-3 Mbits removing the esfq qdiscs doesn''t change anything... I want exact rate of 5Mbit for the parent class and no more? any suggestions are welcome :) -- Anton Glinkov network administrator _______________________________________________ LARTC mailing list LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc ------------------------------------------------------------------------------ _______________________________________________ LARTC mailing list LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc _______________________________________________ LARTC mailing list LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc
Thing is, it did not work for me, because of that exact reason. I had issues with it ignoring rates and in general not giving the lower latency I was going for. I really wish someone would update it. lartc.org is broken right now, but I believe the version up there is 3 years old. - Jody Salim wrote:> What confuses me is, how the popular HTB script ''wondershaper'' works! > The sum of its subclasses'' rates is way over the parent''s rate. > > ----- Original Message ----- > *From:* Jody Shumaker <mailto:jody.shumaker@gmail.com> > *To:* Anton Glinkov <mailto:lartc@ssi.bg> > *Cc:* lartc@mailman.ds9a.nl <mailto:lartc@mailman.ds9a.nl> > *Sent:* Friday, December 23, 2005 4:22 AM > *Subject:* Re: [LARTC] exact rate > > Your subclass''s combined rate''s should never exceed your parent > class''s rate, and in this case your parent class is 5mbit, yet > your subclasses have a combined guarenteed bandwidth of 6mbit. In > my setup, the root classes rate is followed strictly. With > burst, it may go over temporarily but over say a minute''s time, > the bandwidth is pretty close to the set rate, usualy within > ~0.4%. I''m unsure on what the behavior is when you allocate more > bandwidth to subclasses than the root, but it may be the reason > you''re not seeing accurate results. > > - Jody > > On 12/14/05, *Anton Glinkov* <lartc@ssi.bg <mailto:lartc@ssi.bg>> > wrote: > > Hello > I am using htb (krenel 2.6.14.3 <http://2.6.14.3> + esfq patch > from fatooh.org <http://fatooh.org>) to limit the > bandwidth. But I want the absolute maximum rate to be for > example 5Mbit > and not to exceed it. > > here is the script: > > $tc qdisc add dev ${NETIF} root handle 1 htb r2q 4 > $tc class add dev ${NETIF} parent 1: classid 1:21 htb rate > 5Mbit ceil 5Mbit > $tc class add dev ${NETIF} parent 1:21 classid 1:101 htb rate > 2Mbit ceil > 5Mbit prio 1 > $tc class add dev ${NETIF} parent 1:21 classid 1:102 htb rate > 1Mbit ceil > 5Mbit prio 2 > $tc class add dev ${NETIF} parent 1:21 classid 1:103 htb rate > 3Mbit ceil > 5Mbit prio 3 > > when I don''t specify burst the flow always exceeds 5Mbit > when I try to play with it (the burst) for example turning it > off completely > burst 0 cburst 0 for parent and children classes the rate > falls ot 2-3 Mbits > > removing the esfq qdiscs doesn''t change anything... > > I want exact rate of 5Mbit for the parent class and no more? > > any suggestions are welcome :) > > -- > Anton Glinkov > network administrator >