Referring to Differentiated Services on Linux <draft-almesberger-wajhak-diffserv-linux-01.txt> I read the examples there; they seem to be very helpful. Especially the last two ones of thee EF But in my case I am working on an exterior node (packets are not marked yet) Here is a brief description of my problem. 1. tc qdisc add dev eth0 handle 1:0 root dsmark indices 64 set_tc_index 2. tc class change dev eth0 parent 1:0 classid 1:1 dsmark mask 0x3 value 0xb8 3. tc class change dev eth0 parent 1:0 classid 1:2 dsmark mask 0x3 value 0x28 4. tc class change dev eth0 parent 1:0 classid 1:3 dsmark mask 0x3 value 0x30 5. tc class change dev eth0 parent 1:0 classid 1:4 dsmark mask 0x3 value 0x38 6. tc class change dev eth0 parent 1:0 classid 1:5 dsmark mask 0x3 value 0x48 7. tc class change dev eth0 parent 1:0 classid 1:6 dsmark mask 0x3 value 0x50 8. tc class change dev eth0 parent 1:0 classid 1:7 dsmark mask 0x3 value 0x58 9. tc class change dev eth0 parent 1:0 classid 1:8 dsmark mask 0x3 value 0x60 10. tc class change dev eth0 parent 1:0 classid 1:9 dsmark mask 0x3 value 0x70 11. tc class change dev eth0 parent 1:0 classid 1:a dsmark mask 0x3 value 0x78 12. tc class change dev eth0 parent 1:0 classid 1:b dsmark mask 0x3 value 0x88 13. tc class change dev eth0 parent 1:0 classid 1:c dsmark mask 0x3 value 0x90 14. tc class change dev eth0 parent 1:0 classid 1:d dsmark mask 0x3 value 0x98 15. tc qdisc add dev eth0 handle 2:0 parent 1:0 cbq bandwidth 10Mbit cell 8 avpkt 1000 mpu 64 16. tc class add dev eth0 classid 2:1 parent 2:0 cbq bandwidth 10Mbit rate 50Kbit avpkt 1000 prio 1 bounded allot 1514 weight 1 maxburst 21 17. tc class add dev eth0 classid 2:2 parent 2:0 cbq bandwidth 10Mbit rate 50Kbit avpkt 1000 prio 2 bounded allot 1514 weight 1 maxburst 21 18. tc class add dev eth0 classid 2:3 parent 2:0 cbq bandwidth 10Mbit rate 50Kbit avpkt 1000 prio 3 bounded allot 1514 weight 1 maxburst 21 19. tc class add dev eth0 classid 2:4 parent 2:0 cbq bandwidth 10Mbit rate 50Kbit avpkt 1000 prio 4 bounded allot 1514 weight 1 maxburst 21 20. tc class add dev eth0 classid 2:5 parent 2:0 cbq bandwidth 10Mbit rate 50Kbit avpkt 1000 prio 5 bounded allot 1514 weight 1 maxburst 21 21. tc class add dev eth0 classid 2:6 parent 2:0 cbq bandwidth 10Mbit rate 50Kbit avpkt 1000 prio 6 bounded allot 1514 weight 1 maxburst 21 22. tc class add dev eth0 classid 2:7 parent 2:0 cbq bandwidth 10Mbit rate 50Kbit avpkt 1000 prio 7 bounded allot 1514 weight 1 maxburst 21 23. tc class add dev eth0 classid 2:8 parent 2:0 cbq bandwidth 10Mbit rate 50Kbit avpkt 1000 prio 8 bounded allot 1514 weight 1 maxburst 21 24. tc class add dev eth0 classid 2:9 parent 2:0 cbq bandwidth 10Mbit rate 50Kbit avpkt 1000 prio 9 bounded allot 1514 weight 1 maxburst 21 25. tc class add dev eth0 classid 2:a parent 2:0 cbq bandwidth 10Mbit rate 50Kbit avpkt 1000 prio 10 bounded allot 1514 weight 1 maxburst 21 26. tc class add dev eth0 classid 2:b parent 2:0 cbq bandwidth 10Mbit rate 50Kbit avpkt 1000 prio 11 bounded allot 1514 weight 1 maxburst 21 27. tc class add dev eth0 classid 2:c parent 2:0 cbq bandwidth 10Mbit rate 50Kbit avpkt 1000 prio 12 bounded allot 1514 weight 1 maxburst 21 28. tc class add dev eth0 classid 2:d parent 2:0 cbq bandwidth 10Mbit rate 50Kbit avpkt 1000 prio 13 bounded allot 1514 weight 1 maxburst 21 29. etc. So here in lines 1, 2, till 14 I made a rood qdisc “DSMARK” and put in it two “DSMARK” classes for marking 0xb8, and 0x28, etc In lines 15, 16, till 28 I added a “CBQ” Now I have no problem in making filters to classify the incoming traffic according to their IP header (u32, etc) and to point them to the “DSMARK” classes 1:1, and 1:2. But I need to reclassify the packets within the “CBQ” again, according to the mark they had had. The problem here that I tried to use a “TCINDEX” filter E.g. tc filter add dev eth0 parent 2:0 protocol ip prio 1 tcindex handle 1 tcindex classid 2:1 This filter is supposed to point the traffic with the mark 0xb8 to classid 2:1 But when I added the rest of the filters to point to the classes 2:2, 2:3, 2:d .. only some of the filters worked well and the rest didn’t Also in that “TCINDEX” filter, what value does that handle take? Is it in hex or decimal or is it just the marking classid or what? BEST REGARDS