MikroTik Fast Track Connection — Даешь свободу CPU

Приветствую, Уважаемые читатели!

Данная статья будет в основе своей познавательной. Её тему, я хотел посвятить одной очень интересной штуке.
А именно опции в RouterOS под названием FastTrack
Рассказывать я про неё буду с точки зрения продвинутого пользователя. Не профессионала, прошу это заметить!

Если Вы хотите изучить MikroTik, то это можно реализовать с помощью специального онлайн-курса "Настройка оборудования MikroTik". В курсе изучаются все темы из официальной программы MTCNA, а автором курса является официальный тренер MikroTik. Материал подходит и тем, кто уже давно работает с оборудованием MikroTik, и тем, кто даже не держал его в руках. В состав курса входят 162 видеоурока, 45 лабораторных работ и вопросы для самопроверки с конспектом. Кстати я получал сертификат MTCNA именно тут!

Предисловие
Для начала давайте попробуем понять, что это такое вообще за опция.

Обратимся за официальной документацией на сайт компании MikroTik: Manual:IP/Fasttrack (ENG)
Данный функционал появился в 2015 году, вот вырезка из новости:

fasttrack-release
Страница и новости 2015 года

Обработчик IPv4 FastTrack автоматически используется для отмеченных соединений.
Используйте действие брандмауэра «fasttrack-connection» для отметки соединений как fasttrack.
В настоящее время применение правил Fasttrack возможно только для TCP и UDP соединений (даже при том, что любой тип соединений может быть помечен как fasttrack).
Обработчик IPv4 FastTrack поддерживает NAT (SNAT, DNAT или их оба).

Т.е. это говорит нам о том, что соединения помеченные, как Fasttrack будут проходить по самому быстрому маршруту, минуя большинство правил Firewall и минуя деревья очередей Queues.
Применив данную опцию для всех уже установленных(доверенных) соединений(например в локальной сети), можно существенно снизить нагрузку на CPU нашего роутера.

Обратите внимание, что не все пакеты в соединении могут быть быстро-отслеживаемыми, поэтому, вероятно, некоторые пакеты будут проходить медленным путем, даже если соединение отмечено как Fasttrack.
Использовать Fasttrack необходимо не абы как, а с пониманием, что и как работает.

Для работы IPv4 FastTrack также есть ряд требований:

  • Не используется Mesh или MetaRouter
  • Sniffer, Torch или Traffic generator не запущены
  • /tool mac-scan не используется активно
  • /tool ip-scan не используется активно
  • FastPath и Route cache включены в IP->Settings
Screenshot_1
 

Если не включены, то включить можно командой в терминале:
/ip settings
set allow-fast-path=yes route-cache=yes

Применимость в оборудовании MikroTik:

RouterBoard Interfaces
RB6xx series ether1,2
RB7xx series all ports
RB800 ether1,2
RB9xx series all ports
RB1000 all ports
RB1100 series ether1-11
RB2011 series all ports
RB3011 series all ports
CRS series routers all ports
CCR series routers all ports
Все устройства wireless interfaces
если используются wireless-fp, wireless-cm2, wireless-rep или wireless (выпущен в RouterOS 6.37) пакеты
Предупреждение: Очереди(Queues) (кроме Queue Trees, ориентированных на интерфейсы), фильтры Firewall и правила Mangle не будут применяться для FastTracked трафика.
1. Соединение FastTracked выполняется до тех пор, пока не будет закрыто, не истечет его тайм-аут или не наступит перезагрузка маршрутизатора.
2. Автоматически созданные правила исчезнут только после того, как правила FastTrack будут удалены или отключены, а маршрутизатор будет перезагружен.

Пример — FastTrack на RB2011:
FastTrack включен на RB2011 в Firewall через chain=forward и connection-state=established,related
Тестирование пропускной способности выполняется утилитой Bandwidth Test одним(single) потоком TCP(sent)

Без FastTrack С включенным FastTrack
360 Mbps 890 Mbps
CPU 100% CPU 86%
44% CPU на Firewall 6% CPU на Firewall

Настройка
Для включения данной опции достаточно просто добавить несколько правил в Firewall Filter
/ip firewall filter
add chain=forward action=fasttrack-connection connection-state=established,related
add chain=forward action=accept connection-state=established,related

В своих роутерах я немного конкретизировал данные правила исходя из замечаний в Wiki MikroTik о работе данных правил только для TCP и UDP протоколов.

Выглядит в Firewall роутера это так:

Screenshot_2
 
Screenshot_3
 
Screenshot_4
 

