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í
×
    včera 23:22 | Bezpečnostní upozornění

    Výzkumníci ukazují, jak mohou otevřené tunely a IPv6 Extension Headers synchronizovat pakety do krátkých provozních špiček. V kontrolovaném experimentu naměřili přes 180násobnou koncentraci paketového toku vůči průměrné rychlosti odesílání — nikoli 180násobné zvětšení objemu dat. Článek obsahuje metodiku, limity měření i mitigace pro GRE, IPIP a další tunely.

    vencour | Komentářů: 1
    včera 12:44 | Pozvánky

    Po velkém úspěchu prvního MobileLinux Hackdaye se vracíme do Českých Budějovic s druhým ročníkem. V pátek 30. října 2026 od 10:00 se v prostorách Jihočeské univerzity uskuteční Embedded & MobileLinux Hackday #2. Těšit se můžete na témata jako Immutable Linux na telefonech (BengalOS), U-Boot a upstream vývoj, AI optimalizace pro embedded systémy nebo otevřený hardware. Nebude chybět praktické hackování, sdílení zkušeností a možnost … více »

    lkocman | Komentářů: 2
    včera 00:44 | Bezpečnostní upozornění

    Dne 21. října 2026 vydal projekt Node.js bezpečnostní aktualizace opravující deset zranitelností, včetně jedné umožňující potenciální vzdálené spuštění kódu (RCE). Nejzajímavější je CVE-2026-111497, chyba dekodéru Brotli, kterou objevili výzkumníci využívající OpenAI Codex Security. Chyba je v nativním dekodéru Brotli, nikoli v samotném JavaScriptu. Speciálně vytvořený komprimovaný vstup způsobí, že dekodér zamění

    … více »
    vencour | Komentářů: 13
    23.10. 17:44 | IT novinky

    Francouzský výrobce kabelů Nexans upozornil na napjaté dodávky elektrických kabelů. Výstavba nové výrobní linky pro některé typy kabelů může trvat přibližně tři roky. Datacentra potřebují rozsáhlé nízkonapěťové a středněnapěťové rozvody. Poptávka roste současně s modernizací elektrických sítí. Někteří odběratelé proto uzavírají výrazně delší dodavatelské smlouvy [Reuters].

    vencour | Komentářů: 15
    23.10. 14:44 | Zajímavý projekt

    Představena byla (𝕏) virtuální platforma FLYBENCH FPV, která nováčky provede zapojením a konstrukcí dronů.

    Ladislav Hagara | Komentářů: 6
    23.10. 04:11 | Nová verze

    Google Chrome 156 byl prohlášen za stabilní. Přehled novinek v poznámkách k vydání. Opraveno bylo 353 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    22.10. 20:22 | IT novinky

    Indická společnost eMudhra po bezpečnostním incidentu, tj. kompromitaci soukromých klíčů osmi mezilehlých certifikátů své certifikační autority, opouští globální byznys s SSL/TLS certifikáty.

    Ladislav Hagara | Komentářů: 4
    22.10. 15:44 | Bezpečnostní upozornění

    Dle Phoronixu zveřejnila společnost Trend Micro prostřednictvím programu Zero Day Initiative (ZDI) několik hlášení bezpečnostních zranitelností přímo na veřejném mailing listu LKML, přestože některé chyby dosud nemají opravu začleněnou do hlavní větve jádra. Mezi hlášenými problémy jsou dvě zranitelnosti s hodnocením CVSS 9.0, týkající se SMB Direct a KSMBD, které mohou umožnit vzdálené spuštění kódu. Další hlášení se týkají … více »

    vencour | Komentářů: 0
    22.10. 15:33 | Nová verze

    Správce hesel KeePassXC byl vydán ve verzi 2.8.0. Přechází na Qt 6, podporuje vkládání hesel s Waylandem, rychlé odemykání pomocí Polkitu nebo možnost nastavení klávesových zkratek (seznam změn).

    ʚĭɞ 🍉 | Komentářů: 0
    22.10. 15:22 | Nová verze

    Databáze DuckDB (Wikipedie) byla vydána ve verzi 2.0.0 LTS. S kódovým názvem Cinnamon Teal (čírka skořicová). S vyladěným protokolem Quack.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (20%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2906 hlasů
     Komentářů: 33, poslední 20.10. 23:44
    Rozcestník

    Dotaz: Limitace rychlosti socketu

    2.6.2011 14:33 iKoulee | skóre: 19
    Limitace rychlosti socketu
    Přečteno: 737×
    Zdravim,

    chtel bych na linuxu limitovat socket (konkretne tcp spojeni) nejlepe v obou smerech (aktualne me vice zajima prijem dat). Rad bych se vyhnul metode read; sleep; Tedy co me zajima, lze nejak z userspace limitovat velikost tcp ramce, pripadne zahodit vsechny ramce vetsi jak X, aby druha strana posilala jen mensi? Vim ze teoreticky by to slo za pomoci iptables, ale to mi prijde jako protirat si oko pohrabacem.

    Stravil jsem uz nejaky cas procitanim manualu k setsockopt a jedine co jsem nasel co by mohlo provoz ovlivnovat je nastaveni vyrovnavaci pameti pro socket, ale to mi neprijde take optimalni?

    Ocenim doporuceni, odkaz na literaturu nebo klicova slova pro google.

    Dekuji, iK
    Even if you fall on your face, you’re still moving forward

    Řešení dotazu:


    Odpovědi

    rADOn avatar 2.6.2011 15:27 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Limitace rychlosti socketu
    O co se přesně snažíš? Jestli se snažíš řídit objem provozu, tak toho změnou velikosti rámce nedosáhneš. Velikost rámců z druhé strany TCP spojení neovlivníš vůbec nijak, zahazováním dosáhneš jen zpomalení odesílání. Na to ale stačí poslat ICMP zprávu Source Quench. Naopak libovolná linka na trase s menším MTU než má odesílatel ti rámce rozdělí na menší zcela automaticky a neřiditelně.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    2.6.2011 16:54 iKoulee | skóre: 19
    Rozbalit Rozbalit vše Re: Limitace rychlosti socketu
    Díky,

    to ICMP je dobrý nápad, to mě nenapadlo (popravdě si typy ICMP oznámení pamatuju jen velmi rámcově)

    Jinak jde mi o řízení objemu provozu a hlavně jeho dopadu.

    Ve zkratce: Na stroji mi běží mnohokrát něco takového (někdy i několik stovek):
    wget -O /velka-a-ne-prilis-rychla-sotrage --limit-rate=XM http://nejaka_url
    
    a wget dělá něco takového:
    select(6, [5], NULL, NULL, {900, 0})    = 1 (in [5], left {899, 999998})
    read(5, "/ \200\16\221\2333\302\343\362\7\276\303\247\327PI\370\332_\377\203$n\\r\306\2\34\326\273\336\264"..., 16384) = 16384
    write(4, "/ \200\16\221\2333\302\343\362\7\276\303\247\327PI\370\332_\377\203$n\\r\306\2\34\326\273\336\264"..., 4096) = 4096
    write(4, "c~\r\253`#f\257\1\2768~\330\302\365\2438\345\370\0212n?\202\336\240M\375\27\367\355\330\264"..., 12288) = 12288
    nanosleep({0, 211646177}, {16384, 139718411268904}) = 0
    
    Ja se snažím najít řešeni které bude ohleuplnější jak ke storage tak k síťové infrastruktuře (buffery switche etc.). Tzn najít/najít a upravit/v nejhorším napsat nějaký sw, který by to pokud možno zvládl nahradit bez zbytečných forku a plynule reguloval objem provozu a nevyráběl mi mikropřetížení na storage a síť. Pročež mě aktualně zajímá jak to lze vůbec realizovat, případně jaké na to linux má nástroje. Protože co jsem zatím viděl tak veškeré omezení provozu fungovalo obdobně jak ten wget, tedy přečtu XMB a pak čekám Y vteřin abych dosáhl X/Y MB/s.
    Even if you fall on your face, you’re still moving forward
    rADOn avatar 2.6.2011 19:27 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Limitace rychlosti socketu
    Ono to ani o moc lépe udělat nejde, AFAIK jediná podpora řízení provozu v ip4 je „interaktivní“ bit v hlavičce. ICMP zpráva je funkčně identická (dokonce si nejsem jistý jestli ji kernel neodešle sám když mu prestaneš vybírat z přijímací fronty), křikneš na odesílatele „zpomal“ ale nijak nejde předpovědět natož ovlivnit výsledek. To není chyba – nemůžeš vědět jaká je kapacita trasy bez použití dodatečných rezervačních protokolů (aka QoS). Čili to co nabízí wget je to nejlepší čeho se dá bez speciálních nástrojů a protokolů dosáhnout. Nedívej se na zpomalení čtení z fronty jako na primitivní řízení provozu, ale spíš jako na jednoduchý způsob jak kernelu naznačit svoje možnosti/požadavky a nechat skutečné řízení na něm. Kernel je v tomhle ohledu určitě chytřejší a efektivnějši než něco co zbastlíš sám.

    Skutečné řízení provozu se neřeší v každém programu zvlášť, ale nastavením pro celé prostředí (stroj nebo síť):
    • Pokud máš problém se vejít do kapacity linky a zároveň máš složitější požadavky na řízení provozu (program X nebo stroj Y má mít vždy přednost), potřebuješ nastavit traffic shaping na daném stroji nebo na hraničním routeru.
    • Podobně pokud ti hromady nedůležitých wgetů brzdí zápis z důležitých procesů (např. databáze), použij priority io plánovače. Pro jednoduché skripty stačí použít ionice, větší zátěž můžeš strčit do kontrolní skupiny a řídit ji najednou.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    3.6.2011 15:30 zulu
    Rozbalit Rozbalit vše Re: Limitace rychlosti socketu
    To teda vůbec není dobrý nápad, dokonce je to kravina. Ty bys neměl dělat nic víc, než prostě číst/zapisovat pomalu. Tečka.
    2.6.2011 20:08 Sten
    Rozbalit Rozbalit vše Re: Limitace rychlosti socketu
    Záleží, co máte na mysli limitováním spojení. Pokud chcete limitovat rychlost na danou maximální hodnotou, tak nic lepšího než read / sleep (resp. jiný časovač) není. Omezení backlogu má vliv jenom na délku fronty, ale samotnou rychlost prakticky nijak neovlivňuje. Můžete read / sleep emulovat přes iptables (-j LIMIT), pokud nechcete hrabat do programu, ale bude to dost neefektivní. Pokud ale chcete limitovat prioritu (tj. program využije celé pásmo, pokud ho nebude potřebovat někdo jiný), to uživatelský program neudělá a je na to potřeba iptables.
    2.6.2011 20:22 FF
    Rozbalit Rozbalit vše Re: Limitace rychlosti socketu
    A co ECN pole? http://en.wikipedia.org/wiki/Explicit_Congestion_Notification Z jedne prednasky vycuc - Toto pole slouží k signalizaci stavu zahlcení sítě. Vysílače na to reagují snížením okna na polovinu. Treba vy to šlo uměle nastavit.
    2.6.2011 21:07 luky
    Rozbalit Rozbalit vše Re: Limitace rychlosti socketu
    Ak potrebujes limitovat len urcity program, tak mne sa osvedcila utilitka "trickle" http://monkey.org/~marius/pages/?page=trickle

    Na googli sa daju najst aj nieake tutotialy k programu, pripadne sa mozes inspirovat aj priamo zdrojakmi programu.
    2.6.2011 21:26 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Limitace rychlosti socketu
    Přesně tak, trickle je výborné. A zdroják určitě napoví, jak se to dělá.
    7.6.2011 17:10 iKoulee | skóre: 19
    Rozbalit Rozbalit vše Re: Limitace rychlosti socketu
    Tak kdyby nekoho zajimalo vysledky meho patrani:

    ad trickle - limituje take prumerovanim, tedy stahne a ceka na rozdil od wgetu, nepouziva sleep ale v nekonecne smycce se pta na systemovy cas

    ja nakonec pouziju nejspise jinou metodu (podarilo se odstranit nutnost limitovat datovy tok, ktakze se stahuje plnou rychlosti a oestrim pouze planovac I/O a priority I/O obdobne jak pise Radon

    jinak "rychlost socketu" lze ridit velikosti tcp window, zde:

    https://supportforums.cisco.com/docs/DOC-12668

    jsem nasel zajimavy vzorecek:

    Optimal TCP Window Size [bytes] = (Minimum Link Bandwidth [bps] / 8[bits/byte]) * RTT [seconds]

    hotentotskou metodou jsem si jednoduse pingnul vzdaleny server latency dosadil za RTT vysledne window size jsem nasledne pouzil jako parametr iperfu (--window) a svete div se, prenosova rychlost odpovidala :-)

    po konzultaci dokumentace iperfu se zda ze staci socketu nastavit vyrovnavaci pamet na velikost okna a dilo zkazy je dokonano

    kdyz mi vyjde cas, pokusim se zmastit nejaky jednoduchy priklad, ktery ma svlova potvrdi a nasledne jej publikovat zde

    Take dekuji vsem zucastnenym za snahu a cenne rady
    Even if you fall on your face, you’re still moving forward

    Založit nové vlákno • Nahoru

    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.