abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 15:33 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.8.

    Ladislav Hagara | Komentářů: 2
    dnes 14:22 | IT novinky

    Herní studio Hangar 13 vydalo novou Mafii. Mafia: Domovina je zasazena do krutého sicilského podsvětí na začátku 20. století. Na ProtonDB je zatím bez záznamu.

    Ladislav Hagara | Komentářů: 0
    dnes 13:22 | IT novinky

    Operátor O2 má opět problémy. Jako omluvu za pondělní zhoršenou dostupnost služeb dal všem zákazníkům poukaz v hodnotě 300 Kč na nákup telefonu nebo příslušenství.

    Ladislav Hagara | Komentářů: 5
    dnes 05:55 | IT novinky

    Společnost OpenAI představila GPT-5 (YouTube).

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

    Byla vydána (𝕏) červencová aktualizace aneb nová verze 1.103 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.103 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    včera 17:33 | IT novinky

    Americký prezident Donald Trump vyzval nového generálního ředitele firmy na výrobu čipů Intel, aby odstoupil. Prezident to zdůvodnil vazbami nového šéfa Lip-Bu Tana na čínské firmy.

    Ladislav Hagara | Komentářů: 8
    včera 16:55 | Nová verze

    Bylo vydáno Ubuntu 24.04.3 LTS, tj. třetí opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.

    Ladislav Hagara | Komentářů: 0
    včera 16:44 | Nová verze

    Byla vydána verze 1.89.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | IT novinky

    Americká technologická společnost Apple uskuteční v USA další investice ve výši sta miliard dolarů (2,1 bilionu korun). Oznámil to ve středu šéf firmy Tim Cook při setkání v Bílém domě s americkým prezidentem Donaldem Trumpem. Trump zároveň oznámil záměr zavést stoprocentní clo na polovodiče z dovozu.

    Ladislav Hagara | Komentářů: 4
    včera 04:55 | Nová verze

    Zálohovací server Proxmox Backup Server byl vydán v nové stabilní verzi 4.0. Založen je na Debianu 13 Trixie.

    Ladislav Hagara | Komentářů: 0
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (45%)
     (21%)
     (4%)
     (6%)
     (3%)
     (1%)
     (1%)
     (19%)
    Celkem 302 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    Dotaz: Problem s shapingem

    23.4.2008 08:50 Pavel Záruba
    Problem s shapingem
    Přečteno: 387×
    Zdravím, mám menší problém se skriptem pro omezování rychlosti. Skript jako takový funguje dobre, ze souboru nacitam informace o uzivateli a shapuju, ale pokud chci ,aby IP které nejsou v daném souboru měli nejakou minimální rychlost, tak mi na Lanu vzroste ping a vyskytne se několika procentní loss. Mohli byste mi poradit, co tam mám špatně (Sekce OSTATNÍ IP-úplně dole)
    #! /bin/sh
    
    # umisteni klienskych ip
    IP_PATH="/etc/users/users.txt"
    
    DOWNLOAD=2000kbit
    UPLOAD=2000kbit
    GARANTDOWN=50kbit
    GARANTUPLOAD=50kbit
    
    shaping_up() {
    
    echo ""
    echo "Mazu predchozi nastaveni"
    
     tc qdisc del dev eth0 root &> /dev/null
     tc qdisc del dev eth1 root &> /dev/null
     tc qdisc add dev eth0 root handle 1: htb default 9999 r2q 100
     tc qdisc add dev eth1 root handle 1: htb default 9999 r2q 100
    
    # propustnost internetu
     tc class add dev eth0 parent 1:0 classid 1:1 htb rate ${UPLOAD} prio 1
     tc class add dev eth1 parent 1:0 classid 1:1 htb rate ${DOWNLOAD} prio 1
    
    # QOS
    line=` wc -l $IP_PATH | awk '{print $1}'`
    x=1
    while [ "$x" -le $line ]; do
            a=`sed -n $x\p $IP_PATH | awk '{print $1}'`
            if [ $a = \# ]; then
            false
            else
            ip=`sed -n $x\p $IP_PATH | awk '{print $2}'`
            upload=`sed -n $x\p $IP_PATH | awk '{print $4}'`
            download=`sed -n $x\p $IP_PATH | awk '{print $3}'`
            data="$(expr $x + 1000) $base"
    
            # Level 1 subclases (HTB)
            tc class add dev eth1 parent 1:1 classid 1:1${x} htb rate ${GARANTDOWN} ceil ${download}
            tc filter add dev eth1 parent 1: protocol ip prio 10 u32 match ip dst ${ip} flowid 1:1${x}
    
            tc class add dev eth0 parent 1:1 classid 1:1${x} htb rate ${GARANTUPLOAD} ceil ${upload}
            tc filter add dev eth0 parent 1: protocol ip prio 10 u32 match ip src ${ip} flowid 1:1${x}
    
            fi
            x=$(expr $x + 1)
    done
    
    # P2P shaping
    tc class add dev eth0 parent 1:1 classid 1:8999 htb rate 500kbit ceil 1000kbit
    tc class add dev eth1 parent 1:1 classid 1:8999 htb rate 500kbit ceil 1000kbit
    
    i=1
    for i in $(seq  9);do
    
    tc filter add dev eth0 parent 1:0 protocol ip prio 2 handle $i fw classid 1:8999
    tc filter add dev eth1 parent 1:0 protocol ip prio 2 handle $i fw classid 1:8999
    
    done
    
    #P2P konec
    
    ##################################################################
    # Ostatni IP 
         tc class add dev eth0 parent 1:1 classid 1:9999 htb rate 50kbit
         tc class add dev eth1 parent 1:1 classid 1:9999 htb rate 50kbit
         tc filter add dev eth0 parent 1: protocol ip prio 10 u32 match ip src 0.0.0.0/0 flowid 1:9999
         tc filter add dev eth1 parent 1: protocol ip prio 10 u32 match ip dst 0.0.0.0/0 flowid 1:9999
    
    
    echo ""
    echo "Vse nastaveno :)"
    echo ""
    
    }
    
    shaping_down() {
      echo -e "Zastavuji shapovani klientu ... "
      tc qdisc del dev eth0 root &> /dev/null
      tc qdisc del dev eth1 root &> /dev/null
      echo -e "Shapov▒n▒ zastaveno ... "
    }
    
    case "$1" in
    'start')
      shaping_up
      ;;
    'stop')
      shaping_down
      ;;
    '--help')
      echo -e "\nPouziti: $0 start|stop\n"
      echo -e "$0 start     => zapne shaping"
      echo -e "$0 stop      => vypne shaping"
      echo -e "$0 --help    => vypise tuto napovedu\n"
     ;;
    * )
      echo -e "\nPouziti: $0 start|stop\n"
      echo -e "Napoveda: $0 --help\n"
    esac
    

    Odpovědi

    23.4.2008 08:57 pht
    Rozbalit Rozbalit vše Re: Problem s shapingem
    co si pamatuju, tak ping a packet loss souvisi s nejakym nastavenim htb (ci jine metody) ohledne delky fronty, do ktere kernel schovava packety nez je vypusti. jsem linej to ted hledat presne ale myslim ze se to da najit snadno. minimalne v "lartc" o tom zminka bude.
    23.4.2008 10:03 Pavel Záruba
    Rozbalit Rozbalit vše Re: Problem s shapingem
    Hledám, hledám, nenacházím :(
    24.4.2008 06:51 pht
    Rozbalit Rozbalit vše Re: Problem s shapingem
    no, jeste me napadlo, jestli to neni tim, ze aplikujete 50 kbit na oba ethernety a masku 0.0.0.0/0 a tudiz na veskery lan provoz. mozna by to chtelo nejak osetrit lokalni IP, nebo pomoci iptables markovat pakety ktere se routuji.
    24.4.2008 08:05 Pavel Záruba
    Rozbalit Rozbalit vše Re: Problem s shapingem
    Rychlost pro vsechny IP, které jsou na Lanu nastavené mám, i pro samotný router.
    24.4.2008 06:55 pht
    Rozbalit Rozbalit vše Re: Problem s shapingem
    jinak, ten cyklus na nacteni souboru mate hroznej, ctete ten soubor extra pro kazdy radek zvlast. zkuste neco takoveho:
    sed 's/#.*$//;s/^ *//;s/ *$//;/^$/d' < $input_file | \
            while read parametr1 parametr2 parametr3 parametr4; do
    
            echo "1=$parametr1"
            echo "2=$parametr2"
            echo "3=$parametr3"
            echo "4=$parametr4"
    done
    
    24.4.2008 08:01 Pavel Záruba
    Rozbalit Rozbalit vše Re: Problem s shapingem
    Díky za optimalizaci :)

    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.