SKFREE

Mikrotik™ Scripts&Software - FUP-SQ

Thomas - 05.02.2008 - 19:32
Post subject: FUP-SQ
Samotny FUP skriptik

Code: ›
:local k 0
:local traf 0
:local cas [:pick [/system clock get time] 0 2]

#Casove rozmedzie kedy sa ma skript aplikovat
:if (($cas > 6) && ($cas <23)) do {

#Prechadyanie jednotlivýzch  queus
  /queue simple
  :foreach k in=[/queue simple find disabled=no ] do {
    :local meno [:pick [/queue simple get $k name] 0 4]
    :local rych [get $k max-limit]
    :local traf [get $k total-bytes]
    :if ( $meno!="garant" ) do {
#Definovanie 2G programov a FUP pre nich 750 MB
      :if ($traf > 750000000) do  {
   :if ([:find [/queue simple get $k name] "WM2G"] >= 0) do {
         /queue simple set $k max-limit=32000/128000
   }

    :if ([:find [/queue simple get $k name] "HO2G"] >= 0) do {
         /queue simple set $k max-limit=64000/256000
    }

    :if ([:find [/queue simple get $k name] "ST2G"] >= 0 ) do {
         /queue simple set $k max-limit=96000/384000
    }
    :if ( [:find [/queue simple get $k name] "HE2G"] >= 0 ) do {
         /queue simple set $k max-limit=128000/512000
    }
  }
#Definicia 5G programov a 1,5 GB FUP
      :if ($traf > 1500000000) do  {
    :if ( [:find [/queue simple get $k name] "WM5G"]  >= 0) do {
         /queue simple set $k max-limit=32000/128000
    }

    :if ( [:find [/queue simple get $k name] "HO5G"]  >= 0) do {
         /queue simple set $k max-limit=64000/256000
    }

    :if ( [:find [/queue simple get $k name] "ST5G"]  >= 0) do {
         /queue simple set $k max-limit=128000/512000
    }
    :if ( [:find [/queue simple get $k name] "HE5G"]  >= 0) do {
         /queue simple set $k max-limit=256000/1024000
    }
  }
#Definicia LINE programov a 3GB FUP
      :if ($traf > 3000000000) do  {
    :if ( [:find [/queue simple get $k name] "WMLN"] >= 0 ) do {
         /queue simple set $k max-limit=64000/256000
    }

    :if ( [:find [/queue simple get $k name] "HOLN"]  >= 0) do {
             /queue simple set $k max-limit=128000/512000
    }

    :if ( [:find [/queue simple get $k name] "STLN"]  >= 0) do {
         /queue simple set $k max-limit=256000/1024000
    }
    :if ( [:find [/queue simple get $k name] "HELN"] >= 0 ) do {
         /queue simple set $k max-limit=384000/1536000
}
   

      }
    }
  }
  }




Obnova pôvodných rýchlostí
Code: ›
:local k 0
:local traf 0
:local cas [:pick [/system clock get time] 0 2]
  /queue simple
  :foreach k in=[/queue simple find disabled=no ] do {
    :local meno [:pick [/queue simple get $k name] 0 4]
    :local rych [get $k max-limit]
    :local traf [get $k total-bytes]
    :if ( $meno!="garant" ) do {
# Definovanie 2G programov
   :if ([:find [/queue simple get $k name] "WM2G"] >= 0) do {
         /queue simple set $k max-limit=128000/512000
   }

    :if ([:find [/queue simple get $k name] "HO2G"] >= 0) do {
         /queue simple set $k max-limit=256000/1024000
    }

    :if ([:find [/queue simple get $k name] "ST2G"] >= 0 ) do {
         /queue simple set $k max-limit=384000/1536000
    }
    :if ( [:find [/queue simple get $k name] "HE2G"] >= 0 ) do {
         /queue simple set $k max-limit=512000/2048000
    }

#Definicia 5G programov
    :if ( [:find [/queue simple get $k name] "WM5G"]  >= 0) do {
         /queue simple set $k max-limit=128000/512000
    }

    :if ( [:find [/queue simple get $k name] "HO5G"]  >= 0) do {
         /queue simple set $k max-limit=256000/1024000
    }

    :if ( [:find [/queue simple get $k name] "ST5G"]  >= 0) do {
         /queue simple set $k max-limit=512000/2048000
    }
    :if ( [:find [/queue simple get $k name] "HE5G"]  >= 0) do {
         /queue simple set $k max-limit=1024000/4096000
    }

#Definicia LINE programov
    :if ( [:find [/queue simple get $k name] "WMLN"] >= 0 ) do {
         /queue simple set $k max-limit=256000/1024000
    }

    :if ( [:find [/queue simple get $k name] "HOLN"]  >= 0) do {
             /queue simple set $k max-limit=512000/2048000
    }

    :if ( [:find [/queue simple get $k name] "STLN"]  >= 0) do {
         /queue simple set $k max-limit=1024000/4096000
    }
    :if ( [:find [/queue simple get $k name] "HELN"] >= 0 ) do {
         /queue simple set $k max-limit=1536000/6144000
}
   
  }
  }



