N.Leiten 89 Опубликовано: 2005-10-24 21:58:15 Share Опубликовано: 2005-10-24 21:58:15 В общем есть проектик - написал скрипт, что-то вроде CBQ но основанный на HTB, который динамически изменяет скорость в зависимости от загрузки канала на пользователя. Умеет работать с интерфейсами ВПН - то есть на линухе создается каждый раз разный интерфейс - так вот ЭТО может находить нужный интерфейс и шейпить что нам нужно. Файлы конфигураций приближены по формату к конфигам CBQ.init. Сам файл лежит здесь (извините за выбор хостинга) http://flexshape.narod.ru/flexshape-alpha-v1-20051024.tar.gz размер - 17кбайт Документалка внутри - на английском (моем кривом английском) и на русском. Что хочу от вас - протестируйте у кого есть возможность на наличие багов, т.к. не хочется дальше его дорабатывать, если в нем еще будут ошибочки. Конечно, идей много - реализовать их все хочется, так что жду еще ваших коментариев нужно ли оно. Ссылка на сообщение Поделиться на других сайтах
keshaLG 5 Опубліковано: 2005-10-24 22:56:48 Share Опубліковано: 2005-10-24 22:56:48 Руль..... пойдет.... будем тестить, жалко конечно, что перла не знаю.... спасибо от лица всех кто будет юзать его, нужное дело сделал... настоящий пользователь GNU Ссылка на сообщение Поделиться на других сайтах
egor2fsys 5 Опубліковано: 2005-10-25 04:14:09 Share Опубліковано: 2005-10-25 04:14:09 так что жду еще ваших коментариев нужно ли оно. нужно! АднАзнАчнА Ссылка на сообщение Поделиться на других сайтах
N.Leiten 89 Опубліковано: 2005-10-25 05:01:27 Автор Share Опубліковано: 2005-10-25 05:01:27 Забыл сказать, что версия альфа - то бишь исключительно для тестинга. Просто не рекомендую запускать в работу, хотя у меня уже успел поработать пару часов на всю локалку - могу сказать преркасно работает. Но появилось пару вопроскиов - буду тестить дальше. И, конечно же, продолжаю ждать замечаний по ошибкам Да и еще одно. Кто знает готовые программы тестеры - в общем нужно получить общую статистику загрузки памяти и процессора моей программой, а то неприкольно как-то наблюдать top или клацать free, uptime... Ссылка на сообщение Поделиться на других сайтах
Den_LocalNet 1 474 Опубліковано: 2005-10-25 06:18:51 Share Опубліковано: 2005-10-25 06:18:51 http://flexshape.narod.ru/flexshape-alpha-v1-20051024.tar.gz Erorr 404 Ссылка на сообщение Поделиться на других сайтах
N.Leiten 89 Опубліковано: 2005-10-25 10:51:20 Автор Share Опубліковано: 2005-10-25 10:51:20 Только что проверил - работает, сразу закачивает... Если не идет - могу выслать на мыло. Или предлагайте еще одно место для вылаживания. Ссылка на сообщение Поделиться на других сайтах
Den_LocalNet 1 474 Опубліковано: 2005-10-25 11:04:37 Share Опубліковано: 2005-10-25 11:04:37 вот ещё одно зеркало будет: http://lan.com.ua/downloads/flexshape-alph...20051024.tar.gz Ссылка на сообщение Поделиться на других сайтах
N.Leiten 89 Опубліковано: 2005-10-25 11:14:36 Автор Share Опубліковано: 2005-10-25 11:14:36 О, пасибки... Я на народ перегрузил файл - добавил ридми на русском в кодировке виндузной... Есть желающие под виндой почитать Ссылка на сообщение Поделиться на других сайтах
N.Leiten 89 Опубліковано: 2005-10-27 12:40:49 Автор Share Опубліковано: 2005-10-27 12:40:49 Чуток подкорректировал сайт, приблизительно к выходным выложу следующую версию. Прошу сюда: http://flexshape.narod.ru Ссылка на сообщение Поделиться на других сайтах
fufnf 0 Опубліковано: 2006-01-13 18:00:46 Share Опубліковано: 2006-01-13 18:00:46 Есть канал на инет со скоростю в зависимости от трафика: Украина - 1 Мбит, мир - 128 Кбит. Я хочу шейпить с помощью вашей проги только иностранный (неукраинский) трафик. Для этого для иностранного трафик в iptables я делаю REDIRECT на порт 3128 и он идет на проксю. Внимание, вопрос: смогу ли я создать класс на основе порта-адресата 3128 и т.о. шейпить только иностранный трафик? Спасибо. Ссылка на сообщение Поделиться на других сайтах
N.Leiten 89 Опубліковано: 2006-01-13 23:42:47 Автор Share Опубліковано: 2006-01-13 23:42:47 Насколько я понимаю процесс обработки пакетов приходящих в линукс - могу сказать, что вряд ли будет работать. Т.к. шейпер работает на исходящие пакеты, то будет проблематично указать с какого интерфейса идут пакеты и куда. То есть порт указать укажем - а вот куда трафик исходить будет? на внутрь - есть дополнительные модули для шейпера, но они иммитируют входящий интерфейс и задерживают трафик на прием - в моем шейпере нет поддержки этого. Кста, я сейчас весь в работе - не знаю когда будет следующая версия, но будет обязательно - крайне не рекомендую использовать шейпер для динамических интерфейсов - забивает процессор уже при 5-10 классах. Ссылка на сообщение Поделиться на других сайтах
fufnf 0 Опубліковано: 2006-01-14 07:23:36 Share Опубліковано: 2006-01-14 07:23:36 Насколько я понимаю процесс обработки пакетов приходящих в линукс - могу сказать, что вряд ли будет работать. Т.к. шейпер работает на исходящие пакеты, то будет проблематично указать с какого интерфейса идут пакеты и куда. То есть порт указать укажем - а вот куда трафик исходить будет? на внутрь - есть дополнительные модули для шейпера, но они иммитируют входящий интерфейс и задерживают трафик на прием - в моем шейпере нет поддержки этого. В таком случае скажите, на каком этапе фильтрации транзитных пакетов работает ваша программа (mangle prerouting -> nat prerouting -> mangle forward -> filter forward -> mangle postrouting -> nat postrouting)? Если уже после nat postrouting, то можно сначала в этой таблице сделать такое маскирование для иностранных пакетов (iptables -t nat -A POSTROUTING -p tcp -o eth1 -j SNAT --to-source 194.236.50.155:1024) и т.о. ваша программа могла бы на этом внешнем интрефейсе (eth1) на основе уже порта-источника 1024 шейпить трафик. Или снова мимо? Ссылка на сообщение Поделиться на других сайтах
N.Leiten 89 Опубліковано: 2006-01-14 09:34:14 Автор Share Опубліковано: 2006-01-14 09:34:14 Да, теперь работать будет - по порту источнику в этом случае можно просто указать порт источник и будет шейпиться вся информация с 1024 порта, а если параллельно указывать абобента - айпи-приемник, то шейпер будет работать на отдельного клиента ЗЫ. Вопрос ко всем, каким образом можно обратиться непосредственно к системе и узнать информацию об интерфейсах присутствующих в данный момент? Т.к. в последней версии просиходит обработка текстовой ифнормации из "/sbin/ip addr show", то достаточно нагружает процесор несколько таких процессов да и еще раз в две-три секунды. Чувствую, что следующая версия выйдет еще на перле в виде скрипта, а следующая за ней будет в виде исходника на С для компиляции Ссылка на сообщение Поделиться на других сайтах
N.Leiten 89 Опубліковано: 2006-01-14 09:42:23 Автор Share Опубліковано: 2006-01-14 09:42:23 И вопрос непосредственно ко всем. В виду того, что "тяжелый" режим работает кое-как, есть уже алгоритм который охладит процессор на 50% (в частности поиск интерфейсов динамических будет производится одним ведущим скриптом). И алгоритм отдельно для ППП соединений (используя ip-up ip-down). Так вот вопрос: стоит ли оставлять эту старую версию алгоритма в шейпере? Ссылка на сообщение Поделиться на других сайтах
Yuryus 0 Опубліковано: 2006-06-10 10:59:57 Share Опубліковано: 2006-06-10 10:59:57 И вопрос непосредственно ко всем. В виду того, что "тяжелый" режим работает кое-как, есть уже алгоритм который охладит процессор на 50% (в частности поиск интерфейсов динамических будет производится одним ведущим скриптом). И алгоритм отдельно для ППП соединений (используя ip-up ip-down). Так вот вопрос: стоит ли оставлять эту старую версию алгоритма в шейпере? Уж очень хотся поюзать... Заранее Респект. Очень интересная идея. Ссылка на сообщение Поделиться на других сайтах
VIPrules 0 Опубліковано: 2006-09-20 12:57:45 Share Опубліковано: 2006-09-20 12:57:45 Очень интересная и нужная тема. Только похоже, что она умерла.... Если нет, ткните носом. Ссылка на сообщение Поделиться на других сайтах
Pit 35 Опубліковано: 2006-09-20 13:02:54 Share Опубліковано: 2006-09-20 13:02:54 Интересно когда под freebsd выйдет. Ссылка на сообщение Поделиться на других сайтах
BlackSedan 0 Опубліковано: 2006-09-20 14:05:35 Share Опубліковано: 2006-09-20 14:05:35 Интересно когда под freebsd выйдет. pf + altq + perl ко всему приложить /dev/hands Ссылка на сообщение Поделиться на других сайтах
Pit 35 Опубліковано: 2006-09-20 16:14:36 Share Опубліковано: 2006-09-20 16:14:36 Вот вы бы взяли в все выше перечисленное и сваяли нам такой шейпер. Ссылка на сообщение Поделиться на других сайтах
BlackSedan 0 Опубліковано: 2006-09-20 17:52:44 Share Опубліковано: 2006-09-20 17:52:44 наработки есть конечно, другой вопрос в том а функционально ли будет это для других ? лично я не против поделится, но без поставленой задачи это просто набор скриптов... Ссылка на сообщение Поделиться на других сайтах
N.Leiten 89 Опубліковано: 2006-09-20 22:18:21 Автор Share Опубліковано: 2006-09-20 22:18:21 Извиняюсь, что долго не отвечал - завален работой по самое нехочу. Шейпер однозначно будет переписан. И переписан по всем швам. Уже сейчас нужна поддержка управления на основе списков и общих классов. Как упоминалось раньше - управление для динамических интерфейсов используя ip-up ip-down. Просьба ко всем, пишите сюда что желаете увидеть в следующей версии. Шейпер обещаю написать без глюков и полностью оттестировать, естественно скрипты не прячу и всё всем будет доступно. Ссылка на сообщение Поделиться на других сайтах
Pit 35 Опубліковано: 2006-09-20 22:48:59 Share Опубліковано: 2006-09-20 22:48:59 ALTQ + FreeBSD включит поддержку инвертирования на хост сеть например !10.10.10.10 !10.10.100.0/24 не шейпить хост и сеть Ссылка на сообщение Поделиться на других сайтах
VIPrules 0 Опубліковано: 2006-09-27 13:14:34 Share Опубліковано: 2006-09-27 13:14:34 2 N.Leiten Два вопроса: 1. Пока только расчехляю шейпер, и пока не знаю, может ли он так делать. Есть канал на 256Кб/с. Ну допустим я создал класс и ограничил всех юзеров, до половины всего канала - 128Кб/с. И в случае, если их становится слишком много, и все чего-нить качают, то скорость (по идее) должна равномерно падать у всех юзеров. А если юзер или группа юзеров в сумме не превышают скорость канала (в моем случае это вряд ли возможно, но все же), то даст ли шейпер свободную часть канала в использование, или она так и будет простаивать? Если этого нет, то хотелось бы видеть эту возможность в новой версии. Желательно, чтобы это было опционально. 2. Где-то тут на форуме читал, что новый релиз на С выйдет в сентябре. Так когда же (хотя бы бриблизительно) ждать? Ссылка на сообщение Поделиться на других сайтах
Maikl 0 Опубліковано: 2006-09-27 18:55:21 Share Опубліковано: 2006-09-27 18:55:21 Ждем, тема интересная и нужная... Ссылка на сообщение Поделиться на других сайтах
N.Leiten 89 Опубліковано: 2006-09-27 18:56:58 Автор Share Опубліковано: 2006-09-27 18:56:58 Да, действительно были планы до сентября закончить, учитывая, что переделывать начал в июне, на том и остановился, т.к. был завален работой и мыслью об отдыхе. Отдохнуть не дали, вот теперь пашу дальше. О приблизительных сроках выхода говорить не буду, т.к. и сейчас завален работой, и в соседнем треде обещался сервер для чата закончить. Сам шейпер переписать - около недели времени. Ориентировочно ним буду заниматься сразу по завершению работы над чатом Насчет возможности использования "гуляющего" канала - подумать можно, но не факт что получится легкой кровью это реализовать. В общем буду думать - безвыходных ситуаций не бывает. Ну и конечно, все возможности будут опциональными. Вот пока не начал писать жду новых предложений, для того, чтоб упарвление шейпером сделать простым и понятным, а то первая версия немного с толку сбивает Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас