Asif wrote:
> The linux is accepting the kernel but the problem is that when I do
> “tc filter show” or “tc class show” it is not showing any thing.
Hmm I would have thought tc would have thrown an error if you used
those, but it doesn't.
Your rules work for me, to see them -
tc -s filter ls dev eth1
tc -s class ls dev eth1
> tc qdisc add dev eth1 root handle 1: htb default 20
Won't matter in this case, but arp will go to default.
>
> tc class add dev eth1 parent 1: classid 1:1 htb rate 100mbit ceil
> 100mbit
You need to back off from 100mbit if it's a 100mbit nic, try 95 to allow
for overheads.
If it's a gig nic you may get issues with tso (tcp segmentation offload)
causing super size packets. You can turn it off with ethtool -k.
> tc filter add dev eth1 protocol ip parent 1:0 prio 1 u32 match ip tos
> 46 0xff flowid 1:10
I've never used tos to mark, but if it doesn't work remember to check
for decimal vs hex problems.
|