tc qdisc show dev ${DEV}
+elif [ "$1" == "htb" ]; then # Hierarchy Token Bucket
+
+ tc qdisc add dev ${DEV} root handle 1: htb
+
+ tc class add dev ${DEV} parent 1: classid 1:1 htb rate 100kbps ceil 100kbps
+ tc class add dev ${DEV} parent 1:1 classid 1:10 htb rate 30kbps ceil 100kbps
+ tc class add dev ${DEV} parent 1:1 classid 1:11 htb rate 10kbps ceil 100kbps
+ tc class add dev ${DEV} parent 1:1 classid 1:12 htb rate 60kbps ceil 100kbps
+
+ tc filter add dev ${DEV} parent 1:0 prio 1 \
+ can sffid 0x123:0x7ff effid 0x123:0x7ff flowid 1:10
+ tc filter add dev ${DEV} parent 1:0 prio 2 \
+ can sffid 0x124:0x7ff effid 0x124:0x7ff flowid 1:11
+ tc filter add dev ${DEV} parent 1:0 prio 3 \
+ can sffid 0x125:0x7ff effid 0x125:0x7ff flowid 1:12
+
+ tc qdisc add dev ${DEV} parent 1:12 handle 40: sfq perturb 10
+
+elif [ "$1" == "sfq" ]; then
+
+ tc qdisc add dev ${DEV} root handle 1: prio
+
+ tc filter add dev ${DEV} parent 1:0 prio 1 \
+ can sffid 0x111 effid 0x111 flowid 1:1
+
+ tc filter add dev ${DEV} parent 1:0 prio 2 \
+ can \
+ sffid 0x123 effid 0x123 \
+ sffid 0x124 effid 0x124 \
+ sffid 0x125 effid 0x125 \
+ flowid 1:2
+
+ tc filter add dev ${DEV} parent 1:0 prio 3 \
+ can sffid 0x0:0x0 effid 0x0:0x0 flowid 1:3
+ # default class
+
+ # SFQ
+ tc qdisc add dev ${DEV} parent 1:2 handle 10: \
+ sfq perturb 10
+
+ tc qdisc add dev ${DEV} parent 1:3 handle 11: \
+ sfq perturb 10
+
elif [ "$1" == "prio2sff" ]; then # create Prio qdiscs and configure can filter
tc qdisc add dev ${DEV} root handle 1: prio bands 5
tc qdisc show dev ${DEV}
-
-elif [ "$1" == "htb" ]; then # Hierarchy Token Bucket
-
- tc qdisc add dev ${DEV} root handle 1: htb
-
- tc class add dev ${DEV} parent 1: classid 1:1 htb rate 100kbps ceil 100kbps
- tc class add dev ${DEV} parent 1:1 classid 1:10 htb rate 30kbps ceil 100kbps
- tc class add dev ${DEV} parent 1:1 classid 1:11 htb rate 10kbps ceil 100kbps
- tc class add dev ${DEV} parent 1:1 classid 1:12 htb rate 60kbps ceil 100kbps
-
- tc filter add dev ${DEV} parent 1:0 prio 1 \
- can sffid 0x123:0x7ff effid 0x123:0x7ff flowid 1:10
- tc filter add dev ${DEV} parent 1:0 prio 2 \
- can sffid 0x124:0x7ff effid 0x124:0x7ff flowid 1:11
- tc filter add dev ${DEV} parent 1:0 prio 3 \
- can sffid 0x125:0x7ff effid 0x125:0x7ff flowid 1:12
-
- tc qdisc add dev ${DEV} parent 1:12 handle 40: sfq perturb 10
else
echo -e "Usage: $0 [ del | stat | show | change | "
echo -e "\t\t\t change2 | change3 | head_drop | tbf | prio | "
- echo -e "\t\t\t prio2sff | prio2eff | htb ]"
+ echo -e "\t\t\t sfq | prio2sff | prio2eff | htb ]"
fi