❗️Toto je původní verze internetového fóra ISPforum.cz do února 2020 bez možnosti registrace nových uživatelů. Aktivní verzi fóra naleznete na adrese https://telekomunikace.cz
Jake zelezo na hl. router
Re: Jake zelezo na hl. router
Ja mam na linuxu to same jako mac78 od zacatku. Mám tedy mene uzivatelu a konekt 160Mbit, ale zase mi to nejede na nejakem exptra stroji(nejake 1U IBM s dvoujadrovym xeonem 3050 @2.13GHz 2MB cache a 1GB RAM). To mi ten stroj dela kompletni monitoring site(nagios, smokeping, mrtg, ipfm, rosinfo...), web a smtp server... A vse zvlada bezproblemu. RoterOS patri na strechu nebo jako holej router, ale ne na centralni server.
0 x
miract píše:Ja mam na linuxu to same jako mac78 od zacatku. Mám tedy mene uzivatelu a konekt 160Mbit, ale zase mi to nejede na nejakem exptra stroji(nejake 1U IBM s dvoujadrovym xeonem 3050 @2.13GHz 2MB cache a 1GB RAM). To mi ten stroj dela kompletni monitoring site(nagios, smokeping, mrtg, ipfm, rosinfo...), web a smtp server... A vse zvlada bezproblemu. RoterOS patri na strechu nebo jako holej router, ale ne na centralni server.
ámen

0 x
tak jinak. Co ty patche vylepší že to jede až takhle hodně dobře? mikrotik teď už má taky rozdělení zátěž mezi jádra a revoluce se nekoná. Napadá mě hlavní vylepšení pouze v optimalizaci kodu na danej procesor, na danou architekturu která by mohla sakra pomoct a udělat z toho takhle výkonej stroj. Pak nějaký drobnosti při kompilaci jádra co budou víc optimalizovaný pro sítový provoz. Tohle všechno by teoreticky neměl bejt problem provést na téměř jakýkoliv distribuci a když se k tomu udělá rozumný api, je to hotovej výrobek 
Co tam máš za distro a verzi jádra?

Co tam máš za distro a verzi jádra?
0 x
Supermicro + Mikrotik = SuperTik
high speed routery podle požadavků
high speed routery podle požadavků
mac78 píše:Takže ještě jednou polopaticky :
patche v kernelu pouze pro implemetaci IMQ a ESFQ - nic jiného. Dá se vystačit jen s SFQ (ve standardním kernelu, tedy bez patche) a IMQ. Offloading NEPOUŽÍVÁME a podle mého názoru v linuxu pro shapování ani použít nejde. To udělá i člověk, kterej dokáže přeložit jádro. Pokud to nedokáže tak máš pravdu a evidentně domu nerozumí. V tom případě by byl dobrý nápad utrousil nějakou tu korunku za práci člověka, kterej to nakonfiguruje. Pro člověka (firmu) která potřebuje shapovat 250Mbit+ by to snad neměl bejt problém. Já se taky neučím opravovat auto i když s ním umím jezdit a natankovat do něj benzín.
A člověk, kterej všechno bastlí doma na gauči asi nepotřebuje shapovat 250Mbit+.
IMHO není ani nutné použít patche s IMQ ale IFB, které je standartní součástí jádra

