On Fri, Aug 16, 2019 at 5:49 AM Akshat Kakkar <akshat.1984@xxxxxxxxx> wrote: > > I want to have around 1 Million htb tc classes. > The simple structure of htb tc class, allow having only 64K classes at once. This is probably due the limit of class ID which is 16bit for minor. > But, it is possible to make it more hierarchical using hierarchy of > qdisc and classes. > For this I tried something like this > > tc qdisc add dev eno2 root handle 100: htb > tc class add dev eno2 parent 100: classid 100:1 htb rate 100Mbps > tc class add dev eno2 parent 100: classid 100:2 htb rate 100Mbps > > tc qdisc add dev eno2 parent 100:1 handle 1: htb > tc class add dev eno2 parent 1: classid 1:10 htb rate 100kbps > tc class add dev eno2 parent 1: classid 1:20 htb rate 300kbps > > tc qdisc add dev eno2 parent 100:2 handle 2: htb > tc class add dev eno2 parent 2: classid 2:10 htb rate 100kbps > tc class add dev eno2 parent 2: classid 2:20 htb rate 300kbps > > What I want is something like: > tc filter add dev eno2 parent 100: protocol ip prio 1 handle > 0x00000001 fw flowid 1:10 > tc filter add dev eno2 parent 100: protocol ip prio 1 handle > 0x00000002 fw flowid 1:20 > tc filter add dev eno2 parent 100: protocol ip prio 1 handle > 0x00000003 fw flowid 2:10 > tc filter add dev eno2 parent 100: protocol ip prio 1 handle > 0x00000004 fw flowid 2:20 > > But I am unable to shape my traffic by any of 1:10, 1:20, 2:10 or 2:20. > > Can you please suggest, where is it going wrong? > Is it not possible altogether? The filter could only filter for classes on the same level, you are trying to filter for the children classes, which doesn't work. Thanks.