Автор Тема: TC -въпрос  (Прочетена 3301 пъти)

alex_c

  • Напреднали
  • *****
  • Публикации: 122
    • Профил
TC -въпрос
« Отговор #15 -: Jan 20, 2006, 09:12 »
bonbon, май нещо си противоречиш. За да се зареждат страниците бавно или не си оправил download-a, или пък не си оправил приоритизирането на изходящите ACK и SYN пакети. Според мен е по-скоро второто, т.к. при зареждането на една страница с много елементи в нея, се генерират ACK и SYN пакети за всеки елемент (разбирай картинка или каквото и да е друго от страницата). В зависимост от начина на рендиране на браузъра е и изобразяването на страницата - при някои трябва да се изтеглят всички елементи и чак тогава страницата се изобразява. Това може да създаде усещането за ниска скорост на сваляне, макар реалната причина да е съвсем друга.

Best wishes!
Alex
Активен

bonbon

  • Напреднали
  • *****
  • Публикации: 112
  • Distribution: Debian
  • Window Manager: Gnome
    • Профил
    • WWW
TC -въпрос
« Отговор #16 -: Jan 20, 2006, 10:02 »
Създавам клас:
 tc class add dev eth0 parent 2:0 classid 2:200 htb rate 500KBps prio 0
 и филтър към него:
tc filter add dev eth0 parent 2:0 protocol ip handle 200 fw classid 2:200
2:0 ми е root класа закачен на eth0

 tc class add dev eth0 parent 1:0 classid 1:200 htb rate 500KBps prio 0
 tc filter add dev eth0 parent 1:0 protocol ip handle 200 fw classid 1:200
1:0 ми е root класа закачен на eth1

Всички останали класове са ми с prio 5.

Маркирам :
iptables -t mangle -A POSTROUTING -o eth1 -p tcp -m length --length :64 -j MARK --set-mark 200
iptables -t mangle -A POSTROUTING -o eth0 -p tcp -m length --length :64 -j MARK --set-mark 200
iptables -t mangle -A POSTROUTING -o eth1 -p tcp -m length --length :64 -j ACCEPT
iptables -t mangle -A POSTROUTING -o eth0 -p tcp -m length --length :64 -j ACEEPT


Пускам azureus и той upload-ва с около 16К - на толкова е шейпнат. След това пускам kget да тегли нещо. След около 7-8 сек.  kget тръгва с нормалната си скорост.

Явно някъде бъркам, но незнам къде.

Благодаря предварително.
Активен

alex_c

  • Напреднали
  • *****
  • Публикации: 122
    • Профил
TC -въпрос
« Отговор #17 -: Jan 20, 2006, 22:27 »
Щом 1:0 ти е класа за eth1, защо го закачаш на eth0:
 tc class add dev eth0 parent 1:0 classid 1:200 htb rate 500KBps prio 0
tc filter add dev eth0 parent 1:0 protocol ip handle 200 fw classid 1:200

или е копи/пейст грешка.
Освен това, защо маркираш и входящите и изходящите малки пакети с една марка? Може би не е грешно, но какво ти пречи да го промениш?
Активен

bonbon

  • Напреднали
  • *****
  • Публикации: 112
  • Distribution: Debian
  • Window Manager: Gnome
    • Профил
    • WWW
TC -въпрос
« Отговор #18 -: Jan 21, 2006, 08:00 »
Грешката наистина е при copy/paste.
Естествено,че 1:0 ми е класа за eth1.
Активен