The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"FreeBSD + PF + ALTQ Как правильно зашейпить?"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"FreeBSD + PF + ALTQ Как правильно зашейпить?"  
Сообщение от KES email on 24-Авг-06, 19:02 
Есть канал Сириус tun0.
Есть две сети
rl0 192.168.0.0/24
rl1 192.168.1.0/24

Так как AltQ не может зашейпить входящий трафик, то нужно это сделать на rl0 и rl1

Я хочу ограничить вход tun0 скоростью 10Кбайт.
Остальное оставить на исход.
Исходящие Ack пакеты должны иметь МАКС приоритет.

а) Если поставить bandwidth 10Kb на rl0 и на rl1, то получится что у меня вход какбы 20Кб
б) Если поставить bandwidth 5Kb на rl0 и на rl1, то когда на rl0 качают с 100% загрузкой, а на rl1 никто не качает (загрузка 0%) получается что 50% канала простаивает

Как правильно настроить в этой ситуации?

вопрос 2:
имею:
altq on tun0 cbq bandwidth 20Kb queue { tun0_std }
queue tun0_std on tun0 cbq (default)

у меня нет ниодного правила
pass ....... queue tun0_std

Но если посмотреть статиситку по очередям:
#pfctl -sq -v
queue root_tun0 bandwidth 20Kb priority 0 cbq( wrr root ) {tun0_std}
  [ pkts:        188  bytes:      20017  dropped pkts:      0 bytes:      0 ]
  [ qlength:   0/ 50  borrows:      0  suspends:      0 ]
  [ measured:    15.0 packets/s, 13.06Kb/s ]
queue  tun0_std bandwidth 20Kb cbq( default )
  [ pkts:        188  bytes:      20017  dropped pkts:      0 bytes:      0 ]
  [ qlength:   0/ 50  borrows:      0  suspends:      0 ]
  [ measured:    15.0 packets/s, 13.06Kb/s ]

то можно видеть как течёт трафик. С какого перепугу он тут появился???


ПРОСТО РАЗМЫШЛЕНИЯ О ШЕЙПИНГЕ
Зачем привязывать очередя к конкретным интерфейсам? Почему бы не сделать понятие очереди более виртуальным. Например очередь HTTP трафика, FTP, mail, LAN и т.д.

Шейпинг я себе представляю след образом (синтаксис не ALTQ):
queue main bandwidth 100% { qHTTP qFTP qGAMES}
queue qGAMES pri 7

queue qHTTP bandwidth 100% pri 1 { qHTTP_rl0 qHTTP_rl1 }
  queue qHTTP_rl0 (default)
  queue qHTTP_rl1 bandwidth 300Kb (borrow)

queue qFTP bandwidth 100% pri 1 { qHTTP_rl0 qHTTP_rl1 }
  queue qFTP_rl0 pri 2 (default)
  queue qFTP_rl1 pri 1


И проблема, описанная в вопросе 1 решилась бы след образом:
queue main bandwidth 115200b ( qIN qOUT )
queue qIN bandwidth 70%
queue qOUT bandwidth 30%
pass on tun0 from any to any

Таким образом трафик УХОДИЛ бы с ОЧЕРЕДИ (не с интерфейса) с нужной скоростью.

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "FreeBSD + PF + ALTQ Как правильно зашейпить?"  
Сообщение от KES email on 24-Авг-06, 19:30 
>И проблема, описанная в вопросе 1 решилась бы след образом:
>queue main bandwidth 115200b ( qIN qOUT )
> queue qIN bandwidth 70%
> queue qOUT bandwidth 30%
>pass on tun0 from any to any
>
Исправляюсь:
pass on tun0 from any to any  queue main
Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру