Е вече наистина започвам да се отчайвам .....
Порових се в нета и разгледах как става схемата с маркирането на пакетите .... по това което видях направих промени в скрипта но се получи "малка" аномалия.Както преди download-а се ограничава нормално но пак има някакъв странен проблем с upload-а.Ще се опитам да обесня .... задавам стойност на "up_speed" да речем 2048kbit (2Mbit), което трябва да е 256Kb/s, но максималния upload не превишава "0,2Mbit"-та. Същата стойност (0,2Mbit) се запазва до към 9500-10000Kbit-та. Следващия тест беше със стойност 10240Kbit-та, като този път upload-a ми се ограничи на ~6Mbit-та.
Кажете ми какво пропускам
Ето и частта от сорса където слагам марките, правя класовете и закачам филтрите към марките + роот класовете (принципът на останалата част от кода е същия като в първия пост):
## Syzdavame ROOT klasovete za interfeisite ...
#$lan - eth0
#$wan - ppp0
$tc qdisc add dev $lan root handle 1: htb
$tc qdisc add dev $wan root handle 1: htb
## End
m="3"
burst="100k"
## Add Download/Upload Rules
while test $mark_ip_s -le $mark_ip_e
do
#Clients Download Limit
$ipt -t mangle -A FORWARD -d $net.$mark_ip_s -j MARK --set-mark 0x$m
$tc class add dev $lan parent 1: classid 1:$m htb rate $down_speed$metric burst $burst
$tc filter add dev $lan parent 1: protocol ip prio 1 handle 0x$m fw classid 1:$m
m=$[m+1]
#Clients Upload Limit
$ipt -t mangle -A FORWARD -s $net.$mark_ip_s -j MARK --set-mark 0x$m
$tc class add dev $wan parent 1: classid 1:$m htb rate $up_speed$metric burst $burst
$tc filter add dev $wan parent 1: protocol ip prio 2 handle 0x$m fw flowid 1:$m
m=$[m+1]
mark_ip_s=$[mark_ip_s+1]
done
## End