abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 23:22 | IT novinky

    Před 60 lety, 1. května 1964, byl představen programovací jazyk BASIC (Beginners' All-purpose Symbolic Instruction Code).

    Ladislav Hagara | Komentářů: 0
    dnes 22:22 | Nová verze

    Byla vydána nová verze 12.0 minimalistické linuxové distribuce (JeOS, Just enough Operating System) pro Kodi (dříve XBMC) a multimediálního centra LibreELEC (Libre Embedded Linux Entertainment Center). Jedná se o fork linuxové distribuce OpenELEC (Open Embedded Linux Entertainment Center). LibreELEC 12.0 přichází s Kodi 21.0 "Omega".

    Ladislav Hagara | Komentářů: 0
    dnes 12:55 | Nová verze

    Microsoft vydal novou velkou aktualizaci 2404.23 v září 2019 pod licencí SIL Open Font License (OFL) zveřejněné rodiny písma Cascadia Code pro zobrazování textu v emulátorech terminálu a vývojových prostředích.

    Ladislav Hagara | Komentářů: 0
    dnes 05:33 | Nová verze

    OpenTofu, tj. svobodný a otevřený fork Terraformu vzniknuvší jako reakce na přelicencování Terraformu z MPL na BSL (Business Source License) společností HashiCorp, bylo vydáno ve verzi 1.7.0. Přehled novinek v aktualizované dokumentaci. Vypíchnout lze State encryption.

    Ladislav Hagara | Komentářů: 0
    včera 23:55 | Humor

    Spouštět webový prohlížeč jenom kvůli nákupu kávy? Nestačí ssh? Stačí: ssh terminal.shop (𝕏).

    Ladislav Hagara | Komentářů: 7
    včera 18:11 | Nová verze

    Yocto Project byl vydán ve verzi 5.0. Její kódové jméno je Scarthgap. Yocto Project usnadňuje vývoj vestavěných (embedded) linuxových systémů na míru konkrétním zařízením. Cílem projektu je nabídnou vývojářům vše potřebné. Jedná se o projekt Linux Foundation.

    Ladislav Hagara | Komentářů: 0
    včera 17:56 | Nová verze

    Operační systém 9front, fork operačního systému Plan 9, byl vydán v nové verzi "do not install" (pdf). Více o 9front v FQA.

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | Nová verze

    Svobodná webová platforma pro sdílení a přehrávání videí PeerTube (Wikipedie) byla vydána v nové verzi 6.1. Přehled novinek i s náhledy v oficiálním oznámení a na GitHubu. Řešeny jsou také 2 bezpečnostní chyby.

    Ladislav Hagara | Komentářů: 3
    včera 12:33 | Zajímavý software

    Lennart Poettering na Mastodonu představil utilitu run0. Jedná se o alternativu k příkazu sudo založenou na systemd. Bude součástí systemd verze 256.

    Ladislav Hagara | Komentářů: 26
    29.4. 23:22 | Nová verze

    Hudební přehrávač Amarok byl vydán v nové major verzi 3.0 postavené na Qt5/KDE Frameworks 5. Předchozí verze 2.9.0 vyšla před 6 lety a byla postavená na Qt4. Portace Amaroku na Qt6/KDE Frameworks 6 by měla začít v následujících měsících.

    Ladislav Hagara | Komentářů: 13
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (0%)
     (0%)
     (0%)
     (0%)
    Celkem 0 hlasů
     Komentářů: 0
    Rozcestník

    Dotaz: (E)SFQ a spravedlivé rozdělení linky

    LFCIB avatar 29.6.2006 14:06 LFCIB | skóre: 19 | blog: LFCIB | /home/lfcib
    (E)SFQ a spravedlivé rozdělení linky
    Přečteno: 855×
    Dobrý den,

    nastavil jsem si HTB a na konec pověsil SFQ a zkoušel jsem testovat jak se to bude chovat. Server je S1 a dva testovací počítače, počítač PC1 a PC2.

    Cíl: spravedlivě rozdělit rychlosti mezi počítače, které budou spolu v jedné třídě. (jestli je to praktické řešení nevím, ale jiné mě nenapadá)

    Dejme tomu, že mám od providera 1000 kbps linku a chci ji hodně nasdílet tak, že jí rozdělím na 3 třídy
    1. třída 500 kbps - zde bude 2x PC (PC1 a PC2)
    2. třída 250 kbps - zde budou jiná pc
    3. třída 250 kbps - zde budou jiná pc
    A já teď budu řešit příklad s třídou 1., kterou jsem si nasimuloval a testoval s PC1 a PC2.

    PC1 a PC2 sdílí rychlost 500 kbps a díky SFQ se v čase spravedlivě rozdělují rychlosti mezi jednotlivé konexe(dle mých informací). Díky testování jsem nezjistil nic převratného, jen že to tak asi bude.

    Na PC1 jsem spustil stahování (40MB) souboru z S1(zatím to omezuji i pro S1 abych mohl testovat) a rychlost se vyšplhala na 1000 kbps a jelo to, následně jsem spustil stahování stejného souboru z PC2, rychlost jela na 500 kbps a na PC1 se snížila na polovinu. Takže dvě spojení na dvou PC se spravedlivě rozdělila. Když jsem ale na PC2 spustil stahování stejného souboru znovu k tomu prvnímu, stahovali se 3 soubory ze dvou PC, přičemž každý z nich se stahoval stejnou rychlostí, tzn. že na PC1 zbyla 1/3 rychlosti a pro PC2 se ukously 2/3.

    Když jsem stahování onoho souboru č. 2 na PC2 pozastavil a místo něj spustil Bittorrent, začlo to být ještě horší, protože si Bittorrent udělal mnoho spojení do internetu a tak se mi z 1/3 pro PC1 stala dejme tomu 1/20.

    Takže se mi v rámci jedné třídy rozdělují poměrně rychlosti v závislosti na počtu spojení.

    Když udělám pro každé PC jednu třídu, tak bych to měl vyřešit, ale to se mi nechce, protože by těch PC mohlo být v budoucnu více.

    Takže jsem pátral a mělo by to řešit ESFQ, které by mi mělo v rámci třídy rozdělit rychlosti mezi spojení vázaná na jednotlivé IP adresy (třeba).

    Chtěl bych se zeptat, jak mám postupovat, když bych chtěl to esfq využít. Neumím dobře anglicky a také kompilování jádra bych se chtěl prozatím vyhnout(je jen nějaký modul?). Jaké doporučujete kroky? Mám Debian GNU/Linux Sarge a vše využívám z této distribuce, je tam jádro 2.4, můžete mě prosím nějak nasměrovat?

    Dále, když bych chtěl pak omezovat i upload na rozhraní eth0, šlo by to takto teoreticky filtrovat?
    tc filter add dev eth0 parent 1:0 prio 2 protocol ip u32 match ip src 192.168.0.2 flowid 1:11
    Nechtěl bych tady něco dělat a pak to kvůli uploadu nějak složitě předělávat za pomoci IMQ, když už tak rovnou.

    Dále, snažil jsem se přijít na to co je to parametr burst a našel jsem dvě různá vysvětlení a tak nevim.

    Buď je to: počet dat, které projdou bez omezení třídy (např. 5k znamená 5kb dat) Nebo je to: maximální odchylka od rate (cburst od ceil)

    Ptám se proto, že často když začnu stahovat, vylétne na několik vteřin (cca 5 vteřin) rychlost na cca trojnásobek maximální a pak klesne docela rychle na tu co by měla být maximální. Takže bych se přikláněl k první verzi, ale moc mi tam pak nesedí ta hodnota. A burst je podle mě něco jako dávkování, takže jsem to nějak nepochopil a prosím o vysvětlení. Jako odchylku bych to chápal i s hodnotou, ale našel jsem na netu i to první vysvětlení.

    Nastavení HTB:
    tc qdisc add dev eth0 root handle 1:0 htb default 11
    
    tc class add dev eth0 parent 1:0 classid 1:1 htb rate 1000kbit burst 20kbit
    
    tc class add dev eth0 parent 1:1 classid 1:11 htb rate 500kbit ceil 1000kbit burst 10kbit
    tc class add dev eth0 parent 1:1 classid 1:12 htb rate 250kbit ceil 500kbit burst 5kbit
    tc class add dev eth0 parent 1:1 classid 1:13 htb rate 250kbit ceil 250kbit burst 5kbit
    
    tc qdisc add dev eth0 parent 1:11 handle 11:0 sfq perturb 10
    tc qdisc add dev eth0 parent 1:12 handle 12:0 sfq perturb 10
    tc qdisc add dev eth0 parent 1:13 handle 13:0 sfq perturb 10
    
    tc filter add dev eth0 parent 1:0 prio 1 protocol ip u32 match ip protocol 17 0xff match ip dport 53 0xffff flowid 1:11
    tc filter add dev eth0 parent 1:0 prio 2 protocol ip u32 match ip dst 192.168.0.2 flowid 1:11
    tc filter add dev eth0 parent 1:0 prio 2 protocol ip u32 match ip dst 192.168.0.3 flowid 1:11
    
    Díky moc za váš čas a snahu

    LFCIB
    -=:L:i:N:u:X:=-<=>-=:4:e:V:e:R:=- Vyhovuje mi Debian GNU/Linux

    Odpovědi

    Max avatar 29.6.2006 15:25 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Přesně tak, SFQ nezajišťuje rovnoměrné rozdělení zátěže mezi uživateli, či programy, ale pouze mezi TCP spojeními. O spravidlivé řešení se postará ESFQ, ale bez kompilace jádra se neobejdeš ;-), navíc ještě budeš muset opatchovat iproute2 a následně zkompilovat a nainstalovat ;-). Vše je velice jednoduché. Stáhneš si zdrojáky jádra a iproute2 a potom patch esfq
    wget -c http://developer.osdl.org/dev/iproute2/download/iproute2-2.6.16-060323.tar.gz
    wget -c http://fatooh.org/esfq-2.6/esfq-2.6.15.1.tar.gz
    
    Pak už jen stačí opatchovat zdrojáky jádra a iproute2
    cd /usr/src/linux
    patch -p1 < ../esfq-2.6.15.1/esfq-kernel.patch
    cd /usr/src/iproute2-2.6.16-060323
    patch -p1 < ../esfq-2.6.15.1/esfq-iproute2.patch
    
    Patch esq na 2.6.15 funguje i na 2.6.16 a 2.6.17 ...
    Momentálně pracuju na článku o kompletním shapingu od kompilace, patchování apod. až po skripty. Počítám, že do 14 dní by mohl být hotov a pak, pokud bude mít redakce zájem, ho tu zveřejním.
    Zdar Max
    Měl jsem sen ... :(
    Max avatar 29.6.2006 15:35 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Hmm, jop, imq je dobrá věc ;-). Ulehčuje hodně věcí. Pokud budeš kompilovat jádro apod., tak si to rovnou opatchuj i s imq ;-). Ale pro imq musíš zase patchovat iptables :-D, mno, když do toho půjdeš, tak prostě iptables+iproute2+kernel musíš kompilovat a patchovat ;-). Pokud by jsi v tom patchování byl najetej a chtěl by jsi ještě něco víc, jak obyčejný esfq+imq, tak by jsem se být tebou podíval ještě na ipp2p a layer7 filter. Tyto projekty dokáží identifikovat p2p pakety apod. věci a následně je můžesš lehce shapovat, či zakázat apod. Jinak na routeru se řeší omezování uploadu velice jednoduše, máš eth do netu a eth do vnitřní sítě. Filtr hodíš na tu do netu a shapuješ upload ;-) (jednoduše řečeno, samozřejmš se pak trošku změní hrátky s iptables apod. v tom skriptu)
    Zdar Max
    Měl jsem sen ... :(
    LFCIB avatar 29.6.2006 15:43 LFCIB | skóre: 19 | blog: LFCIB | /home/lfcib
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Teda. Asi to máš zmáknutý, už se těšim na ten článek o shapovaní :-)

    Jdu hledat jak se kompiluje jádro :-)

    Doufám, že se v tom neztratím. Ale nebojim se toho!

    Jinak ještě k tomu uploadu, tak jak to popisuješ mi to je jasný, ale co pak, když ty adresy NATuju?

    LFCIB
    -=:L:i:N:u:X:=-<=>-=:4:e:V:e:R:=- Vyhovuje mi Debian GNU/Linux
    Max avatar 29.6.2006 16:12 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Samotný u32 filtr bych nepoužíval, nevím, zda to s ním samotným vůbec jde. Nejlepší asi je použít iptables a packety prostě markovat.
    Zdar Max
    Měl jsem sen ... :(
    LFCIB avatar 3.7.2006 13:47 LFCIB | skóre: 19 | blog: LFCIB | /home/lfcib
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Ahoj, tak se mi to jádro podařilo na několikátý pokus zkompilovat (jedna kompilace mi trvá 4-5 hodin - hrozný) a už mi i naběhlo. Akorát mi to píše že to nenašlo moduly pro iptables.. něco jestli jsem použil insmod atd. Ale já si myslel že iptables budou v jádře a né jako moduly, nikde jsem v menuconfigu ty volby pro netfilter nenašel, po patchnutí esfq jsem tam esfq našel, ale iptables jenom nějaké části, jako markování forward... prostě ted na tom nerozchodim ani firewall...

    Takže jak jsem postupoval:

    1. jsem si stáhl jádro 2.6.17.1, iptables 1.3.5 a pak to esfq a iproute jak mi napsal MAX.

    2. Rozbalil jsem jádro a hodil symbolický link na /usr/src/linux

    3. pak jsem patchnul (jak psal MAX) kernel a iproute

    4. ted už jsem jenom naslepo dělal co se mi zdálo jako správný

    5. jsem spustil make menuconfig a nastavil tam fs a ide a přidal esfq

    6. jsem myslel že budu muset ty nový iptables 1.3.5 nějak nainstalovat před kompilací jádra, takže jsem dal make

    7. to samý s iproute

    8. a pak jsem dal na jádro make (čekal 5 hodin) a make install

    9. jsem dal make modules a make modules_install

    10. přidal jsem položku v grubu a nastavil na nové jádro

    11. reboot a pak mi to normálně najelo, ale když se pouštěl skript s firewallem, tak mi to snad ke každému řádku vyhodilo chybu že chybí modul pro iptables a nějaké řeči o iptables 1.2.11(původní verze) nebo nějak tak byla ta verze

    IPP2P se mi tam nepodařilo dát, imq k tomu jsem tam dával patch-o-matic ale taky se to nepovedlo... takže pro začátek bych byl rád za to esfq...

    Jak tedy jádru dám vědět že si to má zkompilovat s tou verzí iptables co jsem si stáhl, to samé i iproute? to když dám make tak se to nainstaluje a do těch konfigů pro kernel přidá samo?

    Nejradši bych to udělal napoprvé, protože čekat cca 5 hodin a pak zjistit že to bylo na nic je fakt strašný.

    Nebo jak tam nahraji ty moduly iptables, když už je to takhle zkoněný :-)

    Díky za pomoc

    LFCIB
    -=:L:i:N:u:X:=-<=>-=:4:e:V:e:R:=- Vyhovuje mi Debian GNU/Linux
    3.7.2006 16:44 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Nebo jak tam nahraji ty moduly iptables, když už je to takhle zkoněný
    Podívej se, jestli jsou v /lib/modules/verze/kernel/net/ipv4/netfilter/. Pokud je tam nenajdeš, podívej se do menuconfigu, jestli jsi je nechal zakompilovat do jádra (<*>) nebo jsi na ně zapomněl (< >)
    Quando omni flunkus moritati
    LFCIB avatar 3.7.2006 16:53 LFCIB | skóre: 19 | blog: LFCIB | /home/lfcib
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Já jsem iptables/netfilter právě při zatrhávání *ček v menuconfigu nenašel :-( Ale v /lib/modules/verze/kernel/net/ipv4/netfilter/ ty soubory *.ko jsou, to jsou ty moduly? Nějak v tom mám guláš a nikde jsem o tom nic nenašel.

    Díky moc

    LFCIB
    -=:L:i:N:u:X:=-<=>-=:4:e:V:e:R:=- Vyhovuje mi Debian GNU/Linux
    3.7.2006 20:24 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Jo, ty .ko soubory, to je ono, mělo by tam být něco jako ip_tables.ko, iptable_filter.ko a další. Příkazem modprobe by se ten modul měl nahrát (parametrem je jméno modulu = jméno toho souboru bez .ko)

    Pro základní funkce potřebuješ ipt_MASQUERADE, iptable_nat, ip_nat, ip_conntrack, iptable_filter, ip_tables.

    Vzhledem k tomu, že ti to vyhazuje chyby při nahrávání pravidel, pravděpodobně nesouhlasí verze - v takovém případě modprobe skončí s chybou.
    Quando omni flunkus moritati
    Max avatar 3.7.2006 20:38 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Network => Networking Option => Tady zakřížkovávej jak splašenej (krom teda experimentálních modulů a těch debugovacích)
    Network => Networking Option => Network packet filtering (replaces ipchains) ---> zaškrtej vše, krom experimentálních věcí (a debugovacích), co půjde, dávej do modulu.
    Network => Networking Option => QoS and/or fair queueing ---> To samé, zaškrtávej, co to jde ;-)

    Toto jsou hlavní věci, nikde nehledej položky s názvem iptables apod. Jsou tam jen názvy služeb, modulů apod. ;-)

    Zdar Max
    Měl jsem sen ... :(
    LFCIB avatar 3.7.2006 22:03 LFCIB | skóre: 19 | blog: LFCIB | /home/lfcib
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Díky moc, já už jsem našel kde je problém - mezi židlí a klávesnicí. Protože jak tam nejsou ty posuvníky, nevšiml jsem si, že jsou dole ještě volby. Panebože.

    :-)

    LFCIB
    -=:L:i:N:u:X:=-<=>-=:4:e:V:e:R:=- Vyhovuje mi Debian GNU/Linux
    LFCIB avatar 29.6.2006 15:36 LFCIB | skóre: 19 | blog: LFCIB | /home/lfcib
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Díky moc ;-) budu se sn(m)ažit :-)

    Jinak asi budu muset mít jádro 2.6 a to opatchovat co? Takže né kompilovat jádro, ale jen opatchovat?

    Já umím kompilovat leda tak jádra lískových ořechů :-)

    Dík za naroutování, určitě se to (ne)povede :-)

    LFCIB
    -=:L:i:N:u:X:=-<=>-=:4:e:V:e:R:=- Vyhovuje mi Debian GNU/Linux
    Max avatar 29.6.2006 16:16 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Patche jsou i pro jádra 2.4.x, ale pokud nutně nepotřebuješ jádro řady 2.4.x, tak bych opravdu použil 2.6.x ;-). Jádro se musí opatchovat (pro neznalce => přidají se další volby do nabídky) a pak zkompilovat (zaškrtnou se ty volby v nabídce a jde se na kompilování) ....
    Zdar Max
    PS:Vyšly tu články o kompilaci kernelu apod. , zkus na ně kouknout ;-). Nebo pokud máš rychlý net, tak si stáhni z avc.sh.cvut.cz video o kompilaci jádra ;-)
    Měl jsem sen ... :(
    Max avatar 29.6.2006 16:18 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Myslím, že je to tohle ....
    Zdar Max
    Měl jsem sen ... :(
    3.7.2006 22:14 ...... | skóre: 41 | blog: ...
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Jedu ještě stále na jádře 2.4, ale mám ho zde http://zlin.ath.cx/~petr/linux/ . Obsahuje IMQ, l7-filters, ESFQ, IPP2P, Patch-o-matic (např. CONNMARK apod.). Je tam i pár skriptů na dělení pomocí HTB, SFQ, ESFQ, patchnuté iptables, a balík iproute2. Všechno je to primárně dělané pro Slackware. Jestli se ti s tím nechce dělat, tak použij toto. Hodně štěstí.
    LFCIB avatar 4.7.2006 00:39 LFCIB | skóre: 19 | blog: LFCIB | /home/lfcib
    Rozbalit Rozbalit vše Re: (E)SFQ a spravedlivé rozdělení linky
    Děkuji, rád se inspiruji.

    S pozdravem

    LFCIB
    -=:L:i:N:u:X:=-<=>-=:4:e:V:e:R:=- Vyhovuje mi Debian GNU/Linux

    Založit nové vláknoNahoru

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

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.