ipfw - ограничение скорости

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

ipfw - ограничение скорости

Непрочитанное сообщение dikens3 » 2006-10-26 15:52:45

Обычное ADSL подключение к прову 8Mbit/s | 1mbit/s. + Здесь есть телефон. Т.е. скорость в момент звонка урезается до 4Mbit/s. (Не помню точно, но где-то читал)

Есть две сетевухи, одна в лан, другая в инет.

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

На той, которая в инет или Лан?

P.S. Предполагаю, что на той, которая в инет.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Хостинговая компания 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/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35456
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Непрочитанное сообщение Alex Keda » 2006-10-26 16:14:25

какому сайту?
Убей их всех! Бог потом рассортирует...

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2006-10-26 16:58:34

lissyara писал(а):какому сайту?
Мдя, действительно непонятно.. Своему корпоративному.

Чё-то перемудрил я:

Добавил

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

# Ускоряем Web-Site

        ${fwcmd} pipe 1 config bw 8Mbit/s queue 10
        ${fwcmd} queue 1 config pipe 1 weight 80
        ${fwcmd} queue 2 config pipe 1 weight 20
        ${fwcmd} add queue 1 ip from ${webmailserver} to any out via ${ifout}
        ${fwcmd} add queue 2 ip from not ${webmailserver} to any out via ${ifout}
НО:

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

# ipfw pipe show
00001:   8.000 Mbit/s    0 ms   10 sl. 0 queues (1 buckets) droptail
    mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000

q00001: weight 80 pipe 1   50 sl. 1 queues (1 buckets) droptail
    mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
  0 tcp      192.168.*.*/80       89.109.4.168/2769  1408  1214253  0    0   0

q00002: weight 20 pipe 1   50 sl. 1 queues (1 buckets) droptail
    mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
  0 udp     192.168.*.*/6369     217.11.48.13/53    1567   168977  0    0   0
Так собственно всё и стоит, счётчики изменяются, но никаких новых очередей не появляется. Что делать? Так и должно быть?
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2006-10-26 18:16:01

Сделал так:

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

        ${fwcmd} pipe 1 config bw 7Mbit/s
        ${fwcmd} queue 1 config pipe 1 weight 80 queue 20 mask src-ip 0xffffffff
        ${fwcmd} queue 2 config pipe 1 weight 20 queue 20 mask src-ip 0xffffffff
        ${fwcmd} add queue 1 ip from ${webmailserver} to any out via ${ifout}
        ${fwcmd} add queue 2 ip from not ${webmailserver} to any out via ${ifout}
Вроде работает.

Сайт Объем данных Время загрузки Загрузка 1 Kб
1 http://www.mydomain.ru > 10 Kбайт 0.84 сек 0.08 сек
2 http://www.mydomain2.ru > 10 Kбайт 0.89 сек 0.09 сек


Тестировал тут:
http://web.nettools.ru/
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

BAV_Lug
сержант
Сообщения: 299
Зарегистрирован: 2006-06-02 15:38:28
Откуда: Харьков

Непрочитанное сообщение BAV_Lug » 2007-02-15 17:24:48

Появилось несколько вопросов
1. Как правильно равномерно распределить между пользователями канал?
2. И как решить ту-же задачу, но, например, разбив пользователей на две группы с разными приоритетами?

Стоит сквид. И хотелось бы, чтобы канал делился на внутреннем интерфейсе только по порту 3128 (средствами сквида херня получается :()

ЗЫ Статью на сайте читал, но там ограничение по каждому пользователю, а мне нужно, что-бы когда канал пустует и один ползователь он весь отдавался ему.

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2007-02-15 17:39:15

BAV_Lug писал(а):Появилось несколько вопросов
1. Как правильно равномерно распределить между пользователями канал?
2. И как решить ту-же задачу, но, например, разбив пользователей на две группы с разными приоритетами?

Стоит сквид. И хотелось бы, чтобы канал делился на внутреннем интерфейсе только по порту 3128 (средствами сквида херня получается :()

ЗЫ Статью на сайте читал, но там ограничение по каждому пользователю, а мне нужно, что-бы когда канал пустует и один ползователь он весь отдавался ему.
${fwcmd} queue 1 config pipe 1 weight 80
Вес так называемый. 80% предпочтение траффика по этому критерию.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

BAV_Lug
сержант
Сообщения: 299
Зарегистрирован: 2006-06-02 15:38:28
Откуда: Харьков

Непрочитанное сообщение BAV_Lug » 2007-02-16 10:03:50

dikens3 писал(а): ${fwcmd} queue 1 config pipe 1 weight 80
Вес так называемый. 80% предпочтение траффика по этому критерию.
Вот, что накопал по первому вопросу

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

ipfw pipe 10 config bw 10Mbit/s
ipfw pipe 20 config bw 10Mbit/s
ipfw queue 10 pipe 10 weight 50 mask src-ip 0xffffffff
ipfw queue 20 pipe 20 weight 50 mask dst-ip 0xffffffff

ipfw add ... queue 10 ip from any to any in via rl0
ipfw add ... queue 20 ip from any to any out via rl0

где rl0 - сетевая карта, обращенная в сторону "юзеров"
но не работает :(
что нужно подставить вместо точек?

и как посмотреть работают ли трубы? (ipfw pipe show - показывает две трубы, и все нули :( )

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2007-02-16 11:45:20

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

# Указываешь скорость исходящего/входящего интерфейса 
       ${fwcmd} pipe 1 config bw 100Mbit/s
# Создаёшь 1 очередь с приоритетом 80% (Группа 1)
       ${fwcmd} queue 1 config pipe 1 weight 80 queue 20 mask dst-ip 0xffffffff
# Создаёшь 2 очередь с приоритетом 20% (Группа 2)
       ${fwcmd} queue 2 config pipe 1 weight 20 queue 20 mask dst-ip 0xffffffff
В итоге 100% определение канала?

# Приоритет для VIP юзеров
       ${fwcmd} add queue 1 ip from any to ${vip_users} out via ${iflan}
# Приоритет для остальных пользователей
       ${fwcmd} add queue 2 ip from any to not ${vip_users} out via ${iflan}

В итоге при 100% загрузке исходящего потока траффика c интерфейса iflan
80% канала будет отдаваться VIP пользователям и 20% обычным юзерам

Учти, что пример работать не будет, т.к. входящий(интернетный) трафик у тебя гораздо меньше 100Mbit/s.

Посмотреть ipfw pipe show
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.