|
|
|
|
HTB - jak dopracować.
mavarick87 - 19-02-2008 23:37
Witam
Napisałem sobie taki skrypt HTB
#HTB - koleiki
#eth0 - internet #eth1 - lan
#kasowanie
tc qdisc del root dev eth1 tc qdisc del root dev eth0
#zaklada glowna kolejke #download tc qdisc add dev eth1 root handle 1:0 htb #upload tc qdisc add dev eth0 root handle 2:0 htb
# zaklada glowna klase z maksymalna przepustowosci na glownej kolejce #download tc class add dev eth1 parent 1:0 classid 1:1 htb rate 1000kbit ceil 1000kbit #upload tc class add dev eth0 parent 2:0 classid 2:1 htb rate 240kbit ceil 240kbit
#podział pasma na klasy dla usług #dla voip i www max pasma tc class add dev eth1 parent 1:1 classid 1:2 htb rate 1000kbit ceil 1000kbit tc class add dev eth0 parent 2:1 classid 2:2 htb rate 100kbit ceil 100kbit #dla pozostałych usług tc class add dev eth1 parent 1:1 classid 1:3 htb rate 600kbit ceil 600kbit tc class add dev eth0 parent 2:1 classid 2:3 htb rate 30kbit ceil 30kbit
#filtry dla voip i www #www tc filter add dev eth1 protocol ip parent 1:0 u32 match ip sport 80 0xffff flowid 1:2 tc filter add dev eth0 protocol ip parent 2:0 u32 match ip sport 80 0xffff flowid 2:2 #voip tc filter add dev eth1 protocol ip parent 1:0 u32 match ip sport 5060 0xffff flowid 1:3 tc filter add dev eth0 protocol ip parent 2:0 u32 match ip sport 5061 0xffff flowid 2:3
#wszystkim po równo tc qdisc add dev eth1 parent 1:2 handle 3:0 sfq perturb 10 tc qdisc add dev eth1 parent 1:3 handle 4:0 sfq perturb 10 tc qdisc add dev eth0 parent 2:2 handle 5:0 sfq perturb 10 tc qdisc add dev eth0 parent 2:3 handle 6:0 sfq perturb 10
założenie jest takie chce ażeby usługa voip która działa na portach 5060 i 5061 miała pierwszeństwo tzn gdy nawer łacze jest zapchanę to usługa voip dostaje je w pierwsej kolejności tzn przepustowośc jest wszystkim obcinana po to ażeby zapewnic usłudze działającej na wymienonych portach odpowiednie pasmo. drugą sprawą są strony www chce ażeby priorytet ich ładowania był zaraz po voip a resztę pasma które nie wykorzystuje ani voip ani www podzieliły sobie równo inne aplikacje między innymi p2p.
Co powinienem jescze dopisać do mojego skryptu?? Po uruchomieniu skkryptu mierze prędkość łacza i niby wszytsko działa bo jak dam na www 1000kb to taka jest prędkośc a jak dam 500kb to jest 500 tlko z uploadem nie potrafie sobie poradzić bo czy napisze w skrypcie 30 czy 100 to i tak idzię 256. A to przeciez ważne bo jak kilka osób uruchomi p2p to zapcha cały upload i kich.
Prosze o rady
tomii - 21-02-2008 08:27
ja bym zrobił to tak ze voip ma wlasna kolejke z prawie calym laczem i prorytetem 1 ,www ma troszke z priorytetem 2 i reszta ma troszke z prio 3. wtedy gy potrzebny jest transfer dla voip to on jest, jesli voip go nie uzywa to mogo go pozycyc www a jak www i voip nie urzywa to może być użyty przez reszte.
żeby ograniczac upload musisz zamarkowac ruch wychodzacy od każdego uzytkownika i z serwera a póżniej go skierować do odpowiednich kolejek.
mavarick87 - 21-02-2008 10:11
możesz mi podac przykładowy skrypt jak zrobic te priorytety??
w jaki sposób mogę się uporać z tym markowanie pakietów
tomii - 21-02-2008 10:59
aktualnie nie mam gotowego skryptu ale fragmenty moge dać iptables -t mangle -N MYSHAPER-OUT iptables -t mangle -I POSTROUTING -o eth0 -j MYSHAPER-OUT
tc filter add dev eth0 protocol ip preference 1 parent 1:0 handle 21 fw flowid 1:3 iptables -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.2 -j MARK --set-mark 21
tuylko to znakuje calosc od jednego ip a ty musisz sobie przerobic na konkretny port
a co do priorytetowania to
#podział pasma na klasy dla usług #dla voip tc class add dev eth1 parent 1:1 classid 1:2 htb rate 900kbit ceil 1000kbit prio 1 #www tc class add dev eth1 parent 1:1 classid 1:3 htb rate 50kbit ceil 1000kbit prio 2 #reszta tc class add dev eth1 parent 1:1 classid 1:4 htb rate 50kbit ceil 1000kbit prio 3
i teraz tylko kierujesz odpowiedni ruch w odpowiednie miejsce
mavarick87 - 22-02-2008 22:33
może ktoś z was koledzy pomoże z tym skryptem na markowanie pakietów po nr portów.
rozumiem że te polecenia odpowiadające za markowanie pakietów można zapisać w pliku z poleceniami htb
tomii - 24-02-2008 18:21
może to pomoże tc filter add dev $wan protocol ip preference 1 parent 1:0 handle 21 fw flowid 1:3 iptables -t mangle -A MYSHAPER-OUT -p tcp -s 192.168.1.2 -j MARK --set-mark 21
a to markowanie możesz dać w pliku z htb.
zanotowane.pldoc.pisz.plpdf.pisz.plminister.pev.pl
|
|
|
|