The OpenNET Project / Index page

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



"Выполнено портирование ipfw и dummynet для Linux"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Отдельный RSS теперь доступен для каждого обсуждения в форуме и каждого минипортала.
. "> а зачем ? им делать нечего ?" +1 +/
Сообщение от nuclight (??), 24-Июн-09, 13:47 
>[оверквотинг удален]
>>ipfw add pipe tablearg all from table(1) to any
>>
>>иначе была бы портянка вида
>>ipfw add pipe 1 all from 1.2.4.0/24 to any
>>ipfw add pipe 2 all from 1.2.6.0/24 to any
>>...
>
>Это уже отдаёт самоцелью. Даже теоретически не могу представить зачем это нужно.
>А даже если это и нужно, то это как разгребать спагетти
>бейсика с его goto.

Как раз-таки наоборот. Линейная последовательность правил - это пачка if'ов и goto. А tablearg - это диспетчеризация вызова функции по указателю. ОДНО правило вместо пачки - это гораздо понятнее и эффективнее.

Что же касается того, зачем это нужно - тренируйте воображение, что ли. Одно из применений этой штуки (люди реально пользуются) - есть семейство тарифов (полос), клиентов много, каждый купил один из тарифов, нужно шейпить соответственно. Чтобы не писать по правилу на каждого клиента - мы вгоняем их адреса в таблицу с указанием номера. И всё!

>>из-за чего админам иногда приходится эмулировать его руками
>>(вспоминается DoS башорга).
>
>Кстати, даже для эмуляции у iptables средства не так уж и плохи.
>Цепочки по сути являются подпрограммами обработки трафика и позволяют писать довольно
>сложные, но ТЕМ НЕ МЕНЕЕ гораздо более понятные правила, чем конструкции
>вида
>>ipfw add pipe tablearg all from table(1) to any

Как средство эмуляции оно хуже - внутри подпрограммы поиск всё равно линейный. Очень странно, если вы приводите аналогии из програмирования, и не понимаете, чем одна строка с индексацией по таблице (массиву) лучше и _понятнее_, чем пачка if-else if для каждого варианта значения индекса.

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

Оглавление
Выполнено портирование ipfw и dummynet для Linux, opennews, 22-Июн-09, 23:07  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



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

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