ipfw queue приоритеты неработает

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Роккман
проходил мимо
Сообщения: 7
Зарегистрирован: 2012-02-16 12:49:33

ipfw queue приоритеты неработает

Непрочитанное сообщение Роккман » 2012-02-16 13:05:08

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

Код: Выделить всё

!/bin/sh
ipfw -f flush
ipfw -f pipe flush
ipfw -f queue flush

...

wow="9081,9100,9090,8086,3724,9091,8087,6112,6881-6999"

ipfw add check-state

ipfw add allow ip from ${ssh} to me 22 keep-state
ipfw add allow ip from ${sql} to me 3306 keep-state

ipfw pipe 1 config bw 10Mbit/s
ipfw queue 1 config pipe 1 weight 100
ipfw queue 2 config pipe 1 weight 50
ipfw queue 3 config pipe 1 weight 33
ipfw queue 4 config pipe 1 weight 1

ipfw add queue 1 ip from any ${wow} to any in via vr0

ipfw add queue 2 ip from any 80,443,3128,8080 to any in via vr0
ipfw add queue 3 ip from any 20,21 to any in via vr0
ipfw add queue 4 ip from any not 80,443,3128,8080,${wow},20,21 to any in via vr0

...
vr0 это входящий канал от провайдера на 10мегабит (аплоада там 20+ так что суть не важен)
net.inet.ip.fw.one_pass=0 прописан

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

по клиентам 5+ через впн подключатся, они имеют возможность качать с торрента, но некоторые из них какраз играют в вов
и ~10+ через хттп прокси, для них собственно нужно чтоб веб трафик опережал торренты, но не мешал вов

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

gardener
рядовой
Сообщения: 18
Зарегистрирован: 2012-01-25 19:11:14

Re: ipfw queue приоритеты неработает

Непрочитанное сообщение gardener » 2012-02-16 13:57:30

Чтобы труба нормально работала нужно в нее запихивать ВЕСЬ трафик с этого интерфейса.
Кроме того пропускная способность канала ВСЕГДА ниже заявленной. То есть не 10Mbit/s, а скажем 9000Kbit/s.
Ну и "трубить" трафик нужно в обоих направлениях. Тем более что торрент в основном работает как раз отдавая, а не получая (направление out а не in)

Роккман
проходил мимо
Сообщения: 7
Зарегистрирован: 2012-02-16 12:49:33

Re: ipfw queue приоритеты неработает

Непрочитанное сообщение Роккман » 2012-02-16 14:21:29

у меня и идёт весь трафик в трубу, кроме ssh с мускулем (который почти не используется)
канал приёма на самом деле чуть чуть выше 10мегабит, так что не в этом проблема
отдача идёт 20-30 мегабит в среднем, судя по спидтестам инетовским, канал отдачи всегда свободен, трубить отдачу не вижу абсолютно никакого смысла
да и пакеты должны сортироватся вне зависимости от ширины трубы, это ж не шейпер

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: ipfw queue приоритеты неработает

Непрочитанное сообщение hizel » 2012-02-16 14:34:46

изучайте ipfw pipe show
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Роккман
проходил мимо
Сообщения: 7
Зарегистрирован: 2012-02-16 12:49:33

Re: ipfw queue приоритеты неработает

Непрочитанное сообщение Роккман » 2012-02-16 15:02:48

нечего там изучать, как будто ничего не вливается в трубу
хотя должно

Код: Выделить всё

[14:07]# ipfw pipe show
00001:  10.000 Mbit/s    0 ms burst 0
q131073  50 sl. 0 flows (1 buckets) sched 65537 weight 0 lmax 0 pri 0 droptail
 sched 65537 type FIFO flags 0x0 0 buckets 0 active
[14:07]# ipfw queue show
q00001  50 sl. 0 flows (1 buckets) sched 1 weight 100 lmax 0 pri 0 droptail
q00002  50 sl. 0 flows (1 buckets) sched 1 weight 50 lmax 0 pri 0 droptail
q00003  50 sl. 0 flows (1 buckets) sched 1 weight 33 lmax 0 pri 0 droptail
q00004  50 sl. 0 flows (1 buckets) sched 1 weight 1 lmax 0 pri 0 droptail
[14:07]# ipfw show
...
00500    33    43445 queue 1 ip from any 9081,9100,9090,8086,3724,9091,8087,6112,6881-6999 to any in via vr0
00600   142   176548 queue 2 ip from any 80,443,3128,8080 to any in via vr0
00700     0        0 queue 3 ip from any 20,21 to any in via vr0
00800  1343   911143 queue 4 ip from any not 80,443,3128,8080,9081,9100,9090,8086,3724,9091,8087,6112,6881-6999,20,21 to any in via vr0
...

