Устранение неполадок QoS в прошивке маршрутизатора dd-wrt

18

Я использую прошивку dd-wrt на своем роутере, и мне это очень нравится!

Но - я не уверен, что качество обслуживания (QoS) работает над этим. Я настроил это следующим образом:

  • http, порт 80 - Премиум
  • битторрент, порт 6969 - Bulk
  • https, порт 443 - Премиум
  • днс, порт 53 - Премиум

Согласно документации QoS , эти уровни:

полоса пропускания распределяется на основе следующего процента значений восходящей линии связи и нисходящей линии связи для каждого класса:

  • Освобождение: 100 Мбит / с - игнорирует глобальные ограничения.
  • Премиум: 75% - 100%
  • Экспресс: 15% - 100%
  • Стандарт: 10% - 100%
  • Массовая: 1,5% - 100%

Это, похоже, не совсем работает - с загруженными торрентами я получаю большие паузы в просмотре веб-страниц, которые отстой!

Документация QoS дает некоторые шаги для проверки QoS ...

То, что вам будет интересно посмотреть, будет первым набором IP-адреса источника и назначения, включая номера портов. Далее наличие l7proto и поля «mark». Записи указывают текущий приоритет QoS соединения в реальном времени, примененный к ним на основе поля «метка». Значения "mark" соответствуют следующим

  • Освобожден: 100
  • Премиум: 10
  • Экспресс: 20
  • Стандарт: 30
  • Bulk: 40
  • (без соответствия QoS): 0

Вы можете увидеть «mark = 0» для некоторых сервисов l7proto, даже если они настроены в списке правил QoS. Это может означать, что система сопоставления с образцом уровня 7 не соответствует новому или измененному заголовку для этого протокола. Таможенное обслуживание на матчах порта обычно заботится об этом.

На порту 6969 (bittorrent) я вижу странную смесь вещей с mark=0и mark=40так

cat / proc / net / ip_conntrack

udp 17 105 src = 98.162.182.42 dst = 1.2.3.4 sport = 64512 dport = 6969 пакетов = 3 байта = 290 src = 10.0.0.2 dst = 98.162.182.42 sport = 6969 dport = 64512 пакетов = 4 байта = 202 [ASSURED] mark = 0 secmark = 0 use = 1
tcp 6 117 TIME_WAIT src = 98.248.173.174 dst = 1.2.3.4 sport = 51114 dport = 6969 пакетов = 12 байт = 704 src = 10.0.0.2 dst = 98.248.173.174 sport = 6969 dport = 51114 пакетов = 10 байт = 440 [ASSURED ] mark = 40 secmark = 0 use = 1
tcp 6 598 УСТАНОВЛЕННЫЙ src = 165.132.128.201 dst = 1.2.3.4 sport = 57218 dport = 6969 пакетов = 8024 байта = 9919881 src = 10.0.0.2 dst = 165.132.128.201 sport = 6969 dport = 57218 пакетов = 4211 байт = 239607 [ASSURED ] mark = 0 secmark = 0 use = 1
tcp 6 586 УСТАНОВЛЕН src = 68.46.9.24 dst = 1.2.3.4 sport = 64688 dport = 6969 пакетов = 6 байт = 490 src = 10.0.0.2 dst = 68.46.9.24 sport = 6969 dport = 64688 пакетов = 8 байт = 944 [ASSURED ] mark = 40 secmark = 0 use = 1
udp 17 45 src = 222.254.228.38 dst = 1.2.3.4 sport = 25438 dport = 6969 пакетов = 5 байт = 454 src = 10.0.0.2 dst = 222.254.228.38 sport = 6969 dport = 25438 пакетов = 3 байта = 154 [ASSURED] mark = 0 secmark = 0 use = 1

