Как настроить роутер gargoyle

Содержание
  1. НАСТРОЙКИ МАРШРУТИЗАТОРА С GARGOYLE
  2. для работы с сервисом VPNKI по протоколу OpenVPN
  3. Начнем
  4. Следующий шаг – создадим файл с логином/паролем и разместим его в Гаргулье
  5. Теперь, у нас все готово для непосредственной настройки подключения к VPNKI
  6. Как настроить роутер gargoyle
  7. Как настроить роутер gargoyle
  8. Сброс в Default TL-WR941ND Gargoyle
  9. Сброс в Default TL-WR941ND Gargoyle
  10. Re: Сброс в Default TL-WR941ND Gargoyle
  11. Re: Сброс в Default TL-WR941ND Gargoyle
  12. Re: Сброс в Default TL-WR941ND Gargoyle
  13. Re: Сброс в Default TL-WR941ND Gargoyle
  14. Re: Сброс в Default TL-WR941ND Gargoyle
  15. Заметки эникейщика
  16. Статьи и заметки об установке и настройке Windows, Linux, маршрутизаторов и т.д.
  17. Настройка QoS в Gargoyle
  18. Введение
  19. Пример использования QoS
  20. Совпадения
  21. Совпадение IP-адреса
  22. Совпадение номера порта
  23. Совпадение длины пакета
  24. Совпадение протокола
  25. Совпадение пакетов только если определенное количество байт было передано через определенное соединение (connection-bytes)
  26. Совпадение протокола приложения (Layer7)
  27. Классы
  28. Процентная доля полосы пропускания (BW)
  29. Пример 1 — Интернет соседям
  30. Пример 2 — Всем поровну
  31. Минимальная полоса пропускания (Minimum Bandwidth)
  32. Максимальная полоса пропускания (Maximum Bandwidth)
  33. Уменьшение пинга (Minimize RTT) (присутствует в современных версиях прошивки начиная с v1.5.4)
  34. Пример 3 — YouTube, онлайн-игры и все остальное
  35. Скорость входящего и исходящего соединений (Total Bandwidth)
  36. ACC (Active Congestion Controller)
  37. Производительность маршрутизатора
  38. Как распределяется скорость канала, если некоторые классы неактивны
  39. Как происходит распределение полосы пропускания между IP-адресами?
  40. Включение режима уменьшения пинга (Minimize RTT)
  41. Использование MAC-адреса при создании правил
  42. QoS для трафика между компьютерами
  43. Количество правил и классов
  44. Создание класса с повышенным приоритетом.
  45. QoS не работает
  46. ACC ограничивает скорость моего соединения с интернет
  47. Распространенные заблуждения
  48. QoS не может управлять скоростью входящего соединения
  49. Я не хочу, чтоб маршрутизатор отбрасывал пакеты
  50. Мне не нужен QoS, потому что у меня очень быстрый канал
  51. Мой провайдер использует технологию X, поэтому мне не нужен QoS
  52. Когда я включаю ACC, он реально снижает скорость загрузки
  53. ‘ACK’ packets are special I want them treated with higher priority
  54. Когда я использую QoS, пинги увеличиваются

НАСТРОЙКИ МАРШРУТИЗАТОРА С GARGOYLE

для работы с сервисом VPNKI по протоколу OpenVPN

Спасибо за инструкцию пользователю Naevus!

Для подключения Гаргульи к VPNKI по протоколу OpenVPN нам потребуются:

  1. Роутер с прошивкой Гаргулья. Пример приведен для версии 1.10.0.
  2. Файл XXXX.ovpn, полученный из личного раздела сайта vpnki.ru
  3. Логин и пароль одного из своих туннелей, введнные там же
  4. Любой простейший текстовый редактор (подойдет даже Блокнот)
  5. Инструмент для доступа в прошивку по SSH. Рекомендую winscp.
  6. Немного терпения и внимательности

Начнем

На самом деле, нам понадобятся еще «валидные» Client Certificate и Client Key. VPNKI не используют их, а значит в предоставленном файле (XXXX.ovpn) их нет. Но это же значит, что сертификат и ключ можно взять от любого другого сервера – все равно они не будут использоваться.

К сожалению, Гаргулья не позволяет оставить их пустыми и/или не принимает мусор вместо реальных сертификата/ключа.

Для получения воспользуемся самой Гаргульей. Заходим в прошивку, переходим в меню Connection/OpenVPN:

Справа в настройках выбираем OpenVPN Server:

Нажимаем Add и затем Download. Будет скачан файл, в котором, помимо прочего, будут и необходимые нам Client Certificate и Client Key.

Сохранять изменения в этом окне не нужно.

Следующий шаг – создадим файл с логином/паролем и разместим его в Гаргулье

Сначала нам нужно получить доступ в прошивку по ssh. Для этого заходим в роутер обычным образом и в меню System/RouterAccess и ставим галочку «Enable SSH Access».

Не забываем сохранить изменения, нажав «Save Changes»:

После этого, запускаем winscp и подключаемся к роутеру. Логин root, пароль тот же самый, что на вход в веб-интерфейс.

Подключившись к роутеру переходим в папку etc/openvpn, нажимаем правую кнопку на пустом месте, выбираем Новый-Файл (или нажимаем Shift+F4).

В появившемся окне-редакторе создаем две строчки: первая строчка – логин, вторая строчка – пароль. Сохраняем файл дав ему имя pass.txt.

По уму нужно еще сменить права доступа к файлу, но я не большой специалист в юниксах и оставил как есть.

Теперь, у нас все готово для непосредственной настройки подключения к VPNKI

В Гаргулье возвращаемся в Connection/OpenVPN, но теперь выбираем OpenVpn Client и настройку вручную: Configure Client Manually

Дальше, пропускаем заполнение данных по серверу (блок, отмеченный цифрой 0 – просто не заполняем) – мы их просто скопируем из файла XXXXX.ovpn, полученного с сайта VPNKI.

Обратите внимание на порт, выданный вам в файле XXXX.ovpn.

Для этого- откроем файл в текстовом редакторе (например – Блокноте) и скопируем строки до тега (сам тег не копируем). Скопированный текст вставим в поле 1.

После вставки – отредактируем строчку auth-user-pass – добавим в конце нее пробел и пропишем путь-имя ранее созданного файла с логином-паролем: /etc/openvpn/pass.txt

Вся строка должна выглядеть как на скриншоте: auth-user-pass /etc/openvpn/pass.txt (для удобства редактирования поле 1 можно растянуть – потащив за правый нижний угол)

Дальше, не закрывая файл XXXX.ovpn, скопируем из него CA Certificate

Его нужно вставить в поле 2

Который вставляем в поле 7 (предварительно выставив поля 5 и 6 согласно скриншота).

Остается заполнить поля 3 и 4 – сертификат и ключ для них берем из архива, который скачали в самом начала – просто открываем каждый файл в текстовом редакторе и копируем все содержимое в соответствующее поле.

Осталось сохранить настройки, нажав Save Changes и, через несколько минут, когда Гаргулья сохранит настройки — появится статус:

Наша система будет работать с многими типами домашних и офисных маршрутизаторов. Более подробно смотрите в разделе по настройке оборудования, а начать настройку лучше с этого примера.

Источник

Как настроить роутер gargoyle

