Tutorial
MikroTik Bant Genişliği Yönetimi: Kuyruklar
MikroTik'te bant genişliği yönetimi: basit kuyruklar, mangle işaretli kuyruk ağacı, PCQ ile adil paylaşım, burst ve öncelik, filo genelinde hız limitleri.
Özet MikroTik bant genişliği yönetimi üç araca dayanır: hızlı bir istemci-başına sınır için basit kuyruklar, hiyerarşi ve öncelik için kuyruk ağaçları ve her biri için ayrı bir kuyruk oluşturmadan çok sayıda kullanıcı arasında adil paylaşım için PCQ. Kuyruk ağaçları, firewall mangle işaretleriyle eşleşir ve size garantiler, tavanlar ve öncelikler verir. Bu rehber, her birinin ne zaman kullanılacağını, RouterOS komutlarını ve aynı politikayı bir router filosunda nasıl tutarlı tutacağınızı gösterir.

MikroTik’te Bant Genişliği Yönetimi Nedir?
MikroTik’te bant genişliği yönetimi, bir bağlantının ne kadarını her müşterinin, alt ağın veya trafik sınıfının kullanabileceğini kontrol etmek için RouterOS kuyruklarının kullanılmasıdır — hızları sınırlamak, minimumları garanti etmek ve bağlantı dolduğunda kimin geri çekileceğine karar vermek. RouterOS, kuyrukları bir Hierarchical Token Bucket (HTB) zamanlayıcısıyla uygular ve bunu iki yerde sunar: sırayla uygulanan sıralı bir liste olan basit kuyruklar ve arayüzlere ya da firewall’un mangle özelliğinden gelen paket işaretlerine bağlanan bir hiyerarşi olan kuyruk ağacı (MikroTik Dokümantasyonu — Kuyruklar).
Bu ayrım, tasarımınızın ne kadar ölçekleneceğini belirler. Bir basit kuyruk “bu müşteriyi 50 Mbps’de sınırla” sorusunu yanıtlar. Bir kuyruk ağacı ise “bu 500 Mbps’lik uplink 300 abone tarafından paylaşılıyor, VoIP önce gidiyor, kimse aç kalmıyor ve ağır indiriciler akşamı mahvetmiyor” sorusunu yanıtlar. Her ISP eninde sonunda ikinci yanıta ihtiyaç duyar.
Adım 1 — Bir istemciyi basit kuyrukla sınırlayın
Basit kuyruklar, sorundan çözüme giden en kısa yoldur. Bir IP’yi, bir alt ağı veya bir arayüzü hedefleyin, tavanı ayarlayın ve işiniz biter:
/queue simple add name=client-101 target=10.10.0.101/32 max-limit=10M/50Mmax-limit, router’ın bakış açısından upload/download şeklinde yazılır. Kurallar sırayla değerlendirilir ve ilk eşleşme kazanır — yani erken eklenmiş geniş bir kural, daha sonra eklediğiniz spesifik kuralları sessizce yutar. Bu sıralama, birinin üstüne bir kural eklemesinin ardından “çalışan” bir kuyruğun neden çalışmayı bıraktığının en yaygın nedenidir (MikroTik Dokümantasyonu — Kuyruklar).
Basit kuyruklar ayrıca abone kimlik doğrulamasıyla da eşleşir: bir PPPoE profilinin rate-limit alanı, oturum başına dinamik bir basit kuyruk oluşturur, böylece planlar IP yerine kullanıcıyı takip eder. ISP’ler için MikroTik PPPoE sunucu rehberimiz profil tarafını ele alıyor.
Adım 2 — Trafiği firewall mangle ile işaretleyin
Kuyruk ağacı “VoIP” veya “müşteri 101”i göremez; paket işaretlerini görür. Bunları mangle’da oluşturun, önce bağlantıyı sonra paketleri işaretleyin; bu, her paketi yeniden incelemekten daha ucuzdur:
/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=noİşaret taksonomisini küçük ve sabit tutun. İşaretler, kuyruklarınızın konuştuğu kelime dağarcığıdır ve bir filoda üç kuşak gelişigüzel işaret adı biriktiğinde, hangi router’ın hangi politikayı uyguladığını kimse söyleyemez. MKController’ın konfigürasyon denetimi ve geçmişi tam da burada işe yarar: her router’ın mangle ve kuyruk durumunu görün, hedeflenen politikayla karşılaştırın ve değişikliği hiç almamış tek kutuyu bulmak için otuz Winbox oturumu açmak yerine düzeltilmiş kuralları filo genelinde gönderin.
Adım 3 — Kuyruk ağacı hiyerarşisini kurun
Bir kuyruk ağacında, bağlantının gerçek kapasitesini tutan bir parent ve onu bölen child’lar bulunur:
/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=8Üç alan işi yapar. limit-at, bağlantı doygun olsa bile bir child’ın aldığı garantidir. max-limit, kapasite boşken ulaşabileceği tavandır. priority — 1 en yüksek, 8 en düşük — hangi child’ın artanları önce alacağına karar verir ve yalnızca limit-at ile max-limit arasında geçerlidir (MikroTik Dokümantasyonu — Kuyruklar). Parent’ın max-limit değerini, sözleşmenin söylediği değil, bağlantının gerçekten sağladığı değere ayarlayın, yoksa kuyruk hiçbir zaman darboğaz olmaz ve hiçbir şeyi şekillendirmez.
Adım 4 — Adil paylaşım için PCQ ekleyin
Per Connection Queue (PCQ), MikroTik’in kullanıcı başına kuyruk listesini yönetilemez kılan abone sayılarına ölçeklenmesinin nedenidir. Bir PCQ kuyruk tipi, trafiği bir adres alanına göre sınıflandırır ve her farklı değer için dinamik bir alt kuyruk oluşturarak her birine aynı hızı uygular (MikroTik Dokümantasyonu — PCQ örneği):
/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-addresspcq-down’u müşteri indirme trafiğini taşıyan child’ın queue’su olarak ekleyin ve her müşteri otomatik olarak tahsis edilen 20 Mbps’ye kadar hız alır. pcq-rate=0 ayarlayın ve PCQ, parent’ın bant genişliğini aktif olan herkes arasında eşit olarak böler — klasik “kimse aç kalmaz” yapılandırması. Tek bir kuyruk tipi, elle yazılmış yüzlerce girdinin yerini alır.
Aynı eşitleyici mantık paylaşımlı WiFi için de geçerlidir: planın hız limiti ve bir PCQ parent’ı birlikte, bir misafirin bir mekanın uplink’ini tüketmesini engeller — kimlik bilgisi tarafı için MikroTik HotSpot kupon kurulum rehberimize göz atın.
Adım 5 — limit-at, max-limit, burst ve priority değerlerini ayarlayın
Bozuk QoS’ların çoğu yanlış bir araç değil, yanlış sayılardır. Her child’ın limit-at toplamını parent’ın max-limit değerinde veya altında tutun; garantiler bağlantıyı aşırı taahhüt ederse, HTB bunları yerine getiremez ve öncelikler beklediğiniz gibi davranmayı bırakır. priority=1’i gecikmeye duyarlı trafiğe — VoIP, oyun, DNS — ayırın ve toplu aktarımların cömert bir tavanla 8’de yaşamasına izin verin.
Burst bir uyarıyı hak ediyor. burst-limit, burst-threshold ve burst-time, bir istemcinin ortalaması düşük kalırken max-limit’i kısa süreliğine aşmasına izin verir — hız testleri için harika, aşırı taahhüt edilmiş bir bağlantı için daha kötü. Bağlantı yük altındayken /queue simple print stats veya kuyruk ağacı sayaçlarıyla ölçün, her şeyin boşta olduğu gece 3’te değil. Zirvede sayaçları okumak pratik değilse, MKController’ın Internet Link görünümü aynı resmi sürekli tutar — sözleşmeli hıza karşı kullanım; ortalama, maksimum ve P95 olarak gecikme; ve her bağlantının %90’ın üzerinde kaç saat geçirdiği — böylece şanslı bir anlık görüntüye değil, geçmişe karşı ayar yaparsınız.
Kapasite de değişir. Bir çift-WAN yük devretme kurulumunda, fiber için ayarladığınız parent max-limit, trafik LTE yedeğine düştüğü an bir kurgudan ibarettir — ikinci bir politika planlayın.
Adım 6 — Politikayı tüm filoya yayın
Bir router bir konfigürasyondur; yüz router bir operasyondur. Politikanın artık her kutuda birebir aynı olması, bir müşterinin tavanını “geçici olarak” yükselten teknisyenden sağ çıkması ve bir kule router’ı netinstall edildiğinde kurtarılabilir olması gerekir. RouterOS’ta bunu sizin için yapan hiçbir şey yoktur.
MKController yapar: kuyruk tiplerinin, rate-limit profillerinin ve güvenlik duvarı kurallarının filo genelinde gönderilmesi; konfigürasyon geçmişi, böylece bir limitin ne zaman değiştiğini görebilir ve önceki sürümü tek tıkla geri yükleyebilirsiniz; bir değişiklikten önce otomatik yedeklemeler; ve CGNAT arkasındaki veya Starlink üzerindeki router’lara public IP ve port yönlendirme olmadan güvenli giden uzaktan erişim — CGNAT arkasında MikroTik uzaktan yönetim yazımızda anlattığımız yaklaşım. Ve Internet Link izleme, az önce şekillendirdiğiniz uplink’leri izler — sözleşmeli hıza karşı kaynak başına kullanım, P95 ile gecikme ve router başına dört WAN kaynağına kadar %75 ve %90 bantlarını aşan tüketim — böylece doygunluğa doğru sürünen bir bağlantı, bir abone aramadan önce panoda ve (Telegram uyarılarıyla birlikte) bildirimlerinizde ortaya çıkar. MikroTik’i ölçekte çalıştıran ISP’ler ve WISP’ler bunu, bant genişliği politikasının yüz karar değil, tek bir karar olarak kalması için kullanır.
İpuçları
- Trafiğin router’dan çıktığı arayüzde şekillendirin; kuyruklar giden trafiği kontrol eder, bu yüzden indirmeler LAN tarafında, yüklemeler WAN tarafında şekillendirilir.
- Birkaç düzine aboneyi geçtikten sonra yüzlerce basit kuyruk yerine tek bir PCQ kuyruk tipini tercih edin.
mark-packetkurallarındapassthrough=no, kalan mangle kurallarının gereksiz taranmasını önler.- Bir üretim kenarında kuyruklara dokunmadan önce her zaman yedek alın ve her seferinde tek bir değişkeni değiştirin.
Bant genişliğinizin nereye gittiğini tahmin etmeyi bırakın
Kuyruklar, bir plan satmakla onu sunmak arasındaki farktır. Basit kuyruklar bir istemciyi sınırlar, kuyruk ağaçları yapı ve öncelik verir, PCQ adaleti otomatik hale getirir — ve MKController üçünü de bir kez uygulayıp her yerde uyguladığınız bir politikaya dönüştürür: merkezi filo yönetimi, her router’a hız limiti ve güvenlik duvarı gönderimleri, tek tıkla geri yükleme ile konfigürasyon geçmişi, public IP olmadan uzaktan erişim ve bir bağlantının sözleşmeli hızına karşı doygunluğa ulaştığını müşterilerinizden önce işaretleyen Internet Link izleme.