Tutorial
MikroTik pralaidumo valdymas: eilės
Kaip valdyti pralaidumą MikroTik: paprastos eilės, eilių medis su mangle žymomis, PCQ sąžiningas dalijimas, burst ir prioritetas bei parko masto apribojimai.
Santrauka MikroTik pralaidumo valdymas remiasi trimis įrankiais: paprastomis eilėmis greitam apribojimui vienam klientui, eilių medžiais hierarchijai ir prioritetui, ir PCQ sąžiningam dalijimui tarp daugelio vartotojų nekuriant eilės kiekvienam. Eilių medžiai dera su ugniasienės mangle žymomis ir suteikia garantijas, lubas bei prioritetus. Šis vadovas parodo, kada naudoti kiekvieną, RouterOS komandas ir kaip išlaikyti tą pačią politiką nuosekliai visame maršrutizatorių parke.

Kas yra pralaidumo valdymas MikroTik įrenginyje?
Pralaidumo valdymas MikroTik įrenginyje — tai RouterOS eilių naudojimas kontroliuoti, kiek kanalo gali suvartoti kiekvienas klientas, potinklis ar srauto klasė — ribojant greičius, garantuojant minimumus ir sprendžiant, kas nusileidžia, kai kanalas užpildytas. RouterOS eiles įgyvendina naudodama Hierarchical Token Bucket (HTB) planuoklį, prieinamą dviejose vietose: paprastos eilės (simple queues) — tvarkingas sąrašas, taikomas iš eilės, ir eilių medis (queue tree) — hierarchija, susieta su sąsajomis arba su paketų žymomis iš ugniasienės mangle mechanizmo (MikroTik dokumentacija — Queues).
Šis skirtumas lemia, kiek jūsų sprendimas galės plėstis. Paprasta eilė atsako į klausimą „apribok šį klientą iki 50 Mbps”. Eilių medis atsako: „šį 500 Mbps kanalą dalijasi 300 abonentų, VoIP praeina pirmas, niekas nebadauja, o intensyvūs siųstuvai nesugadina vakaro”. Kiekvienam ISP galiausiai prireikia antrojo atsakymo.
1 žingsnis — Apribokite vieną klientą paprasta eile
Paprastos eilės yra trumpiausias kelias nuo problemos iki sprendimo. Nukreipkite į IP, potinklį ar sąsają, nustatykite lubas ir viskas:
/queue simple add name=client-101 target=10.10.0.101/32 max-limit=10M/50Mmax-limit rašomas kaip upload/download maršrutizatoriaus požiūriu. Taisyklės vertinamos iš eilės ir laimi pirmas atitikmuo — todėl ankstyva plati taisyklė tyliai praryja konkrečias, kurias pridedate vėliau. Ta tvarka yra dažniausia priežastis, kodėl „veikianti” eilė nustoja veikti, kai kas nors virš jos prideda taisyklę (MikroTik dokumentacija — Queues).
Paprastos eilės taip pat dera su abonentų autentifikavimu: PPPoE profilio rate-limit laukas sukuria dinaminę paprastą eilę kiekvienai sesijai, todėl planai seka vartotoją, o ne IP. Mūsų MikroTik PPPoE serverio vadovas ISP operatoriams apima profilio pusę.
2 žingsnis — Pažymėkite srautą ugniasienės mangle
Eilių medis nemato „VoIP” ar „kliento 101”; jis mato paketų žymas. Kurkite jas mangle, pirma pažymėdami ryšį, o paskui paketus — tai pigiau nei iš naujo tikrinti kiekvieną paketą:
/ip firewall mangleadd chain=forward action=mark-connection new-connection-mark=voip-conn protocol=udp port=5060,10000-20000add chain=forward action=mark-packet connection-mark=voip-conn new-packet-mark=voip-pkt passthrough=noLaikykite žymų taksonomiją mažą ir stabilią. Žymos yra žodynas, kuriuo kalba jūsų eilės, ir kai parkas turi tris kartas atsitiktinių žymų pavadinimų, niekas negali pasakyti, kuris maršrutizatorius įgyvendina kurią politiką. Būtent čia MKController konfigūracijos auditas ir istorija pasiteisina: matykite kiekvieno maršrutizatoriaus mangle ir eilių būseną, palyginkite ją su numatyta politika ir išsiųskite pataisytas taisykles visam parkui, užuot atidarę trisdešimt Winbox sesijų, kad rastumėte tą vieną įrenginį, kuris niekada negavo pakeitimo.
3 žingsnis — Sukurkite eilių medžio hierarchiją
Eilių medis turi vieną pirminę eilę, laikančią tikrąjį kanalo pajėgumą, ir antrines, kurios jį dalija:
/queue treeadd name=download parent=bridge-lan max-limit=500Madd name=voip parent=download packet-mark=voip-pkt limit-at=50M max-limit=100M priority=1add name=bulk parent=download packet-mark=bulk-pkt limit-at=50M max-limit=500M priority=8Darbą atlieka trys laukai. limit-at yra garantija, kurią antrinė eilė gauna net kai kanalas prisotintas. max-limit yra lubos, kurias ji gali pasiekti, kai pajėgumas laisvas. priority — 1 yra aukščiausias, 8 žemiausias — sprendžia, kuri antrinė eilė pirma gauna likučius, ir taikomas tik tarp limit-at ir max-limit (MikroTik dokumentacija — Queues). Nustatykite pirminės eilės max-limit į tai, ką kanalas iš tikrųjų pristato, o ne į tai, kas parašyta sutartyje, arba eilė niekada netaps kliūtimi ir nieko neformuos.
4 žingsnis — Pridėkite PCQ sąžiningam dalijimui
Per Connection Queue (PCQ) yra priežastis, kodėl MikroTik plečiasi iki tokio abonentų skaičiaus, kad eilių sąrašas kiekvienam vartotojui tampa nevaldomas. PCQ eilės tipas klasifikuoja srautą pagal adreso lauką ir sukuria dinaminę antrinę eilę kiekvienai atskirai reikšmei, taikydamas tą patį greitį kiekvienai (MikroTik dokumentacija — PCQ example):
/queue typeadd name=pcq-down kind=pcq pcq-rate=20M pcq-classifier=dst-addressadd name=pcq-up kind=pcq pcq-rate=10M pcq-classifier=src-addressPrijunkite pcq-down kaip antrinės eilės, gabenančios klientų atsisiuntimo srautą, queue, ir kiekvienas klientas gauna iki 20 Mbps, paskirstytų automatiškai. Nustatykite pcq-rate=0, ir PCQ padalija pirminės eilės pralaidumą po lygiai tarp visų aktyvių — klasikinė „niekas nebadauja” konfigūracija. Vienas eilės tipas pakeičia šimtus ranka rašytų įrašų.
Ta pati išlyginimo logika taikoma bendram WiFi: plano greičio limitas ir PCQ pirminė eilė kartu neleidžia vienam svečiui suvartoti visos vietos kanalo — kredencialų pusę žr. mūsų MikroTik HotSpot kuponų sąrankos vadove.
5 žingsnis — Suderinkite limit-at, max-limit, burst ir priority
Dauguma sugedusio QoS yra ne blogas įrankis, o blogi skaičiai. Laikykite visų antrinių eilių limit-at sumą lygią pirminės eilės max-limit arba mažesnę; jei garantijos perkrauna kanalą, HTB negali jų įvykdyti ir prioritetai nustoja elgtis taip, kaip tikitės. Rezervuokite priority=1 delsai jautriam srautui — VoIP, žaidimams, DNS — o didelius perkėlimus palikite ties 8 su dosniomis lubomis.
Burst nusipelno įspėjimo. burst-limit, burst-threshold ir burst-time leidžia klientui trumpai viršyti max-limit, kol jo vidurkis lieka žemas — puiku greičio testams, blogiau perkrautam kanalui. Matuokite su /queue simple print stats arba eilių medžio skaitikliais, kol kanalas apkrautas, o ne 3 val. nakties, kai viskas neveiklu. Jei skaitiklių skaitymas piko metu nepraktiškas, MKController Internet Link rodinys nuolat rodo tą patį vaizdą — panaudojimą, palyginti su sutartu greičiu; delsą kaip vidurkį, maksimumą ir P95; ir kiek valandų kiekvienas kanalas praleido virš 90% — todėl derinate pagal istoriją, o ne laimingą momentinę nuotrauką.
Pajėgumas taip pat kinta. Dviejų WAN atsarginio perjungimo sąrankoje pirminės eilės max-limit, kurį suderinote optiniam ryšiui, tampa fikcija tą akimirką, kai srautas patenka į LTE atsarginį kanalą — suplanuokite antrą politiką.
6 žingsnis — Įdiekite politiką visame parke
Vienas maršrutizatorius yra konfigūracija; šimtas maršrutizatorių yra operacija. Dabar politika turi būti vienoda kiekviename įrenginyje, atlaikyti techniką, kuris „laikinai” pakėlė kliento lubas, ir būti atkuriama, kai bokšto maršrutizatorius perdiegiamas per netinstall. RouterOS už jus to nedaro.
MKController tai daro: parko masto eilių tipų, rate-limit profilių ir ugniasienės taisyklių išsiuntimas; konfigūracijos istorija, kad matytumėte, kada apribojimas pasikeitė, ir atkurtumėte ankstesnę versiją vienu paspaudimu; automatinės atsarginės kopijos prieš pakeitimą; ir saugi išeinanti nuotolinė prieiga prie maršrutizatorių už CGNAT arba ant Starlink, be viešojo IP ir be port forwarding — būdas, kurį aprašome MikroTik nuotolinio valdymo už CGNAT vadove. O jos Internet Link stebėsena stebi būtent tuos kanalus, kuriuos ką tik suformavote — panaudojimą pagal šaltinį, palyginti su sutartu greičiu, delsą su P95 ir vartojimą, kertantį 75% ir 90% ribas iki keturių WAN šaltinių viename maršrutizatoriuje — todėl link prisotinimo slenkantis kanalas iškyla skydelyje ir (kartu su Telegram įspėjimais) jūsų pranešimuose dar prieš abonentui paskambinant. ISP ir WISP operatoriai, valdantys MikroTik dideliu mastu, jį naudoja, kad pralaidumo politika liktų vienu sprendimu, o ne šimtu.
Patarimai
- Formuokite srautą sąsajoje, iš kurios srautas išeina iš maršrutizatoriaus; eilės valdo išeinantį srautą, todėl atsisiuntimai formuojami LAN pusėje, o įkėlimai — WAN pusėje.
- Rinkitės vieną PCQ eilės tipą, o ne šimtus paprastų eilių, kai peržengiate kelias dešimtis abonentų.
passthrough=nomark-packettaisyklėse taupo bereikalingą likusių mangle taisyklių peržiūrą.- Visada darykite atsarginę kopiją prieš liesdami eiles produkciniame krašto įrenginyje ir keiskite po vieną kintamąjį.
Nustokite spėlioti, kur dingo jūsų pralaidumas
Eilės yra skirtumas tarp plano pardavimo ir jo pristatymo. Paprastos eilės apriboja klientą, eilių medžiai suteikia struktūrą ir prioritetą, PCQ padaro sąžiningumą automatinį — o MKController visus tris paverčia politika, kurią pritaikote vieną kartą ir įgyvendinate visur: centralizuotą parko valdymą, rate-limit ir ugniasienės išsiuntimą į kiekvieną maršrutizatorių, konfigūracijos istoriją su atkūrimu vienu paspaudimu, nuotolinę prieigą be viešojo IP ir Internet Link stebėseną, kuri pažymi kanalą, prisotinantį savo sutartą greitį, dar prieš tai pastebint jūsų klientams.