TP-Link WDR3600 — Обсуждение [OpenWrt, DD-Wrt, TP-Link, Gargoyle и другие..] – обсуждение
wifirouter, usbwifi, firmware: 2.4GHz(300Mbit\s) — 5GHz(300Mbit\s) + 5•1Gbit\s | USB:x2 (3G или 4G modem), Поддержка Samba-сервера (хранение данных), FTP-сервера, медиа-сервера, принт-сервера.

Сообщение отредактировал zdimaby — 19.08.21, 15:04

gelios_oleg,
Ну с памятью там все хорошо на всех моделях 1.1, 1.2, 1.3, 1.4, 1.5 при установке openwrt ищо остайотся 4мб в запасе ОЗУ тоже с запасом 128мб.

спасибо за прошивку. ввиду моей тупости есть два вопроса:
1. не понял ридми с прошивкой:
(openwrt-wdr3600-v1-sysupgrade.bin) для апгрейда с прошивки на прошивку OpenWRT — с прошивки какой, стоковой?
(openwrt-wdr3600-v1-factory.bin) для перехода с TP-Link на OpenWRT — или этот файл для перехода со стока?
Внимание не путать! Потом будите восстанавливать роутер через TFTP
2. зачем нужно было убирать ipv6 и как без него собираются рабочие группы в win10 (вопрос для саморазвития)

Сообщение отредактировал alex2750 — 01.05.19, 20:16

Добрый день! У меня WDR3600 v1.2. Поставил последнюю OpenWRT 18-06-2. Проблема с подключением к Билайну по l2tp. Знаю как залить пакеты в роутер, но не могу найти все нужные пакеты. Роутер требует kmod-pppol2tp, но в папке, которая определена в качестве репозитория к прошивке, такого файла нет. Без него никак.

Может у кого есть пакет файлов и последовательность их установки для l2tp. Перерыл Интернет, не нашел? И еще, ссылка на MIPS_24kc, в папках перебрал все (на archive.openwrt.org).

zdimaby,
камрад, прошивки OPenWRT 18.06.1 сам собирал?
ядро штатное или поновее запихивал?

не могу драйвер для Альфы поставить:
Collected errors:
* satisfy_dependencies_for: Cannot satisfy the following dependencies for kmod-rtl8187:
* kernel (= 4.9.120-1-adfb989aae12e239d65a2c73ca35b8a3) * kernel (= 4.9.120-1-adfb989aae12e239d65a2c73ca35b8a3) *
* opkg_install_cmd: Cannot install package kmod-rtl8187.

с игнорированием зависимостей pkg install -force-depends тоже не выходит
прям беда

По непонятной причине перестал включаться WiFi 5Ghz, пишет «Беспроводная сеть отключена или не связана», раньше такого не было, сначала «лечилось» переключением ширины канала на 20 и обратно, а теперь вообще перестало включаться. При этом интерфейс включен, связан с локальной сетью и поиском другие сети находит. OpenWrt 15.05.1.
Кто-нибудь знает как эту хрень вылечить, чтобы все нормально работало как раньше?
Спасибо.

В обоих случаях зависимости будет подтянуты автоматически.
Не совсем понятно, зачем делать это вручную.

Сообщение отредактировал Nx-cold — 19.05.19, 11:22

# Блок выключения
if [[ $1 == off ]]; then
# Отправляем сообщение в System Log, что огни погашены
echo ‘LEDs were disabled’ | logger -t «leds[$$]» -p info
# Светодиод вида звезда, первый справа от значка питания
echo 0 > /sys/class/leds/tp-link\:blue\:system/brightness
# Огни LAN-портов, нумерация справа налево
echo 0 > /sys/class/leds/tp-link\:blue\:lan1/enable_hw_mode
echo 0 > /sys/class/leds/tp-link\:blue\:lan2/enable_hw_mode
echo 0 > /sys/class/leds/tp-link\:blue\:lan3/enable_hw_mode
echo 0 > /sys/class/leds/tp-link\:blue\:lan4/enable_hw_mode
# WAN-порт
echo 0 > /sys/class/leds/tp-link\:blue\:wan/enable_hw_mode
# Wi-Fi 2g
echo none > /sys/class/leds/tp-link\:blue\:wlan2g/trigger
# Wi-Fi 5g
echo none > /sys/class/leds/ath9k-phy1/trigger
fi

# Блок включения, все то же самое, но в обратную сторону
if [[ $1 == on ]]; then
echo ‘LEDs were enabled’ | logger -t «leds[$$]» -p info
echo 255 > /sys/class/leds/tp-link\:blue\:system/brightness
echo 1 > /sys/class/leds/tp-link\:blue\:lan1/enable_hw_mode
echo 1 > /sys/class/leds/tp-link\:blue\:lan2/enable_hw_mode
echo 1 > /sys/class/leds/tp-link\:blue\:lan3/enable_hw_mode
echo 1 > /sys/class/leds/tp-link\:blue\:lan4/enable_hw_mode
echo 1 > /sys/class/leds/tp-link\:blue\:wan/enable_hw_mode
echo phy0tpt > /sys/class/leds/tp-link\:blue\:wlan2g/trigger
echo phy1tpt > /sys/class/leds/ath9k-phy1/trigger
fi

Я добавил его вызов с соответствующими параметрами в Scheduled Tasks, выключение в 11 вечера, включение в 7 утра.

Сообщение отредактировал Nx-cold — 20.05.19, 20:42

AllSash,
попробуй эту https://yadi.sk/d/xzQqBdhN12Q1iA
собирал где-то полгода назад из релиза 18.06.1, должна быть поддержка l2tp

Сообщение отредактировал solalex1 — 20.05.19, 20:24

Источник

Как настроить роутер gargoyle

Дорогие пользователи! У нас появился новый форум на платформе tp-link.community (Сообщество)

Форум доступен по ссылке https://community.tp-link.com/ru
Просим Вас отнестись с пониманием к новому форуму, он находится в стадии доработки и в скором времени будет полностью завершен.

Если при регистрации в Сообществе Вы укажете адрес электронный почты, который используете на данном форуме, то Ваши данные будут перенесены на форум Сообщества автоматически.
Также, если на форуме Сообщества Ваш никнейм будет занят, то Вам предложат сменить его или оставить, но с приставкой «_RU».

Убедительная просьба не дублировать темы на старом/новом форуме.

Сброс в Default TL-WR941ND Gargoyle

Правила форума
Внимание!
Данные прошивки НЕ являются официальными, поэтому мы не можем гарантировать стабильную работу вашего устройства.
Установка сторонней прошивки может стать причиной снятия вашего устройства с гарантии.
Устанавливая данные версии прошивок, вы действуете на свой страх и риск

Сброс в Default TL-WR941ND Gargoyle

Сообщение webby » 16 сен 2013, 22:06

ip 192.168.1.110
web интерфейс рабочий.
зайти не могу — «Invalid Password».

Прописал на пк руками 192.168.1.1
Включаю питание, как только начинает мигать лампочка SYS — зажимаю Reset. SYS начинает быстро мигать. Пытаюсь зайти через telнет на 192.168.1.110 или 192.168.1.1 — без результатно (даже не пингуется).

Re: Сброс в Default TL-WR941ND Gargoyle

