Page 1 of 8 123 ... LastLast
Results 1 to 15 of 112

Thread: Настройка QoS для чайника (распределение трафика в WL500gP)

  1. #1

    ограничение инета

    кое-как вроде настроил инет на десктоп и ноут. Вопрос: подскажите можно на роутере прописать 10-15 адресов в инете доступных для компа плюс все локальные ресурсы. Чтобы все остальное с этого компа было недоступно? Или это только средствами WinXP можно сделать?

  2. #2

    ограничение полосы - это глюк или фича !?

    WL500gp делит домашний интернет на два компа. Прошивка 1.9.2.7-8-pre9. Было замечено следующие :

    когда один комп в сети , то он использует (по данным диспетчера задачь) не более 50 % канала ....но как в сеть подключаеться второй комп в диспетчерах задачь загрузка канала у обоих сразу падает до 25 % ...

    Кто-то сталкивался с таким ?! - У всех ли идет вот такое резервирование канала ?! ...т.е. как бы выходит, что в любом случае роутером резервируеться 50 % канала .....

  3. #3
    Join Date
    Mar 2007
    Location
    Russia, Ryazan
    Posts
    696
    100% загрузки канала по данным диспетчера задач, если я не ошибаюсь это когда трафик идет на полную катушку в обе стороны. т.е. одновременно и аплоад и даунлоад на полной скорости.
    для измерения реальной скорости лучше использовать какие-то более другие тулзы. например - определить скорость скачивания конкретного файлы (обязательно архива или сжатого тем или иным образом).

  4. #4
    хм... - у меня четко видно в диспетчере, как и "туда" и "обратно" с одним компом = 50 % ...с двумя = 25 % на каждый комп.....

    метод измерения подозрений к диспетчеру не выявляет - потому как когда подключаю ноут к сети без роутера и качаю какой-то большой файлик, то диспетчер без проблем показывает около 90% - 100 % загрузки 100 Мб (ну разумееться когда с большого колличества юзеров качает), а на роутере выходит 50 % от 54 Мб всегда свободно

  5. #5
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,353
    во-первых, 54 мегабит там нет (в факе написано). во-вторых, конечно делят - эфир же, общая среда.

  6. #6
    дык, так выходит, что если на точке будет "висеть" 10 юзеров, то канал будет делиться на 10 в независимости загружают ли они его или нет?!

  7. #7
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,353
    в зависимости. т.е. всего эфир может пропустить 30 мегабит одновременно. если начнут качать все десять, то будет по 3 мегабита. если двое из этих десяти, то по 15. цифры условны. могут быть перекосы.

    это не фича и не бага. это физика.

  8. #8

    Настройка QoS для чайника (распределение трафика в WL500gP)

    Господа, прорывшись 3 дня на форуме, я так и не смог осуществить действие, вынесенное в название темы.
    Задача: обладая минимальным опытом работы с Linux, настроить ограничения по скачиванию с WAN для компьютеров внутренней сети (для примера, с IP 192.168.1.3, 192.168.1.72, 192.168.1.115).
    Что имеем: рутер WL500gP c последней прошивкой от Олега, настроенное подключение через PPPoE к повайдеру Lanck Telecom (Питер).
    Что я сделал:
    1. Установил и запустил терминальную программу Putty (под Vista).
    2. Связался с рутером (адрес по умолчанию, 192.168.1.1). Ввёл логин и пароль администратора.
    3. Изучил редактор vi (нашёл справку по нему, сделав запрос в ya.ru "vi editor commands"). Запускается командой vi, выход из него- набрать ZZ (shift+Z 2 раза).
    4. Выяснил, что на моём рутере после запуска терминальной сессии я нахожусь в (пустом) каталоге root, по этому команда ls (аналог команды DIR для MS-DOS) ничего не выдаёт.
    5. Выяснил, что команда cd /usr/sbin и последовательность команд cd /usr, cd /sbin приводят (почему-то!) в разные каталоги (согласно листингу ls).
    6. Узнал, что файл wshaper в каталоге, куда я перешел командами cd /usr, cd/sbin, защищён от записи. Стереть/изменить его я не могу.

    Подскажите, пожалуйста, дальнейшую последовательность действий.
    Напомню, что жаргон типа "скомпилируй, смонтируй, сделай выполняемый скрипт" требует пошагового пояснения ввиду труднодоступности документации и обилия проблем типа пункта 5.

  9. #9
    Слэш в начале пути означает, что стоящая после него директория будет подыскиваться в корне, а не в текущей директории. Отсюда только проблема 5.
    Last edited by Omega; 25-08-2011 at 03:18. Reason: fixed

  10. #10
    Join Date
    Aug 2008
    Location
    Taganrog, Rostov Region
    Posts
    397

    Скрипт управления скорость в rTorrent в зависимости от форвардного трафика. Часть 1.

    Вдохновленный идеями от nil и Siddha, описаными ими в этой теме здесь и здесь. Я решил развить эту идею.
    Моя идея состоит в том, что скорость rTorrent'а будет ограничиваться не только фактом наличия форвардного трафика, но и регулироваться в заданом диапазоне в зависимости от количества форвардного трафика. Кроме того, скрипт не будет постоянно крутиться в бескончном цикле, а будет запускаться самим rTorrent'ом с заданной периодичностью.
    Ниже, я опишу, как я настраивал свой роутер, чтобы работал мой скрипт rt-shaper.sh. По аналогии и скорее всего с незначительными изменениями вы сможите сделать тоже самое.

    Значит так. Предполагается, что роутер (ASUS wl-500gP или совместимый) уже прошит олеговской прошивкой и проведена начальная настройка до rTorrent. Кроме того, должны стоять следующие утилиты: tail, head, awk, wget. Если чего из этого нет, то отправляемся ищем темы по начальной настройке и настраиваем все, что нужно. Кроме того, понадобится утилита sudo, для того, чтобы скрипт смог работать под пользователем p2p, от имени которого стартует rTorrent.

    Sudo
    У меня rTorrent работает от имени пользователя p2p. Поскольку этот пользователь бесправный, то он не сможет запускать этот скрипт. Точнее скрипт он запустит, а вот обратиться к iptables - не сможет. Для того чтобы обойти эту неприятность и ставится sudo. Ставим:

    Code:
    ipkg install sudo
    После установки, находим конфиг sudo (/opt/etc/sudoers) и правим его. Самый ПРАВИЛЬНЫЙ способ править конфиг sudo - это использовать утилиту visudo. Дело в том, что перед записью исправленного конфига visudo в начале проверяет его на корректность и если все нормально, то сохраняет его. А если находит ошибки - то не сохраняет. Итак, набираем в консоле:

    Code:
    [admin@IGORROUTER root]$ visudo
    Вот мой конфиг sudo. Строки которые я исправлял, отмечены красным:

    Code:
    # sudoers file.
    #
    # This file MUST be edited with the 'visudo' command as root.
    # Failure to use 'visudo' may result in syntax or file permission errors
    # that prevent sudo from running.
    #
    # See the sudoers man page for the details on how to write a sudoers file.
    #
    
    # Host alias specification
    
    # User alias specification
    
    # Cmnd alias specification
    
    # Defaults specification
    
    # Runas alias specification
    
    # User privilege specification
    # root ALL=(ALL) ALL
    admin ALL=(ALL) ALL
    
    # Uncomment to allow people in group wheel to run all commands
    # %wheel ALL=(ALL) ALL
    # Same thing without a password
    # %wheel ALL=(ALL) NOPASSWD: ALL
    
    # Samples
    # %users ALL=/sbin/mount /cdrom,/sbin/umount /cdrom
    # %users localhost=/sbin/shutdown -h now
    
    p2p IGORROUTER = (admin) NOPASSWD: /usr/sbin/iptables
    
    Defaults:p2p runas_default = admin
    Defaults:admin runas_default = admin
    Пользователя root я закомментарил, и добавил пользователя admin, аналогичного root.
    Указал, что пользователь p2p может запускать на моем роутере (IGORROUTER) утилиту iptables без пароля.
    Пользователем по умолчанию для p2p назначен admin. Также и для пользователя admin, назначен пользователь admin, иначе sudo пытается использовать пользователя root, которого нет. Узнать имя роутера можно при помощи hostname. Набираем в консоле:

    Code:
    [admin@IGORROUTER root]$ hostname
    IGORROUTER
    и видим имя своего роутера. Заменяем IGORROUTER на имя своего роутера.

    Кратко, команды, которые я использовал при правке конфига в visudo:
    - клавиша <Insert> - перейти в режим редактирования;
    - клавиша <Ecs> - выйти из режима редактирования;
    - ":w" - сохранить конфиг;
    - ":q" - выйти из visudo;
    - ":wq" - сохранить конфиг и выйти из visudo.

    Сам скрипт и описание как он работает в следующем сообщении.
    Last edited by Omega; 25-08-2011 at 03:17. Reason: fixed

  11. #11
    Join Date
    Aug 2008
    Location
    Taganrog, Rostov Region
    Posts
    397

    Скрипт управления скорость в rTorrent в зависимости от форвардного трафика. Часть 2.

    продолжение этого сообщения.

    Скрипт rt-shaper.sh

    Скрипт rt-shaper.sh предназначен для автоматической регилировки скачки/отдачи bittorrent-клиентом rTorrent в зависимости от наличия и количества трафика проходящего через роутер. Другими словами, если форвардного(проходящего через роутер на клиентов в вашей сети) трафика через роутер нет, то rTorrent, установленный на роутер, не ограничивается. Если же форвардный трафик есть, то скорость скачки/отдачи ограничивается. Более того, и скорость скачки, и скорость отдачи изменяется в заданном интервале в зависимости от количества форвардного трафика.

    Я рекомендую скрипт ставить в отдельный каталог. У меня он стоит в /opt/etc/rt-shaper

    На данный каталог нужно дать права пользователю p2p. У меня в качестве группы для каталога указана p2p и группе даны права на чтение(r), запись(w) и выполнение(x).

    Далее, нужно место, где будут храниться значения, которые должны сохраняться между запусками скрипта. Поскольку, при каждом запуске скрипта, туда что-то пишется, лучше это место завести не на флешке, а на винте. У меня винт смонтирован в /home, а на нём я создал подкаталог var и ещё подкаталог rtorrent. Таким образом, каталог с временными файлами имеет такой вид: /home/var/rtorrent

    На него тоже нужно дать права на запись пользователю p2p. У меня права на этот каталог совпадают с правами на /home/var/rtorrent

    Скрипт /opt/etc/rt-shaper/rt-shaper.sh я приложил к сообщению.

    Переменные скрипта, которые возможно прийдется поменять под себя:
    RTSHAPER= - каталог, в котором лежит сам скрипт
    VARCAT= - каталог временных файлов
    LOGFILE= - логфайл

    В каталог /opt/etc/rt-shaper можно положить файл с настройками, которые будут использоваться в работе скрипта.

    Файл rt-shaper.conf
    Code:
    min_uprate=50; # минимальный upload rate rTorrent в килобайтах. Скорость будет уменьшаться до него, но не ниже
    min_dlrate=10; # минимальный download rate rTorrent в килобайтах. Скорость будет уменьшаться до него, но не ниже
    step_rate=10; # шаг изменения rate в килобайтах
    max_uprate=70; # максимальный upload rate rTorrent в килобайтах. При появлении форвардного трафика будет выставлен именно он. При дальнейшем росте форвардного трафика rate будет уменьшаться вплоть для min_uprate
    max_dlrate=50; # максимальный download rate rTorrent в килобайтах. При появлении форвардного трафика будет выставлен именно он. При дальнейшем росте форвардного трафика rate будет уменьшаться вплоть для min_dlrate
    max_count_change_rate=5; # максимально количество пропущенных изменений rate. После этого количества rate будет изменен по любому
    interval_rate=7; # частота точнее интервал, в секундах, с которой дергается скрипт. Должен совпадать с тем, что указано в конфиге rTorrent
    enable_log=0; # признак ведения лога 0-не вести лог. 1-вести лог, 2-вести подробный лог, 3-лог с промежуточными переменными
    Можно конфиг и не ложить, а задать все необходимые значения прямо в скрипте.

    Параметры: min_uprate, min_dlrate, max_uprate, max_dlrate, step_rate - задаются в килобайтах и зависят от скорости вашего интернета (У меня сейчас скорость такая: download = 777 килобит, upload = 824 килобит). Т.е. сейчас, при наличии форвардного трафика скорость скачки будет гулять в интервале между 10 килобайтами и 50 килобайтами, а скорость отдачи между 50 килобайтами и 70 килобайтами с шагом в 10 килобайтами.

    Параметр: interval_rate - должен совпадать с тем значением, которое будет указано для шедулера rTorrent, который будет запускать скрипт.

    Подключение скрипта к rTorrent

    Для подключения скрипта к rTorrent, нужно добавить одну строчку в конфиг rTorrent.

    У меня конфиг rTorrent лежит в /opt/etc/rtorrent.conf

    Добавляем туда строку:
    Code:
    schedule = rtshaper,15,7,execute=/opt/etc/rt-shaper/rt-shaper.sh
    Здесь: 15 - задержка, в секундах, после которой rTorrent начнет запускать скрипт на выполнение. 7 - интервал, в секундах, с которым rTorrent будет запускать скрипт, должен совпадать с параметром interval_rate из rt-shaper.conf.

    Вот собственно и все. Надеюсь, что я ни чего не пропустил.
    Attached Files Attached Files
    Last edited by Omega; 25-08-2011 at 03:21. Reason: fixed

  12. #12
    Quote Originally Posted by Sorin_j View Post
    Ау, господа. Что, никто не делал ограничение трафика? Неверю!
    А зачем вам, собственно, ИЗМЕНЯТЬ файл wshaper? Он по идее должен конфигуриться извне.

  13. #13
    На самом деле wshaper тут не помощник совсем.
    wshaper всего лишь настраивает неоптимальные параметры "по умолчанию" в более оптимальные. С точки зрения автора wshaper'а.

    Если же у вас стоит задача "ограничить внутренних сосунов", то универсального рецепта тут нет. Нужно знать подробности: как именно ограничить? Каждого в отдельности или всех вместе? А сколько полосы им отдать (в процентах или мБ/с)? А если "главный" ничего не сосет, то им занять его полосу можно? А всю или нет?

    И в соответствии с вот этими подробностями нужно написать скрипт, который сделает правильные настройки, и прописать его в post-firewall. И задача написания этого скрипта - не "чайницкая" ни разу. А простых и удобных готовых решений я не видел, к сожалению.

    Можно, конечно, тупо сказать "мой трафик главнее, сосунам - остатки", но тогда велик риск, что им не достанется вообще ничего Зато скрипт будет в пару строк.

  14. #14
    Так-так-так, давайте поподробнее.
    1. Изменять напрасно я ничего не хочу. Но в силу ограниченности в знаниях, я не могу правильно сконфигурировать wshaper через веб-интерфейс: там, как я понял, можно задать ограничения по портам и IP. И если IP я могу определить, то узнать, по каким портам кто чего качает- увольте, не ставить же каждому файрволл с удалённым мониторингом открытых портов и траффика по ним?
    2. Задача такая: во внутренней сети, которую обслуживает wl500gP, несколько (почти постоянно включенных) компьютеров. Один из них- админский, ему можно занимать всю полосу внешнего интернет-соединения, так как его потребление возможно ограничить на нём самом и на нём же контролировать. То есть, лишнего он не возьмёт.
    Для остальных компьютеров правило простое: каждому выделить полосу не менее минимальной- из оставшихся ресурсов.

    3. Отдельно, по возможности, хотелось бы увидеть описание простого (дл Вас) действия "прописать его в post-firewall". Как я уже писал, к примеру, у меня проблема с защитой от записи (если, конечно, я туда пытаюсь писать, куда надо).
    Last edited by Sorin_j; 11-04-2008 at 19:39. Reason: цифры забыл у пунктов

  15. я мож конечно чего не понял, но чем не устраивает штатный bandwitch manager? Когда сажусь поиграть по инету - режу ноуту жены 80 порт до 25кб/с (весь канал 500кб/с, если шейпить до 50кб/с - появляются лаги) - для серфа достаточно и моему пингу не мешает.
    Толко вот хотелось бы узнать: возможно ли как-то без перезагрузки роутера оперативно включать/отключать шейп? Скажем по умолчанию все отключено, а при нужде поиграть запустил скриптик какой и вуаля... Закончил гамится - другой скриптик и опять все отключено...

Page 1 of 8 123 ... LastLast

Similar Threads

  1. httptunnel - http тунелирование на роутере
    By Ujeen in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 52
    Last Post: 08-02-2011, 18:03
  2. Настройка ASUS WL500gP для сети Матрица
    By Messir in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 23
    Last Post: 09-09-2007, 19:38

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •