#!/bin/bash

# clear eth1 root
tc qdisc del dev eth1 root

tc qdisc add dev eth1 root handle 1: htb default 10

# main
tc class add dev eth1 parent 1: classid 1:1 htb rate 1Mbit prio 0

# default
tc class add dev eth1 parent 1:1 classid 1:10 htb rate 100Kbit ceil 800Kbit prio 5
# for ssh
tc class add dev eth1 parent 1:1 classid 1:11 htb rate 100Kbit ceil 1Mbit prio 1
# for http/https
tc class add dev eth1 parent 1:1 classid 1:12 htb rate 700Kbit ceil 1Mbit prio 2

# sfq
#tc qdisc add dev eth1 parent 1:10 handle 110: sfq perturb 10 
#tc qdisc add dev eth1 parent 1:11 handle 111: sfq perturb 5 
#tc qdisc add dev eth1 parent 1:12 handle 112: sfq perturb 10 

# filer ssh to 1:11
tc filter add dev eth1 parent 1: prio 1 protocol ip u32 match ip sport 58422 0xffff flowid 1:11
# filer http to 1:12
tc filter add dev eth1 parent 1: prio 2 protocol ip u32 match ip sport 80 0xffff flowid 1:12
# filer https to 1:12
tc filter add dev eth1 parent 1: prio 2 protocol ip u32 match ip sport 443 0xffff flowid 1:12
