How to get filter stats when using flowid
Pablo Salva <[email protected]> Thu, 17 Mar 2022 11:37:41 +0000
| Newsgroups | org.kernel.vger.lartc |
|---|---|
| Message-ID | <[email protected]> |
Hi all,
I’m trying to get stats from filters that are directing packets to another classes.
Let’s 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’t 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.