0 x
Tak jestli tomu rozumíš dobře, jak si psal, tak snad víš k čemu je ESFQ a IMQ. Pro ty ostatní :
ESFQ je pouze opravená verze SFQ, které je v jádře a jedná se pouze o způsob jakým budou pakety propouštěny skrze frontu v shaperu. Má možnost definovat z čeho se budou vytvářet hash tabulky na základě kterých se pak rozhoduje, jaké pakety se zahodí v případě, že je třída saturována. Vliv na rychlost nula, na QoS dle konfigurace.
IMQ umožňuje vytvořit virtuální rozhraní do kterýho se směřuje odchozí traffic z routeru do netu. Shapping je totiž na linuxu obecně možnej jen na (tuším) výstupní straně rozhraní. Můžeš použít i IFB, který je součástí kernelu ale nezkoušel jsem ho.
Takže ty patche nejsou nezbytně nutný, ale umožní vytvořit řešení, který dělá lépe svojí práci. V kernelu pouze vymezíš např. 2 jádra, na každé pověsíš přerušení jedné síťovky. Na těchto 2 jádrech nebudou přerušení ničeho jiného (ani žádné procesy) a je nanejvýš ideální počítat s interní architekturou cache procesoru, tedy používat jádra, která sdílí stejnou cache. Taky musíte použít síťovku (samozřejmě jen PCIe nebo PCI-X 64 bit) která podporuje přerušení přes MSI a nevolá si přerušení při každym paketu kterej dorazí nebo chce odejít. Toť kouzlo celé záležitosti.
Jestli tohle nedokáže nastavit 99.99% ISP, dobrovolně se vzdávám občanství naší republiky a odcházím do vyhnanství
Distro OpenSuSE, vanilla kernel 2.6.24.7
ESFQ je pouze opravená verze SFQ, které je v jádře a jedná se pouze o způsob jakým budou pakety propouštěny skrze frontu v shaperu. Má možnost definovat z čeho se budou vytvářet hash tabulky na základě kterých se pak rozhoduje, jaké pakety se zahodí v případě, že je třída saturována. Vliv na rychlost nula, na QoS dle konfigurace.
IMQ umožňuje vytvořit virtuální rozhraní do kterýho se směřuje odchozí traffic z routeru do netu. Shapping je totiž na linuxu obecně možnej jen na (tuším) výstupní straně rozhraní. Můžeš použít i IFB, který je součástí kernelu ale nezkoušel jsem ho.
Takže ty patche nejsou nezbytně nutný, ale umožní vytvořit řešení, který dělá lépe svojí práci. V kernelu pouze vymezíš např. 2 jádra, na každé pověsíš přerušení jedné síťovky. Na těchto 2 jádrech nebudou přerušení ničeho jiného (ani žádné procesy) a je nanejvýš ideální počítat s interní architekturou cache procesoru, tedy používat jádra, která sdílí stejnou cache. Taky musíte použít síťovku (samozřejmě jen PCIe nebo PCI-X 64 bit) která podporuje přerušení přes MSI a nevolá si přerušení při každym paketu kterej dorazí nebo chce odejít. Toť kouzlo celé záležitosti.
Jestli tohle nedokáže nastavit 99.99% ISP, dobrovolně se vzdávám občanství naší republiky a odcházím do vyhnanství

Distro OpenSuSE, vanilla kernel 2.6.24.7
0 x
jasně že to vim, jenom tě trochu opravim. Traffic shaping je možný pouze u dat která z routeru odcházeji. Ty můžeme regulovat protože víme kolik pustit a bufferovat nějakej čas. Ty která přichází nemůžeme a proto se používá IMQ který se použije jako virtuální iface do kterýho jsou směrovány příchozí data a pak jsou následně z IMQ jsou puštěna zpět do routeru jako by se nic nedělo ale na to IMQ rozhraní navěsíme shaping protože to z něj odchází do roueru (virtuálně). Vim že tohle nechtěly dát přímo do jádra a taky vim proč ale nevěděl jsem že tam místo toho daly už něco jinýho což je fajn. Mimo to, žádný IMQ neni třeba nasazovat protože stačí manglovat a shapovat na postroutingu každýho z ethernetů kde jsou čitelný všechny IP adresy ještě před natem. Sám to tak dělám na mikrotiku (zvyk z linuxu).
Technicky vzato se používaji IRQčka pouze při příchozích paketech a u odchozích už ne ale to nevim přesně.
Jak se vymezujou IRQčka na jádra? Tohle jsem nikdy nedělal.
No jestli potkáváš takový ISPíky jako já, tak bych tam přidal ještě jednu devítku.
Asi oprášim debiana a skusim si vanila kernel
člověk uplně zapomíná jak je mikrotik nevýkonej, ach ta degenerace.
Technicky vzato se používaji IRQčka pouze při příchozích paketech a u odchozích už ne ale to nevim přesně.
Jak se vymezujou IRQčka na jádra? Tohle jsem nikdy nedělal.
No jestli potkáváš takový ISPíky jako já, tak bych tam přidal ještě jednu devítku.
Asi oprášim debiana a skusim si vanila kernel

