Forum » Omrežja in internet » Packet shaping
Packet shaping
Mavrik ::
Torej... iščem nek 'normalen' how-to, kako usposobiti packet shaping na mojem Gentoo Linux routerju.
Namreč sem na 2 Mbit ADSLu, mam pa še računalnike povezane prav tako preko routerja. Želim narediti 3 razrede oz. prioritete paketkov, ki bi vključevale:
1 - maksimalna prioriteta (recimo Q3 strežnik ki tudi teče na routerju)
2 - normalna prioriteta
3 - 'P2P' prioriteta/minimalna prioriteta
Zdaj, označevanje paketkov samih mi z iptables ne dela problemov. Problem pa je ko pridemo do samega shapinga oz. HTBja. Tam pridem do stvari kot so QUANTUM, BURST in CBURST rati o katerih nisem našel nobenih uporabnih podatkov. Delal pa sem največ po tem how-toju, kjer pa del ki vključuje iproute2 ni prav nič uporabno razložen. Ima kdo boljši link?
Namreč sem na 2 Mbit ADSLu, mam pa še računalnike povezane prav tako preko routerja. Želim narediti 3 razrede oz. prioritete paketkov, ki bi vključevale:
1 - maksimalna prioriteta (recimo Q3 strežnik ki tudi teče na routerju)
2 - normalna prioriteta
3 - 'P2P' prioriteta/minimalna prioriteta
Zdaj, označevanje paketkov samih mi z iptables ne dela problemov. Problem pa je ko pridemo do samega shapinga oz. HTBja. Tam pridem do stvari kot so QUANTUM, BURST in CBURST rati o katerih nisem našel nobenih uporabnih podatkov. Delal pa sem največ po tem how-toju, kjer pa del ki vključuje iproute2 ni prav nič uporabno razložen. Ima kdo boljši link?
The truth is rarely pure and never simple.
- spremenil: Mavrik ()
korenje_ver2 ::
http://www.docum.org/docum.org/tests/cb...
ceprav je bolje da se ravnas po tistem tvojem how-toju, ker je cbq zanic.
ceprav je bolje da se ravnas po tistem tvojem how-toju, ker je cbq zanic.
Zgodovina sprememb…
- spremenilo: korenje_ver2 ()
korenje_ver2 ::
hmmm ta htb izgleda zanimiv. se bom mal poigral z njim. sicer pa je vse razlozeno...
aja pa iproute2 je paket programov, ki vkljucuje program tc.
burst pomeni, koliko bajtov se lahko prekoraci pri omejitvi, preden se ustavi. to je pomembno za hitro dostopanje, naprimer internetnih strani.
cburst pomeni, za koliko bajtov se lahko prekoraci maksimalno omejitev. se mi zdi
quantum pove, kaksna je delitev omejitve glede na qdiske. to je, kadar je vec qdisc-ov z isto omejitvijo. s tem jim spremenimo prioriteto.
prio pomeni prioriteta. manjsa stevilka, vecja prioriteta
rate omejitev za prenos podatkov na oznacene pakete
v how-to pise, da mora biti quantum cim niziji, zaradi odzivnih casov, ki se povecajo z velikostjo. mora biti pa visji od mtu, ki je standardno 1500. quantum se ne rabi, ce imas en qdisc. vec qdisc-ov se ponavadi uporabi za vec interfacov. torej za vsazga svoj qdisc.
Podatke spodaj skoprias v datoteko ter priredis svojim zeljam.
#Constants
# Interface you want to do shaping on
# eth2, eth1 for direct connection; ppp0 or so for dsl
# and other dialup connections (check ifconfig)
IFACE=eth2
# Priority marks - to so oznacbe, za oznacene pakete, prav tako kot tudi za prioritete (filter).
MARKPRIO1="1"
MARKPRIO2="2"
MARKPRIO3="3"
MARKPRIO4="4"
# Rates
UPRATE="152kbit"
#P2PRATE=$UPRATE
P2PRATE="128kbit"
PRIORATE1="65kbit"
PRIORATE2="46kbit"
PRIORATE3="27kbit"
PRIORATE4="8kbit"
# Quantum
QUANTUM1="12187"
QUANTUM2="8625"
QUANTUM3="5062"
QUANTUM4="1500"
# Burst
BURST1="6k"
BURST2="4k"
BURST3="2k"
BURST4="0k"
CBURST1="3k"
CBURST2="2k"
CBURST3="1k"
CBURST4="0k"
# Set queue length for IFACE
ifconfig $IFACE txqueuelen 16
# Specify queue discipline
tc qdisc add dev $IFACE root handle 1:0 htb default 103 r2q 1
# Set root class
tc class add dev $IFACE parent 1:0 classid 1:1 htb rate $UPRATE burst $BURST1 cburst $CBURST1
# Specify sub classes
tc class add dev $IFACE parent 1:1 classid 1:101 htb rate $PRIORATE1 ceil $UPRATE quantum $QUANTUM1 burst $BURST1 cburst $CBURST1 prio 0
tc class add dev $IFACE parent 1:1 classid 1:102 htb rate $PRIORATE2 ceil $UPRATE quantum $QUANTUM2 burst $BURST2 cburst $CBURST2 prio 1
tc class add dev $IFACE parent 1:1 classid 1:103 htb rate $PRIORATE3 ceil $UPRATE quantum $QUANTUM3 burst $BURST3 cburst $CBURST3 prio 2
tc class add dev $IFACE parent 1:1 classid 1:104 htb rate $PRIORATE4 ceil $P2PRATE quantum $QUANTUM4 burst $BURST4 cburst $CBURST4 prio 3
# Filter packets
tc filter add dev $IFACE parent 1:0 protocol ip prio 0 handle $MARKPRIO1 fw classid 1:101
tc filter add dev $IFACE parent 1:0 protocol ip prio 1 handle $MARKPRIO2 fw classid 1:102
tc filter add dev $IFACE parent 1:0 protocol ip prio 2 handle $MARKPRIO3 fw classid 1:103
tc filter add dev $IFACE parent 1:0 protocol ip prio 3 handle $MARKPRIO4 fw classid 1:104
# Add queuing disciplines
tc qdisc add dev $IFACE parent 1:101 sfq perturb 16 quantum $QUANTUM1
tc qdisc add dev $IFACE parent 1:102 sfq perturb 16 quantum $QUANTUM2
tc qdisc add dev $IFACE parent 1:103 sfq perturb 16 quantum $QUANTUM3
tc qdisc add dev $IFACE parent 1:104 sfq perturb 16 quantum $QUANTUM4
kar se tice pa hitrosti...
Vir: http://luxik.cdi.cz/~devik
aja pa iproute2 je paket programov, ki vkljucuje program tc.
burst pomeni, koliko bajtov se lahko prekoraci pri omejitvi, preden se ustavi. to je pomembno za hitro dostopanje, naprimer internetnih strani.
cburst pomeni, za koliko bajtov se lahko prekoraci maksimalno omejitev. se mi zdi
quantum pove, kaksna je delitev omejitve glede na qdiske. to je, kadar je vec qdisc-ov z isto omejitvijo. s tem jim spremenimo prioriteto.
prio pomeni prioriteta. manjsa stevilka, vecja prioriteta
rate omejitev za prenos podatkov na oznacene pakete
v how-to pise, da mora biti quantum cim niziji, zaradi odzivnih casov, ki se povecajo z velikostjo. mora biti pa visji od mtu, ki je standardno 1500. quantum se ne rabi, ce imas en qdisc. vec qdisc-ov se ponavadi uporabi za vec interfacov. torej za vsazga svoj qdisc.
Podatke spodaj skoprias v datoteko ter priredis svojim zeljam.
#Constants
# Interface you want to do shaping on
# eth2, eth1 for direct connection; ppp0 or so for dsl
# and other dialup connections (check ifconfig)
IFACE=eth2
# Priority marks - to so oznacbe, za oznacene pakete, prav tako kot tudi za prioritete (filter).
MARKPRIO1="1"
MARKPRIO2="2"
MARKPRIO3="3"
MARKPRIO4="4"
# Rates
UPRATE="152kbit"
#P2PRATE=$UPRATE
P2PRATE="128kbit"
PRIORATE1="65kbit"
PRIORATE2="46kbit"
PRIORATE3="27kbit"
PRIORATE4="8kbit"
# Quantum
QUANTUM1="12187"
QUANTUM2="8625"
QUANTUM3="5062"
QUANTUM4="1500"
# Burst
BURST1="6k"
BURST2="4k"
BURST3="2k"
BURST4="0k"
CBURST1="3k"
CBURST2="2k"
CBURST3="1k"
CBURST4="0k"
# Set queue length for IFACE
ifconfig $IFACE txqueuelen 16
# Specify queue discipline
tc qdisc add dev $IFACE root handle 1:0 htb default 103 r2q 1
# Set root class
tc class add dev $IFACE parent 1:0 classid 1:1 htb rate $UPRATE burst $BURST1 cburst $CBURST1
# Specify sub classes
tc class add dev $IFACE parent 1:1 classid 1:101 htb rate $PRIORATE1 ceil $UPRATE quantum $QUANTUM1 burst $BURST1 cburst $CBURST1 prio 0
tc class add dev $IFACE parent 1:1 classid 1:102 htb rate $PRIORATE2 ceil $UPRATE quantum $QUANTUM2 burst $BURST2 cburst $CBURST2 prio 1
tc class add dev $IFACE parent 1:1 classid 1:103 htb rate $PRIORATE3 ceil $UPRATE quantum $QUANTUM3 burst $BURST3 cburst $CBURST3 prio 2
tc class add dev $IFACE parent 1:1 classid 1:104 htb rate $PRIORATE4 ceil $P2PRATE quantum $QUANTUM4 burst $BURST4 cburst $CBURST4 prio 3
# Filter packets
tc filter add dev $IFACE parent 1:0 protocol ip prio 0 handle $MARKPRIO1 fw classid 1:101
tc filter add dev $IFACE parent 1:0 protocol ip prio 1 handle $MARKPRIO2 fw classid 1:102
tc filter add dev $IFACE parent 1:0 protocol ip prio 2 handle $MARKPRIO3 fw classid 1:103
tc filter add dev $IFACE parent 1:0 protocol ip prio 3 handle $MARKPRIO4 fw classid 1:104
# Add queuing disciplines
tc qdisc add dev $IFACE parent 1:101 sfq perturb 16 quantum $QUANTUM1
tc qdisc add dev $IFACE parent 1:102 sfq perturb 16 quantum $QUANTUM2
tc qdisc add dev $IFACE parent 1:103 sfq perturb 16 quantum $QUANTUM3
tc qdisc add dev $IFACE parent 1:104 sfq perturb 16 quantum $QUANTUM4
kar se tice pa hitrosti...
Vir: http://luxik.cdi.cz/~devik
Zgodovina sprememb…
- spremenilo: korenje_ver2 ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Kako Imeti NAMENOMA Visok Ping?Oddelek: Omrežja in internet | 1479 (935) | next3steps |
» | Naloga iz Putka - UPMOddelek: Programiranje | 2225 (1561) | NejcSSD |
» | Ubuntu 10.10 SIOL IPTV in nastavitev dveh karticiOddelek: Pomoč in nasveti | 4049 (3923) | prastroj |
» | [Linux]Bandwidth limit samo PPPoE povezave na eth1Oddelek: Operacijski sistemi | 1456 (1128) | ZGI |
» | linux+cbq+htb+omejevanje prenosaOddelek: Omrežja in internet | 1495 (1204) | racunalnicar |