Сообщение Storm » 01 окт 2013, 23:20

Re: Сброс в Default TL-WR941ND Gargoyle

Сообщение webby » 01 окт 2013, 23:28

Re: Сброс в Default TL-WR941ND Gargoyle

Сообщение Storm » 01 окт 2013, 23:34

Как это? У меня подошел. Попробуй на заводские настройки сбросить таким способом. Только делать это надо в WinXP, у меня на семерке почему-то не получилось это сделать, а на XP всё пошло:

— подключите компьютер к LAN-разъему роутера; роутер должен быть выключен по питанию
— пропишите в настройках сетевой карты компьютера статический адрес 192.168.1.2
— включите роутер по питанию и следите за индикатором SYS; как только он мигнет, нажмите и держите кнопку Reset сзади на корпусе роутера; индикатор SYS должен замигать очень часто
— запустите командную строку (Пуск — Все программы — Стандартные — Командная строка), напишите без кавычек «telnet 192.168.1.1» и нажмите Enter

Далее, если вы все сделали правильно, и роутер дал зайти в свое меню, можно попробовать сбросить настройки на заводские. Для этого:

— в командной строке роутера напишите без кавычек «firstboot» и нажмите Enter
— перезагрузите роутер; теперь он должен быть сброшен на настройки по умолчанию и доступен через веб-интерфейс

Re: Сброс в Default TL-WR941ND Gargoyle

Сообщение vekvektor » 23 янв 2015, 19:52

Re: Сброс в Default TL-WR941ND Gargoyle

Сообщение Cenobit » 24 янв 2015, 07:51

Источник

Заметки эникейщика

Статьи и заметки об установке и настройке Windows, Linux, маршрутизаторов и т.д.

Настройка QoS в Gargoyle

Вольный перевод статьи о QoS из Gargoyle wiki
Скриншоты и названия пунктов меню приведены на примере прошивки 1.10.0

Введение

Это не пошаговая инструкция по настройке QoS. Я не знаю, как написать такую инструкцию, поэтому напишу о принципах работы QoS. Надеюсь, что эта небольшая крупица знаний о QoS поможет вам решить поставленные задачи. Здесь много написано, потому что QoS довольно сложен. Ниже постараюсь изложить необходимый, на мой взгляд, минимум.

Самое простое, что можно сделать — использовать настройки QoS по умолчанию. QoS будет следить за тем, чтобы все устройства, подключенные к вашей локальной сети, использовали канал связи поровну. Эти настройки также установят повышенный приоритет просмотру веб-страниц, по сравнению с любой другой деятельностью в интернет (торренты, email, FTP и т.д.) Чтобы использовать настройки по умолчанию, вам необходимо измерить скорость вашего подключения к интернет. Это можно сделать при помощи Speedtest или Яндекс.Интернетометр, причем перед запуском теста убедитесь, что никто другой в данный момент не использует ваш интернет-канал и на своем компьютере выключите все программы, использующие интернет (Skype, uTorrent и т.д.). Лучше запустить тест дважды. Запишите полученные значения скорости входящего и исходящего соединения. Если запускали тест дважды, то запишите МИНИМАЛЬНОЕ полученное значение и для скорости входящего соединения, и для скорости исходящего соединения. Не перепутайте байты и биты, кило- и мегабиты.

Тепрь в веб-интерфейсе Gargoyle заходите во вкладку «Firewall», затем в «QoS (Upload)» и там ставите галку напротив «Enable Quality of Service (Upload Direction)»

Читайте также:  Как настроить vmware horizon client

Проматываем страницу вниз, в поле «Total (Upload) Bandwidth» вписываем 95% от полученного значения скорости исходящего соединения и жмем «Save Changes»

Теперь переходим во вкладку QoS (Download) и ставим галку напротив «Enable Quality of Service (Download Direction)»

Проматываем страницу ниже и в поле «Total Download Bandwidth» вписываем скорость своего входящего соединения.
Мотаем в самый низ, ставим галку напротив «Enable active congestions control (Download Direction)» и жмем «Save Changes»

Всё. На этом настройка QoS по умолчанию закончена. Ленивым дальше читать необязательно.

Ну а те, кто хочет узнать больше о том, как работает QoS и что можно с этим делать, читайте дальше.

QoS (Quality of Service — «качество обслуживания», если переводить дословно) — это всего лишь название технологии, определяющей очерёдность доступа к сети интернет, поэтому используя QoS не обманывайте себя, надеясь на то, что каждый получит высокое качество соединения с интернет.

Начнем с того, что попытаемся понять, когда QoS может быть нам полезен. Если вы и так довольны качеством интернет-соединения, то вам не нужно использовать QoS и читать дальше. Но, если вы играете в онлайн-игры или используете Skype, то знаете, что когда кто-то еще смотрит видео на YouTube, то у вас увеличиваются пинги и тайм-ауты или качество голоса в Skype резко снижается. Другой пример — если вы запустите torrent, то просматривать страницы в веб-браузере становится некомфортно. Или если вы раздаете интернет друзьям, то некоторые могут жаловаться на низкое качество интернета, в то время как у других будет все в порядке. Если несколько людей, устройств или программ используют один канал связи, то имеет смысл использовать QoS. QoS будет раздавать интернет строго по правилам, которые вы сами и установите.

За всё в этой жизни нужно платить. В случае с QoS платой будет являться уменьшенная скорость работы с интернет. Много усилий было потрачено на уменьшение потери пропускной способности и в данный момент потери составляют порядка 5% скорости. Если не хотите терять 5% скорости соединения — просто не используйте QoS. Но бывают случаи, когда вы спокойно пожертвуете 5% пропускной способности канала, ради получения приоритезированного доступа в интернет.

Попробую провести аналогию — возьмем, например, посадку в самолет. В данном случае сотрудник аэропорта, осуществляющий контроль пассажиров при посадке в самолет является QoS для пассажиров — сначала он пропускает на посадку инвалидов, затем пассажиров, летящих бизнес-классом и лишь потом пассажиров эконом-класса. В этом примере сотрудник аэропорта — маршрутизатор, пассажиры — пакеты данных, которые пытаются проникнуть в самолет — интернет. Когда пассажиры ожидают посадки на борт — такое состояние называется «загруженным», потому что контролер не может пропустить больше одного человека за раз. Из этого примера можно сделать вывод — если нет очереди на посадку, то совершенно не важно, каким классом вы летите — вы тут же пройдете контроль на посадку, т.е. если ваш канал в интернет не загружен, то настройки QoS не имеют никакого значения — пакеты тут же попадают в интернет.

Прежде чем мы расскажем о том, как настроить маршрутизатор, нам нужно обсудить концепцию пакетов, классов и правил. Данные в Ethernet передаются в пакетах. Каждый пакет содержит заголовок, который содержит информацию об источнике, месте назначения, типе и длине. При прохождении по QoS пакет никогда не разбивается — все байты передаются вместе. Пакеты имеют размер от 64 до, примерно, 1500 байт. Правила определяют пакет в какой-либо класс. Зачастую правила анализируют данные только в заголовке пакета, чтобы решить, в какой класс определить пакет. Классы — это то, где пакеты ожидают отправки в интернет. Как долго они будут ждать, зависит от загруженности канала связи и уровня обслуживания, который установлен для класса, к которому принадлежат пакеты. Когда канал связи освобождается, маршрутизатор сверяется с классами, чтобы определить, пакеты какого класса передавать первыми.