(полный файл виден на http://pastebin.com/AZE6EtWm )

Я немного поигрался с этим журналом и не вижу никаких паттернов!

Почему некоторый битторрентный трафик порта 6969 помечен mark=0(не сопоставлен) QoS dd-wrt, в то время как другие помечены mark=40(массово) ... какие-нибудь идеи?

Джефф Этвуд
источник
5
Если вы застряли на своем старом роутере: P ... Я не думаю, что многие вопросы здесь получают более 15 просмотров в выходные ... Вы публикуете ссылку в своем твиттере и получаете более 150 за несколько минут!
Уильям Хилсум
Это совершенно не связано с темой вашего вопроса, но мне любопытно. Какую полосу пропускания предоставляет вам ваш провайдер?
Ворон
1
Я также обнаружил, что беспроводная связь на моем маршрутизаторе Linksys (работающем под управлением DD-WRT v24-sp2 (04/23/10) mini) также ненадежна вместе с QoS. Вы пробовали альтернативные сборки dd-wrt для своего роутера или только одна?
chunkyb2002
3
Вы уже обновили значения таймаута TCP и UDP? Они должны быть изменены по умолчанию, чтобы у вас не возникало проблем с максимизацией количества соединений. Это не повлияет на вашу проблему QoS.
Джо
1
@BlueRaja да, в конце концов я купил Asus rt-n16 и теперь использую помидоры на нем
Джефф Этвуд

Ответы:

8

Хотя он только формирует исходящий трафик , вы можете найти этот отличный сценарий QoS ( зеркало на pastebin ) в блоге Алекса Райса полезным. Это было через несколько авторов и воплощений. Обязательно установите UPLINK, а также DEV правильно. Для меня значение по умолчанию для DEV было неправильным, используйте $(nvram get wan_ifname)вместо этого комментарий или правильное значение при выполнении nvram get wan_iframeчерез SSH.

Кроме того, вместо того, чтобы использовать его, вы можете продублировать его конфигурацию в графическом интерфейсе QoS. Вы увидите, что он использует 1024: 65535 для массового трафика, а другие параметры (80,22,3389 и т. Д.) Имеют приоритет. Сценарий хорошо работает для меня и использует HFSC, как рекомендовано.


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

Например: QoS, установленный на WAN, отправляет трафик восходящей линии связи в очередь нисходящей линии.
Затем следует понимать, что этот патч не работает, потому что: Команды в сценарии rc_firewall не применяются в QoS.

Вы можете обойти проблему с помощью скрипта, который выполняется после rc_firewall, как указано в заявке . Я лично закончил тем, что включил JFFS и поместил сценарий с исправлением /jffs/etc/config/qos.ipup, как упомянуто.

Мне было удобно использовать KiTTY и WinSCP . Вы можете подключиться по SSH к маршрутизатору с помощью KiTTY для устранения неполадок / проверки, как в первом билете, и сразу перейти к просмотру файлов на маршрутизаторе с помощью Start WinSCPкоманды под левым верхним значком KiTTY. Если это не удается (маршрутизатор не запускает SFTP по умолчанию), вы можете включить FTP и подключиться вручную или просто добавить файл с помощью команд Unix. Не забудьте установить право владельца на выполнение сценария.

Кристофер Галпин
источник
это отлично, звучит очень многообещающе. Мне нравится dd-wrt, и он кажется, что он близок к работе ..
Джефф Этвуд
3
Я должен упомянуть для торрентов, и такие, что вы хотите, чтобы время ожидания TCP было меньше 10 минут (по умолчанию 60!), Должно также ускорить QoS.
Кристофер Галпин
Ссылка на сайт Алекса Райса недоступна. Есть ли альтернативная ссылка?
Восемьдесят восемь
1
@eighty Я добавил пастельное зеркало к сообщению
Джефф Этвуд
KiTTY тоже выглядит интересно (особенно потому, что он может предложить [экспериментальную] интеграцию с ZModem).
Рэндольф Ричардсон
13

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

Недостатком Tomato, по сравнению с DD-WRT, является то, что он имеет меньше функций, хотя есть несколько сборок модов, которые добавляют определенные вещи, такие как USB-накопитель и OpenVPN. Однако, как отметил Джефф Этвуд ниже, он поддерживает только чипсеты Broadcom.

Я использую мод Teddy Bear на моем Netgear WNR3500L. Сейчас я использую мод Toastman, основанный на Teddy Bear, с большим количеством функций и улучшенными классами QoS по умолчанию, которые работают для большинства людей.

Лично единственное, чего мне не хватает в Tomato - это поддержка VLAN и трансляция нескольких SSID. (В моде Toastman теперь есть и то, и другое, а также Captive Portal для вторичного SSID).

Paradroid
источник
Согласовано. Помидор фантастический, а QOS работает блестяще. Плюс очень легко переключиться обратно, если вам это не нравится.
MJeffryes
2
Помидор только для роутеров с чипами Broadcom. У меня роутер (Buffalo WZR-HP-G300NH) использует Atheros.
Джефф Этвуд
Я перешел на Tomato (на Asus RT-N16) вскоре после написания ответа и не оглядывался назад. Я использую мод Шибби, который регулярно обновляется, а также включает дополнительный проект «TomatoAnon» для обеспечения устойчивости краудсорсинга и так далее.
Кристофер Галпин
2

Я обнаружил, что DD-WRT v24 sp2 build 15362 очень стабильно работает на моем Netgear WNDR3700 v1, НО, несмотря на огромное количество времени, затрачиваемое на настройку QoS и TCP Vegas (контроль перегрузки), ни один из этих механизмов не работает на этой превосходной прошивке для входящего трафика (мне не нужен исходящий контроль, так как я не использую VOIP).

Например, независимо от того, какие опции (Mac Control, Netmask, Service Control) я использую в своих попытках расставить приоритеты входящего видео трафика и расставить приоритеты входящего битового торрент-трафика, ничего не работает. Я подтвердил это

Итог: используйте DD-WRT, если вам нужны все другие функции (в частности, трансляция нескольких SSID), но используйте Tomato, если у вас есть подходящий набор микросхем (Tomato недоступен для WNDR3700 на базе Atheros) и ему нравятся его функции QoS.

Correz
источник
2
Я не думаю, что входящее QoS предназначено, чтобы когда-либо работать - я помню, что читал это где-то. Кроме того, в конечном итоге я перешел на Asus RT-N16 и Tomato.
Джефф Этвуд
@Jeff Была ли проблема с QoS причиной переключения?
Петр Доброгост
@piotr частично, но я получил это в основном решено за мой ответ - я просто хотел попробовать томат в основном, который имеет QoS, который работает из коробки по крайней мере.
Джефф Этвуд
0

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

Я знаю, что вы не большой поклонник просмотра сообщений на форуме, но, возможно, вы захотите оставить свои вопросы там.

enriquein
источник
правильно, и это нормально - это загрузка, которая обычно ограничена в любом случае.
Джефф Этвуд
4
То же самое и с томатом. Ограничение загрузок будет означать просто отбрасывание кадров и не ускорит другие приоритеты, поэтому в этом нет никакого смысла.
paradroid