Portál AbcLinuxu, 17. srpna 2025 06:31


Dotaz: HTB nebo CBQ ? Co zvolit?

31.8.2004 09:17 Petr Dvořáček
HTB nebo CBQ ? Co zvolit?
Přečteno: 458×
Odpovědět | Admin
Dobrý den. Prosím o radu. Vím, že to tady bylo již několikrát řešeno, ale nikdy mě to nedovedlo do správného finálního výsledku/cíle. Tak se prosím nezlobte, že téma HTB a CBQ tady znova otevírám. Předpokládejme tuto situaci: 4 IP adresy = 1skupina, tato skupina = 64Kbits, jsou-li všichni aktivní, musí být 64kbits rozděleno mezi čtyři uživatele v dané skupině IP adres. Odpojí-li se 1 uživatel, tak rychlost 64kbits se hned rozdělí mezi zbývající 3 on-line active users, v dané skupině IP adres. (aktivními uživateli myslím uživatelé, kteří vykazují UP/DOWN load aktivitu) Karty nastaveny takto:
eth0 - jde ven do internetu
konektivita celková do internetu = 1Mbits
síťová karta 10/100Mbits

eth1 - rozhraní do vnitřní sítě, na kterém jsou tvořeny virtuální sítě - eth1:1,eth1:2,eth1:3,atd..
síťová karta 10/100Mbits

1.Další problém je v tom, že nevím zda-li je lepší zvolit HTB nebo CBQ. Každý tvrdí něco jiného.

2.Podpora HTB/CBQ je v jádru aktivní, utilita tc v systému samosřejmě je (iproute2).

3. Běží tu: Firewall+Router+DNS+NAT

Prosím o Vaše rady a poznatky.
Uvítám i vzorový skript, který by řešil moji problematiku.
Skript můžete zaslat i na mail: petr.dvoracek@gmail.com, lépe však sem, aby mohl posloužit i ostatním.

PS:
Jako odměnu mohu nabídnout pozvánku do GMAILu :))
Mám jich ještě 5.

Petr
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

31.8.2004 10:20 Marek
Rozbalit Rozbalit vše Re: HTB nebo CBQ ? Co zvolit?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ahoj ja bych asi zvolil HTB + IMQ + ESFQ,

a scriptik by snad mohl vypadat nejak takto pro jednu skupinu # **************************** Definice parametru **************************** TC=/sbin/tc IPTABLES=/usr/local/sbin/iptables modprobe imq numdevs=1 USER1=10.151.80.2 USER2=10.151.80.3 USER3=10.151.80.4 USER4=10.151.80.5

USER5=10.151.80.6 USER6=10.151.80.7 USER7=10.151.80.8 USER8=10.151.80.9

# **************************** Definice parametru ****************************

############################## Upload ############################

# Smazani vsech qdiscu na IMQ interfacu $TC qdisc del dev imq0 root > /dev/null

# Pridani ROOT tridy na IMQ interface $TC qdisc add dev imq0 root handle 1:0 htb default 99

$IPTABLES -t mangle -A PREROUTING -i eth1 -j IMQ --todev 1

#Nastaveni rychlosti tridy $TC class add dev imq1 parent 1:0 classid 1:1 htb rate 1Mbit

$TC class add dev imq0 parent 1:1 classid 1:99 htb rate 1Kbit prio 3 #Nastaveni rychlosti trid IMQ0 $TC class add dev imq0 parent 1:12 classid 1:11 htb rate 64Kbit prio 2

$TC qdisc add dev imq0 parent 1:11 handle 11:0 esfq perturb 5 $TC qdisc add dev imq0 parent 1:12 handle 12:0 esfq

# ******************** Markovani paketu **************************************

$IPTABLES -t mangle -A PREROUTING -i eth1 -s $USER1 -j MARK --set-mark 1

$IPTABLES -t mangle -A PREROUTING -i eth1 -s $USER2 -j MARK --set-mark 1

$IPTABLES -t mangle -A PREROUTING -i eth1 -s $USER3 -j MARK --set-mark 1

$IPTABLES -t mangle -A PREROUTING -i eth1 -s $USER4 -j MARK --set-mark 1

$IPTABLES -t mangle -A PREROUTING -i eth1 -s $USER5 -j MARK --set-mark 2

$IPTABLES -t mangle -A PREROUTING -i eth1 -s $USER6 -j MARK --set-mark 2

$IPTABLES -t mangle -A PREROUTING -i eth1 -s $USER7 -j MARK --set-mark 2

$IPTABLES -t mangle -A PREROUTING -i eth1 -s $USER8 -j MARK --set-mark 2

# Trizeni paketu do pridelenych trid

$TC filter add dev imq0 parent 1:0 protocol ip handle 1 fw flowid 1:11 $TC filter add dev imq1 parent 1:0 protocol ip handle 2 fw flowid 1:12

ip link set imq0 up