člověk uplně zapomíná jak je mikrotik nevýkonej, ach ta degenerace.
0 x
Supermicro + Mikrotik = SuperTik
high speed routery podle požadavků
high speed routery podle požadavků
psal jsem cituji "Shapping je totiž na linuxu obecně možnej jen na (tuším) výstupní straně rozhraní." Nevím o co jsi tuhle definici rozšířil, ale určitě vím že si ji zobecnil. Traffic se totiž shapuje na egress třídě každého rozhraní, tedy na jeho výstupu, nikolik zákonitě na výstupu z routeru. Proto se používá berlička jako IFB nebo IMQ. I pro ingress třídu existují klasifikátory, ale je jich minimálně a neudržují se. Podívej se na nějaký "Kernel Packet Traveling Diagram" a uvidíš.
Data se navíc nikde nějak zásadně nebufferují. Shapping znamená pouze a jenom kontrolované zahazování paketů. Zdroj, který data odesílá nedostane potvrzení o jejich přijetí adresátem a sníží rychlost odesílání.
Technicky vzato se IRQ používají v jejich původní podobě při každé manipulaci s daty mimo CPU, takže i při odesílání. Tuto neduhu x86 systému odstraňují berličky jako např. DMA nebo právě MSI. Kdo zažil dobu DOSu a programování např. v assembleru ví o čem mluvím
IRQ se přiřazují v /proc/irq/XX/smp_affinity. Podle binární masky se dá určit, který CPU má obsluhovat které přerušení. Při bootu kernelu je dobrý použít parametr isolcpus, kterým izoluješ z irq_balancingu ty jádra, která chceš použít pro síťové karty, případně jiná zařízení. Google je nejlepší rádce
Netuším jaký ISPky potkáváš ty, ale pro mně to slovo znamená "poskytovatel služby". Takže bych očekával fundovanou osobu (fyzickou či právnickou), která se bude prát o svoje místo na trhu. Na neznalost se v obchodu nehraje.
Mám pocit, že ISP v týhle republice rychle zapomněli na to, z čeho vlastně vyrostli. S rozšířením Mikrotiku a příchodem levnejch "ready to deploy" rádií je každej rychle profesionálním "síťařem", kterej používá jen to, co se dá koupit v eshopu. Vlastní vývoj nebo alespoň nějaký pátrání jak řešit věci jinak, je ta tam. Kdepak jsou ty časy kdy člověk ladil konfiguraci kernelu a ovladačů pro první WiFi karty (např. XI-626)
Ty co to podstoupili si z toho odnesli zkušenosti a know-how. Ale nejen pro ty ostatní je Mikrotik zaklínadlem na všechno. Nepouštějte se do mě, nic proti Mikrotiku nemám .... na střeše ... 
Sorry za offtopic
Data se navíc nikde nějak zásadně nebufferují. Shapping znamená pouze a jenom kontrolované zahazování paketů. Zdroj, který data odesílá nedostane potvrzení o jejich přijetí adresátem a sníží rychlost odesílání.
Technicky vzato se IRQ používají v jejich původní podobě při každé manipulaci s daty mimo CPU, takže i při odesílání. Tuto neduhu x86 systému odstraňují berličky jako např. DMA nebo právě MSI. Kdo zažil dobu DOSu a programování např. v assembleru ví o čem mluvím