Если вы новичок в QoS, я рекомендую вам ввести исходящую и входящую скорость своей линии на вкладках «QoS (Download)» и «QoS (Upload)», остальные настройки оставить по умолчанию и просто поизучать, как это работает. Для этого зайдите во вкладку «Status — Connection List» и обратите внимание на столбец «QoS Up/Down» — здесь можно увидеть работают ли правила QoS или нет. В конфигурации по умолчанию существует правило для 80-го порта. Порт 80 — это порт, используемый веб-браузерами. Если вы откроете веб-браузер и перейдете на какой-нибудь сайт, то заметите, что появилось несколько новых подключений, у которых указан класс «Normal». Это показывает, что правило работает. При написании правил QoS используйте вышеописанный способ, чтобы убедиться, что правило работает так, как вы планировали. Наиболее распространенной ошибкой новичков, является неправильное написание правил и то, что они не проверяют, работают ли их правила надлежащим образом.

Теперь пара слов об отслеживании соединений. Когда ваш компьютер начинает общаться с другим компьютером в Интернете, то происходит отправка и получение большого количества пакетов. Если вы посмотрите на заголовки этих пакетов, то увидите, что они почти идентичны, поскольку тип исходящих и входящих пакетов одинаков. Этот поток пакетов называется «соединением». Соединение начинается, когда первый пакет отправляется, а заканчивается, когда пакеты больше не отправляются. Чтобы узнать больше о отслеживании соединений — погуглите. В интернете предостаточно информации по этой теме.

В правилах могут описываться следующие критерии совпадения пакетов: содержимое заголовка, количество байт, протокол приложения (Layer7). Написание правил является самой тяжелой частью QoS. К сожалению, способов, которыми мы наверняка можем классифицировать данные, не так уж много и часто вам будет не хватать этих способов.

Пример использования QoS

Начнем с примера, в котором мы хотим, чтобы определенный компьютер в вашей локальной сети имел более высокий приоритет доступа к Интернету, нежели остальные компьютеры в классе Normal. Во-первых, у нас есть только один способ определить конкретный компьютер, а именно его IP-адрес. Чтобы гарантировать, что этот компьютер всегда получает один и тот же IP-адрес, мы переходим во вкладку «Connection — DHCP» и присваиваем ему статический IP-адрес на основе MAC-адреса этого компьютера. Теперь каждый раз, когда этот компьютер будет запрашивать у маршрутизатора IP-адрес, маршрутизатор будет выдавать ему один и тот же IP-адрес. Теперь мы можем написать правило, используя IP-адрес, зная, что он будет неизменным у этого компьютера. Когда этот компьютер отправляет пакет в Интернет, IP-адресом источника (Source) будет этот IP-адрес. Когда ответ приходит из Интернета, то этот IP-адрес будет адресом назначения (Destination). Значит, на вкладке «Firewall — QoS Download» мы будем использовать этот IP как адрес назначения (Destination), а на вкладке «Firewall — QoS Upload» мы будем использовать этот IP как адрес источника (Source). Это очень важный момент и он часто является причиной ошибок в написании правил.

По такому же принципу можно создавать правила для определенных портов, которые являются еще одним способом классификации пакетов.

Совпадения

Совпадение IP-адреса

Этот случай был подробно описан выше. На вкладке «Firewall — QoS Download» обычно мы прописываем IP-адрес назначения (Destination), а на вкладке «Firewall — QoS Upload» — IP-адрес источника (Source). Использование IP-адреса источника (Source) на вкладке «Firewall — QoS Download» проблематично, потому что мы обычно не знаем адрес сервера, к которому мы обращаемся. IP-адреса могут быть указаны как по одному, так и подсетью (например, 192.168.1.8/30). Если хотите узнать о подсетях побольше, то снова предложу вам погуглить.

Совпадение номера порта

Если вы знаете номер порта, который использует приложение, то это можно эффективно использовать для написания правила. Чаще всего используют порты 80 и 443 — это порты, которые использует веб-браузер. К сожалению, многие программы используют диапазоны портов или вообще случайные порты. У некоторых приложений в настройках, можно назначить определенный порт. Тогда можно будет написать правило, прописав указанный порт. Но если у приложения нет таких настроек, то у вас не получится написать правило, указав номер порта. Можно указать диапазоны портов, разделяя минимальные и максимальные номера портов знаком «-» (например, 20000-21000).

Совпадение длины пакета

Можно писать правила, указывая длину пакета. Если вы укажете максимальную длину пакета (Maximum Packet Length), то под это правило будут попадать все пакеты, у которых длина меньше, указанной в правиле. Если вы укажете минимальную длину пакета (Minimum Packet Length), то под это правило будут попадать все пакеты, у которых длина больше, указанной в правиле.
Что в оригинале имелось в виду в предложении «One use of this would be match on ‘ACK’ packets. These packets are typically 64 bytes long and while other packets may also be 64 bytes long you can get pretty good selection in this manner» я так и не понял. Далее по тексту курсивом будут выделены части статьи, которые я не смог перевести. Если кто-нибудь окажет помощь в данном вопросе — буду премного благодарен.

Совпадение протокола

Пакеты вашей локальной сети могут принадлежать к ICMP, TCP или UDP протоколу. Часто онлайн-игры используют UDP-пакеты для уменьшения задержек. Этим можно воспользоваться, чтоб дать онлайн-игре приоритет над другими программами.

Совпадение пакетов только если определенное количество байт было передано через определенное соединение (connection-bytes)

Можно изменить класс пакета, как только соединение, к которому принадлежит этот пакет, накопило определенное количество переданных байт. В данном случае мы присваиваем класс не по длине отдельных пакетов, а смотрим на общее количество переданных байт в одном соединении. Например, если пользователь просматривал видео, количество байт в соединении быстро накапливается, даже если каждый пакет имеет размер всего 1500 байт. Установив определенный порог, вы можете изменить класс данных, проходящих через соединение. Например, в загруженной локальной сети пользователь сможет быстро загрузить первую часть видео до того, как маршрутизатор изменит класс соединения, и скорость этого пользователя будет снижена. Этот способ называется «Speedboost», и его нередко используют интернет-провайдеры. «Speedboost» в этом случае является типом QoS, реализованным интернет-провайдером.

Можно предположить, что «connection-bytes» будет хорошим способом выделить в отдельный класс торренты, но используя этот способ необходимо быть осторожным — администраторы сетей пытаются поделить полосу пропускания между всеми клиентами поровну, а авторы программ пытаются обойти ограничения пропускной способности и блоки портов, чтобы их программы работали быстрее. Поэтому, если производительность соединения сильно ухудшается, то приложение просто закрывает это соединение и открывает новое. Возможно, получится улучшить работу сети, используя «connection-bytes», но только если не сильно снижать скорость торрентов.

Совпадение протокола приложения (Layer7)

