Ok, to moze troche rozszerze...
Mam 7 klas, zdefiniowanych tak:
Kod: Zaznacz cały
tc class add dev $DEV parent 1:1 classid 1:20 htb rate $[$RATEUP/7]kbit ceil ${RATEUP}kbit prio 0
tc class add dev $DEV parent 1:1 classid 1:21 htb rate $[$RATEUP/7]kbit ceil ${RATEUP}kbit prio 1
tc class add dev $DEV parent 1:1 classid 1:22 htb rate $[$RATEUP/7]kbit ceil ${RATEUP}kbit prio 2
tc class add dev $DEV parent 1:1 classid 1:23 htb rate $[$RATEUP/7]kbit ceil ${RATEUP}kbit prio 3
tc class add dev $DEV parent 1:1 classid 1:24 htb rate $[$RATEUP/7]kbit ceil ${RATEUP}kbit prio 4
tc class add dev $DEV parent 1:1 classid 1:25 htb rate $[$RATEUP/7]kbit ceil ${RATEUP}kbit prio 5
tc class add dev $DEV parent 1:1 classid 1:26 htb rate $[$RATEUP/7]kbit ceil ${RATEUP}kbit prio 6
kazda z odpowiednim qdisc
Kod: Zaznacz cały
tc qdisc add dev $DEV parent 1:20 handle 20: sfq perturb 10
i oczywiscie wyslanie zmarkowanych pakietow
Kod: Zaznacz cały
tc filter add dev $DEV parent 1:0 prio 0 protocol ip handle 20 fw flowid 1:20
dqisc i filtry oczywiscie dla wszystkich klas...
I teraz co wrzucam do klas:
Kod: Zaznacz cały
iptables -t mangle -AOUT -p tcp --sport 0:1024 -j MARK --set-mark 23 # Default for low port traffic
iptables -t mangle -AOUT -p tcp --dport 0:1024 -j MARK --set-mark 23 # ""
iptables -t mangle -A OUT -p tcp --sport 1305 -j MARK --set-mark 22 # Gra markaiptables -t mangle -A OUT -p tcp --dport 1305 -j MARK --set-mark 22 #Gra marka
iptables -t mangle -A OUT -p tcp --dport 20 -j MARK --set-mark 26 # ftp-data port, low prio
iptables -t mangle -A OUT -p tcp --dport 5190 -j MARK --set-mark 23 # aol instant messenger
iptables -t mangle -A OUT -p icmp -j MARK --set-mark 20 # ICMP (ping) - high prio, impress friends
iptables -t mangle -A OUT -p udp -j MARK --set-mark 21 # DNS name resolution (small packets)
iptables -t mangle -A OUT -p tcp --dport ssh -j MARK --set-mark 22 # secure shell
iptables -t mangle -A OUT -p tcp --sport ssh -j MARK --set-mark 22 # secure shell
iptables -t mangle -A OUT -p tcp --dport telnet -j MARK --set-mark 22 # telnet (ew...)
iptables -t mangle -A OUT -p tcp --sport telnet -j MARK --set-mark 22 # telnet (ew...)
iptables -t mangle -A OUT -p tcp --sport http -j MARK --set-mark 25 # Local web server
iptables -t mangle -A OUT -p tcp -m length --length :64 -j MARK --set-mark 21 # small packets (probably just ACKs)
iptables -t mangle -A OUT -m mark --mark 0 -j MARK --set-mark 26 # redundant- mark any unmarked packets as 26 (low prio)
iptables -t mangle -A OUT -p tcp -m ipp2p --ipp2p -j MARK --set-mark 26
Tak znacze pakiety. To z opisem Gra Marka, to właśnie ta gra, jest wrzucana do 2 klasy, bo w pierwsze w zasadzie nic nie ma. Może mam za mało tych reguł?
EDIT: W sumie tak jak sobie to pisałem to pomyslałem, że wrzuce jednak tą grę do najwyższej klasy i zobacze teraz.
Ale jak znacie bardziej skomplikowane znakowanie, to chetnie przeczytam:)