logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

NiceShaper - dymamiczny podział: wszyscy w LAN oraz routery klientów

MES Mariusz 04 Maj 2014 09:34 3318 22
REKLAMA
  • #1 13567888
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 223
    Witam.

    Przeczytałem dokumentację do Niceshapera:
    http://niceshaper.jedwabny.net/page/pl/documentation

    Niestety napisana w taki sposób, że jeśli ktoś to rozumie po pierwszym czytaniu to ja mu gratuluję... Ja po drugim podejściu dałem sobie spokój.

    Dotarło do mnie natomiast, że w poprzednich wersjach używało się plików userów, a teraz zastąpiono to klasami. Zdaje się, że właśnie z tamtych czasów pamiętam NiceShapera.

    Manual w żaden sposób nie naprowadza mnie na to w jaki sposób zrobić u siebie działający podział pasma wg rysunku poniżej. Łącze 14 Mbit ma zostać podzielone równomiernie (w przypadku zapotrzebowiania, bo jeśli nikt nie korzysta, to dowolnemu użytkownikowi ma zostać przydzielona pełna szybkość) pomiędzy: wszystkie urządzenia w mojej sieci lokalnej (LAN1 na eth1) oraz routery (bramy podsieci klientów).

    NiceShaper - dymamiczny podział: wszyscy w LAN oraz routery klientów

    Czyli krótko mówiąc u siebie chciałbym zrobić wypas w postaci podziału łącza na wszystkie urządzenia pracujące w LAN1, a w podsieci klientów wnikać nie zamierzam (ważne, by router klienta dostał sprawiedliwy (w zależności od obciążenia sieci) przydział.

    Wiadomo, że jeśli jest nas trzech i od dyspozycji jest 14 Mbit (po obcięciu zgodnie z manualem o kilkanaście procent to 10 Mbit) zatem parametr low (szybkość minimalna / gwarantowana) dla dwóch routerów musi zostać ustawiona na 3,33 Mbit, a dla mojego LAN1 musi to zostać obliczone 3,33 Mbit podzielone na liczbę wszystkich maszyn, które będą łączyły sie z internetem.

    Prosiłbym o pomoc w konfiguracji NiceShaper-a, gdyż lektura podlinowanego manuala przyprawia mnie o ból głowy.

    eth0 to u mnie dostawca (łącze 14Mbit download, 4 Mbit upload)
    eth1 moja sieć lokalna LAN1
    wlan0 oddzielna sieć lokalna (Acces Point postawiony na karcie wlan na USB)

    Potrzebne: sprawiedliwy, dynamiczny podział łącza (w zależności od obciążenia). Czyli tak na prawdę utrzymanie pasma gwarantowanego dla każdego z użytkowników w przypadku obciążenia sieci oraz utrzymanie równomiernego podziału gdy korzystają wszyscy. Jeśli z internetu korzysta dwóch użytkowników i zajmują w danym momencie całe łącze, niech otrzymają po 5Mbit (10Mbit / 2). Jeśli korzysta 3 użytkowników 3.33Mbit (10 Mbit / 3).

    Jeśli ktoś potrafi pomóc w oparciu o przykładową sieć z rysunku powyżej, będę wdzięczny, a pewnie wielu innym użytkownikom taki manual bardzo się przyda.

    Dziękuję i pozdrawiam
  • REKLAMA
  • #2 13570754
    rikardo67
    Poziom 21  
    Posty: 382
    Pomógł: 26
    Ocena: 25
    A której wersji niceshaper Cie interesuje?? bo jest ich kilka a nie wszystkie konfigi do siebie pasują.

    EDIT
    podaj jakie jajco masz i system na routerze.
  • REKLAMA
  • #3 13571541
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 223
    rikardo67 napisał:
    A której wersji niceshaper Cie interesuje?? bo jest ich kilka a nie wszystkie konfigi do siebie pasują.

    Ten:
    http://niceshaper.jedwabny.net/files/niceshaper-1.0.0.tar.bz2

    Skompilowany i zainstalowany wg instrukcji:
    http://niceshaper.jedwabny.net/page/pl/documentation.

    Zdaje się, że to aktualny.


    rikardo67 napisał:

    podaj jakie jajco masz i system na routerze.


    Ubuntu Server 14.04.

    Linux net 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:08:14 UTC 2014 i686 athlon i686 GNU/Linux

    Z góry dzięki piękne za pomoc.
  • Pomocny post
    #4 13571918
    rikardo67
    Poziom 21  
    Posty: 382
    Pomógł: 26
    Ocena: 25
    zajrzyj TU powinieneś sobie poradzić, plik config.conf :
    Cytat:
    <global>

    run dl ul
    mark-on-ifaces eth0

    <ul>

    match srcip 192.168.0.0/22
    section speed 4096kb/s
    section shape 4000b/s
    low 40kb/s
    ceil 256kb/s
    reload 2s
    mode upload

    <dl>

    match dstip 192.168.0.0/22
    section speed 16mb/s
    section shape 15mb/s
    rate 3mb/s
    htb scheduler sfq
    reload 4s
    mode download


    plik class.conf:
    Cytat:

    class download eth1 Komp_1
    match dstip 192.168.1.2
    class upload eth0 Komp_1
    match srcip 192.168.1.2

    class download eth1 Komp_2
    match dstip 192.168.1.3
    class upload eth0 Komp_2
    match srcip 192.168.1.3

    class download eth1 Komp_3
    match dstip 192.168.2.2
    class upload eth0 Komp_3
    match srcip 192.168.2.2

    class download eth1 Komp_4
    match dstip 192.168.2.3
    class upload eth0 Komp_4
    match srcip 192.168.2.3

    Mniej więcej tak jak wyżej powinny wyglądać oba piki konfiguracyjne.
  • #5 13572822
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 223
    rikardo67 napisał:
    mark-on-ifaces eth0

    A jak to się ma do faktu, że pakiety idą pomiędzy trzema interfejsami (1xWAN, 2xLAN) ?

    rikardo67 napisał:
    match srcip 192.168.0.0/22

    192.168.0.0/22 = 192.168.0.0 - 192.168.3.255

    Adresy z przedziału 192.168.3.X, oraz 192.168.4.X będą przydzielane za NAT-ami klientów, ale to już chyba nie ma większego znaczenia co jest za natem (mam nadzieję).


    rikardo67 napisał:
    section shape 4000b/s

    Zapewne przydałoby się mocniej przyciąć, zwłaszcza, że dostawca mało kiedy dostarcza maksymalną szybkość zadeklarowaną na umowie. W moim przypadku jest to jakieś 13 Mbit (przy deklarowanym 14 Mbit) na downloadzie oraz 3,7 Mbit (przy deklarowanym 4Mbit) na uploadzie.


    rikardo67 napisał:

    low 40kb/s
    ceil 256kb/s

    To też nie jest dla mnie jasne. Wydawało mi się, że ceil to wartość maksymalna przydzielana userowi, jeśli łącze na to pozwala, a low to parametr, do którego prędkość łącza może spaść przy maksymalnym jego obciążeniu przez użytkowników. Popraw mnie, jeśli się mylę.

    rikardo67 napisał:
    rate 3mb/s

    Zdaje się, że jest to ustawienie widełek na sztywno na 3mb/s, a mi chodziło o to, by w miarę takiej możliwości dawać klientowi pełną prędkość łącza.


    plik class.conf:
    Cytat:

    class download eth1 Komp_1
    match dstip 192.168.1.2
    class upload eth0 Komp_1
    match srcip 192.168.1.2

    class download eth1 Komp_2
    match dstip 192.168.1.3
    class upload eth0 Komp_2
    match srcip 192.168.1.3

    class download eth1 Komp_3
    match dstip 192.168.2.2
    class upload eth0 Komp_3
    match srcip 192.168.2.2

    class download eth1 Komp_4
    match dstip 192.168.2.3
    class upload eth0 Komp_4
    match srcip 192.168.2.3


    Na pewno przy wszystkich ma być eth1?

    Adresy z puli 192.168.1.X przydzielane są na interfejsie eth1 (moja sieć lokalna).
    Ale już adresy z puli 192.168.2.X przydzielane są na interfejsie wlan0 routerom klientów.


    Jeszcze raz dla spójności:

    U siebie chciałbym zrobić wypas w postaci podziału łącza na wszystkie urządzenia pracujące w LAN1, a w podsieci klientów wnikać nie zamierzam (ważne, by router klienta dostał sprawiedliwy (w zależności od obciążenia sieci) przydział.

    Potrzebne: sprawiedliwy, dynamiczny podział łącza (w zależności od obciążenia). Czyli tak na prawdę utrzymanie pasma gwarantowanego dla każdego z użytkowników w przypadku obciążenia sieci oraz utrzymanie równomiernego podziału gdy korzystają wszyscy. Jeśli z internetu korzysta dwóch użytkowników i zajmują w danym momencie całe łącze, niech otrzymają po 5Mbit (10Mbit / 2). Jeśli korzysta 3 użytkowników 3.33Mbit (10 Mbit / 3).

    Pasmo gwarantowane (download): dla klienta1 3,33Mbit, dla klienta2 3,33Mbit, oraz dla wszystkich moich urządzeń w sieci LAN1 sumarycznie 3,33Mbit. Oczywiście jeśli nikt inny nie obciąża łącza to dla każdej maszyny w sieci, czy to na eth1 czy na wlan0, powinna być przydzielona pełna prędkość (po przycięciu pewnie około 10 Mbit download na 3 Mbit upload.

    Dodano po 25 [minuty]:

    PS. Najprościej byłoby zapewne przed swoją sieć (LAN1) dodatkowy Router/NAT włożyć i problem upraszcza się do dynamicznego podziału łącza pomiędzy 3 routery (pracujące nawet w jednej sieci LAN).

    Tylko, że...

    1. Dodatkowy router i oddzielanie się od głównego routera w niczym mi nie pomaga / nic mi nie daje.

    2. Tracę dostęp z serwera do urządzeń w mojej sieci LAN1 (chyba, że sobie tunele lub przekierowania poustawiam, tylko nie wiem po co ma taka komplikacja).

    3. Tracę możliwość kontrolowania gwarantowanej prędkości pomiędzy maszynami w LAN1. O ile mało mnie interesuje czy w swojej sieci klient zapcha sobie ruch wysycając cały dostępny dla niego upload, o tyle w swojej sieci chciałbym to kontrolować (bo niby dlaczego tak tego nie zrobić).
  • Pomocny post
    #6 13573191
    rikardo67
    Poziom 21  
    Posty: 382
    Pomógł: 26
    Ocena: 25
    Ad1 podajesz interfejs na swiat, chyba ze chcesz aby ograniczenia były na innym interfejsie to dodajesz go np:
    Cytat:

    mark-on-ifaces eth0 eth1


    Ad2
    podałem ten zakres bo masz 2 podsieci, czyli LAN=192.168.1.0/24 i WLAN=192.168.2.0/24 a obie sieci sa w wyzej wymienionym zakresie. A co do routerów sprzętowych, to chyba nie będziesz miał problemów ze zmianą IP

    Ad3
    sektion speed- to predkość łacza, a section shape- powinno być 5-10% łacza dla klientów, sorki mała literówka powinno być :
    Cytat:


    section shape 4000kb/s


    Możesz eksperymentować z wartościami.

    Ad4
    dobrze ci sie wydawało low i ceil może być w pliku config.conf i działaja na wszystkich w wymienionych w pliku class.conf, lub dodać w pliku class.conf dla każdego użyszodnika inne wartości np:
    Cytat:

    class download eth1 Komp_1
    match dstip 192.168.1.2
    low 40kb/s
    ceil 256kb/s
    class upload eth0 Komp_1
    match srcip 192.168.1.2
    low 40kb/s
    ceil 256kb/s

    oczywiscie to jest przykład, i trzeba wcześniej zaszachować w config.conf tą wartość.

    Ad5
    Jeżeli nie chcesz tej wartości, to możesz zrobić low i ceil, w tutorial jest to dość jasno opisane.

    Ad6
    oczywiście, że nie, ale myślałem że to jest jasne, nie są to pliki do użycia "kopiuj-wklej" tylko jako przykład, a dalej to eksperymenty bo nie wiem jak się niceshaper w tej wersji zachowa na ubuntu, nawet jak bym ci dał moje konfigi może ći cos się krzaczyć, wiec sam musisz dojść do elastyczności niceshapera która Ciebie zadowoli.
  • #7 13573487
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 223
    Ok.

    Zakładam, że w LAN1 10 maszyn będzie mogło chcieć mieć dostęp do internetu. Jeśli na moją LAN1 przypada w najgorszym przypadku (sąsiedzi korzystają z internetu) 3,33 Mbit downloadu oraz 1 Mbit uploadu uploadu wówczas gwarantowany download na każdej z maszyn w LAN1 (parametr low) ustawiam na 3,33Mbit / 10 = 0,33 Mbit oraz gwarantowany upload na 1Mbit / 10 = 0,1 Mbit. Takie wartości zostaną przydzielone dla moich komputerów, w chwili, gdy wszyscy klienci oraz wszystkie moje komputery zaczną ściągać i wysyłać dane z internetu.

    Przykładając to na konfigi mamy powiedzmy:

    Kod: Bash
    Zaloguj się, aby zobaczyć kod


    plik class.conf:

    Kod: Bash
    Zaloguj się, aby zobaczyć kod



    Hmm. Dużo ręcznego konfigurowania i zakładania faktów. Przydałby się jakiś mechanizm wspierający. Np. skrypt w bash-u, który sprawdza w ARP ile komputerów jest podpiętych na interfejsie eth1 (zlicza je) a następnie generuje konfigi niceshapera (konkretnie upgradeuje wartości low i ceil), oraz restartuje niceshapera. Skrypt musiałby zostać aktywowany natychmiast gdy w ARP pojawia się nowa maszyna.
  • #8 13574129
    rikardo67
    Poziom 21  
    Posty: 382
    Pomógł: 26
    Ocena: 25
    No config.conf może zostać w twoim przypadku. Za bardzo kombinujesz tym podziałem, kiedyś miałem DSL 10Mb na 60 ludkow, dałem im całe 10Mb i w najgorszym przypadku mieli 2-3 Mb, oczywiście trzeba na takim łączu wyłapać P2P i je ograniczyć. Niceshaper w tej wersji sam sobie dobiera transfer do ilości ludków.

    MES Mariusz napisał:
    Ok.
    Hmm. Dużo ręcznego konfigurowania i zakładania faktów. Przydałby się jakiś mechanizm wspierający. Np. skrypt w bash-u, który sprawdza w ARP ile komputerów jest podpiętych na interfejsie eth1 (zlicza je) a następnie generuje konfigi niceshapera (konkretnie upgradeuje wartości low i ceil), oraz restartuje niceshapera. Skrypt musiałby zostać aktywowany natychmiast gdy w ARP pojawia się nowa maszyna.

    w pierwszym poscie napisałeś podając linka do dokumentacji, ze przeczytałeś ja dwa razy i nic nie rozumiesz, mnie sie wydaje że jej nie czytałeś wcale, i dlatego nic nie rozumiesz, a jest w niej opisany mechanizm dziłania. Potestuj dzianie, a nie wymyslaj, ten niceshaper, o ile dobrze go skompilowałeś, sam sobie dzieli zadane łącze i radzi sobie znakomicie
  • #9 13574261
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 223
    Rozchodzi się o ustawienie odpowiedniej wartości pasma gwarantowanego (parametr low) która zależna jest od rzeczywistej liczby maszyn mogących chcieć mieć dostęp do internetu. Nie wiem jaki jest sens ustawiania tego na sztywno gdyż w momencie gdy w lan1 pojawi się kolejna maszyna to wyliczenia statyczne biorą w łeb. Może się mylę ale wydaje mi się ze byłoby o wiele bezpieczniej / dynamicznej gdyby parametr low ustawiał się dynamicznie na podstawie rzeczywistej w danym momencie liczbyaszyn w sieci.
  • REKLAMA
  • #10 13575217
    rikardo67
    Poziom 21  
    Posty: 382
    Pomógł: 26
    Ocena: 25
    Podałem Ci link do tutoriala niceshapera, a ty nie raczyłeś nawet tam zajrzeć, lub może nie umiesz czytać ze zrozumieniem, wiec pozwól że zacytuje za tutorialem:

    Cytat:
    Oto konfiguracja kolejnej sekcji a poniżej komentarz:

    <dl>

    match dstip 192.168.0.0/23
    section speed 16mb/s
    section shape 15mb/s
    rate 4mb/s
    htb scheduler sfq
    reload 4s
    mode download

    Pojawia się tu dyrektywa:

    htb scheduler sfq

    SFQ jest w NiceShaperze domyślnym typem schedulera dla klas. Ta dyrektywa przytoczona została wyłącznie po to by pokazać że już w domyślnej konfiguracji użytkownik otrzymuje pewną ochronę przed własnym działaniem.

    Co jeśli zdecydujemy się jednak kontrolować również download dynamicznie? Wystarczy zastąpić parametr rate parą parametrów low i ceil, np:

    low 1mb/s
    ceil 6mb/s

    Takie rozwiązanie tak naprawdę nie ma minusów a zabezpiecza łącze w szczycie przed przeciążeniem. Dodatkowo dzięki niemu można bezpiecznie przydzielić klientów większe pasma, NiceShaper jeśli wykryje taką potrzebę sam zadba o obcięcie klientów najbardziej wysysających swoje łącza i nie dopuści do pogorszenia parametrów dostępu udostępnianego pozostałym.


    przeczytaj powyższe i napisz czego nie rozumiesz w pogrubionym tekscie!?.
  • #11 13576507
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 223
    Przeczytałem dokumentację i tutorial. Mimo to przyznaję, że nie wszystko do mnie dociera.

    Czuję się nie rozumiany. Istnieją przynajmniej dwie możliwości. Albo nie potrafię wystarczająco precyzyjnie się wyrazić, albo to ja nie rozumiem czegoś być może bardzo prostego.

    Nie mogę pojąć zasadności podawania w konfigu parametru low oznaczającego najmniejszą możliwą prędkość do przydzielenia userowi gdy wszyscy intensywnie korzystają z internetu. Przecież ta prędkość powinna być wyliczana automatycznie i nigdy nie będzie większa niż szybkość łącza podzielona przez wszystkich korzystających. Więc po co deklarować parametr low skoro pewnych fizycznych możliwości i tak się nie przeskoczy?

    Pojąć nie mogę sensu definiowania parametru low w niceshaperze.

    Gdyby ta podstawowa kwestia się dla mnie wyjaśniła, być może nagle wszystko stałoby się proste.
  • #12 13576590
    rikardo67
    Poziom 21  
    Posty: 382
    Pomógł: 26
    Ocena: 25
    Ja też nie wiem, nie ja stworzyłem niceshapera, ale skoro jest taki parametr to go ustaw i tyle, a jak Ci ta odpowiedz nie wystarczy to udaj się na forum niceshapera i zadaj to pytanie autorowi niceshapera
  • REKLAMA
  • #13 13576794
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 223
    Twoja odpowiedź jest co najmniej krzepiąca, bo już na prawdę miałem nieprzeprate wrażenie, że to ja czegoś banalnego nie rozumiem (aż głupio ;-). A tu jednak jakiegoś banalnego wytłumaczenia nie ma :-). Dzięki. Znikam na forum Niceshapera, ciekawe, czy tam znajdę odpowiedź :-)
  • #14 13577346
    rikardo67
    Poziom 21  
    Posty: 382
    Pomógł: 26
    Ocena: 25
    Wytłumaczenie jest tylko że Ty tego nie pojmujesz!, są to zadane widełki dla klienta których nie przekroczy ani w gore ani w dół, Ty zaś ubzdurałeś sobie że low jest zależny od ilości kompów i chcesz skrypty pisać, pytanie po co skoro bez skryptów nicek śmiga elegancko. A tak na marginesie to Ty analizujesz zasadę działania niceshapera? czy może cos Ci nie działa.
  • #15 13577390
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 223
    Jeśli maszyn będzie więcej i założony i zadeklarowany przez ciebie parametr low nie będzie fizycznie do spełnienia to co się stanie? Kernel wybuchnie? Dalej nie widzę sensu ustawiania tego parametru. A po coś być może jest. Chciałbym to zrozumieć. Nie bawi mnie skonfigurowanie jakiegoś parametru, który nie bardzo wiem jak działa.
  • #16 13578305
    rikardo67
    Poziom 21  
    Posty: 382
    Pomógł: 26
    Ocena: 25
    MES Mariusz napisał:
    Jeśli maszyn będzie więcej i założony i zadeklarowany przez ciebie parametr low nie będzie fizycznie do spełnienia to co się stanie? Kernel wybuchnie? Dalej nie widzę sensu ustawiania tego parametru. A po coś być może jest. Chciałbym to zrozumieć. Nie bawi mnie skonfigurowanie jakiegoś parametru, który nie bardzo wiem jak działa.

    A skąd ci się te maszyny wezmą z kosmosu?? skoro zarządzasz jakąś siecią (nawet domową) to chyba wiesz ile będzie tych urządzeń podłączonych maksymalnie. trzeba policzyć statyczne i dynamiczne IP w DHCP i bedziesz miał stała liczbe. Spróbuję ci to wytłumaczyć łopatologicznie, masz w sieci 20 urządzeń i łącze np. neo 10/1mb/s. w config.conf low i ceil dajesz tylko jak ma być równy podział na wszystkie urządzenia niezależnie od tego ile ich w danej chwili jest włączonych wtedy:
    w <dl>
    Cytat:

    low=(10Mb/20)=512kb/s

    czyli jakby gwarantowana prędkość, ale jakby było wolne łącze to
    Cytat:

    ceil=1024kb/s

    dostanie maksymalnie ceil=1Mb/s

    ta sama zasada tyczy się <ul>

    ale jak nie chcesz dzielić na sztywno to low i ceil nie dajesz w pliku config.conf i masz dynamiczny podział łącza z "section speed" ale nie wiecej niż "section shape" a możesz je wtedy zastosować low i ceil w pliku class.conf dla jednego, kilku lub wszystkich, to wszystko jest opisane dokumentacji i tutorialu.

    nie rozumie twojego myslenia!!
  • #17 13579820
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 223
    Hej.

    Mam świadomość tego, że w config.conf parametrem:

    section speed - ustawiasz prędkość nominalną łącza
    section shape - ustawiasz część pasma która jest do przydzielenia sumarycznie wszystkim użytkownikom (kilkanaście procent: section speed - section shape zostawiasz odłogiem dla zapewnienia dynamiczności łącza)
    low - tym parametrem deklarujesz pasmo gwarantowane (zdaje się, że jest to wartość domyślna jeśli w danej klasie (plik class.conf) nie zadeklarujesz dla danej maszyny innej wartości). Tylko po co to deklarować jeśli Niceshaper sam mógłby to sobie policzyć...
    ceil - tym parametrem deklarujesz pasmo maksymalne (zdaje się, że jest to wartość domyślna jeśli w danej klasie (plik class.conf) nie zadeklarujesz dla danej maszyny innej wartości).


    Mam również świadomość tego, że w class.conf parametr:

    low, ceil - ustawiasz gdy chcesz zadać klientowi widełki min i max w zależności od zajętości pasma (o ile parametrów tych nie zdefiniowano w config.conf, jeśli tak, w class.conf nie musisz ich już podawać)

    rate - ustawiasz gdy chcesz przydzielić klientowi stałe pasmo (zapewne kosztem innych użytkowników). Być może taki sam efekt dałoby ustawienie low i ceil w danej klasie na taką samą wartość.

    I teraz dalej.

    Jeśli decydujesz się na widełki prędkość maksymalna jest oczywista. Prędkość minimalną obliczasz tak jak ja pokazałem tobie, albo tak jak ty pokazałeś mi... Oboje mamy tego jasność.

    Chodzi mi o to, że udział człowieka jest w obliczaniu parametru low w config.conf zbędny (zaczyna mieć sens tylko w przypadku, gdy jakiemuś urządzeniu, np. bramce VoIP mamy potrzebę zagwarantować wyższą prędkość minimalną i robimy to w class.conf), żeby nie powiedzieć nie wskazany. Router najlepiej wie, ile maszyn ma w ARP-ie. NiceShaper wie też jakie jest maksymalna prędkość do wykorzystania (jest to wartość zadeklarowana w config.conf parametrem section shape). Natomiast prędkość gwarantowana to (niepotrzebnie wyliczana przez człowieka, ryzyko popełnienia błędu przez "czynnik ludzki", konieczność założenia stałej liczby maszyn) wartość pasmo do przydzielania użytkownikom podzielona przez liczbę wszystkich maszyn w sieci.

    Nie widzę sensu deklarowania przez człowieka czegoś (parametr low w config.conf stanowiący wartość domyślną dla klas w class.conf), co może zostać dużo bardziej precyzyjnie, i w pełni zgodnie z rzeczywistością w danej chwili policzone przez aplikację (NiceShapera).

    Jednak programista posunął się do takiego kroku, więc być może miał coś na myśli, a nie wspomniał o tym w dokumentacji. Chciałbym wiedzieć o co mu chodziło, by bardziej świadomie, być może bardziej wydajnie, wykorzystywać / stosować / konfigurować aplikację. Być może nic nie stoi na przeszkodzie, by w przyszłej wersji NiceShapera z config.conf w ogóle wywalić parametr low (będzie on wyliczany dynamicznie).
  • #18 13580793
    rikardo67
    Poziom 21  
    Posty: 382
    Pomógł: 26
    Ocena: 25
    Wszystko co napisałeś się prawie zgadza, uparłeś się na ten parametr low i ceil w config.conf a zapomniałeś o tym że są one używane do statycznego podziału i nie używa się tych parametrów w config.conf, jeżeli chcemy mieć dynamiczny podział łącza, nie używa się go również, jeżeli stosujemy te opcje w pliku class.conf. Podążając za twoim myśleniem, żeby jakiś skrypt zmieniał te parametry, po wykryciu ilości urządzeń mija się z celem bo możesz niceshapera ustawić w trybie dynamicznego podziału łącza i zostawiasz wtedy całą prace niceshaperowi.
  • #20 13580840
    rikardo67
    Poziom 21  
    Posty: 382
    Pomógł: 26
    Ocena: 25
    MES Mariusz napisał:
    No właśnie nie, do podziału dynamicznego masz ceil i low (deklaracja widełek) a do podziału statycznego jest rate.

    Ps. Wypowiedział się również autor niceshapera:
    http://forum.niceshaper.jedwabny.net/viewtopic.php?f=4&t=1039

    wypowiedział się i co z tej odpowiedzi zrozumiałeś? Skoro twierdzisz ze low i ceil to widełki do dynamicznego podziału to wnioskuje ze nigdy nie miałeś do czynienia z pracującym niceshaperem i nie wiesz co tak na prawde te dwa parametry robia w config.conf.
  • #21 13580930
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 223
    Ehh... Czuję się jakbym rozmawiał z dzieckiem rodziców którzy darli się na nie, że nie potrafiło czegoś zrozumieć tylko dlatego, że nie potrafiło tego czegoś zrozumieć a jednocześnie dzieckiem rodziców którzy za wszelką cenę potrzebowali mieć rację, niezależnie od tego, czy ją mieli, czy nie. Wnioskuje też, że owo dziecko wielokrotnie coś przeczytało a rodzice zarzucali zawsze, że jak zwykle nic nie przeczytało... Zakladam, że to rodzice niewiele przeczytali a usiłują się mądrzyć... Zerknij jeszcze raz do tutoriala i przekonaj się do czego służą parametry low i ceil.

    Nie usiłuj mieć racji za wszelką cenę...
  • #22 13580960
    rikardo67
    Poziom 21  
    Posty: 382
    Pomógł: 26
    Ocena: 25
    Ja też jak Ty nie bardzo rozumiałem dokumentacji i tutoriala ale metodą prób i błędów poznałem działanie jego parametrów na tyle ze wiem gdzie co powinno być a gdzie nie powinno ja opieram się na własnym doświadczeniu. W zależności co chcemy zrobić. I uważam że nasza wymiana zdań nie prowadzi do odpowiedzi na twoje pytanie z pierwszego postu.
  • #23 13582267
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 223
    No i OK :-). Ale wtedy nie mów: "mylisz się", "nie przeczytałeś", "nawet nie chciało ci się zerknąć", "nie rozumiesz". Bo do tego, że nie wszystko rozumiem, przyznałem ci się już na samym początku. Zamiast tego wystarczyło napisać: "ja to zrobiłem tak i tak i mi działa i nie wnikam w dokumentację bo nie jest dla mnie wystarczająco przejrzysta. Jeśli zależy ci na jak najszybszym uruchomieniu usługi możesz zrobić podobnie, gwarantuję, że zadziała".

    Ja staram się możliwie głęboko zrozumieć temat, zanim postawię to na swoim serwerze. Nie spieszy mi się aż tak bardzo z uruchomieniem usługi, testować w ciemno za bardzo nie mam czasu (poskrobać na forum mogę w międzyczasie, od jednego pilnego zajęcia, do drugiego pilnego zajęcia. Chętnie natomiast wejdę w szczegóły teoretyczne, bo na prawdę nie uśmiecha mi się postawić czegoś, co będzie mi się wydawało, że działa, a nie będę miał pewności czy działa w sposób optymalny. Zwłaszcza, że działanie tego typu softu stwierdzić trudno: masz dwa komputery, zapuścisz ściąganie / wysyłąnie na full na obu maszynach i transfer podzieli ci się na pół (nawet bez dynamicznego podziału łącza). I bądź tu mądry, czy zadziałał NiceShaper czy też może samo się tak akurat podzieliło.

    Zgodnie z aktualnym stanem mojego rozumienia (powiedzmy, że rozumienia) jednoczesne ustawienie low i ceil na taką samą wartość powinno zadziałać podobnie, jak ustawienie pojedynczego parametru rate (na tę samą wartość). Jestem tego ciekawy, więc zadałem takie pytanie tu:

    http://forum.niceshaper.jedwabny.net/viewtopic.php?f=4&t=1040&p=4415#p4415

    I nikt nie upiera się, czy dobrze to rozumiem, czy nie. Wyjaśni się w swoim czasie, a czytający będą mogli skorzystać, tym bardziej, jeśli dokumentacja źródłowa pozostawia aż tyle do życzenia.

Podsumowanie tematu

✨ Użytkownik poszukuje pomocy w konfiguracji Niceshapera, aby efektywnie podzielić łącze 14 Mbit pomiędzy urządzenia w sieci lokalnej (LAN) oraz routery klientów. W dyskusji poruszane są różnice między parametrami low i ceil w plikach konfiguracyjnych, a także ich wpływ na przydzielanie pasma. Użytkownicy dzielą się doświadczeniami oraz wskazówkami dotyczącymi ustawień, podkreślając, że Niceshaper automatycznie dostosowuje transfer do liczby użytkowników, co może zredukować potrzebę ręcznego ustalania wartości. Wiele odpowiedzi odnosi się do zrozumienia dokumentacji oraz praktycznego zastosowania parametrów w kontekście dynamicznego podziału pasma.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA