On May 17, 2011, at 4:00 PM, Mr Dash Four wrote: > >> It would have been helpful to simply point out that any degenerate >> tcfilter produces this result. I've reproduced the problem and the >> attached patch ignores such tcfulters with a warning. >> > I had no idea that would be the case. Anyway, the attached patch works. > >> I had originally mis-read your post and thought that it was dmax that >> was not supplied. Shorewall does supply the mtu as umax if it is >> omitted. From the above tcclass, the actual command executed is: >> >> tc class add dev ifb0 parent ba:1 classid ba:25 hfsc sc umax 1500b dmax >> ---------- >> 350ms rate 500000kbit ul rate 1000000kbit >> >> You can see what 'tc class add' commands Shorewall is executing by: >> >> /var/lib/shorewall/firewall trace restart 2> trace >> fgrep 'class add' trace >> > OK, I used the (grand-calculation) example I started in the hfsc thread. > To recap, this is what I had, according to my calculations: > > a:11 - 10*full/100 20*full/100 1 tcp-ack > a:18 - 80*full/100 full 9 default > a:13 - 320kbit 320kbit 2 > a:13:14 - 120kbit:60ms:1500b full 2 > a:13:15 - 80kbit:100ms:1500b full 3 > a:13:16 - 80kbit:224ms:1500b full 4 > a:13:17 - 40kbit:374ms:1500b full 5 > > "a" is eth0, the speed of which is capped at 100mbit in tcdevices (it > can go up to 1gbit, but I am placing the cap intentionally here). So, > this is the output from shorewall show tc eth0: > > Shorewall 4.4.19.3 Traffic Control at test1.my.net - Tue May 17 23:32:56 > BST 2011 > ... > > So, for the parts I haven't got a clue as to why they are set as they are: > > qdisc sfq ff: parent a:11 limit 127p quantum 2500b flows 127/1024 > perturb 10sec <---- Why 2500b? Where does that come from?
Notice that you are looking at the embedded SFQ qdisc subordinate to a:11. The 'HTB' qdisc requires that the 'quantum' be adjusted above the MTU on fast lines, and the compiler is using the quantum from the HTB calculation for SFQ (yes, I know - you aren't using HTB but the compiler unconditionally calculates the HTB quantum. And it applies it to the SFQ qdisc so that the quanta for HTB and SFQ are the same). The attached patch omits the 'quantum' specification when adding an SFQ qdisc subordinate to an HFSC class.
QUANTUM.patch
Description: Binary data
> class hfsc a:17 parent a:13 leaf 103: sc m1 0bit d 74.0ms m2 40000bit ul > m1 0bit d 0us m2 320000bit <-- Why 74ms when I specified 375ms? Where > does that come from (see my calculations on the hfsc thread for details)? In my post that you are responding to, I showed you how to look at the generated script to see the 'tc add class' commands that Shorewall is generating. If that command shows '74ms' then I will try to understand why that is happening. But I suspect that it shows 375, which means that you will need to ask the HFSC developers. > > Another query: On one of my machines I get a large number of > "overlimits" count - this is on the main (root) class, not a leaf. What > does that mean? I do not have "overlimits" anywhere else though. Don't know. I used HFSC long enough to convince myself that the Shorewall HFSC support was working. I personally use nothing but the simple TC. -Tom Tom Eastep \ When I die, I want to go like my Grandfather who Shoreline, \ died peacefully in his sleep. Not screaming like Washington, USA \ all of the passengers in his car http://shorewall.net \________________________________________________
PGP.sig
Description: This is a digitally signed message part
------------------------------------------------------------------------------ What Every C/C++ and Fortran developer Should Know! Read this article and learn how Intel has extended the reach of its next-generation tools to help Windows* and Linux* C/C++ and Fortran developers boost performance applications - including clusters. http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________ Shorewall-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/shorewall-users