В данном случае просматриваются данные (а не только заголовок) первых нескольких пакетов, передаваемых через соединение. Просматривая эти данные, можно определить какое именно приложение отправило эти данные и отнести их к нужному классу. Проблема в том, что приложения постоянно меняют типы отправленных данных, что затрудняет сопоставление шаблонов. Вдобавок постоянно увеличивается количество зашифрованных данных проходящих через маршрутизатор и становится понятно, что практически не имеет смысла использовать этот способ. Я не рекомендую этот способ и в будущем, возможно, он будет удален из Gargoyle.

Выше мы рассмотрели все способы, которыми можно определить пакеты к классам. Gargoyle позволяет использовать одновременно несколько способов, чтобы создать более сложные правила. Мы можем выбрать несколько способов для одного правила. Пакет должен соответствовать всем выбранным критериям, чтоб попасть в класс. Можно написать несколько правил. Они читаются маршрутизатором в том порядке, в котором они расположены в списке, сверху вниз. Как только пакет удовлетворяет всем требованиям правила, он тут же определяется в класс. Если пакет не удовлетворил условиям ни одного из правил, то он попадает в класс по умолчанию. В любом случае каждый пакет должен быть определен в класс. Снова напомню, насколько важно проверять написанные правила, просматривать список соединений, чтобы убедиться, что правила работают так, как было запланировано. Вы можете написать любое количество правил — ограничением может стать только производительность вашего маршрутизатора, которая зависит от объема ОЗУ и производительности CPU.

Классы

Как только пакет попал в маршрутизатор, правила QoS решают, что с ним делать. Правила не хранят пакеты, они анализируют их и отправляют в соответствующий класс. А вот классы содержат очередь пакетов, в которой пакет ждет, пока не наступит время его отправки в интернет. Если пакеты с разных IP-адресов попали в один класс, то они все имеют равный приоритет при доступе к интернет.

Процентная доля полосы пропускания (BW)

Это процентная доля пропускной способности канала, которую получит класс, когда канал связи загружен, и в классах находятся пакеты, ожидающие передачи. Когда я использую слово «загружен», это означает, что канал связи полностью занят, и пакеты находятся в очереди в ожидании передачи. Этот принцип работает и для входящей, и для исходящей линии связи. Если канал связи не загружен, то пакет сразу же отправляется без всяких задержек. Таким образом, ограничение ширина полосы пропускания для класса действует только тогда, когда канал загружен. Чтобы узнать, что происходит, когда канал загружен, но не во всех классах есть пакеты, ожидающие отправки, смотрите ниже FAQ 1. Если вы создали классы таким образом, что сумма процентов ширины пропускания всех классов не равна 100%, то Gargoyle пропорционально откорректирует эти значения так, чтобы сумма процентов всех классов равнялась 100%. Процент ширины полосы пропускания класса вводится при редактировании параметров класса (в таблице «Service Classes» кнопка «Edit», справа от названия класса) в поле «Percent Bandwidth At Capacity». Ниже приведены несколько примеров использования регулировки ширины полосы пропускания.

Читайте также:  Как починить мотоцикл альфа

Пример 1 — Интернет соседям

Вы провели себе Интернет, но решили поделиться им с двумя соседями, когда канал связи не загружен. Для этого нам нужно создать два класса — один с 1% BW, другой с 99% BW. Теперь мы используем IP-адреса компьютеров соседей, чтобы направлять их трафик в класс 1%, а трафик с IP-адреса своего компьютера направляем в класс 99%. В этом случае, когда канал связи загружен, вы получите 99% пропускной способности канала, а каждый из двух соседей получит по половине от 1%. Если вы не используете Интернет, но канал связи все еще загружен, то каждый из соседей будет получать по 50% пропускной способности канала, поскольку Gargoyle будет распределять всю доступную пропускную способность канала равномерно между всеми IP-адресами одного класса. Если канал связи не загружен, то все получают столько, сколько им необходимо, потому что общего количества пакетов недостаточно для полной загрузки канала. Если захотите, то можете увеличить BW класса соседей с 1% до величины, которую считаете разумной и приемлемой.

Пример 2 — Всем поровну

В этом примере интернетом пользуются только члены вашей семьи. Платите за него только вы, но когда канал занят, то он распределяется всем поровну. Это простой случай. Необходим только один класс, поскольку Gargoyle и так распределяет пропускную способность поровну между IP-адресами в одном классе. Таким образом, один класс получает 100% BW, а пропускная способность распределяется поровну между всеми активными пользователями. Добиться этого можно просто включив настройку QoS по умолчанию, как было описано в самом начале этой статьи.

Минимальная полоса пропускания (Minimum Bandwidth)

Это полоса пропускания, которая гарантированно будет предоставлена классу. И это не совсем то же самое, что процентная доля пропускной способности канала. При использовании QoS в Gargoyle зачастую необходимо использовать ACC. Эта технология следит за состоянием канала — измеряет скорость и делает корректировки QoS, если провайдер снизил вам скорость. Более подробно об ACC будет написано ниже, на данный момент достаточно сказать, что ACC необходимо использовать, когда какому-нибудь приложению необходима определенная скорость соединения с интернет. Три наиболее распространенных случая, которые мне известны — это онлайн-игры, Skype и потоковое видео (например, YouTube). Если вы используете какие-нибудь из вышеперечисленных или подобных приложений, то необходимо определить потребности этих приложений. Сначала создайте для них правило и класс, используя любые параметры, а затем понаблюдайте за ними в процессе использования — какая скорость им необходима. Затем добавьте к полученному значению небольшой запас (около 10%) и пропишите его в качестве значения минимальной полосы пропускания (в таблице «Service Classes» кнопка «Edit», справа от названия класса) в поле «Bandwidth Minimum». Gargoyle сначала выделяет полосу пропускания для всех классов, у которых указана минимальная полоса пропускания, а потом уже оставшуюся полосу пропускания делит между классами, у которых указана ширина полосы пропускания в процентах, поэтому используйте этот параметр осмысленно. When Gargoyle calculates the percentage bandwidth it includes whatever service it included under the minimum requirement in that calculation. Если канал не загружен, то установка минимальной полосы пропускания никак не повлияет на работу приложения. Если сумма значений минимальной полосы пропускания всех активных классов (которые в данный момент принимают или отправляют пакеты) больше, чем доступная полоса пропускания, то очевидно, что классы не получат минимальной полосы пропускания, прописанной в параметрах класса, а получат пропорционально меньше. Очень желательно избегать таких ситуаций и устанавливать минимальную полосу пропускания только тем приложениям, которым это действительно необходимо.

Максимальная полоса пропускания (Maximum Bandwidth)

Этот параметр устанавливает максимально доступную полосу пропускания для класса, даже если канал абсолютно свободен. This is the only class parameter which is not affected by link saturation.

Уменьшение пинга (Minimize RTT) (присутствует в современных версиях прошивки начиная с v1.5.4)

Этот параметр доступен только на вкладке «QoS Download» и работает только при включенном ACC.

Качество работы некоторых приложений сильно зависит от времени отправки-приема пакета (ping или если быть точным, то — RTT). RTT могут достигать значений в 2-3 секунды при загруженном канале, что является серьезной проблемой, если необходима работа в режиме реального времени. Допустим, вы разговариваете с кем-то по Skype, и потребуется 2 секунды, чтобы собеседник услышал вас и еще 2 секунды, чтобы вы услышали ответ. Поверьте, общаться в таком режиме будет очень неприятно. Gargoyle обеспечивает низкий уровень RTT для активных классов даже при большой загрузке канала. Если включен ACC, пинги будут в районе 150 мс. Если этого достаточно для комфортной работы вашего приложения, то включать параметр «Minimize RTT (ping times) when active» НЕ надо. Если вы включите этот параметр, то пинги уменьшатся примерно до 75 мс, но скорость канала упадет процентов на 25.

