[Firehol-support] text "ERROR" shown by "fireqos status" for first class in class group

Tsaousis, Costa costa at tsaousis.gr
Tue Apr 21 09:09:02 BST 2015


Strange. Yes I tried both in and out.
I can't test with a bridge though.

Anyway, I'll try to test it once more too.

Costa


On Tue, Apr 21, 2015 at 10:13 AM, Phineas Gage <phineas919 at gmail.com> wrote:
> Hi, I tried the latest build from the head (FireQOS commit-8e7b3a1) and it still shows ERROR for me. Did you try both eth1-in and eth1-out? Currently it’s only happening on eth1-out for me. eth1 is the external interface of a bridge.
>
> Other than that, when I get some time I could try to debug it more, or if I can provide something more let me know.
>
> Phineas
>
>> On Apr 20, 2015, at 8:30 PM, Tsaousis, Costa <costa at tsaousis.gr> wrote:
>>
>> Phineas,
>>
>> I run your config. I didn't get any ERROR values.
>> Can you please check the latest version of FireQOS? It is probably
>> already fixed.
>>
>> Costa
>>
>>
>> On Sun, Apr 19, 2015 at 12:31 PM, Phineas Gage <phineas919 at gmail.com> wrote:
>>> Hi Costa,
>>>
>>> That’s interesting, I did attach both fireqos.conf and
>>> tc_class_show_dev_eth1.txt, but will include both as text then in case they
>>> were stripped out somewhere (along with output from "tc -s qdisc show dev
>>> eth1”). Thanks for taking a look…
>>>
>>> —— fireqos.conf ——
>>>
>>> # Real ADSL input rate: 5127kbit
>>> # Real ADSL output rate: 387kbit
>>>
>>> interface46 eth1 eth1-out output rate 100mbit minrate 12kbit r2q 1
>>>   class lan commit 50mbit ceil 50mbit prio 1
>>>      match4 dst $net_private
>>>      match4 dst $ip_broadcast
>>>      match4 dst $net_multicast
>>>      match6 dst $net6_lan
>>>
>>>   class group adsl commit 360kbit ceil 360kbit adsl remote pppoe-llc prio 0
>>>      match4 src $net_lan
>>>      match6 src $net6_lan dst $net6_global
>>>
>>>      class voip commit 72kbit pfifo prio 0
>>>         match srcmac $mac_voip_phone
>>>
>>>      class business commit 15% prio 1
>>>         match4 dst $ip_planyo
>>>         match4 dst $ip_lif
>>>         match4 dst $ip_drhleny
>>>         match srcmac $mac_payment_terminal
>>>
>>>      class default commit 15% prio 4
>>>         match srcmac $mac_service_west
>>>         match srcmac $mac_service_east
>>>         match srcmac $mac_reception
>>>         match srcmac $mac_office
>>>
>>>      class conferencing commit 15% pfifo prio 2
>>>         match proto udp              # Covers Facetime, Google Hangouts,
>>> Skype, etc, if users don't abuse
>>>         match tcp dports 19305:19309 # Google Hangouts
>>>         match tcp dport 5223         # Apple push notifications
>>>
>>>      class private commit 15% prio 3
>>>         match all
>>>
>>>   class group end
>>>
>>>   class default prio 1
>>>      match all
>>>
>>> interface46 eth1 eth1-in input rate 100mbit minrate 12kbit r2q 1
>>>   class lan commit 50mbit ceil 50mbit prio 1
>>>      match4 src $net_private
>>>      match4 src $ip_broadcast
>>>      match4 src $net_multicast
>>>      match6 src $net6_lan
>>>
>>>   class group adsl commit 4872kbit ceil 4872kbit adsl remote pppoe-llc prio
>>> 0
>>>      match4 dst $net_lan
>>>      match6 dst $net6_lan src $net6_global
>>>
>>>      class voip commit 72kbit pfifo prio 0
>>>         match dstmac $mac_voip_phone
>>>
>>>      class business commit 20% prio 1
>>>         match4 src $ip_planyo
>>>         match4 src $ip_lif
>>>         match4 dst $ip_drhleny
>>>         match dstmac $mac_payment_terminal
>>>
>>>      class default commit 25% prio 4
>>>         match dstmac $mac_service_west
>>>         match dstmac $mac_service_east
>>>         match dstmac $mac_reception
>>>         match dstmac $mac_office
>>>
>>>      class conferencing commit 20% pfifo prio 2
>>>         match proto udp               # Covers Facetime, Google Hangouts,
>>> Skype, etc, if users don't abuse
>>>         match tcp sports 19305:19309  # Google Hangouts
>>>         match tcp sport 5223          # Apple push notifications
>>>
>>>      class private commit 20% prio 3
>>>         match all
>>>
>>>   class group end
>>>
>>>   class default prio 1
>>>      match all
>>>
>>> ——
>>>
>>> —— tc_class_show_dev_eth1.txt ——
>>>
>>> class htb 1:11 parent 1:1 leaf 11: prio 1 rate 50000Kbit ceil 50000Kbit
>>> burst 1600b cburst 1600b
>>> Sent 6771 bytes 59 pkt (dropped 0, overlimits 0 requeues 0)
>>> rate 0bit 0pps backlog 0b 0p requeues 0
>>> lended: 59 borrowed: 0 giants: 0
>>> tokens: 3855 ctokens: 3855
>>>
>>> class htb 1:1 root rate 100000Kbit ceil 100000Kbit burst 1600b cburst 1600b
>>> Sent 3102742 bytes 3978 pkt (dropped 0, overlimits 0 requeues 0)
>>> rate 0bit 0pps backlog 0b 0p requeues 0
>>> lended: 0 borrowed: 0 giants: 0
>>> tokens: 1735 ctokens: 1735
>>>
>>> class htb 1:12 parent 1:1 leaf 12: prio 0 rate 360000bit ceil 360000bit
>>> burst 1599b cburst 1599b
>>> Sent 3087197 bytes 3786 pkt (dropped 0, overlimits 0 requeues 0)
>>> rate 0bit 0pps backlog 0b 0p requeues 0
>>> lended: 3786 borrowed: 0 giants: 0
>>> tokens: 481934 ctokens: 481934
>>>
>>> class htb 1:5000 parent 1:1 leaf 18: prio 1 rate 12000bit ceil 100000Kbit
>>> burst 1599b cburst 1600b
>>> Sent 8774 bytes 133 pkt (dropped 0, overlimits 0 requeues 0)
>>> rate 0bit 0pps backlog 0b 0p requeues 0
>>> lended: 133 borrowed: 0 giants: 0
>>> tokens: 15999989 ctokens: 1920
>>>
>>> class fq_codel 11:228 parent 11:
>>> (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  deficit 1398 count 0 lastcount 0 ldelay 2us
>>> class htb 12:11 parent 12:1 leaf 13: prio 0 rate 72000bit ceil 360000bit
>>> burst 1599b cburst 1599b
>>> Sent 1007 bytes 1 pkt (dropped 0, overlimits 0 requeues 0)
>>> rate 0bit 0pps backlog 0b 0p requeues 0
>>> lended: 1 borrowed: 0 giants: 0
>>> tokens: 1029501 ctokens: 205893
>>>
>>> class htb 12:1 root rate 360000bit ceil 360000bit burst 1599b cburst 1599b
>>> Sent 3029533 bytes 3707 pkt (dropped 0, overlimits 0 requeues 0)
>>> rate 0bit 0pps backlog 0b 0p requeues 0
>>> lended: 2622 borrowed: 0 giants: 0
>>> tokens: 481934 ctokens: 481934
>>>
>>> class htb 12:12 parent 12:1 leaf 14: prio 1 rate 54000bit ceil 360000bit
>>> burst 1599b cburst 1599b
>>> Sent 44944 bytes 222 pkt (dropped 0, overlimits 0 requeues 0)
>>> rate 0bit 0pps backlog 0b 0p requeues 0
>>> lended: 222 borrowed: 0 giants: 0
>>> tokens: 3212962 ctokens: 481934
>>>
>>> class htb 12:15 parent 12:1 leaf 17: prio 3 rate 54000bit ceil 360000bit
>>> burst 1599b cburst 1599b
>>> Sent 184069 bytes 332 pkt (dropped 0, overlimits 0 requeues 0)
>>> rate 0bit 0pps backlog 0b 0p requeues 0
>>> lended: 202 borrowed: 130 giants: 0
>>> tokens: 3458332 ctokens: 518740
>>>
>>> class htb 12:14 parent 12:1 leaf 16: prio 2 rate 54000bit ceil 360000bit
>>> burst 1599b cburst 1599b
>>> Sent 7579 bytes 47 pkt (dropped 0, overlimits 0 requeues 0)
>>> rate 0bit 0pps backlog 0b 0p requeues 0
>>> lended: 47 borrowed: 0 giants: 0
>>> tokens: 3335647 ctokens: 500337
>>>
>>> class htb 12:5012 parent 12:1 leaf 15: prio 3 rate 54000bit ceil 360000bit
>>> burst 1599b cburst 1599b
>>> Sent 2791934 bytes 3105 pkt (dropped 0, overlimits 0 requeues 0)
>>> rate 0bit 0pps backlog 0b 0p requeues 0
>>> lended: 613 borrowed: 2492 giants: 0
>>> tokens: -1789541 ctokens: 518740
>>>
>>> class fq_codel 14:2b0 parent 14:
>>> (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  deficit 635 count 0 lastcount 0 ldelay 13us
>>> class fq_codel 15:39 parent 15:
>>> (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  deficit 1332 count 1 lastcount 1 ldelay 2us
>>> class fq_codel 15:2aa parent 15:
>>> (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  deficit 1408 count 1 lastcount 1 ldelay 4us
>>> class fq_codel 15:34f parent 15:
>>> (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  deficit 832 count 1 lastcount 1 ldelay 2us
>>> class fq_codel 17:d0 parent 17:
>>> (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  deficit 242 count 0 lastcount 0 ldelay 2us
>>> class fq_codel 17:27d parent 17:
>>> (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  deficit 719 count 0 lastcount 0 ldelay 20.0ms
>>> class fq_codel 17:33c parent 17:
>>> (dropped 18, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  deficit 544 count 1 lastcount 1 ldelay 34.4ms
>>> class fq_codel 17:3f7 parent 17:
>>> (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  deficit 507 count 0 lastcount 0 ldelay 24.9ms
>>> class fq_codel 18:129 parent 18:
>>> (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  deficit 710 count 0 lastcount 0 ldelay 2us
>>> class fq_codel 18:242 parent 18:
>>> (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  deficit 1440 count 0 lastcount 0 ldelay 3us
>>>
>>> ——
>>>
>>> —— tc_qdisc_show_dev_eth1.txt ——
>>> qdisc htb 1: root refcnt 2 r2q 1 default 5000 direct_packets_stat 70
>>> direct_qlen 1000
>>> Sent 4872043 bytes 6321 pkt (dropped 432, overlimits 9254 requeues 0)
>>> backlog 0b 1p requeues 0
>>> qdisc fq_codel 11: parent 1:11 limit 10240p flows 1024 quantum 1514 target
>>> 5.0ms interval 100.0ms ecn
>>> Sent 12069 bytes 102 pkt (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  maxpacket 447 drop_overlimit 0 new_flow_count 66 ecn_mark 0
>>>  new_flows_len 1 old_flows_len 0
>>> qdisc htb 12: parent 1:12 r2q 10 default 5012 direct_packets_stat 79
>>> direct_qlen 1000
>>> Sent 4821728 bytes 5900 pkt (dropped 432, overlimits 0 requeues 0)
>>> backlog 0b 1p requeues 0
>>> qdisc pfifo 13: parent 12:11 limit 1000p
>>> Sent 2014 bytes 2 pkt (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>> qdisc fq_codel 14: parent 12:12 limit 10240p flows 1024 quantum 1514 target
>>> 5.0ms interval 100.0ms ecn
>>> Sent 76320 bytes 377 pkt (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  maxpacket 583 drop_overlimit 0 new_flow_count 2 ecn_mark 0
>>>  new_flows_len 0 old_flows_len 1
>>> qdisc fq_codel 15: parent 12:5012 limit 10240p flows 1024 quantum 1514
>>> target 5.0ms interval 100.0ms ecn
>>> Sent 4269309 bytes 4542 pkt (dropped 398, overlimits 0 requeues 0)
>>> backlog 1696b 1p requeues 0
>>>  maxpacket 1696 drop_overlimit 0 new_flow_count 1200 ecn_mark 0
>>>  new_flows_len 0 old_flows_len 2
>>> qdisc pfifo 16: parent 12:14 limit 1000p
>>> Sent 21147 bytes 132 pkt (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>> qdisc fq_codel 17: parent 12:15 limit 10240p flows 1024 quantum 1514 target
>>> 5.0ms interval 100.0ms ecn
>>> Sent 405662 bytes 775 pkt (dropped 33, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  maxpacket 1696 drop_overlimit 0 new_flow_count 81 ecn_mark 0
>>>  new_flows_len 0 old_flows_len 1
>>> qdisc fq_codel 18: parent 1:5000 limit 10240p flows 1024 quantum 1514 target
>>> 5.0ms interval 100.0ms ecn
>>> Sent 16460 bytes 249 pkt (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>  maxpacket 256 drop_overlimit 0 new_flow_count 35 ecn_mark 0
>>>  new_flows_len 1 old_flows_len 2
>>> qdisc ingress ffff: parent ffff:fff1 ----------------
>>> Sent 2602686 bytes 6256 pkt (dropped 0, overlimits 0 requeues 0)
>>> backlog 0b 0p requeues 0
>>>
>>> ——
>>>
>>>
>>> Phineas
>>>
>>> On Apr 19, 2015, at 11:15 AM, Tsaousis, Costa <costa at tsaousis.gr> wrote:
>>>
>>> Hi Phineas,
>>>
>>> I don't see your config file attached.
>>> Please attach it. I'll try to run it to figure out what is happening.
>>>
>>> Costa
>>>
>>>
>>> On Sun, Apr 19, 2015 at 12:05 PM, Phineas Gage <phineas919 at gmail.com> wrote:
>>>
>>> Hi,
>>>
>>> In FireQOS 2.0.2, When I run "fireqos status <dev>” (where <dev> is either
>>> eth1-in or eth1-out), I see the text ERROR for the first class in a class
>>> group. So the output looks like this:
>>>
>>> -----
>>> FireQOS 2.0.2
>>> (C) 2013-2014 Costa Tsaousis, GPL
>>>
>>> eth1-out: eth1 output => eth1, type: , overhead:
>>> Rate: 100000Kbit/s, min: 12Kbit/s
>>> Values in Kbit/s
>>>
>>> CLASS     lan    adsl ad/voip ad/busi ad/defa ad/conf ad/priv default
>>> CLASSID    1:11    12:1   12:11   12:12 12:5012   12:14   12:15  1:5000
>>> COMMIT   50000     360      72      54      54      54      54      12
>>>   MAX   50000     360     360     360     360     360     360  100000
>>>
>>> PRIORIT       1       0       0       1       4       2       3       1
>>> QDISC fq_code fq_code fq_code fq_code fq_code fq_code fq_code fq_code
>>>
>>> color code (packets):  backlog  |  dropped  |  delayed  |  requeued
>>> Class Utilization on eth1-out (eth1 output => eth1) - values in Kbit/s
>>> TOTAL     lan    adsl ad/voip ad/busi ad/defa ad/conf ad/priv default
>>>    19       2      15   ERROR       -       1       -      14       2
>>>    41       4      37   ERROR       -       -       -      37       -
>>> ——
>>>
>>> Looking at the fireqos script, it’s line 3022, in FireQOS 2.0.2, that
>>> decides to print ERROR when the value of $y is zero length, for some reason.
>>>
>>> Here are a few things I’ve noticed about it:
>>>
>>> - If the first class in my class group is “default”, it doesn’t happen.
>>> That’s the way I had it before, but I need to make a change now.
>>> - If I change the rates on my classes and groups slightly, the ERROR can go
>>> away, but it seems inconsistent what changes produce what result.
>>> - If I switch the order such that for example “business” is the first class
>>> in the group instead of “voip” then “business” is the one that sees the
>>> error.
>>>
>>> I attached my fireqos.conf, with variable definitions removed, as well as
>>> the output from “tc class show dev eth1”, in case it’s useful.
>>>
>>> Any ideas?
>>>
>>> Regards,
>>> Phineas
>>> _______________________________________________
>>> Firehol-support mailing list
>>> Firehol-support at lists.firehol.org
>>> http://lists.firehol.org/mailman/listinfo/firehol-support
>>>
>>>
>



More information about the Firehol-support mailing list