gardener
рядовой
Сообщения: 18
Зарегистрирован: 2012-01-25 19:11:14

Re: ipfw queue приоритеты неработает

Непрочитанное сообщение gardener » 2012-02-16 16:29:47

ipfw pipe show показывает что в трубе, а там активные очереди.
А вот ipfw queue show НЕ показывает активных соединений .... потому что их там нет?
Счетчик срабатывания правил не нулевой, значит правила работают. Но в данный момент!?

Может имеет смысл немного конкретизировать правила, в смысле не in via vr0, а именно in via recv vr0. Потому как входить в интерфейс можно с любого из концов.

Собственно Ваш случай http://www.lissyara.su/articles/freebsd ... ueue_pipe/

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: ipfw queue приоритеты неработает

Непрочитанное сообщение hizel » 2012-02-16 16:40:38

где там активные очереди? везде 0 flows
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Роккман
проходил мимо
Сообщения: 7
Зарегистрирован: 2012-02-16 12:49:33

Re: ipfw queue приоритеты неработает

Непрочитанное сообщение Роккман » 2012-02-16 16:56:28

в том то и дело что фаервол прохождение трафика по правилам регистрирует, но в сами очередя вроде как ничего не становится
in via vr0 это трафик который получает фаервол с vr0 интерфейса (то что мне и нужно), уточнение recv имеет смысл если вместо any написать me
вроде судя по статье, у меня всё написано правильно, не считая "mask dst-ip 0xffffffff" такой мути
но как я понял если ВЕСЬ трафик пускать в ОДНУ трубу, то маску дописывать не нужно

gardener
рядовой
Сообщения: 18
Зарегистрирован: 2012-01-25 19:11:14

Re: ipfw queue приоритеты неработает

Непрочитанное сообщение gardener » 2012-02-16 17:37:18

hizel писал(а):где там активные очереди? везде 0 flows
Вот я и говорю, что их там нет. :)
Роккман писал(а):уточнение recv имеет смысл если вместо any написать me
Не настаиваю, но именно когда any и нужно конкретизировать.
From any как читать, "от любого изнутри" или "от любого снаружи" in vr0? У интерфейса ДВА конца, внутренний и наружный.
но как я понял если ВЕСЬ трафик пускать в ОДНУ трубу, то маску дописывать не нужно
Не нужно.
Почему не работает не понятно. ДОЛЖНО.

Аватара пользователя
ADRE
майор
Сообщения: 2641
Зарегистрирован: 2007-07-26 8:53:49
Контактная информация:

Re: ipfw queue приоритеты неработает

Непрочитанное сообщение ADRE » 2012-02-16 18:30:25

просто пишешь например не от майлан: from not майлан to any out - От любого кроме, и лепи что хочешь
//del

Роккман
проходил мимо
Сообщения: 7
Зарегистрирован: 2012-02-16 12:49:33

Re: ipfw queue приоритеты неработает

Непрочитанное сообщение Роккман » 2012-02-16 18:53:43

ADRE писал(а):просто пишешь например не от майлан: from not майлан to any out - От любого кроме, и лепи что хочешь
мне то входящий трафик, который на меня с провайдера идёт :)
суть в том, что даже если лишник трафик по правилу попадает, то в очередя ничего не становится вообще
пытался через altq завернуть по статье с сайта, но оно почемуто весь входящий траффик тупо блокирует

уже незнаю что делать, думал из-за того что у меня натилка через ipnat работает, но практика показала что в ipnat трафик попадает уже после ipfw

может както можно завернуть входящий трафик в netgraph_queue до фаервола?

gardener
рядовой
Сообщения: 18
Зарегистрирован: 2012-01-25 19:11:14

Re: ipfw queue приоритеты неработает

Непрочитанное сообщение gardener » 2012-02-16 19:27:29

Роккман писал(а):суть в том, что даже если лишник трафик по правилу попадает, то в очередя ничего не становится вообще
а в ядро поддержка очередей включена?
options DUMMYNET есть?
rc.conf
dummynet_enable="YES" есть?

