Aj ludzie wszystko się da! tu macie koncepcje (o voipie mowa)
#upload####najważniejszy dla tych przy ADSL, downlink można olać trochę
u siebie mam 4 klasy postroutingu (w IMQ tryb BA)
1-sza ACK Voip
2-a - porty interaktywne
3-cia upload serwera
4-ta (to co niesklasyfikowane tam trafia , czyli rodzic default 40)
i tak- za pomocą l7 markujemy voipa w firewallu - u mnie tak to wyglada:
function mark(){
$IPT -t mangle -A POSTROUTING -o $EXTDEV_0 -j CONNMARK --restore-mark
for x in $L7_MARK
do
$IPT -t mangle -A POSTROUTING -o $EXTDEV_0 -m layer7 --l7proto $x -j MARK --set-mark 1
done
for x in $HELPER_MARK
do
$IPT -t mangle -A POSTROUTING -o $EXTDEV_0 -m helper --helper $x -j MARK --set-mark 1
done
$IPT -t mangle -A POSTROUTING -o $EXTDEV_0 -j CONNMARK --save-mark
}
przy czym
L7_MARK="h323 sip skypeout skypetoskype dns i kupa paternow co kto chce"
HELPER_MARK="h323 ftp irc egg"
mamy zmarkowane pakiety to teraz trzeba to podpiąć pod pierwszą klase ACK voip
czyli:
jesli -
przy =>
$TC qdisc add dev $ul root handle 1: htb default 40 mam
(tworzę klasy)
1:10 ack voip (prio 1)
1:20 interact (prio 2)
1:30 server (prio 3)
1:40 pozostalosc nieskalsyfikowana (prio 4)czyli default 40
podczepiam l7 mark i helper z markiem 1 do:
1:10 czyli u mnie mam
$TC filter add dev $ul parent 1: protocol ip pref 6 handle 1 fw classid 1:10
przy czym ważna rzecz w której wlaściwie wszyscy robią błędy w pisaniu skryptów to parametr "prio" pisany przy tc filter, jest tu odwrotnie jak w przypadku prio stosowanego przy tc class (pr, prio, pref - obojetnie co sie wpisze to nie wywali błędu "tc filter") , ==>tu ma być preference (moze byc prio , pr itd) z filtrem jest odwrotnie jak przy class! ,,
preference mówi o kolejności sprawdzania reguł , czyli jesli zrobimy filtr dla p2p to dajemy pref 1 a na tym nam zależy, aby bylo najbardziej kontrolowane, im " lepsza-priorytetowa usluga" zwiększa sie pref rosnąco w zależności od konstrukcji skryptu (odwrotnie do prio stosowanego dla tc class)
a konwencjonalnie wszedzie ludzie piszą prio i dają prio najwyższe przy filter dla usług priorytetowych a skutek jest odwrotny!
i tak się potem sra i sra w skryptach jak to sie niektórzy męczą , serwa sie przeciąża rożnymi rozwiązaniami a efektu nie ma..
co do downloadu, ingress radzę zastosowac i nie bawić się w jakies dzielenie pasm po portach prio dla downl. , dać w TOS 80 i banki 443 i luda sa zadowoleni! (bo lacza mamy coraz szybsze (a przycinając odpowiednio upload dla uslug NIEinteraktywnych (o P2P mowa no i o ADSL się tyczy)=> ograniczymy pobieranie,, proste