Пример 3 — YouTube, онлайн-игры и все остальное

Возьмем среднестатистическую семью — мама смотрит YouTube, в это же время папа с сыном играют в онлайн-игры, а сестра залипает в соцсетях. Для онлайн-игры мы создаем класс с необходимой минимальной полосой пропускания, предварительно посмотрев, какая скорость необходима данной игре. Так же онлайн-играм требуется минимальное значение пинга, поэтому создаем класс «Gaming», для которого устанавливаем минимальную полосу пропускания и включаем параметр «Minimize RTT (ping times) when active». После чего смотрим, какая полоса пропускания нужна маме для просмотра видео на YouTube. Мама огорчается, если ее фильм тормозит, а когда огорчается мама, то плохо становится всей семье, но мы-то знаем, что для просмотра YouTube пинги не имеет никакого значения, поэтому создаем еще один класс «YouTube» с установленной минимальной полосой пропускания, но с выключенным параметром «Minimize RTT (ping times) when active» — теперь мама будет счастлива. Мы написали правила чтоб направить трафик из онлайн-игр и YouTube в соответствующие классы, а весь оставшийся трафик направляем в класс Normal.

Скорость входящего и исходящего соединений (Total Bandwidth)

В самом начале статьи уже был рассмотрен данный вопрос, сейчас хочу сделать пару уточнений.

Иногда провайдер снижает вам скорость исходящего соединения, поэтому приходится заново производить замеры скорости и корректировать значение «Total Upload Bandwidth» во вкладке «QoS (Upload)». Если это будет происходить часто, то данная процедура вам надоест. Но зачастую скорость исходящего соединения достаточно стабильна и хватает однократного измерения.

На вкладке «QoS (Download)» значение, которое вы вводите в поле «Total Download Bandwidth» зависит от того, используете ли вы ACC или нет. Если используете ACC, то вводите значение, которое показали результаты измерения скорости или даже процентов на 10 больше. ACC будет автоматически корректировать фактическое значение скорости в пределах от 12% до 100% от введенного вами значения. Если вы введете сильно завышенное значение (скажем, в два раза), то просто потеряете определенный диапазон корректировки, потому что ACC будет регулировать только от 12% до 50% от вашей реальной скорости. Все значения скорости от 50% до 100% будут выше реальной пропускной способности вашего канала, но QoS по-прежнему будет корректно работать.

Если же вы не используете ACC, то ситуация осложняется. Введите минимальное полученное значение скорости входящего соединения. Но скорость входящего соединения может значительно меняться время от времени, причем на 20% — 80%. И вы не сможете постоянно прописывать актуальные значения скорости. Если вписанное значение скорости будет выше реальной скорости, то QoS просто не будет работать. Если вы установите значение скорости слишком низкое, то будете использовать использовать лишь часть канала. Поэтому крайне желательно использовать ACC, конечно, если вы хотите, чтобы QoS работал.

ACC (Active Congestion Controller)

Для функционирования QoS маршрутизатор должен знать максимальную скорость соединения с интернет. Можете поэкспериментировать с ACC и убедиться в этом. При выключенном ACC, если вы пропишите слишком высокую скорость в поле «Total Download Bandwidth», то QoS перестает работать. Если вы пропишите слишком низкую скорость, то сами себе снизите скорость соединения с интернет. Теоретически, существует абсолютно точное значение скорости соединения с интернет. Если вы сможете найти это значение, и оно постоянно будет одним и тем же, то ACC вам не нужен. Однако в большинстве случаев не существует абсолютно точного значения скорости соединения с интернет, потому что скорость входящего соединения, которую предоставляет ваш провайдер, периодически меняется. Именно в таком случае и пригодится ACC.

ACC постоянно следит за скоростью соединения с интернет и корректирует значение «Total Download Bandwidth». Под понятием «корректирует» имеется в виду, что ACC изменяет значение скорости входящего соединения, которую использует QoS для работы. Значения, которые будет использовать QoS, находятся в пределах между введенным вами значением скорости входящего соединения и 1/8 от этого значения. Это динамический диапазон, поэтому, чтобы максимально использовать диапазон регулировки, важно ввести правильное значение максимальной скорости загрузки, которую предоставляет вам провайдер, но не больше.

Значение скорости входящего соединений, которую вам на самом деле предоставляет ваш провайдер будет постоянно меняться в зависимости от загрузки сети самого провайдера. У вашего провайдера есть свой канал в интернет. И когда этот канал полностью загружен, то провайдер вынужден снижать скорость своим клиентам. ACC отслеживает скорость входящего соединения, измеряя время отправки-приема пакетов (RTT), которые отправляет на шлюз вашего провайдера. Измеряя RTT можно примерно определить количество данных в очереди от провайдера к вашему маршрутизатору. Принцип работы ACC основывается на том, что когда канал загружен, то время RTT (ping) увеличивается. В большинстве случаев так и происходит, но иногда бывают исключения, и тогда ACC не будет работать, и его необходимо отключить.

Давайте подумаем об очереди от провайдера к вашему роутеру. Количество ожидающих в очереди данных будет увеличиваться или уменьшаться в зависимости от нескольких факторов. Критическая точка будет достигнута в тот момент, когда очередь вырастет до такой степени, что больше не сможет принять в себя данные. В этом случае пакет будет отброшен вашим провайдером. Это плохо для QoS. Чтобы QoS нормально функционировал, он сам должен решать, какие пакеты необходимо отбросить. Когда ACC включен, он следит чтобы очередь не переполнялась, и только QoS вашего маршрутизатора отбрасывал пакеты при необходимости. ACC регулирует только длину очереди входящего соединения. Он не может регулировать скорость исходящего соединения. До тех пор, пока в очереди входящего соединения будут находится пакеты, ваш входящий канал будет полностью задействован. ACC необходим как раз для того, чтобы задействовать входящий канал по максимуму, позволяя очереди увеличиваться до необходимой длины, но не до такой, чтоб пакеты были отброшены.

Если очередь не будет пополнятся новыми пакетами, то необходимо около 100 мс, чтобы отправить все имеющиеся пакеты из этой очереди. Это говорит о том, что каждый пакет ожидает отправки из очереди около 100 мс. The affects the round trip time (RTT) of a packet exchange. Например, если я отправлю пинг на компьютер в сети интернет, то ответ будет ждать в этой очереди. Добавим сюда другие накладные расходы, и в итоге мы получим время отправки-приема пакета (RTT) около 150 мс. Для некоторых приложений такое значение RTT неприемлемо. В таких случаях, ACC переключается в другой режим, в котором он уменьшает среднюю длину очереди примерно в два раза. Т.е. значение RTT будет около 75 мс, но это произойдет за счет снижения скорости канала. Когда вы включаете режим «Minimize RTT», то скорость соединения с интернет снижается примерно на 25%, но пинги сокращается наполовину. This is a useful compromise which the ACC will make when a class becomes active which indicates it needs minimum RTTs and is indicated in the status display by the MinRTT mode.