Что еще может быть? У всех работает должно и у Вас!

Роккман
проходил мимо
Сообщения: 7
Зарегистрирован: 2012-02-16 12:49:33

Re: ipfw queue приоритеты неработает

Непрочитанное сообщение Роккман » 2012-02-16 20:12:02

gardener писал(а):
Роккман писал(а):суть в том, что даже если лишник трафик по правилу попадает, то в очередя ничего не становится вообще
а в ядро поддержка очередей включена?
options DUMMYNET есть?
rc.conf
dummynet_enable="YES" есть?

Что еще может быть? У всех работает должно и у Вас!
в ядре есть, в рц прописал, ничего не изменилось, судя во sysctl он работает

Код: Выделить всё

[19:16]# sysctl net.inet.ip | grep dummy
net.inet.ip.dummynet.io_pkt_drop: 0
net.inet.ip.dummynet.io_pkt_fast: 2744
net.inet.ip.dummynet.io_pkt: 265921
net.inet.ip.dummynet.queue_count: 0
net.inet.ip.dummynet.fsk_count: 5
net.inet.ip.dummynet.si_count: 1
net.inet.ip.dummynet.schk_count: 2
net.inet.ip.dummynet.expire_cycle: 0
net.inet.ip.dummynet.expire: 1
net.inet.ip.dummynet.tick_lost: 0
net.inet.ip.dummynet.tick_diff: 396481
net.inet.ip.dummynet.tick_adjustment: 391429
net.inet.ip.dummynet.tick_delta_sum: -6
net.inet.ip.dummynet.tick_delta: -500
net.inet.ip.dummynet.red_max_pkt_size: 1500
net.inet.ip.dummynet.red_avg_pkt_size: 512
net.inet.ip.dummynet.red_lookup_depth: 256
net.inet.ip.dummynet.debug: 0
net.inet.ip.dummynet.io_fast: 0
net.inet.ip.dummynet.pipe_byte_limit: 1048576
net.inet.ip.dummynet.pipe_slot_limit: 100
net.inet.ip.dummynet.hash_size: 64

gardener
рядовой
Сообщения: 18
Зарегистрирован: 2012-01-25 19:11:14

Re: ipfw queue приоритеты неработает

Непрочитанное сообщение gardener » 2012-02-16 23:19:37

Ннда. Я когда с "ядреным" НАТом разбирался, (не мог входящие настроить) делал коротенькие правила только по интересующей меня теме, и пробовал. Может стоит аналогичным образом попробовать и Вам и понять, а работают ли вообще и если да, то как и почему.
То есть сделать минимум правил:

Код: Выделить всё

wow="9081,9100,9090,8086,3724,9091,8087,6112,6881-6999"
ipfw pipe 1 config bw 10Mbit/s
ipfw queue 1 config pipe 1 weight 100
ipfw queue 2 config pipe 1 weight 50
ipfw queue 3 config pipe 1 weight 33
ipfw queue 4 config pipe 1 weight 1

ipfw add check-state
ipfw add allow proto all out xmit vr0 keep-state
ipfw add queue 1 ip from any ${wow} to any in via vr0
ipfw add queue 2 ip from any 80,443,3128,8080 to any in via vr0
ipfw add queue 3 ip from any 20,21 to any in via vr0
ipfw add queue 4 ip from any not 80,443,3128,8080,${wow},20,21 to any in via vr0

ipfw add allow proto ip in recv vr0 keep-state
и пробовать, отслеживая движение пакетов и пытаясь понять что и почему. Вообщем как-то так. Ничего умнее на ум не приходит :unknown:

Роккман
проходил мимо
Сообщения: 7
Зарегистрирован: 2012-02-16 12:49:33

Re: ipfw queue приоритеты неработает

Непрочитанное сообщение Роккман » 2012-02-18 18:42:43

пытался раздать впн клиентам по 1мегабиту чтоб друг друга торентами не глушили, однако тоже бестолку, не в очередя не в трубы ничего не попадает

Код: Выделить всё

ipfw pipe 2 config bw 1Mbit/s
ipfw queue 5 config pipe 2 mask dst-ip 0xfffffff0
ipfw add queue 5 gre from 192.168.7.13 to 192.168.7.0/24
где 192.168.7.13 ип сервера

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