Linux QoS, ToS, Shaping - poradte jak nastavit

Tosuja tosuja na post.cz
Neděle Listopad 13 15:16:18 CET 2005


Dobra, obetuju tady kousek know-how. Predpokladam nasledujici situaci: 
Lokalni sit s X pocitaci a Y VOIP telefony. K internetu pripojeno skrz 
firewall, ktery je pripojen napr. na DSL modem pres ethernet, ukazka shapuje 
na 512/64kbit/s.

ethX=vnitrni rozhrani firewallu (to co jde do LAN)
tc qdisc add dev ethX root handle 1000 cbq bandwidth 100Mbit avpkt 1000

tc class add dev ethX parent 1000:0 classid 1000:1 cbq bandwidth 100Mbit \ 

rate 512kbit allot 1514 weight 51kbit prio 5  maxburst 20 avpkt 1000 bounded

(Pozn.: Drzte pomer mezi uvedenymi cisly 512kbit a 51kbit - melo by to byt 10:1)

tc filter add dev ethX protocol ip prio 3 handle 0x2001 fw classid 1000:1

ethY=vnejsi rozhrani firewallu (to co jde k modemu - do internetu)
tc qdisc add dev ethY root handle 1001 cbq bandwidth 100Mbit avpkt 1000

tc class add dev ethY parent 1001:0 classid 1001:1 cbq bandwidth 100Mbit \ 

rate 64kbit allot 1514 weight 6kbit prio 5  maxburst 20 avpkt 1000 bounded

tc filter add dev ethY protocol ip prio 3 handle 0x2002 fw classid 1000:1

Potrebujete markovat pakety - to co tece dovnitr 0x2001, to co ve 0x2002. 
Viz. manual iptables, tabulka mangle.

Netvrdim ze vyse uvedene je idealni, ale FUNGUJE.

Ted jeste potrebujete spravne nastavovat TOS ve vasi siti. Myslenka za tim 
je ta, ze pokud nedefinujete qdisc (queueing discipline) na "listu", pouzije 
se pfifo_fast, ktere ma 3 oddelene roury, do kterych smeruje data podle 
nastavenych TOS bitu. Ja mam nastaveno takto (0 je nejvyssi):
Priorita	TOS
0		10
1		04
2		02

Bezna data (HTTP traffic) tecou rourou 1, jestli se nepletu.

Tosuja
-- 
Petr "Tosuja" Klima
e-mail: klima (at) thenet (dot) ch
ICQ: 52057532


Další informace o konferenci Linux