In my linux router:
- interface eth1 total bandwidth is 1gbit
- I want to divide 1140kbit to GroupA, divide 150kbit to GroupB
- Set users 10.10.10.158, 10.10.21.5, 10.10.21.6 to GroupB
- Each user has no more than 128kbit bandwidth
- And three users has no more than 150kbit total bandwidth.
Following are what I set:
sudo tc qdisc del dev eth1 root 2>/dev/null
sudo tc qdisc add dev eth1 root handle 1: htb default 2
sudo tc class add dev eth1 parent 1: classid 1:1 htb rate 1gbit ceil 1gbit
sudo tc class add dev eth1 parent 1:1 classid 1:2 htb rate 10kbps ceil 10kbps
sudo tc class add dev eth1 parent 1:1 classid 1:10 htb rate 1140kbit ceil 1140kbit
sudo tc class add dev eth1 parent 1:1 classid 1:20 htb rate 128kbit ceil 128kbit
sudo tc class add dev eth1 parent 1:20 classid 1:21 htb rate 128kbit ceil 128kbit
sudo tc filter add dev eth1 protocol ip parent 1:0 prio 1 u32 match ip dst 10.10.10.158/32 flowid 1:21
sudo tc class add dev eth1 parent 1:20 classid 1:22 htb rate 128kbit ceil 128kbit
sudo tc filter add dev eth1 protocol ip parent 1:0 prio 1 u32 match ip dst 10.10.21.5/32 flowid 1:22
sudo tc class add dev eth1 parent 1:20 classid 1:23 htb rate 128kbit ceil 128kbit
sudo tc filter add dev eth1 protocol ip parent 1:0 prio 1 u32 match ip dst 10.10.21.6/32 flowid 1:23
However, I found three users total bandwidth is about 376kbit. What should I do to acheive my goal?