I don''t understand the following: root@jmnrouter:~# tc -s class ls dev vlan1 && tc -s qdisc ls dev vlan1 class hfsc 1: root Sent 0 bytes 0 pkts (dropped 0, overlimits 0) period 0 level 2 class hfsc 1:1 parent 1: sc m1 0bit d 0us m2 220000bit ul m1 0bit d 0us m2 220000bit Sent 0 bytes 0 pkts (dropped 0, overlimits 0) period 31304 work 7533852 bytes level 1 class hfsc 1:10 parent 1:1 sc m1 1024bit d 8.0ms m2 100000bit ul m1 0bit d 0us m2 220000bit Sent 6892869 bytes 33300 pkts (dropped 0, overlimits 0) period 32750 work 6892869 bytes rtwork 6725586 bytes level 0 class hfsc 1:20 parent 1:1 sc m1 4096bit d 100.0ms m2 75000bit ul m1 0bit d 0us m2 220000bit Sent 0 bytes 0 pkts (dropped 0, overlimits 0) period 0 level 0 class hfsc 1:30 parent 1:1 sc m1 8200bit d 200.0ms m2 30000bit ul m1 0bit d 0us m2 220000bit Sent 640821 bytes 636 pkts (dropped 0, overlimits 0) period 277 work 640821 bytes rtwork 199829 bytes level 0 class hfsc 1:40 parent 1:1 sc m1 8200bit d 300.0ms m2 15008bit ul m1 0bit d 0us m2 220000bit Sent 162 bytes 3 pkts (dropped 0, overlimits 0) period 3 work 162 bytes rtwork 162 bytes level 0 qdisc hfsc 1: default 30 Sent 7537524 bytes 33953 pkts (dropped 6, overlimits 4145) backlog 3p Why is the qdisc backloged with dropped packets and overlimits when the classes are not? The txlen on the vlan1 device is 1000. This is happening with 256kbit up dsl with only one voip conversation utilizing the link (90kbit codec). The voice is occasionally gets choppy and I''m trying to figure out if it is due to the backlog or my setup etc? What tools are availabe to debug this stuff? Thanks for all of your insight and a VERY informative mailing list.
James Nelson wrote:> I don''t understand the following: > > root@jmnrouter:~# tc -s class ls dev vlan1 && tc -s qdisc ls dev vlan1 > class hfsc 1: root > Sent 0 bytes 0 pkts (dropped 0, overlimits 0) > period 0 level 2 > > class hfsc 1:1 parent 1: sc m1 0bit d 0us m2 220000bit ul m1 0bit d 0us m2 > 220000bit > Sent 0 bytes 0 pkts (dropped 0, overlimits 0) > period 31304 work 7533852 bytes level 1 > > class hfsc 1:10 parent 1:1 sc m1 1024bit d 8.0ms m2 100000bit ul m1 0bit d > 0us m2 220000bit > Sent 6892869 bytes 33300 pkts (dropped 0, overlimits 0) > period 32750 work 6892869 bytes rtwork 6725586 bytes level 0 > > class hfsc 1:20 parent 1:1 sc m1 4096bit d 100.0ms m2 75000bit ul m1 0bit d > 0us m2 220000bit > Sent 0 bytes 0 pkts (dropped 0, overlimits 0) > period 0 level 0 > > class hfsc 1:30 parent 1:1 sc m1 8200bit d 200.0ms m2 30000bit ul m1 0bit d > 0us m2 220000bit > Sent 640821 bytes 636 pkts (dropped 0, overlimits 0) > period 277 work 640821 bytes rtwork 199829 bytes level 0 > > class hfsc 1:40 parent 1:1 sc m1 8200bit d 300.0ms m2 15008bit ul m1 0bit d > 0us m2 220000bit > Sent 162 bytes 3 pkts (dropped 0, overlimits 0) > period 3 work 162 bytes rtwork 162 bytes level 0 > > qdisc hfsc 1: default 30 > Sent 7537524 bytes 33953 pkts (dropped 6, overlimits 4145) > backlog 3p > > > Why is the qdisc backloged with dropped packets and overlimits when the > classes are not?You seen to be using an old iproute version. There was some compatibility breakage that affected statistics.
Thanks for all of your help Patrick! Just so I''m clear. If hfsc at the class level shows no overlimits and no packet dropps, then hfsc is not effecting my traffic any different (from a throughput perspective computational computer slowness aside) then if i had no traffic shapping in place? _______________________________________________ LARTC mailing list LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc
On Wednesday 22 March 2006 19:13, James Nelson wrote:> Thanks for all of your help Patrick! > > Just so I''m clear. If hfsc at the class level shows no overlimits and no > packet dropps, then hfsc is not effecting my traffic any different (from a > throughput perspective computational computer slowness aside) then if i had > no traffic shapping in place?Well, surely if you''re not delaying or dropping any traffic on your side of the pipe, you''re either using less bandwidth than you have or you''ve overstated the true size of your upstream link. In either case, no shaping can occur as ordering packets has little effect if there''s no bottleneck. -- Jason Boxman http://edseek.com/ - Linux and FOSS stuff
Jason Boxman wrote:> On Wednesday 22 March 2006 19:13, James Nelson wrote: > >>Thanks for all of your help Patrick! >> >>Just so I''m clear. If hfsc at the class level shows no overlimits and no >>packet dropps, then hfsc is not effecting my traffic any different (from a >>throughput perspective computational computer slowness aside) then if i had >>no traffic shapping in place? > > > Well, surely if you''re not delaying or dropping any traffic on your side of > the pipe, you''re either using less bandwidth than you have or you''ve > overstated the true size of your upstream link. In either case, no shaping > can occur as ordering packets has little effect if there''s no bottleneck.Not exactly. Overlimit means no eligible class could be found because _all_ classes are over their limits, it can''t be accounted to a specific class but only globally. There is no way (except for backlog statistics, but backlogs can also happen because of other reasons) to tell if a single class is affected by rate limiting or not.
James Nelson wrote:> Thanks for all of your help Patrick! > > Just so I''m clear. If hfsc at the class level shows no overlimits and no > packet dropps, then hfsc is not effecting my traffic any different (from a > throughput perspective computational computer slowness aside) then if i had > no traffic shapping in place?Noting what Patrick says as a caveat. But if you set up a rt class in hfsc at the moment (it may change soon) you can sort of get a feel for what''s gone on historically by looking at the requeue counters (can''t remember if tc -s class ls will do or tc -s qdisc ls with child queues on the class is needed). If you have a rt class you probably don''t want it to ever be backlogged - it won''t be very rt anymore (OK you could have short queue & drop). If a rt class has become backlogged in the past then you will see requeues - it may not be perfect, but I would say big number = bad, 0 = good. Andy.