How to get filter stats when using flowid
Pablo Salva <[email protected]> Thu, 17 Mar 2022 11:37:41 +0000
| Newsgroups | gmane.linux.network.routing |
|---|---|
| Message-ID | <[email protected]> |
Hi all,
I=E2=80=99m trying to get stats from filters that are directing packets =
to another classes.
Let=E2=80=99s say that I have different filters attached to the root =
class 1:fffe who decides if packets need to be enqueued to any of its =
child classes.
- Classes estructure example:
+---(1:fffe) htb rate 1Gbit ceil 1Gbit burst 1375b cburst 1375b
+---(1:1) htb prio 0 rate 12Kbit ceil 1Gbit burst 1599b cburst =
1375b
+---(1:2) htb prio 1 rate 250Mbit ceil 250Mbit burst 1562b cburst =
1562b
+---(1:3) htb prio 2 rate 250Mbit ceil 250Mbit burst 1562b cburst =
1562b
- Filter example 1 (attached to 1:fffe):
filter protocol ip pref 1 u32 chain 0
filter protocol ip pref 1 u32 chain 0 fh 800: ht divisor 1
filter protocol ip pref 1 u32 chain 0 fh 800::800 order 2048 key ht 800 =
bkt 0 flowid 1:2 not_in_hw
match 00010000/00ff0000 at 8
- Filter example 2 (attached to 1:fffe):
filter protocol ip pref 2 u32 chain 0
filter protocol ip pref 2 u32 chain 0 fh 801: ht divisor 1
filter protocol ip pref 2 u32 chain 0 fh 801::800 order 2048 key ht 801 =
bkt 0 flowid 1:2 not_in_hw
match 00070000/00ff0000 at 8
Both filters are sending packets to the class 1:2 (when their u32 =
expression match).
However (even when using -s option), I don=E2=80=99t know how to get =
stats (packets/bytes) per each filter.
So I cannot see which of the 2 filters is actually producing the packets =
being sent to that class.
I know that it is possible to get stats when filter has an action (drop, =
mirred, etc), but I am not aware of how to get stats in this scenario.
I am sure that many of you have deal with this newbie issue before.
So please, any tips or suggestions on this would be greatly appreciated.
Thanks in advance.