Чтобы добавить эти правила у себя, в Winbox зайдем в пункт меню IP -> Firewall (вкладка Filter Rules)

Screenshot_5
TCP или UDP можете не выбирать, в официальной документации это не указывается
Screenshot_6
 
Screenshot_7
Последнее правило должно быть разрешающим

Консольно:
/ip firewall filter
add action=fasttrack-connection chain=forward connection-state=established,related protocol=tcp
add action=fasttrack-connection chain=forward connection-state=established,related protocol=udp
add action=accept chain=forward comment="FastTrack Connection" connection-state=established,related

Выводы
Для себя я понял, что в домашнем использовании, где не нужны Деревья очередей и сложные схемы в Firewall, данные правила могут очень помочь в разгрузке CPU Вашего роутера.
Особенно если он одноядерный, как например мой hAP ac.
В нем действительно заметно снижение нагрузки на CPU, хоть и не фантастическое, но это лучше чем ничего!

Большое спасибо, что изучили данную статью, надеюсь она Вам помогла узнать больше!

Всего хорошего на просторах интернета 😉

Список всех статей в хронологическом порядке: История статей

Поддержка блога
Если Вам не безразлична судьба блога или Вы просто хотите отблагодарить Автора за его труд, смело переходите на страницу Поддержки, там описана вся информация, по тому, как это сделать проще простого =)
Хочешь получать уведомления о выходе новых статей?
Loading
Если Вы хотите изучить MikroTik, то это можно реализовать с помощью специального онлайн-курса "Настройка оборудования MikroTik". В курсе изучаются все темы из официальной программы MTCNA, а автором курса является официальный тренер MikroTik. Материал подходит и тем, кто уже давно работает с оборудованием MikroTik, и тем, кто даже не держал его в руках. В состав курса входят 162 видеоурока, 45 лабораторных работ и вопросы для самопроверки с конспектом. Кстати я получал сертификат MTCNA именно тут!
GregoryGost

Мир интересен, если вы достаточно любопытны!!!

