Portál AbcLinuxu, 14. května 2025 00:49
snazim se pochopit princip fungovani traffic shapingu pomoci HTB.
Vytvoril sem takovyhle jednoduchy strom:
tc qdisc del dev ppp0 root
tc qdisc add dev ppp0 root handle 1:0 htb
tc class add dev ppp0 parent 1:0 classid 1:1 htb rate 2048kbit
tc class add dev ppp0 parent 1:1 classid 1:12 htb rate 682kbit ceil 2048kbit
tc qdisc add dev ppp0 parent 1:12 handle 12:0 prio bands 3
tc qdisc add dev ppp0 parent 12:1 handle 121:0 sfq perturb 5
tc qdisc add dev ppp0 parent 12:2 handle 122:0 sfq perturb 5
tc qdisc add dev ppp0 parent 12:3 handle 123:0 sfq perturb 5
tc filter add dev ppp0 parent 12:0 protocol ip handle 21 fw flowid 12:1
tc filter add dev ppp0 parent 12:0 protocol ip handle 22 fw flowid 12:2
tc filter add dev ppp0 parent 12:0 protocol ip handle 23 fw flowid 12:3
tc filter add dev ppp0 parent 1:0 protocol ip handle 21 fw flowid 1:12
tc filter add dev ppp0 parent 1:0 protocol ip handle 22 fw flowid 1:12
tc filter add dev ppp0 parent 1:0 protocol ip handle 23 fw flowid 1:12
A potreboval bych potvrdit, jestli to spravne Chapu. Znackovani ponechme zatim stranou.
Na muj router prijde paket, ktery bude pomoci iptables oznackovan jako 21.
Tim padem tento paket bude odpovidat tomuto tc filtru:
tc filter add dev ppp0 parent 1:0 protocol ip handle 21 fw flowid 1:12
Tento tc filtr posle paket pomoci flowid 1:12 do korene stromu. Tady paket "propadne" az do qdiscu:
tc qdisc add dev ppp0 parent 1:12 handle 12:0 prio bands 3
V tomto qdiscu se zkotroluje, jestli jeho znacka paketu neodpovida nekteremu filtru v ramci tohoto qdiscu. Znacka paketu odpovida filtru:
tc filter add dev ppp0 parent 12:0 protocol ip handle 21 fw flowid 12:1
Tento filtr pak paket posle do qdiscu:
tc qdisc add dev ppp0 parent 12:1 handle 121:0 sfq perturb 5
Kde paket zakotvi.
Jelikoz mam v dane tride tri pasma, muzu pomoci znacek 21,22 23 prioritizovat provoz v ramci tridy.
Pochopil sem cestu paketu spravne ?
Na zaver bych se chtel zeptat, jak takovyto strom upravit, kdyz potrebuji pouze uprednostnovat urcity provoz (rdp, ssh), bez ohledu na ip adresu.
Diky za vase reakce.
Na otázku zatím nikdo bohužel neodpověděl.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.