Portál AbcLinuxu, 29. července 2025 13:38


Dotaz: shaping proměnné konexe

1.2.2007 20:14 Henly
shaping proměnné konexe
Přečteno: 163×
Odpovědět | Admin
Zdravím Vás,

potřeboval bych poradit nějaký shaper, který dokáže shapovat síťové rozhraní s proměnnou rychlostí.

Momentálně používám HTB a to toto IMHO neumí.
tc class add dev eth0 parent 1:0 classid 1:2 htb rate 30000kbit quantum 1600

Můj hlavní problém je v tom, že tříd v HTB mám několik tisíc a server už má problémy to utáhnout. Chtěl bych proto posunout shapování až na servery více v síti a rozdělit to tak do několika desítek shaperů. Mezi tyto shapery ale nemůžu rozdělit rychlost napevno, neboť by pak velká část sítě byla nevyužitá a jinde by se zase hodilo více.

Henly
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

1.2.2007 20:24 bogas
Rozbalit Rozbalit vše Re: shaping proměnné konexe
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zdravim, bohuzel nevim jak to na linuxu resit. Shapper mam napsan vlastni a o hotovem, ktery by delal co potrebujes nevim. S kamaradem jsem vymejsleli neco jako 1x za 5 minut z hlavniho serveru precist hodnoty nekolika trid a ty pak dale distribuovat po siti.

Na ciscu muzes tvoji situaci vyresit elegantne za pomoci bgpv4, kterym lze hodnoty shappingu redistribuovat (pisu to dost kostrbate, nevim jak to popsat ... ). Mozna to lze i na linuxu. Nevim.
21.2.2007 17:28 Henly
Rozbalit Rozbalit vše Re: shaping proměnné konexe
Díky za nápad s Ciscem, plánuju si to v příštím semestru zapsat ve škole. :-)

Momentálně ale s Ciscem neumim a učit se ho taky čas nemám, byl jsem nucenej vymyslet nějaký řešení. :-) Který je nakonec docela jednoduchý. Když už je v jednom qdiscu moc tříd, je to pro procesor docela náročný to procházet. Je lepší rozdělit to do více qdisců, do nich se dostat nějakým filtrem a odsud se dostat filtrem do konečných tříd. (Takových qdisců může být vnořeno i víc.)

Věřim, že to všichni z textu nepochopíte, takže obrázek viz. www.gryg.net/veci/htb_princip_detaily_priklad.php
LFCIB avatar 21.2.2007 19:03 LFCIB | skóre: 19 | blog: LFCIB | /home/lfcib
Rozbalit Rozbalit vše Re: shaping proměnné konexe
Ahoj, mě ten odkaz ukáže prázdnou stránku.
-=:L:i:N:u:X:=-<=>-=:4:e:V:e:R:=- Vyhovuje mi Debian GNU/Linux
1.3.2007 18:05 Henly
Rozbalit Rozbalit vše Re: shaping proměnné konexe
No jedině, že by měli výpadek. Kdyžtak přímo adresa obrázku: http://www.gryg.net/veci/htb_tree_priklad.png

U mě to vypadá zhruba takhle:

#hlavni qdisc a trida
tc qdisc add dev eth0 root handle 1:0 htb
tc class add dev eth0 parent 1:0 classid 1:1 htb rate 80000kbit

#qdisc pro podsit 10.0.10.0/24
tc class add dev eth0 parent 1:1 classid 1:10 htb rate 15000kbit
tc qdisc add dev eth0 parent 1:10 handle 10: htb
tc class add dev eth0 parent 10: classid 10:1 htb rate 15000kbit
tc filter add dev eth0 parent 1:0 protocol ip prio 1 u32 match ip dst 10.0.0.0/24 flowid 1:10

#trida a filter nekoho s ip adresou v siti 10.0.10.0/24 - omarkovano je jinde
tc class add dev eth0 parent 10:1 classid 10:7 htb rate 100kbit ceil 25000kbit
tc filter add dev eth0 parent 10:0 protocol ip prio 5 handle 7 fw flowid 10:7


Pro jednoduchost je to ořezáno o spoustu věcí. Můj celý skript na spuštění htb má přes 20tisíc řádků. Je to dost velká síť :-) Jsou v tom zakomponovány různé priority pro různé služby i zákazníky a další vychytávky.
1.3.2007 18:19 Henly
Rozbalit Rozbalit vše Re: shaping proměnné konexe
Ještě pár postřehů:

1) Nemá smysl nastavovat ceil u nadřazených tříd (zde např. 10:1), stejně se vezme jen rychlost rate. Ceil má smysl nastavovat jen u koncových tříd.

2) Ve vnořených qdiscích neproběhne půjčování z nadřazeného qdiscu. Půjčování jde jen skrz třídy. Čili když budete mít na hlavní třídě nastavenu rychlost 10Mbit, v ní třídu 1Mbit a na téhle bude pověšen qdisc a v něm bude hlavní třída 100Mbit, tak výchozí rychlost v tomto qdiscu bude 100Mbit. Pokud takovou rychlost celkem nemáte, čekejte problémy. ;-) Čili každý qdisc hraje jen sám za sebe a ty ostatní nevidí.

Kdyby jste někdo věděl kde najdu víc takových postřehů, budu za ně rád. :-)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.