IRQ se přiřazují v /proc/irq/XX/smp_affinity. Podle binární masky se dá určit, který CPU má obsluhovat které přerušení. Při bootu kernelu je dobrý použít parametr isolcpus, kterým izoluješ z irq_balancingu ty jádra, která chceš použít pro síťové karty, případně jiná zařízení. Google je nejlepší rádce

Netuším jaký ISPky potkáváš ty, ale pro mně to slovo znamená "poskytovatel služby". Takže bych očekával fundovanou osobu (fyzickou či právnickou), která se bude prát o svoje místo na trhu. Na neznalost se v obchodu nehraje.
Mám pocit, že ISP v týhle republice rychle zapomněli na to, z čeho vlastně vyrostli. S rozšířením Mikrotiku a příchodem levnejch "ready to deploy" rádií je každej rychle profesionálním "síťařem", kterej používá jen to, co se dá koupit v eshopu. Vlastní vývoj nebo alespoň nějaký pátrání jak řešit věci jinak, je ta tam. Kdepak jsou ty časy kdy člověk ladil konfiguraci kernelu a ovladačů pro první WiFi karty (např. XI-626)


Sorry za offtopic
0 x
napsal jsem to s tim egress tak aby to pochopili i ostatní. Nečteš to jenom ty 
Buffer tam je, každá fronta má nějakej buffer viz fifo, sfq například.
No právě že lidi koupí, zapnout, lehce nastaví a jsou to ISPíci a nejlépe ti co fungujou na SQ. Tohle forum je jich plný tak čemu se divit.
To s těma IRQčkama si vyzkoušim. Je fakt že jsem linux jako hi-tech router neviděl už dlouho a i já jsem zběhnul k mikrotiku který láká winboxem s přehledem totálně o všem
sakra práce. Navnadil jsi mě na rozhraní pro linux router.
Každopádně na MK to nikomu nad 200Mbit a víc moc nejede a mám takovej pocit, že množství pravidel na tom moc nemění.

Buffer tam je, každá fronta má nějakej buffer viz fifo, sfq například.
No právě že lidi koupí, zapnout, lehce nastaví a jsou to ISPíci a nejlépe ti co fungujou na SQ. Tohle forum je jich plný tak čemu se divit.
To s těma IRQčkama si vyzkoušim. Je fakt že jsem linux jako hi-tech router neviděl už dlouho a i já jsem zběhnul k mikrotiku který láká winboxem s přehledem totálně o všem

