|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Stanislav Sviridenko 2:5020/400 19 May 2005 15:54:38 To : All Subject : HTB Потеря полосы --------------------------------------------------------------------------------
Здраствуйте,
продолжаю свои мытарства с QoS. Есть роутер с двумя Ethernet сетевыми
картами, eth0 смотрит в общую сеть, eth1 смотрит на клиентов. Создаю скрипт:
------------------------------------------------------------
#!/bin/sh
CEIL=10
IFACE=eth1
tc qdisc del dev eth0 root
tc qdisc del dev eth1 root
tc qdisc add dev ${IFACE} root handle 1: htb default 15
tc class add dev ${IFACE} parent 1: classid 1:1 htb rate ${CEIL}mbit ceil
${CEIL}mbit
tc class add dev ${IFACE} parent 1:1 classid 1:10 htb rate 80kbit ceil
80kbit prio 0
tc class add dev ${IFACE} parent 1:1 classid 1:11 htb rate 80kbit ceil
${CEIL}mbit prio 1
tc class add dev ${IFACE} parent 1:1 classid 1:12 htb rate 20kbit ceil
${CEIL}mbit prio 2
tc class add dev ${IFACE} parent 1:1 classid 1:13 htb rate 20kbit ceil
${CEIL}mbit prio 2
tc class add dev ${IFACE} parent 1:1 classid 1:14 htb rate 10kbit ceil
${CEIL}mbit prio 3
tc class add dev ${IFACE} parent 1:1 classid 1:15 htb rate 30kbit ceil
${CEIL}mbit prio 3
tc qdisc add dev ${IFACE} parent 1:10 handle 100: sfq perturb 10
tc qdisc add dev ${IFACE} parent 1:11 handle 110: sfq perturb 10
tc qdisc add dev ${IFACE} parent 1:12 handle 120: sfq perturb 10
tc qdisc add dev ${IFACE} parent 1:13 handle 130: sfq perturb 10
tc qdisc add dev ${IFACE} parent 1:14 handle 140: sfq perturb 10
tc qdisc add dev ${IFACE} parent 1:15 handle 150: sfq perturb 10
#SSH
tc filter add dev ${IFACE} protocol ip parent 1:0 prio 1 u32 match ip
protocol 0x06 0xff match ip sport 22 0xffff flowid 1:10
#VPN
tc filter add dev ${IFACE} protocol ip parent 1:0 prio 1 u32 match ip
protocol 0x06 0xff match ip sport 1723 0xffff flowid 1:15
tc filter add dev ${IFACE} protocol ip parent 1:0 prio 1 u32 match ip
protocol 0x2f 0xff flowid 1:15
#DNS
tc filter add dev ${IFACE} protocol ip parent 1:0 prio 1 u32 match ip
protocol 0x11 0xff match ip sport 53 0xffff flowid 1:10
#Contra
tc filter add dev ${IFACE} protocol ip parent 1:0 prio 1 u32 match ip
protocol 0x11 0xff match ip sport 27015 0xffff flowid 1:10
tc filter add dev ${IFACE} protocol ip parent 1:0 prio 1 u32 match ip
protocol 0x11 0xff match ip sport 27016 0xffff flowid 1:10
tc filter add dev ${IFACE} protocol ip parent 1:0 prio 1 u32 match ip
protocol 0x11 0xff match ip dport 27005 0xffff flowid 1:10
#FTP
tc filter add dev ${IFACE} protocol ip parent 1:0 prio 1 u32 match ip
protocol 0x06 0xff match ip sport 21 0xffff flowid 1:15
tc filter add dev ${IFACE} protocol ip parent 1:0 prio 1 u32 match ip
protocol 0x06 0xff match ip sport 20 0xffff flowid 1:15
------------------------------------------------------------
Запускаю закачку, захожу в контру. В статистике
------------------------------------------------------------
# tc -s -d class show dev eth1
class htb 1:11 parent 1:1 leaf 110: prio 1 quantum 1000 rate 80Kbit ceil
10Mbit burst 1699b/8 mpu 0b cburst 14098b/8 mpu 0b level 0
Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
lended: 0 borrowed: 0 giants: 0
tokens: 139264 ctokens: 9240
class htb 1:1 root rate 10Mbit ceil 10Mbit burst 14098b/8 mpu 0b cburst
14098b/8 mpu 0b level 7
Sent 385264750 bytes 260172 pkts (dropped 0, overlimits 0)
rate 1129068bit 763pps
lended: 253557 borrowed: 0 giants: 0
tokens: 5249 ctokens: 5249
class htb 1:10 parent 1:1 leaf 100: prio 0 quantum 1000 rate 80Kbit ceil
80Kbit burst 1699b/8 mpu 0b cburst 1699b/8 mpu 0b level 0
Sent 614536 bytes 5695 pkts (dropped 0, overlimits 0)
rate 1585bit 17pps
lended: 5695 borrowed: 0 giants: 0
tokens: 135332 ctokens: 135332
class htb 1:13 parent 1:1 leaf 130: prio 2 quantum 1000 rate 20Kbit ceil
10Mbit burst 1624b/8 mpu 0b cburst 14098b/8 mpu 0b level 0
Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
lended: 0 borrowed: 0 giants: 0
tokens: 532480 ctokens: 9240
class htb 1:12 parent 1:1 leaf 120: prio 2 quantum 1000 rate 20Kbit ceil
10Mbit burst 1624b/8 mpu 0b cburst 14098b/8 mpu 0b level 0
Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
lended: 0 borrowed: 0 giants: 0
tokens: 532480 ctokens: 9240
class htb 1:15 parent 1:1 leaf 150: prio 3 quantum 1000 rate 30Kbit ceil
10Mbit burst 1636b/8 mpu 0b cburst 14098b/8 mpu 0b level 0
Sent 384650214 bytes 254477 pkts (dropped 0, overlimits 0)
rate 1129058bit 747pps
lended: 920 borrowed: 253557 giants: 0
tokens: -106980 ctokens: 5280
class htb 1:14 parent 1:1 leaf 140: prio 3 quantum 1000 rate 10Kbit ceil
10Mbit burst 1611b/8 mpu 0b cburst 14098b/8 mpu 0b level 0
Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
lended: 0 borrowed: 0 giants: 0
tokens: 1056440 ctokens: 9240
#
----------------------------------------
латенси в контре ~ 60-70 ms
скорость закачки ~ 1 МБпс
Изменяю значение ceil на 7mbit:
----------------------------------------
# tc -s -d class show dev eth1
class htb 1:11 parent 1:1 leaf 110: prio 1 quantum 1000 rate 80Kbit ceil
6Mbit burst 1699b/8 mpu 0b cburst 9099b/8 mpu 0b level 0
Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
lended: 0 borrowed: 0 giants: 0
tokens: 139264 ctokens: 9939
class htb 1:1 root rate 6Mbit ceil 6Mbit burst 9099b/8 mpu 0b cburst 9099b/8
mpu 0b level 7
Sent 112609514 bytes 76785 pkts (dropped 0, overlimits 0)
rate 5760.13Kbit 489pps
lended: 73880 borrowed: 0 giants: 0
tokens: -11183 ctokens: -11183
class htb 1:10 parent 1:1 leaf 100: prio 0 quantum 1000 rate 80Kbit ceil
80Kbit burst 1699b/8 mpu 0b cburst 1699b/8 mpu 0b level 0
Sent 257240 bytes 2494 pkts (dropped 0, overlimits 0)
rate 1497bit 14pps
lended: 2494 borrowed: 0 giants: 0
tokens: 118294 ctokens: 118294
class htb 1:13 parent 1:1 leaf 130: prio 2 quantum 1000 rate 20Kbit ceil
6Mbit burst 1624b/8 mpu 0b cburst 9099b/8 mpu 0b level 0
Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
lended: 0 borrowed: 0 giants: 0
tokens: 532480 ctokens: 9939
class htb 1:12 parent 1:1 leaf 120: prio 2 quantum 1000 rate 20Kbit ceil
6Mbit burst 1624b/8 mpu 0b cburst 9099b/8 mpu 0b level 0
Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
lended: 0 borrowed: 0 giants: 0
tokens: 532480 ctokens: 9939
class htb 1:15 parent 1:1 leaf 150: prio 3 quantum 1000 rate 30Kbit ceil
6Mbit burst 1636b/8 mpu 0b cburst 9099b/8 mpu 0b level 0
Sent 112403750 bytes 74325 pkts (dropped 0, overlimits 0)
rate 5783.13Kbit 477pps backlog 34p
lended: 411 borrowed: 73880 giants: 0
tokens: -83480 ctokens: -7201
class htb 1:14 parent 1:1 leaf 140: prio 3 quantum 1000 rate 10Kbit ceil
6Mbit burst 1611b/8 mpu 0b cburst 9099b/8 mpu 0b level 0
Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
lended: 0 borrowed: 0 giants: 0
tokens: 1056440 ctokens: 9939
------------------------------------------------------------
то же самое
латенси 17-20
закачка ~ 723 КБпс
можно еще поварьировать значением ceil, но итог один. чем ближе Ceil по
значению к реальной ширине полосы, тем хуже резльтаты (latency
увеличивается). получается, что на канале 10 мегабит я не могу использовать
всю его пропускную способность и приоритеты - фтп трафик все равно хоть
немного но забивает контру. Если же я постепенно начинаю уменьшать значение
ceil - контра постепенно приходит в норму (15 ms если нет закачки) , но при
этом я и теряю в общей пропускной способности. Как же сделать чтобы фтп
заимствовала неиспользуемую полосу но при этом не забивала контру на полной
ширине канала?
--
С уважением,
Станислав Свириденко
--- ifmail v.2.15dev5.3
* Origin: Demos online service (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/657714b93862.html, оценка из 5, голосов 10
|