$TC qdisc del dev eth1 root > /dev/null

# Pridani ROOT tridy na LAN interface $TC qdisc add dev eth1 root handle 1:0 htb default 99

$TC class add dev eth1 parent 1:0 classid 1:1 htb rate 100Mbit

$TC class add dev eth0 parent 1:1 classid 1:11 htb rate 64Kbit prio 2 $TC class add dev eth0 parent 1:1 classid 1:12 htb rate 64Kbit prio 2 $TC class add dev eth0 parent 1:1 classid 1:99 htb rate 1Kbit prio 2

$TC qdisc add dev eth0 parent 1:11 handle 11:0 esfq perturb 5 $TC qdisc add dev eth0 parent 1:12 handle 12:0 esfq perturb 5

$IPTABLES -t mangle -A POSTROUTING -o eth1 -d $USER1 -j MARK --set-mark 111

$IPTABLES -t mangle -A POSTROUTING -o eth1 -d $USER2 -j MARK --set-mark 111

$IPTABLES -t mangle -A POSTROUTING -o eth1 -d $USER3 -j MARK --set-mark 111

$IPTABLES -t mangle -A POSTROUTING -o eth1 -d $USER4 -j MARK --set-mark 111 # Trizeni paketu do pridelenych trid $IPTABLES -t mangle -A POSTROUTING -o eth1 -d $USER5 -j MARK --set-mark 112

$IPTABLES -t mangle -A POSTROUTING -o eth1 -d $USER6 -j MARK --set-mark 112

$IPTABLES -t mangle -A POSTROUTING -o eth1 -d $USER7 -j MARK --set-mark 112

$IPTABLES -t mangle -A POSTROUTING -o eth1 -d $USER8 -j MARK --set-mark 112

#Triyeni do trid $TC filter add dev eth1 parent 1:0 protocol ip handle 111 fw flowid 1:11 $TC filter add dev eth0 parent 1:0 protocol ip handle 112 fw flowid 1:12

root@ns:/ZALOHA#

Ykopiroval jsem to a trosku upraviy s jedoho scriptu a tak doufam ye to bude OKi , ale pro nayornost to snad postacilo
31.8.2004 10:29 Petr Dvořáček
Rozbalit Rozbalit vše Re: HTB nebo CBQ ? Co zvolit?
Když Ti pošlu login na svůj testovací server, tak mi to prosím zkontroluješ? Pokud ano, tak mi pošli mail na sebe nebo ICQ
31.8.2004 11:07 Marek
Rozbalit Rozbalit vše Re: HTB nebo CBQ ? Co zvolit?
jasne moje ICQ 6942778
31.8.2004 11:19 blondak | skóre: 36 | blog: Blondak | Čáslav
Rozbalit Rozbalit vše Re: HTB nebo CBQ ? Co zvolit?
Ahoj pouzivam taky kombinaci HTB, IMQ, ESFQ, ale chtel jsem se zeptat, jestli nevis co presne znamenaji ty parametry pro ESFQ, nejak jsem to nikde nemohl najit.

Diky
Každý problém ma své logické, snadno pochopitelné nesprávné řešení.
31.8.2004 11:40 Marek
Rozbalit Rozbalit vše Re: HTB nebo CBQ ? Co zvolit?
Jako co mas presne namysli ?
31.8.2004 11:43 blondak | skóre: 36 | blog: Blondak | Čáslav
Rozbalit Rozbalit vše Re: HTB nebo CBQ ? Co zvolit?
zajimalo by me co udavaji ty parametry quantum, depth, divisor, limit
[root@router root]# tc qdisc add esfq help
Usage: ... esfq [ perturb SECS ] [ quantum BYTES ] [ depth FLOWS ]
        [ divisor HASHBITS ] [ limit PKTS ] [ hash HASHTYPE]
Where:
HASHTYPE := { classic | src | dst }
Každý problém ma své logické, snadno pochopitelné nesprávné řešení.
16.11.2004 20:16 Martin Čížek | skóre: 20 | Praha
Rozbalit Rozbalit vše Re: HTB nebo CBQ ? Co zvolit?
http://lartc.org/lartc.html#LARTC.SFQ

parametry, co jsou u ESFQ oproti SFQ navíc jsou IMHO self-explaining. :-).
Kdyby dva z nás byli dvěma z nich, všichni z nás by mohli být všemi z nich.
16.11.2004 15:10 koza
Rozbalit Rozbalit vše Re: HTB nebo CBQ ? Co zvolit?
fajne a co fpripade DHCP?
16.11.2004 16:07 Petr Dvořáček
Rozbalit Rozbalit vše Re: HTB nebo CBQ ? Co zvolit?
Předpokládám, že IP adresy Ti DHCP přiděluje podle MAC adres klientům, tak potom přeci není žádný problém ne? Pak má klient stále stejnou IP adresu a můžeš bez potíží používat HTB s IMQ a ESFQ

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.