:if ( $meno!="garant" ) do { slovičko garant si nahradte menom rodičovskej triedy

mena jednotlivýzch queues mam nahadyane spôosobom PROGRAM_Meno_zakaznika

teda napr takto

Code: › WMLN_Mrkvicka
HE5G_Pucik
ST2G_Fero

atd .. na zaklade tychto 4 znakov ak je preneseny zadany objem dat sa znizi zakznikovi rychlost na 1/4.
prvy skript treba periodicky spustat u nas je to kazdych 5 min . Druhy skript sluzi na obnovu povodnych rychlosti staci spustit raz za den unas vzdy o 2301.

Sheduler dufam nemusim opisovat ako nastavit a tiež pevne verim v to že si všetci viete ako raz za den resetnut počitadla . Ak som na niečo zabudol ospravedlnujem sa, ale som chori , a kapanek dezorientovany z toho tak ak by som na niečo zabudol prosim neukamenujte ma stači sa normalne opytat...Pripadne ked sa mi prestanu zlievat pismenka dokopy namapujem ipku na nejaky router kde si to môžete pozrieť
airbilly - 05.02.2008 - 20:38
Post subject:
Funguje ti to na mikrotiku 3.2 ?
Thomas - 05.02.2008 - 20:48
Post subject:
jj , prave na tom som to skušal a až potom nasadil do 2.9.50 ...
travel21 - 12.05.2008 - 22:02
Post subject:
Lidicky vím ze budu vypadat hloupe ale potreboval bych vyse popisane scripty vysvětlit podrobněji, chvíly už mikrotik používam se Simple Queues a tam defiované uzivatele a limity ale se scipty se ted seznamuji použil jsem zatim jeden a to na zálohovaní konfigurace na email periodicky po tydnu. Mam RB133c na malé síti, zatím to jen testuju a sleduju. Ten FUP me opravdu zajíma ale nevím jak mám přesně dany scrip aplikovat ke mě. Za prve nevím jak se nulují počítadla ale vím ze bez toho to nepujde. Dále nevím co je mysleno touto větou :


:if ( $meno!="garant" ) do { slovičko garant si nahradte menom rodičovskej triedy
mena jednotlivýzch queues mam nahadyane spôosobom PROGRAM_Meno_zakaznika
teda napr takto

WMLN_Mrkvicka
HE5G_Pucik
ST2G_Fero


nevim co je ta rodicovska trida ??

Jak upravim dany script když budu mít v Simple Queues definovaného uživate např. "beranek" a aplikovat na neho program WM2G.
Tak trochu asi vím jak ten script funguje jen potřebuji jeste popostrčit a budu moc vděčný když me neodpalkujete !! Nebyl jsem na žádném školení a protloukám se tím uplne sam za pomoci internetu.

Také nevím jak to je s více uživateli ?? Pro kazdeho musím script spouštět svlast ?? takže jestli to dobre chapu tak pro 20 uživatelů budu spouštět shedulerem 40 scriptů plus nulování počítadel ???

Předem moc děkuji za pomoc !!
Thomas - 12.05.2008 - 22:30
Post subject:
Code: ›
/queue simple

add comment="" direction=both disabled=no dst-address=0.0.0.0/0 interface=all \
    limit-at=0/0 max-limit=45000000/4500000 name="garant" parent=none \
    priority=4 queue=default-small/default-small total-queue=default-small

add comment="" direction=both disabled=no dst-address=0.0.0.0/0 interface=all \
    limit-at=0/0 max-limit=256000/1024000 name="MenoZakaznika_HO2G" parent=garant \    priority=5 queue=default-small/default-small \
    target-addresses=172.17.0.12/22 total-queue=default-small


dufam že toto pomôže

skript púštat len raz v intervale 5 min

počítadlá znuluješ s týmto:
Code: ›
/que simple reset-counters-all


no a to že čo je rodičovská trieda by si mohol pochopiť z toho exportnutého kódu , skús si ho nahrat do nejakého mikrotiku nech vidíš ako to vyzerá vo winboxe
travel21 - 12.05.2008 - 23:16
Post subject:
Nevim proc ale dany script mi nejde spustit. Pochopil jsem to tak, že script který jsi mi poslal nastavuje SQ pro daneho zákazníka. Toto mi tedy stačí a nebo k tomu jeste musi být doplněny ty scripty uvedené výše ?? Děkuji za trpělivost se zasvěcením.

PS: garant je tedy jako solo Ques ve kterém je nastaven daný rychlostní limit a ten se použije v případě splnění podmínky FUP ??

Také děkuji za ten script na to nulovaní počítadel !!
Thomas - 12.05.2008 - 23:24
Post subject:
garant je to čo nakupuješ , garantovaná linka ... jednoducho to shaperu musíš zadefinovať inak nevie čo má vlastne deliť ,
to čo je vyššie musíš použiť ako skript to čo som dbes pastol sem máš export z simple queues to si importuješ a pozreš sa ako to ma vizerat vo winboxe , importuješ to asi tak že si to skopiruješ pastneš do terminalu a odentruješ
travel21 - 12.05.2008 - 23:52
Post subject:
Aha tak to jsem asi spatne porozumnel, jednak jsem zjistil ze mam asi starou verzi router OS MikroTik RouterOS 2.9.38 (c) 1999-2006 to je asi blbe proto mi zrejme nefunguje ten import, ale pokud se bavime o nastaveni SIMPLE QUEUES tak to uz umim. Mam 5 již definovaných IP (klintu jako Ques) ale neumím to propojit s tim scriptem prvnim, který jsi uvadel jako prvni v tomto foru. Tak aby mi je po dosazeni urcitých dat ořízlo na nejakoum malou rychlost Smile
icerowicz - 13.05.2008 - 00:35
Post subject: fup
travel21 wrote: ›Aha tak to jsem asi spatne porozumnel, jednak jsem zjistil ze mam asi starou verzi router OS MikroTik RouterOS 2.9.38 (c) 1999-2006 to je asi blbe proto mi zrejme nefunguje ten import, ale pokud se bavime o nastaveni SIMPLE QUEUES tak to uz umim. Mam 5 již definovaných IP (klintu jako Ques) ale neumím to propojit s tim scriptem prvnim, který jsi uvadel jako prvni v tomto foru. Tak aby mi je po dosazeni urcitých dat ořízlo na nejakoum malou rychlost Smile


Chlapi, preco to vlastne riesite FUP ? Nie je lepsie to triedit layer7 na priority ? Fup nevyzera marketingovo dobre... a nakoniec, ved aj ten uzivatel ma pravo si ten film stiahnut Smile
Thomas - 13.05.2008 - 00:48
Post subject:
pokial ti spravi niekto denne traffic 20 GB na p2p rapidshare a tomu podobných somarinách tak ta to dokáže naštvať
20 GB trafficu my stačí pre 50 narmálnych ludí možno aj pre viac , mám nasadenú l7 prioritizáciu , ale bez fup to bývalo v špičkách hrozoné a to že som obmedzil nejaké 2-3% userov my ušetrilo pekne peniaze na garante ...
a myslim si že 750 MB na wifi 2,4G 1,5 GB na 5G a 3 GB na kábli je denne od 6:00 do 23:00 viac než dosť
andreas4all - 13.05.2008 - 08:09
Post subject:
to thomas > riesime to na L7 (rapid, p2p a dalsi bordel) ma najnizsiu prioritu. http, https, mail ma najvyssiu
JOFO - 13.05.2008 - 08:34
Post subject:
andreas4all wrote: ›to thomas > riesime to na L7 (rapid, p2p a dalsi bordel) ma najnizsiu prioritu. http, https, mail ma najvyssiu


a ako klasifikujes napr sifrovane torrenty?? a na oddelenie rapidu od ostatneho trafficu pouzivas aky pattern? mne sa zatial nepodarilo uspesne oddelit p2p a rapid o normalneho trafficu...
Thomas - 13.05.2008 - 09:34
Post subject:
90% p2p trafficu sa da odfiltrovať s l7 ale to oddelenie rapidu a jemu podobným serverov by zaujimalo aj mna
andreas4all - 13.05.2008 - 10:42
Post subject:
to thomas > vsetko co sa neda identifikovat ide do jedneho manglu s prioritou 7.
lol - 13.05.2008 - 13:06
Post subject:
Thomas wrote: ›ale to oddelenie rapidu a jemu podobným serverov by zaujimalo aj mna

Zeby podla IP servera?? Niekde som tu daval aj script
travel21 - 13.05.2008 - 14:44
Post subject:
Můžete mi někdo vysvětlit prakticky rozdíl mezi MANGLE a FILTER RULE, jestli to dobře chápu tak MANGLE umí označit pakety např. TCP na portu 3389 nebo 21 forward (procházející) směrovačem a toto pak může být použito pro nějaký druh shapingu nebo neco jiného ??? Zatím používám jen FILTER RULE kterým jsem např. omezil sdílení dat mezi dvěma lokalními segmenty na LAN. Ovšem tuším, že když nebudu chtít použit switch s funkcí VLAN na oddělení klientů na jednom segmentu budu nucen použít asi MANGEL a značkovat pakety jednotlivých USERu a pak nastavit pravidla omezující vzájemné sdílení na portech TCP 445 a 139 ?? Můžete mi to někdo potvrdit tuto mojí myšlenku nerozvinutou ????

Předem díky za odpověď ...
Thomas - 13.05.2008 - 18:39
Post subject:
lol wrote: ›
Thomas wrote: ›ale to oddelenie rapidu a jemu podobným serverov by zaujimalo aj mna

Zeby podla IP servera?? Niekde som tu daval aj script

no ale tam je aqj dalšia nevýhoda , tým obmedzím aj ludí čo si raz za mesiac niečo potrebuju stiahnut z takýchto serverov , ja radšej to FUP + L7 prioritizácia a ked chcete aj nadalej o tomto hadat založte si ine vlakno v tomto poprosim le to čo sa týka tohto skriptu .
AKgate - 13.05.2008 - 23:42
Post subject: FUP-SQ
Thomas wrote: ›Samotny FUP skriptik
:
:
Obnova pôvodných rýchlostí
:
:
atd .. na zaklade tychto 4 znakov ak je preneseny zadany objem dat sa znizi zakznikovi rychlost na 1/4.
prvy skript treba periodicky spustat u nas je to kazdych 5 min . Druhy skript sluzi na obnovu povodnych rychlosti staci spustit raz za den unas vzdy o 2301.

Sheduler dufam nemusim opisovat ako nastavit a tiež pevne verim v to že si všetci viete ako raz za den resetnut počitadla . Ak som na niečo zabudol ospravedlnujem sa, ale som chori , a kapanek dezorientovany z toho tak ak by som na niečo zabudol prosim neukamenujte ma stači sa normalne opytat...Pripadne ked sa mi prestanu zlievat pismenka dokopy namapujem ipku na nejaky router kde si to môžete pozrieť


Ano, tento princip je i dle naseho nazoru idealni, pouzivame ho i v AKgate serveru. Uzivatel ma nejaky limit prenesenych dat (bud hodinovy, nebo denni), a jakmile ho prekroci, tak mu rychlost klesne na nejakou definovanou hodnotu. A nasledujici den, v nejakou definovanou hodinu, se mu rychlost opet obnovi. Da se to vylepsit jeste tim, ze v noci (v nejaky zadany cas, napr. 23:00 - 7:00) zadna omezeni neplati, a data se nepocitaji. Protoze v tu dobu uz normalni lidi na internetu moc nejsou, tak at se stahovaci vyradi. Ale od 7:00 se opet prenesena data pocitaji.
Thomas - 13.05.2008 - 23:44
Post subject:
ved to v tom skripte je .. internet bez fup od 23:00 do 6:00 a o 6:00 reset počítadiel
AKgate - 14.05.2008 - 08:45
Post subject:
Thomas wrote: ›ved to v tom skripte je .. internet bez fup od 23:00 do 6:00 a o 6:00 reset počítadiel

Tak pardon, skripty jsem neprochazel, a v popisu to nebylo. Pak je to OK.
All times are GMT
Powered by PNphpBB2 © 2003-2005 The PNphpBB Group
Credits