HTB v Mikrotiku

Z Wiki UnArt Slavičín
Skočit na navigaciSkočit na vyhledávání

Vysvětlení funkce Queues u MK vyplývá z implementace HTB (Hierarchical Token-Bucket = Hiearchický systém poukázek a kyblíků), přesný popis je zde: http://luxik.cdi.cz/~devik/qos/htb/manual/userg.htm

Trochu srozumitelnější popis v češtině je zde: http://www.mrak.cz/veci/htb_princip_detaily_priklad.php

Přeformulováno do řeči Mikrotiku:

HTB je systém přidělování pásma třídám (tj. jednotlivým frontám Mikrotiku), kdy pro daný časový interval má kořenová třída(=nejvyšší fronta MK) určitý počet tokenů(=poukázek) a ty rozděluje mezi svoje potomky (podřazené fronty).

Pokud má nějaká koncová (bezdětná) třída přidělenu poukázku (token), případně má našetřeno několik poukázek v "kyblíku", může pak odeslat najednou tolik bytů, kolik má volných tokenů. Tj. kdyz nemá koncová třída ve své frontě nic, co by čekalo na odeslání, může si poukázky "našetřit (napustit do kyblíčku)" a potom odeslat až maximálně "burst" bytů najednou. Pokud ale koncové třídě kyblíček s poukázkami přeteče, "daruje" přebytečné poukázky ostatním dětem své rodičovské třídy - přičemž je rozděluje v poměru hodnot "rate" (u MK "limit-at") těchto dětí.

Pozn.: místo slova "daruje" se v anglickém popisu HTB a CBQ používá termín "borrow" = půjčí. Tvůrce HTB ale upozorňuje, že "borrow" je špatné slovo, protože když něco půjčím, chci to vrátit, což se v HTB ani CBQ neděje.

Počet tokenů, které třída daruje ostatním, vidíte v MK ve statistice v položce "Total borrows". Počet tokenů, které třída dostala od ostatních, vidíte v položce "Total lends".

(Pozn.: pěkné vysvětlení rozdílu slov "borrows" a "lends" je ve filmu Tmavomodrý svět" v hodině angličtiny pro piloty. Taky se mi to furt plete, tak doufám že jsem to napsal dobře...)

Toto je jen zevrubný popis, abychom byli uplně přesní, tu funkci ovlivňují ještě parametry cburst, r2q, quantum a prio, což jsou takové "dolaďovací knoflíky". Pro jejich popis prostudujte výše uvedené odkazy (příp. Google)

Popis burstů je i v dokumentaci od Mikrotiku: http://www.mikrotik.com/testdocs/ros/2.9/root/queue_content.php