Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Новинка
Распродажа
Новости
Доставка
Оплата
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • RouterOS
  • Мобильные приложения MikroTik
  • Архив
Форум
Настройка
    info@mikrotik.moscow
    +7 495 320-55-52
    Заказать звонок
    Mikrotik.moscow
    Каталог
    • Акции
      Акции
    • Маршрутизаторы
      Маршрутизаторы
    • Коммутаторы
      Коммутаторы
    • Радиомосты и уличные точки доступа
      Радиомосты и уличные точки доступа
    • Wi-Fi для дома и офиса
      Wi-Fi для дома и офиса
    • LTE/5G
      LTE/5G
    • Powerline адаптеры
      Powerline адаптеры
    • IoT устройства
      IoT устройства
    • Оборудование 60 ГГц
      Оборудование 60 ГГц
    • Материнские платы RouterBOARD
      Материнские платы RouterBOARD
    • Корпуса
      Корпуса
    • Интерфейсы
      Интерфейсы
    • SFP/QSFP трансиверы
      SFP/QSFP трансиверы
    • Аксессуары
      Аксессуары
    • Антенны
      Антенны
    • Архив
      Архив
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Скачать WinBox Скачать Прошивки Форум > RouterOS Форум > SwOS Форум > Железо
    Mikrotik.moscow
    Каталог
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Mikrotik.moscow
    Телефоны
    +7 495 320-55-52
    Заказать звонок
    0
    0
    0
    Mikrotik.moscow
    • +7 495 320-55-52
      • Назад
      • Телефоны
      • +7 495 320-55-52
      • Заказать звонок
    • info@mikrotik.moscow
    • г. Москва, ул. Бакунинская, 84
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной


    • Кабинет
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    Форум
    RouterOS
    Ежедневный тест пропускной способности

    Ежедневный тест пропускной способности

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Ежедневный тест пропускной способности, RouterOS
     
    afbonillac
    Guest
    #1
    0
    21.03.2018 15:14:00
    Привет, друзья! Мне нужно создать скрипт, который будет ежедневно запускать тест канала “Bandwidth test” на 1 минуту, сохранять результат в обычный файл в течение месяца, а в последний день месяца отправлять этот файл на почту. Я создал расписание с таким скриптом: “/tool bandwidth-test address=207.32.195.2 user=btest password=btest duration=60 file=resultado”, но он генерирует файл с такой информацией:  
    "# mar/21/2018 10:7:7 by RouterOS 6.40.4 software id = 9DKZ-R6YT status: connecting duration: 0s rx-current: 0bps rx-10-second-average: 0bps rx-total-average: 0bps lost-packets: 0 random-data: no direction: receive rx-size: 1500"  
    Спасибо!
     
     
     
    ADahi
    Guest
    #2
    0
    21.09.2018 08:50:00
    Пожалуйста.
     
     
     
    punkaker
    Guest
    #3
    0
    06.09.2018 13:21:00
    Привет! Я как раз заинтересован в том же самом — сделать какой-то скрипт, чтобы запускать тест скорости ночью и сохранять результаты в текстовый файл для сравнения доступной скорости соединения. У тебя есть какие-то успехи с этой задачей?
     
     
     
    ADahi
    Guest
    #4
    0
    06.09.2018 17:12:00
    первый временный скрипт, изменяйте по необходимости: do {/tool

    :local avrTX 0;
    :local avrRX 0;
    :local luser "";
    :local lpass "";
    :local Addr "";

    bandwidth-test duration=60s user=$luser password=$lpass protocol=tcp address=$Addr direction=both do={
    :if ($status="done testing") do={
     :set $avrTX ("tx-total-average: " . ($"tx-total-average" / 1048576) . "." . ($"tx-total-average" % (1048576) / 1024) . " Mbps");
     :set $avrRX ("rx-total-average: " . ($"rx-total-average" / 1048576) . "." . ($"rx-total-average" % (1048576) / 1024) . " Mbps");
    }
    }
    :log info message=$avrTX;
    :log info message=$avrRX;
    } on-error={:log error message="скрипт не сработал"}
     
     
     
    punkaker
    Guest
    #5
    0
    21.09.2018 08:03:00
    Привет, Adahi! Спасибо за ответ. Я протестировал твой скрипт, и, по всей видимости, тест скорости работает правильно (я вижу трафик в интерфейсе), но в логе отображаются значения «0» и «0». Ты не знаешь, в чём может быть проблема? Заранее спасибо!
     
     
     
    ADahi
    Guest
    #6
    0
    21.09.2018 08:25:00
    Скрипт для исправления ошибок работал на версиях bugfix, но теперь его нужно изменить для стабильных версий.
     
     
     
    punkaker
    Guest
    #7
    0
    21.09.2018 08:40:00
    Дорогая Adahe, спасибо, похоже, что первый раз не сработало, но последующие уже идут нормально! Думаю, что изменю скрипт, чтобы разделить тест на 2 части — отдельно TX и RX (не люблю результаты «оба»), и чтобы результаты сохранялись в текстовый файл и хранились на Mikrotik. Спасибо за твою помощь!!
     
     
     
    punkaker
    Guest
    #8
    0
    21.09.2018 12:27:00
    Я изменил скрипт от Adahi так, чтобы он сохранял результаты в текстовый файл, чтобы его можно было запускать по расписанию для анализа результатов BW-теста в разные дни. Добавил комментарии тоже. Делюсь с сообществом, на всякий случай! :log info "------------ Запуск BW-TEST --------------";

    :local luser "Пользователь BW Test Server";
    :local lpass "Пароль BW TEST Server";
    :local Addr "IP-адрес BW TEST Server";

    :local avrRX 0;
    :local avrTX 0;

    # ТЕСТ НА СКАЧИВАНИЕ
    :log info "----> Измеряем RX (30 секунд)........";
    :do {/tool
      bandwidth-test duration=30s user=$luser password=$lpass protocol=tcp address=$Addr direction=receive do={
        :set $avrRX ("rx-total-average: " . ($"rx-total-average" / 1048576) . "." . ($"rx-total-average" % (1048576) / 1024) . " Mbps" );
      }
    } on-error={:log error message="Скрипт RX завершился с ошибкой"}

    :delay 2s;

    # ТЕСТ НА ОТДАЧУ
    :log info "----> Измеряем TX (30 секунд) ........";
    :do {/tool
     bandwidth-test duration=30s user=$luser password=$lpass protocol=tcp address=$Addr direction=transmit do={
        :set $avrTX ("tx-total-average: " . ($"tx-total-average" / 1048576) . "." . ($"tx-total-average" % (1048576) / 1024) . " Mbps" );
     }
    } on-error={:log error message="Скрипт TX завершился с ошибкой"}

    :log info message=$avrRX;
    :log info message=$avrTX;
    :log info "-------- Конец BW-TEST ------------";

    ################# СОХРАНЕНИЕ РЕЗУЛЬТАТОВ С ДАТОЙ ######################
    :local filename2 "LOG_BW_TEST.txt"
    :local ds [/system clock get date];
    :local months ("jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec");
    :local month [:pick $ds 0 3];
    :local mm ([:find $months $month -1] + 1);
    :if ($mm < 10) do={ :set mm ("0" . $mm); };
    :set ds ([:pick $ds 7 11] . $mm . [:pick $ds 4 6]);

    :if ([:len [/file find name=$filename2]] = 0) do={
     :log info "Лог-файл отсутствует. Создаём новый.....";
    /file print file=$filename2 where name="";
    }

    :log info "Добавляем результат в конец лог-файла......";
    /file set $filename2 contents=([get $filename2 contents] . "\n" . $ds . "-->" . $avrRX);
    /file set $filename2 contents=([get $filename2 contents] . " " . $avrTX);
     
     
     
    jo2jo
    Guest
    #9
    0
    25.11.2018 22:52:00
    Круто, тоже посмотри эту тему, в конце я сделал небольшое изменение, чтобы результаты повторяющихся/плановых BW тестов можно было получать через SNMP (то есть чтобы их можно было отображать на графиках со временем). http://forum.mikrotik.com/t/script-to-run-manual-bandwidth-test-and-save-to-file/115494/6
     
     
     
    Jotne
    Guest
    #10
    0
    26.11.2018 06:23:00
    Я отправил это через syslog, чтобы строить графики. Так мне не надо настраивать в системе мониторинга (Splunk), что именно собирать и какой MIB использовать. Один и тот же скрипт на всех роутерах, не нужно каждому отдельно говорить, что и как собирать. Графики тут: http://forum.mikrotik.com/t/tool-using-splunk-to-analyse-mikrotik-logs-3-3-graphing-everything/121810/1
     
     
     
    VincentL
    Guest
    #11
    0
    04.03.2022 15:24:00
    Привет, мне нужно собрать данные со speedtest, или с ping и bandwithtest. Пока искал в интернете, наткнулся на эту тему. Мои навыки в скриптинге RouterOS невелики, но скрипт Punkaker с комментариями вполне понятен. Теперь я бы хотел понять эту строку: :set $avrRX (“rx-total-average: " . ($“rx-total-average” / 1048576) . “.” . ($“rx-total-average” % (1048576) / 1024) . " Mbps” ); Особенно интересно, зачем здесь деление на 1048576 и 1024. Спасибо за ответ, Vincent.
     
     
     
    VincentL
    Guest
    #12
    0
    10.03.2022 13:39:00
    Привет, отвечаю сам себе: 1048576 == 1024*1024, то есть преобразование байт в мегабайты. С уважением, Винсент
     
     
     
    rextended
    Guest
    #13
    0
    10.03.2022 18:21:00
    Повышайте свои знания: с 1998 года 1 мегабит (Mb / Mbit) = 1000 килобит (kb / kbit) = 1 000 000 бит.  
    1 мебибит (Mib / Mibit) = 1024 кибибит (Kib / Kibit) = 1 048 576 бит.  
    8 бит = 1 байт.  
    1 мегабайт (MB) = 1000 килобайт (kB) = 1 000 000 байт.  
    1 мебибайт (MiB) = 1024 кибибайт (KiB) = 1 048 576 байт.  
    1 байт = 8 бит.  
    1 MB = 8 000 000 бит.  
    1 MiB = 8 388 608 бит.  

    Результаты даны в bps (бит в секунду). Если нужен мегабит в секунду, то должно быть что-то вроде этого (без учёта правильности кода и остальных частей):

    :set $avrRX (“rx-total-average: " . ($“rx-total-average” / 1000000) . “.” . ($“rx-total-average” % (1000000) / 1000) . " Mbps” );
     
     
     
    Larsa
    Guest
    #14
    0
    10.03.2022 18:39:00
    Ну, да и нет — на самом деле это зависит от того, используется ли SI или IT (де-факто стандарт), например, для хранения данных и так далее. Да, полный бардак: мегабайт (Википедия).
     
     
     
    rextended
    Guest
    #15
    0
    10.03.2022 18:42:00
    С точки зрения скорости всегда используется бит. Как провайдер, я всегда говорю о битах в секунду, например, когда продаю 100М (100Mbit/s) = 100 000 000. С точки зрения хранения данных используются MiB, потому что 1TB SSD — это разное количество памяти, если иметь в виду TiB или TB... 1 099 511 627 776 или 1 000 000 000 000 — это почти на «100 ГБ» меньше. Обычно, когда речь идет о битах, считают с шагом 1000, а если о байтах — с шагом 1024.
     
     
     
    Larsa
    Guest
    #16
    0
    11.03.2022 08:40:00
    С точки зрения скорости всегда используется бит. Как провайдер, я постоянно говорю о битах в секунду, когда продаю 100M (100Mbit/s) = 100 000 000.  
    С точки зрения хранения данных используются МиБ, 1ТБ SSD даст разный объём, если действительно подразумевается ТиБ или ТБ… 1 099 511 627 776 или 1 000 000 000 000 — обычно это почти на «100 ГБ» меньше.  
    Когда речь идёт о битах, обычно используются множители по 1000, а если о байтах — по 1024.  
    Да, и согласно IEC (1984) нам ещё стоило бы использовать Ки-бит, Меби-байт и Гиби-байт для точности, но я так и не смог к этому привыкнуть, поэтому всё ещё путаюсь с обозначениями.
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2026 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры