[GTER] QoS hfsc

Christian Lyra lyra at pop-pr.rnp.br
Wed Apr 29 22:09:43 -03 2009


Ois,

2009/4/29 Wanderson Tinti <wanderson at bsd.com.br>:
> Boa tarde pessoal.
> Estou estudando hfsc para utilizar junto ao pf. Venho encontrando
> algumas dificuldades em compreender o significado das 3 opções
> seguintes:  realtime, linkshare, upperlimit. Andei lendo manual pages
> do pf, mas é muito superficial a forma como é tratado o hfsc.
> Pelo que pude entender, o realtime é a largura de banda minima para
> fila; upperlimit e o pico máximo de banda que a fila pode consumir;
> linkshare é porcentagem que pode ser pego emprestada por outras fila;
> Seria isso.
> O problema está sendo em compreender essas opções dentro de uma regra.
>

Por acaso andei estudando ele tb... mas no linux. Não sei se as opções
são as mesmas, mas pelo que eu pude entender funciona assim:

O primeiro parametro (sc) tenta garantir "tempo" e não banda, aqui vc
especifica, para as classes que precisam disso (nem todas precisam)
qual é o tempo máximo que o pacote pode ficar na fila. Em seguida vc
pode especificar quanto de banda ele tem garantido, e no ul o máximo
de banda que ele pode pegar emprestado.

Eu brinquei um pouquinho com o seguinte exemplo:
# keep it simple: two classes only
tc class add dev $DEV parent 1:1 classid 1:10 hfsc ls 100kbit ul rate 960kbit
tc class add dev $DEV parent 1:1 classid 1:11 hfsc sc umax 1500b dmax
20ms rate 60kbit ul rate 200kbit

A classe 1:10 garante 100k de banda e pode usar ate 960kbit (não tenta
garantir latencia). A classe 1:11 tenta garantir 20ms de latencia para
pacotes ate 1500b. em seguida garante 60kbit chegando ao maximo de
200kbit.

Mas... como disse, estou estudando me baseando na parca documentação,
então eu posso esta falando besteira...


-- 
Christian Lyra
PoP-PR/RNP



More information about the gter mailing list