ACC считает класс активным, если этот класс потребляет более 4 Кбит/с.

Для ACC доступны следующие настройки:

Включен или выключен «Enable active congestions control (Download Direction)» — тут пояснения не требуются.

Использовать нестандартную цель ping «Use non-standard ping target»: ACC должен получить ответ от компьютера в интернет, чтобы определить текущую загрузку линии. По умолчанию ACC использует в качестве цели шлюз вашего провайдера, но это часто не является хорошим решением и иногда в качестве цели приходится выбирать другой компьютер в интернет. К сожалению, я не могу дать универсальные рекомендации, как правильно найти хорошую цель, поэтому вам придется самостоятельно поэкспериментировать с данной настройкой. Если ACC у вас не работает, то эта настройка — первое, с чем нужно поэкспериментировать. Необходимо помнить, что ACC отслеживает скорость входящего соединения, измеряя время отправки-приема пакетов (RTT), которые отправляет с вашего маршрутизатора на компьютер в сети интернет, поэтому в качестве цели нужно выбрать какой-нибудь компьютер, находящийся в интернет, но не у вашего провайдера. Одной из целей, которую я часто использую — сервер OpenDNS 208.67.222.222, поэтому, если ACC не работает с настройками по умолчанию, то попробуйте этот сервер OpenDNS. Так же оптимальной целью может стать один из серверов между вашим маршрутизатором и вышеуказанным сервером OpenDNS. Чтобы узнать IP-адреса этих серверов можно использовать команду traceroute (если не знаете как — гуглите). Затем, посмотрите на выдачу команды traceroute и выберите тот сервер, у кого первое значение времени ощутимо больше, нежели у предыдущих. Или же экспериментируйте с другими серверами из данного списка (желательно находящийся поближе к вашему маршрутизатору), пока не найдете тот, с которым заработает ACC.

Читайте также:  Может ли сломаться телевизор от мороза

Ограничение времени жизни ping (TTL) «Manually control target ping time»: это ограничение времени жизни пинга, значение которого ACC будет использовать при включенном режиме «Minimize RTT». Если вы не включите этот параметр, ACC будет автоматически вычислять и устанавливать время жизни пинга в зависимости от скорости соединения с интернет. Как правило, автоматическое вычисление времени жизни пинга работает хорошо, но если вдруг в вашем случае это значение выбирается неверно, то можно установить его вручную. Обычно это значение находится в пределах от 40 до 90 мс, но можно поэкспериментировать с ним, если включен режим «Minimize RTT».

Производительность маршрутизатора

Чем мощнее процессор вашего маршрутизатора, тем больше данных он может обработать за единицу времени. Почти ничего, из написанного выше, не будет работать, если вы слишком сильно загрузите процессор своего маршрутизатора. Когда процессор маршрутизатора перегружен, то на вкладке «Status — Overview» значение «CPU Load Averages» будет «1.00 / 1.00 / 1.00» и с маршрутизацией начнет происходить всякая НЁХ.

Обычно это происходит при скоростях от 10 Мбит/с и до 500 Мбит/с — в зависимости от мощности вашего маршрутизатора и функций Gargoyle, которые вы используете. Чтобы использовать Gargoyle, необходимо уменьшить значения «Total Bandwidth» на вкладках «Total (Upload) Bandwidth» и «QoS (Download)» до такой степени, чтоб загрузка процессора никогда не приближалась к значению «1.00» даже при максимальной нагрузке.

Мониторинг полосы пропускания и QoS — это две функции, которые сильно нагружают процессор маршрутизатора. Если вы их отключите, то существенно разгрузите процессор, но, также потеряете многие функции, которые вам может предоставить Gargoyle.

Не жалуйтесь на форуме Gargoyle, что с родной прошивкой ваш маршрутизатор работает быстрее, нежели с прошивкой Gargoyle. С Gargoyle вы получаете стабильность и множество функций, которых так не хватает в родной прошивке. Если не можете получить желаемую скорость — купите маршрутизатор пошустрее.

Как распределяется скорость канала, если некоторые классы неактивны

В. У меня есть три класса с 15, 35 и 60% от пропускной способности канала. Как будет распределяться пропускная способность канала, если активны только первые два класса, и канал полностью загружен данными этих классов?

О. Если канал загружен, то он делится в соответствии с процентами активных классов. В вашем случае это будет выглядеть следующим образом — 15 / (15 + 35) = 30% и 35 / (35 + 15) = 70%

Как происходит распределение полосы пропускания между IP-адресами?

В. У меня есть данные с нескольких компьютеров, направленных в один класс. Как распределяется полоса пропускания, выделенная классу между компьютерами?

О. До Gargoyle версии 1.5.4 это никак не контролировалось и распределялось непредсказуемо. Начиная с Gargoyle версии 1.5.4, полоса пропускания распределяется поровну между всеми IP-адресами одного класса. Это значительно упрощает настройку QoS для больших локальных сетей. Например, если вы хотите, чтобы все компьютеры в вашей сети имели одинаковую пропускную способность, вам нужно создать класс по умолчанию, удалить все правила, которые вы создали, и включить QoS. Для деления полосы пропускания поровну между IP-адресами в классе не требуется никаких настроек. Также эту функцию невозможно отключить. Если вы хотите, чтобы определенному IP были предоставлены особые привилегии, то необходимо сделать для него специальные классы и правила.

Включение режима уменьшения пинга (Minimize RTT)

В. Есть идея — включить режим «Minimize RTT» для всех моих классов, ведь минимальное время отклика — это хорошо?

О. Минимальное время отклика — хорошо, но за минимальные пинги вы заплатите снижением пропускной способности канала. The reason for this is the same reason we have lines everywhere in our lives. Если вы пойдете в банк, то получить минимальное RTT (то есть получить деньги и тут же выйти из банка), возможно только двумя способами — или перед вами в очереди никого не будет, или президент банка, увидев вас, выйдет и проведет к кассе без очереди. Это будет нечестно по отношению к другим клиентам, но это же QoS.

In the case of the WAN down link there is no way to re-order packets that are queued to travel over the WAN downlink so we are left with keeping the line short as the only means

Использование MAC-адреса при создании правил

В. Я хочу использовать MAC-адреса при создании правил — так будет легче. Почему вы не предусмотрели такую возможность?

О. QoS не имеет доступа к MAC-адресам устройств. В архитектуре маршрутизации Linux эта информация удаляется из пакетов до того, как они попадают в QoS. Эту проблему можно решить, назначив фиксированный IP-адрес устройству с соответствующим MAC-адресом и написав правило для этого IP-адреса.

QoS для трафика между компьютерами

В. Я хочу использовать QoS для трафика между компьютерами в локальной сети. Как это можно реализовать?

О. Никак. QoS работает только с трафиком между маршрутизатором и провайдером. В большинстве маршрутизаторов трафик между компьютерами локальной сети обрабатывается сетевым коммутатором (switch) аппаратно и поэтому прошивка маршрутизатора не имеет доступа к этому трафику. Это связано с тем, что скорость передачи данных внутри локальной сети гораздо выше, чем из локальной сети в интернет. Ну а так как QoS не видит этот трафика, то и ничего не может с ним сделать. Это относится и к WiFi-трафику. QoS ничем не поможет, если перегружен радиоканал. Я рекомендую серьезным игрокам использовать проводное соединение между их приставкой или компьютером и маршрутизатором, чтобы избежать непредсказуемых задержек на радиоканале.

