Изменение limit_rate "на ходу" без обрыва подключений

Alatar alatar_maillist at list.ru
Fri Feb 3 20:20:33 MSK 2006


On Fri, 03 Feb 2006 19:32:31 +0300, Eugene <my-subscr at mail.ru> wrote:

> Вобщем да. Задача стоит именно эта.
> Мне кажется, что более низкоуровнеыве средства значительно сильнее  
> напрягают железо.
> Если просто залить в фаерфол весь список то при большом трафике он  
> начинает активно жрать процессор.

Для этого в большинстве файрволов уже давно существуют таблицы. У меня на  
FreeBSD4.11 + ipfw работает на ура. Поиск по таблицам работает очень  
быстро и систему грузит не сильно. А ограничение скорости тем же dummynet,  
или ALTQ тем более на уровне ядра эфективнее.

> В общем это неудивительно - каждый пакет приходится проверять на  
> соответствие списку сетей, а работа это не маленькая, к тому же фаервол  
> "крутится" в ядре как привилегированный процесс.
> Я хотел как раз для облегчения нагрузки вынести проверку на уровень  
> приложения, чтобы nginx при подключении сам решал,
> что вот это соединение с такми-то ограничением  и дальше уже работал с  
> ним, не делая каждый раз проверку.
>
> Евгений
>
>> Так вам на сервере в целом надо обеспечить непревышение зарубежным  
>> трафиком русского?
>> Для этого более низкоуровневые средства надо использовать. На Linux
>> надо собрать ядро с патчем ipsets, залить в него базу сетей, сделать
>> чтобы iptables маркировал соединения, а tc - ограничивал скорость. На
>> FreeBSD как-то тоже с помощью dummynet можно (хотя насколько я
>> понимаю, классификация пакетов при большом количестве подсетей может
>> потреблять много процессора).
>>
>> --
>> Alexey Polyakov
>>
>
>







More information about the nginx-ru mailing list