Оцените автора
GREGORY GOST
Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

  1. Антон

    То есть фасттрак работтает только, на 6тср и 17udp ? Расскажите а почему именно на эти порты?

    Ответить
    1. GregoryGost автор

      Именно так.
      Именно эти порты потому, что так реализовали разработчики RouterOS
      Читать тут: https://wiki.mikrotik.com/wiki/Manual:IP/Fasttrack

      Currently only TCP and UDP connections can be actually FastTracked (even though any connection can be marked for FastTrack)

      Или по Русски

      В настоящее время только TCP и UDP-соединения могут быть фактически обработаны через FastTrack (даже если любой тип соединения помечен для FastTrack)
  2. Igor

    Включил, перестал ходить RTP тарфик IP телефонов в в VPN туннеле. Как корректно отключить?

    Ответить
    1. GregoryGost автор

      Нужно удалить то правило, которое добавили и потом перезагрузить железку

  3. Денис

    Григорий добрый вечер. Firewall ранее настраивал по Вашей инструкции, но заметил что Вы уже успели его оптимизировать (16.12.2018). Вы написали что убрали некоторые элементы просто потому что ввели для себя port knocking. Есть обновленные инструкции для терминала? Заранее благодарю

    Ответить
    1. GregoryGost автор

      Денис, приветствую!
      Как раз для такого случая я написал статью: MikroTik : RouterOS : Стучимся к себе домой. Firewall Filter PortKnocking
      Там есть и моя последняя версия Firewall, как графическая, так и одним блоком через терминал

  4. Евгений

    Добрый день!
    Большое спасибо за статью! Настроенный фаервол по статье https://gregory-gost.ru/sozdanie-domashney-seti-na-baze-ustroystv-mikrotik-chast-6-firewall-zashhita-dostupa/ без фасттрака резал мой гигабитный канал до 200-250МБ/с и загружал ЦП на 100% с фастрак даже на 1ГБ/с ЦП загружается до 75% максимум.
    Маршрутизатор MikroTik RB951G-2HnD.
    Спасибо автору )

    Ответить
    1. Rabinovitch

      Как? Как у вас получается? Настроил строго по этому мануалу, 400 Мбит предел…

    2. GregoryGost автор

      Между чем и чем?

  5. Влад

    Толковые статьи. Сделал у себя на паре МикроТиках почти как у вас. Очень мне логика ваша понравилась. И тоже подумываю закрыть все стуком в порты. Вопрос — у вас сами правила для портов прописаны на этапе преротинга (RAW)? И ещё когда ваш микротик с динамическим IP стучится к статическому он скриптом стучится в порты так?

    Ответить
    1. GregoryGost автор

      Здравствуйте,

      Вопрос – у вас сами правила для портов прописаны на этапе преротинга (RAW)?

      Нет, я не пользуюсь таблицей RAW. Правила перенаправления задаются в таблице NAT. Порты открываются в таблице Filter Rules.

      И ещё когда ваш микротик с динамическим IP стучится к статическому он скриптом стучится в порты так?

      Второй микротик подключается исключительно по OpenVPN, а у него есть стандартный порт 1194 для взаимодействия. Я его просто открываю в таблице Filter Rules правилом accept
      Скрипты для Port Knocking нужны для удаленного доступа к роутеру или другим ресурсам. Т.е. получается. что у меня открыт только сервисные порт для OpenVPN (ну и SIP еще 5060-5061 т.к. использую отдельный cisco voip шлюз)

  6. Валерий

    Объяснили вроде правильно, объединил вместе данную статью и https://gregory-gost.ru/sozdanie-domashney-seti-na-baze-ustroystv-mikrotik-chast-6-firewall-zashhita-dostupa/
    В итоге скорость упала со 100 мбит до 10, даже все правила сделал неактивными — не помогло. Странно.
    Фото безобразия https://i.ibb.co/Fsyvw9d/image.png
    Хорошо бекап был — откатился.

    Ответить
    1. GregoryGost автор

      Рекомендую делать сортировку правил по нумерации.
      Роутер обрабатывает правила от первого и далее. Немного муторно выискивать в такой сортировке номера правил.
      Вот мой firewall на 16.12.2018. Я убрал некоторые элементы просто потому что ввел для себя port knocking.
      Но Вам нужно обратить внимание на то, где и какие правила находятся. 300+ Мбит роутер вывозит стабильно уже очень долгое время.
      Firewall 16.12.2018

  7. Валерий

    Добрый день! Скажите, а как данные правила с Fasttrack будут работать с тем что вы советуете в статтье https://gregory-gost.ru/sozdanie-domashney-seti-na-baze-ustroystv-mikrotik-chast-6-firewall-zashhita-dostupa/
    Можно смело добавлять правила с Fasttrack к тем из статьи или что-то еще подкорректировать?
    Не хотелось бы чтобы и брешь была, ну и рабочий инет хочется.
    Спасибо! Блог грамотный!

    Ответить
    1. GregoryGost автор

      Здравствуйте,

      Хорошо будут работать. Правила Fasttrack отрабатывают только для уже проверенных соединений, которые прошли у Вас через всю цепочку INPUT
      Еще раз напоминаю про состояния соединений. Fasttrack вешается для соединений established и related на цепочку FORWARD
      Если упрощенно, то:
      INPUT — соединения адресованные роутеру(маршрутизатору)
      FORWARD — соединения проходящие через роутер(маршрутизатор)
      OUTPUT — соединения отправляемые самим роутером(маршрутизатором)

      Т.е. получается, что Fasttrack будет ускорять соединения из локальной сети в интернет
      и проверенные соединения после цепочки Input при условии их дальнейшей дестинации во внутреннюю сеть. (dst-nat/netmap)

      Надеюсь объяснил понятно 🙂

  8. Сергей

    Здравствуйте . А как отключить фасттрак ? Спасибо.

    Ответить
    1. GregoryGost автор

      Здравствуйте,

      Если Вы хотите отключить его после включения, то Вам нужно просто удалить добавленные Вами правила с action=fasttrack-connection в Firewall Filter и перезагрузить роутер.
      Сам по себе Fasttrack отключен.

  9. R@!nb0W

    Mirkotik HAP Lite TC, от провайдера интернет 100 Мб — без фасттрака нагрузка на CPU 65%, с фасстраком 12% 😀 Мерил спиддтестом

    Ответить
  10. Сергей

    Большое спасибо . За все эти статьи учусь по ним понемногу.

    Ответить
  11. Сергей

    Скажите пожалуйста эти правила добавлять по верх других правил или внизу после других правил . Спасибо я настроил зашиту доступа фаервола по вашей статье очень доволен!

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Спасибо за Ваш отзыв, рад, что у Вас все получилось!

      Данные правила лучше всего себя чувствуют в самом верху.
      Т.к. роутер обрабатывает правила сверху вниз по списку, то с учетом того, что мы данные правила применяем для трафика forward (который проходит через маршрутизатор) с состояниями established и related, эти правила будут отрабатывать первые.