Количество правил и классов

В. Сколько правил и классов я могу создать?

О. Вы ограничены только мощностью процессора и объемом оперативной памяти маршрутизатора. Я не знаю технических характеристик вашего маршрутизатора, но скорее всего их хватит для обработки любого разумного количества правил и классов. Предполагаю, что теоретический предел количества правил — порядка нескольких тысяч, а то и миллионов. Теоретический предел количества классов — 125 для загрузки и еще 125 — для выгрузки.

Создание класса с повышенным приоритетом.

В. Хочу создать специальный класс с повышенным приоритетом над другими классами. Как это сделать?

О. В Gargoyle мы используем концепцию распределения полосы пропускания, а не концепцию «приоритета». Слово «приоритет» неоднозначно по смыслу. Вы хотите чтобы пакеты класса с повышенным приоритетом всегда передавались перед пакетами классов с более низким приоритетом? Этого можно добиться, установив значение минимальной полосы пропускания (Minimum Bandwidth) равным скорости вашего соединения с интернет для приоритетного класса, для остальных классов установите значение этого параметра равным нулю. Вообще, концепции Gargoyle «процентная доля полосы пропускания», «минимальная полоса пропускания» и «максимальная полоса пропускания» более гибкие, поэтому советую вам подумать о своей проблеме используя эти концепции и отказаться от концепции «приоритет».

QoS не работает

В. QoS не работает, что я делаю не так?

О. Судя по длине этой статьи, QoS — непростая штука, а значит существует много вещей, которые вы могли сделать неправильно. Для начала, рекомендую проверить — попадают ли пакеты в нужный класс. Если с этим все в порядке, то посмотрите, не перегружен ли процессор маршрутизатора. Попробуйте выключить ACC и установить скорость соединения с интернет ​​на 50% от фактической скорости. Если все заработало, значит правила и классы работают корректно. Пробуйте повысить скорость и включить ACC.

ACC ограничивает скорость моего соединения с интернет

В. Почему ACC ограничивает скорость моего соединения с интернет? Когда выключаю ACC — скорость повышается.

О. ACC lowers your link limit until the filtered ping time falls under the target ping times. So if your link limits is being lowered either your ISP performance has dropped (the usual case) or your target ping time is too aggressive.

Распространенные заблуждения

QoS не может управлять скоростью входящего соединения

Заблуждение: QoS не может управлять скоростью загрузки, потому что маршрутизатор не может остановить передачу данных из интернет.

Опровержение: Ерунда. Может. И управляет.

Я не хочу, чтоб маршрутизатор отбрасывал пакеты

Заблуждение: Я не хочу, чтоб маршрутизатор отбрасывал пакеты, пришедшие из интернет — это будет пустой тратой полосы пропускания.

Опровержение: Отбрасывание пакетов является основным принципом работы интернет. Это единственный способ, с помощью которого можно сообщить отправителю пакетов, что скорость соединения необходимо снизить. Пакеты удаляются в любом соединении. Вопрос только в том, как долго маршрутизатор будет их отбрасывать. При отбрасывании пакетов теряется максимум пара процентов пропускной способности канала.

Мне не нужен QoS, потому что у меня очень быстрый канал

Заблуждение: У меня очень быстрый интернет — 100500 Мбит/с. Мне не нужен QoS.

Опровержение: Скорость вашего интернет-соединения не имеет ничего общего с вашей потребностью в QoS. Вы можете полностью загрузить канал, потому что даже один ПК может загружать данные со скоростью 100 Мбит/с. В каких случаях необходим QoS — написано в начале данной статьи. То есть в тех случаях, когда вы хотите поделить определенным образом пропускную способность канала между участниками своей локальной сети или между приложениями.

Мой провайдер использует технологию X, поэтому мне не нужен QoS

Заблуждение: Мой провайдер использует технологию (вставьте сюда название технологии, по которой вы подключены к интернет). У меня абсолютно стабильная скорость подключения к интернет, поэтому мне не нужен ACC.

Опровержение: Ваша потребность в ACC не имеет ничего общего с качеством вашего интернет-соединения. Поверьте, все провайдеры урезают канал своим клиентам при необходимости. Просто представьте себя на месте провайдера. У вас есть 10000 клиентов, у каждого из которых установлен модем со скоростью 20 Мбит/с. Ваш канал в интернет — 1 Гбит/с. Прикинем — 10000 клиентов умножим 20 Мбит/с и разделим на 1 Гбит/с получится 200, т.е. ваши клиенты могут скачать в 200 раз больше, чем вы можете им предоставить! И если все они начнут качать новую серию «Игры престолов», то вам не останется ничего другого, кроме как урезать им канал.

Когда я включаю ACC, он реально снижает скорость загрузки

Заблуждение: Когда я включаю ACC, он реально снижает скорость загрузки.

Опровержение: The ACC manages the download link limit. Do not confuse the link limit with your actual link load. This link limit has no effect on you unless your load is actually the same as the limit. When these two are the same it means your WAN link is getting congested and simply cannot go any faster. The ACC also does not become active unless there is enough load to warrant it. You should also be aware that the ACC reacts slowly to changes in your ISPs performance so sudden burst of download data (like some DSL speed test programs use) will not move the link limit much.

‘ACK’ packets are special I want them treated with higher priority

Statement: It’s necessary to handle ‘ACK’ packets with special ‘priority’ so my uplink does not affect my downlink when I am using HTTP.

Rebuttal: It is not necessary to handle ACK packets different than other packets. As with all packets you need to think about how to allocate WAN resource for them. ACK packets are typically around 54 bytes long and the maximum packets around 1500 bytes. This ratio is 54/1500 = 3.6%. Any class which includes TCP traffic in the download needs a matching upload class that has allocation greater than 3.6% of the download bandwidth in bps. Many WAN links are asymmetrical in that the download is much faster than the upload so this affects the calculation.

Example: On a 10Mbps down/1Mbps up link we want HTTP traffic to consume 50% of the WAN down link when saturated. Let’s say our HTTP traffic is routed into the Normal class on both upload and download. The %BW in the download Normal class is simply 50%. On the uplink we must account for the fact that the link is asymmetrical so we allocate 3.6% * 10Mbps/1Mbps = 36% to the Normal class in the uplink. With this setup if either the uplink or downlink is saturated the HTTP traffic will be allocated not less than 5Mbps in the downlink.

Когда я использую QoS, пинги увеличиваются

Заблуждение: Я не использую QoS, потому что он увеличивает время пинга и я проигрываю в онлайн-игры. Мне нужно реально хорошее время пинга, чтобы не проигрывать.

Опровержение: QoS не виноват в плохих пингах. Если ваш канал не загружен, то пакеты будут задерживаться в маршрутизаторе не более чем на 1 мс. Если ваш канал загружен и правила написаны неправильно, то, возможно, время пинга увеличится до 150 мс. Проверьте свои правила, и убедитесь, что игровой трафик попадает в нужный класс и что этот класс не перегружен.

Источник

Оцените статью