Výchozí problém
Pevné limity často nerozlišují okamžité zatížení a mohou trestat klienta i v době, kdy je kapacita volná. Cílem bylo připravit řízení provozu, které pracuje s definovanými pravidly a zůstává kontrolovatelné v RouterOS.
Řešení
Projekt odděluje konfigurační hodnoty od provozní logiky, počítá s bezpečným opakovaným spuštěním a srozumitelným logováním. Dokumentace vysvětluje také limity řešení u UDP/QUIC provozu.
Ukázka kódu
:local clientAddress "192.0.2.10"
:local currentUsage 84
:local softLimit 75
:if ($currentUsage > $softLimit) do={
/queue simple set [find where target=("$clientAddress/32")] max-limit="40M/40M"
:log info ("Dynamic FUP: adjusted " . $clientAddress)
}
Ukázka je zjednodušená a používá dokumentační IP adresu; neobsahuje produkční konfiguraci.