Každopádně na MK to nikomu nad 200Mbit a víc moc nejede a mám takovej pocit, že množství pravidel na tom moc nemění.
0 x
Supermicro + Mikrotik = SuperTik
high speed routery podle požadavků
high speed routery podle požadavků
Není to buffer jako takový (který by cosi vyrovnával), ale fronta do který se pakety řadí a na jejím konci se algoritmus stará o jejich zahazování, pokud je třída saturovaná.
Linux dokáže hodně věcí a myslim si, že s trochou snahy z toho půjde vymáčknout i více než 1Gbit full-duplex. Při shapingu samozřejmě... Ve špičce jsem u nás měl 700Mbit a load necelých 70%.
Na MK nejede a myslím, že podle symptomů tak, jak je tady popisujete, je to nedostatkem přerušení. Ovlivňujete to právě množství paketů, který prochází routerem a generují přerušení. Rozhodně se to nevyřeší hardwarem, alespoň ne pokud MK nemá nějakou konkrétní konfiguraci nějak "zvýhodněnou".
Linux dokáže hodně věcí a myslim si, že s trochou snahy z toho půjde vymáčknout i více než 1Gbit full-duplex. Při shapingu samozřejmě... Ve špičce jsem u nás měl 700Mbit a load necelých 70%.
Na MK nejede a myslím, že podle symptomů tak, jak je tady popisujete, je to nedostatkem přerušení. Ovlivňujete to právě množství paketů, který prochází routerem a generují přerušení. Rozhodně se to nevyřeší hardwarem, alespoň ne pokud MK nemá nějakou konkrétní konfiguraci nějak "zvýhodněnou".
0 x
buffer... fronta... jedno a to samí.
Každopádně jestli je to primárně závislí na IRQ, tak si člověk moc nepomůže když dá za sebou dva routery při tocích nad 300Mbit. Co zkusit v5? tam je podpora pro rozložení IRQček na jádra ale jestli to má nějakej efekt nevim. Brána mi na v5 jede ale stejně neprotahne ani o chlup víc než na v3.30 ale tady už asi fakt bude na hraně FSB. Někdo tu nedavno psal o vytížení při použití v5 kdy se mu snížilo zatížení CPU ale nepsal jestli to taky dosahne na větší propustnosti a nezačne to dělat kraviny jako mě.
Pak taky nesmim zapomenout na můj test duálního atomu kdy si při routingu bez pravidel dával skrz 1Gbit bez větších problemů ovšem test ftp je spíš o rychlosti s menšim počtem IRQ díky velkým paketům což zase kazí výsledek.
tazatel by asi měl pouvažovat o linuxovim routeru. Defakto stačí nahodit debiana a nainstalovat balíčky pro tc a upravit si scripty pro plnění dat.
Každopádně jestli je to primárně závislí na IRQ, tak si člověk moc nepomůže když dá za sebou dva routery při tocích nad 300Mbit. Co zkusit v5? tam je podpora pro rozložení IRQček na jádra ale jestli to má nějakej efekt nevim. Brána mi na v5 jede ale stejně neprotahne ani o chlup víc než na v3.30 ale tady už asi fakt bude na hraně FSB. Někdo tu nedavno psal o vytížení při použití v5 kdy se mu snížilo zatížení CPU ale nepsal jestli to taky dosahne na větší propustnosti a nezačne to dělat kraviny jako mě.
Pak taky nesmim zapomenout na můj test duálního atomu kdy si při routingu bez pravidel dával skrz 1Gbit bez větších problemů ovšem test ftp je spíš o rychlosti s menšim počtem IRQ díky velkým paketům což zase kazí výsledek.
tazatel by asi měl pouvažovat o linuxovim routeru. Defakto stačí nahodit debiana a nainstalovat balíčky pro tc a upravit si scripty pro plnění dat.
0 x
Supermicro + Mikrotik = SuperTik
high speed routery podle požadavků
high speed routery podle požadavků
Jasne linuxu se nebranime ale zajimaly me zkusenosti s MK. Budem ted muset vymenit HW tak kazdy nazor a zkusenost se pro rozhodovani hodi ... diky
0 x
Ahoj, resim ted novy centralni router(shaper a nat cca 300-400Mbit, 2000 PC) na LINUXU a premyslim, jaky poridit procesor. Nevim jestli vzit radeji 6 jadro s taktem 2,4GHz nebo 4 jadro s taktem 2,66GHz, ty maji 12MB cache, pripadne 4 jadro s taktem 3,2GHz ale jen s 8MB cache? Diky za radu.
0 x
cache nehraje az takovou roli jak se zda...vem spise rychlejsi s mene cache nebo to co bude lepsi pro tvoji kapsu
PW

PW
0 x
Umřel sem, tak do mě nekopte a nechte mne spát... z principu na leckoho můžu srát a leckdy to i dělám, prostě život :o)))
pcwifi píše:cache nehraje az takovou roli jak se zda...vem spise rychlejsi s mene cache nebo to co bude lepsi pro tvoji kapsu![]()
PW
spousta lidi tady na foru tvrdi presny opak


ja osobne bych sel do sandy bridge (az pro to budou znackove desky), prave jsem si domu poridil quadcore i5-2500K a je to masakr. v desce s P67 se tomu da rict, aby vsechny jadra jely pri zatezi na max turbo frekvenci 3.7GHz, staci to jen dobre chladit. To ani neni OC, protoze ty jadra tu frekvenci umi, intel to omezuje jen kvuli TDP


0 x