forum.bitel.ru http://forum.bitel.ru/ |
|
[feature request] Фильтр для netflow http://forum.bitel.ru/viewtopic.php?f=44&t=7141 |
Страница 1 из 2 |
Автор: | snark [ 22 авг 2012, 03:20 ] |
Заголовок сообщения: | [feature request] Фильтр для netflow |
Давным-давно vdd писал(а): фильтр на входе в нетфлоу-коллектор (ну или на выходе в сброс на диск) позволил бы нам не хранить на винтах кучу мусорного флоу Мне видится это как возможность указать категорию IP ресурсов a-la flow.agent.ip.resource.categoryId, для которых надо собирать netflow и возможность указания направления, для которого надо собирать, т.е. некий flow.direction который может принмать вид: 0 - входящий и исходящий трафик 1 - только входящий трафик 2 - только исходящий трафик Так каждый может выбрать то, что ему нужно собирать в зависимости от учитываемого направления трафика + в детализации будет только нужный трафик. Если будет, то когда? Если не будет, то почему? P.S. Говоря о нагрузке вспоминаем закон Мура. |
Автор: | Amir [ 22 авг 2012, 18:02 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
С размером логов может помочь. С производительностью вряд ли, т.к. в одном пакете до 30 записей и нужно будет проверить все, входит ли один из адресов одной из записи в один из ресурсов одной категории, чтобы узнать нужно ли записывать пакет. Только если ненужных пакетов не меньше чем нужных. |
Автор: | snark [ 22 авг 2012, 21:49 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Коллектор уже сейчас может просматривать все записи, чтобы определить что и как посчитать, и остается только отдавать "складывальщику" пакетов только нужные, т.е. те, которые надо сохранить. |
Автор: | Amir [ 24 окт 2012, 16:08 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Выложили обновление. В inet-accounting.xml, в параметрах flowListener Код: <param name="ipResourceFilter" value="1" /> - фильтр по ресурсам без учета периодов ресурсов Либо глобально, в конфигурации модуля<param name="ipResourceFilter" value="2" /> - фильтр по ресурсам с учетом периодов ресурсов Цитата: flow.ipResourceFilter=0|1|2 Если в пакете будет хоть одна запись с существующим IP-адресом, пакет будет сохранен в лог полностью.
|
Автор: | nik247 [ 06 ноя 2012, 16:18 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
А как быть в том случае, если используется динамика с пула на НАСе? Этих сетей в IP ресурсах нет. Может есть смысл добавить на проверку активных IP (в том числе выданные с НАСа)? У меня сейчас с хранением этой детализацией полная катастрофа - 4 узла по 3-5Гиг за сутки - итого 12-20 Гиг в день по системе. После перехода с UTM5 объем сохраняемой детализации вырос в 2 раза при том же трафике ...... Только не отправляйте меня назад на UTM5 .... ![]() |
Автор: | Amir [ 06 ноя 2012, 16:25 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Cжатие включено? Код: <!-- Сжимать flow логи: 0 - не сжимать, 1 - zlib -->
<param name="datalog.flow.compression.type" value="1" /> |
Автор: | Amir [ 06 ноя 2012, 16:35 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Цитата: Этих сетей в IP ресурсах нет. Можно же добавить ![]() Можно и третий вариант сделать - писать в лог только то, к чему сейчас есть привязка (т.е. нашелся подходящий сервис(сессия) модуля - пишем в лог, иначе - не пишем). Но тогда, если ошиблись и что-то не добавили или не правильно настроили - уже не переобработать. |
Автор: | Amir [ 06 ноя 2012, 16:49 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Также можно попробовать (по умолчанию 1 - best speed; 7,8,9 - не рекомендуется вовсе): Код: <param name="datalog.flow.compression.level" value="5" />
|
Автор: | nik247 [ 06 ноя 2012, 16:56 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
1) сжатие включено изначально.... иначе бы давно умерли..... Amir писал(а): Также можно попробовать (по умолчанию 1 - best speed; 7,8,9 - не рекомендуется вовсе): Код: <param name="datalog.flow.compression.level" value="5" /> Добавил этот параметр - у меня его вообще не было... 2) сети не добавляли в ресурсы так как на момент перехода менялись сети, а менять их в ресурсах BG нереально... Простая задача - есть IP ресурс - 10 IP - надо просто его расширить до 20.... и BG уже не дает... делаю через базу с рестартом. Или указан ресурс 250 IP (завели все при переводе), а используется 10 с самого начала - хочу уменьшть - тоже не дает - тоже через базу с рестартом. Поэтому стали выдавать динамикой с пула НАСа - очень гибко, покрайней мере пока. И в отличии от UTM5 - BG это умеет делать великолепно. Amir писал(а): Можно и третий вариант сделать - писать в лог только то, к чему сейчас есть привязка (т.е. нашелся подходящий сервис(сессия) модуля - пишем в лог, иначе - не пишем). Но тогда, если ошиблись и что-то не добавили или не правильно настроили - уже не переобработать. А вот этот вариант очень хороший вариант ... вся ответственность на админе по настройке, но зато будет писатся только то ЧТО НУЖНО... И еще пару пожеланий: 1) Подсистема аудита для Inet, как сделано для IPN. 2) В клиенте, при сохранение детализации добавить в диапазоне кроме дат еще и время, так как лопатить по 3-5 Гиг не весело. |
Автор: | snark [ 06 ноя 2012, 17:39 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Amir писал(а): Если в пакете будет хоть одна запись с существующим IP-адресом, пакет будет сохранен в лог полностью. В ресурсах сеть, из всей сети в инете 1 адрес, но сеть при этом сканят -> получаем сохранение записей для всей сети. Amir писал(а): писать в лог только то, к чему сейчас есть привязка (т.е. нашелся подходящий сервис(сессия) модуля - пишем в лог, иначе - не пишем) Это самое правильное, IMHO. Код: Есть "сессия" = есть адрес = пишем детальку. Нет "сессии" = нет адреса = ничего не пишем. При таком раскладе объемы netflow резко упадут, ящитаю. |
Автор: | nik247 [ 21 ноя 2012, 18:09 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Amir писал(а): Также можно попробовать (по умолчанию 1 - best speed; 7,8,9 - не рекомендуется вовсе): Код: <param name="datalog.flow.compression.level" value"5" /> Установка данного параметра дала экономию около 10%, хоть что-то, но все равно логов немерянно.... Кстати это какой-то секретный параметр, нигде не нашел его описание. Может добавите в доку? А как насчет? Amir писал(а): Можно и третий вариант сделать - писать в лог только то, к чему сейчас есть привязка (т.е. нашелся подходящий сервис(сессия) модуля - пишем в лог, иначе - не пишем). Идея очень хорошая.... особенно при раздаче IP c пулов НАСов. И еще пару пожеланий: 1) Подсистема аудита для Inet, как сделано для IPN. 2) В клиенте, при сохранение детализации добавить в диапазоне кроме дат еще и время, так как лопатить по 3-5 Гиг не весело (делает 10-15 минут, а если 2 запустят.... то ....) |
Автор: | nik247 [ 10 дек 2012, 17:06 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
И снова UP |
Автор: | nik247 [ 18 дек 2012, 17:09 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Так как насчет этого Вашего предложения? Очень нужно. Amir писал(а): Можно и третий вариант сделать - писать в лог только то, к чему сейчас есть привязка (т.е. нашелся подходящий сервис(сессия) модуля - пишем в лог, иначе - не пишем).
|
Автор: | Amir [ 18 дек 2012, 17:59 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Застряло на какое-то время на стадии подсистемы аудита, потом из-за небольшого форс-мажора ветка пропала... Попробуем снова сделать скоро, только уже отдельно, сначала без аудита. |
Автор: | nik247 [ 18 дек 2012, 19:44 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Amir писал(а): Застряло на какое-то время на стадии подсистемы аудита, потом из-за небольшого форс-мажора ветка пропала... Попробуем снова сделать скоро, только уже отдельно, сначала без аудита. Спасибо, что не забываете, но аудит точно может подождать, а вот фильтр в первую очередь очень нужен. |
Автор: | nik247 [ 09 янв 2013, 19:40 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Смотрю - хотелки делаются вовсю....спасибо. А как насчет этого Вашего предложения? Amir писал(а): Можно и третий вариант сделать - писать в лог только то, к чему сейчас есть привязка (т.е. нашелся подходящий сервис(сессия) модуля - пишем в лог, иначе - не пишем).
|
Автор: | Amir [ 16 янв 2013, 19:11 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Выложили, не забудьте сделать бекап старых библиотек (и динамических классов). Параметры ipResourceFilter (в inet-accounting.xml) и flow.ipResourceFilter (в конфиге) переименованы в flowFilter и flow.filter соответственно (старое название должно работать). 0 - нет фильтра, 1 - фильтр по IP-ресурсам (не обрабатывать, если не нашелся ресурс), 2 - фильтр по IP-ресурсам с учетом периода ресурсов (не обрабатывать, если не нашелся ресурс), 3 - фильтр по IP-ресурсам с обработкой, если обработка прошла (один из IP принадлежит какой-либо сессии), то все равно записываем в лог-файл, 4 - фильтр по IP-ресурсам с учетом периода ресурсов с обработкой, если обработка прошла, то все равно записываем в лог-файл, 5 - фильтр по обработке - если обработка прошла, записываем в лог-файл. |
Автор: | nik247 [ 16 янв 2013, 21:45 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Amir писал(а): Выложили, не забудьте сделать бекап старых библиотек (и динамических классов). Параметры ipResourceFilter (в inet-accounting.xml) и flow.ipResourceFilter (в конфиге) переименованы в flowFilter и flow.filter соответственно (старое название должно работать). 0 - нет фильтра, 1 - фильтр по IP-ресурсам (не обрабатывать, если не нашелся ресурс), 2 - фильтр по IP-ресурсам с учетом периода ресурсов (не обрабатывать, если не нашелся ресурс), 3 - фильтр по IP-ресурсам с обработкой, если обработка прошла (один из IP принадлежит какой-либо сессии), то все равно записываем в лог-файл, 4 - фильтр по IP-ресурсам с учетом периода ресурсов с обработкой, если обработка прошла, то все равно записываем в лог-файл, 5 - фильтр по обработке - если обработка прошла, записываем в лог-файл. Спасибо большое. Буду проверять... Я так понял для динамических IP c пула НАСа надо использовать flow.filter=5? Сети с которых выдаются IP c НАСов в IP-ресурсы не заведены. |
Автор: | Amir [ 16 янв 2013, 22:01 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Да, либо завести ресурс с таким же диапазоном. |
Автор: | nik247 [ 18 янв 2013, 19:42 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Пробовал настроить фильтры - ничего не работает. Исходные данные: -есть сеть 1.1.1.0/24, которая разбита на подсети: -- подсеть A: 1.1.1.0/29 (1.1.1.1-1.1.1.31) - стические IP (в BG не прописаны) -- подсеть В: 1.1.1.33-1.1.1.62 - стические IP для клиентов (заведен в BG как IP ресурс) -- подсеть С: 1.1.1.63-1.1.1.254 - пул на НАСе для видачи динамики (в BG не прописаны) inet-accounting.xml: Код: <!-- Размер блока данных в файле лога, также размер буфера на поток слушателя --> <param name="datalog.flow.chunk.size" value="524288" /> <!-- Сжимать flow логи: 0 - не сжимать, 1 - zlib --> <param name="datalog.flow.compression.type" value="1" /> <!-- Уровень сжатия flow логов: по умолчанию 1 - best speed; 7,8,9 - не рекомендуется вовсе --> <param name="datalog.flow.compression.level" value="5" /> . . <bean name="flowListener" class="ru.bitel.bgbilling.modules.inet.collector.InetFlowListener"> <constructor factoryMethod="newInstance"> <!-- Тип слушателя, netflow, netflow9 или sflow --> <param name="type" value="netflow"/> <!-- Хост (интерфейс), на котором будет открыт сокет. Если пусто - на всех --> <param name="host" value=""/> . . <!-- Фильтр по IP ресурсам --> <param name="flowFilter" value="5" /> </constructor> Кофигурации модуля: Код: # Фильтр Netflow #0 - нет фильтра, #1 - фильтр по IP-ресурсам (не обрабатывать, если не нашелся ресурс), #2 - фильтр по IP-ресурсам с учетом периода ресурсов (не обрабатывать, если не нашелся ресурс), #3 - фильтр по IP-ресурсам с обработкой, если обработка прошла (один из IP принадлежит какой-либо сессии), то все равно записываем в лог-файл, #4 - фильтр по IP-ресурсам с учетом периода ресурсов с обработкой, если обработка прошла, то все равно записываем в лог-файл, #5 - фильтр по обработке - если обработка прошла, записываем в лог-файл. flow.filter=5 По моему пониманию должно было работать так: Код: flow.filter=0 - пишется все (фильтр отключен) flow.filter=1 - пишется только подсеть В: 1.1.1.33-1.1.1.62 flow.filter=2 - пишется только подсеть В: 1.1.1.33-1.1.1.62 с учетом периода ресурса flow.filter=3 - пишется только подсеть В: 1.1.1.33-1.1.1.62, если есть активная сессия. flow.filter=4 - пишется только подсеть В: 1.1.1.33-1.1.1.62, если есть активная сессия и с учетом периода ресурса flow.filter=5 - пишется, если если есть активная сессия (подсеть В: 1.1.1.33-1.1.1.62 + подсеть С: 1.1.1.63-1.1.1.254) Все проверялось через "accounting.sh flowExport" В принципе никакие варианты фильтра (1-5) не отрабатывают - всегда пишется netflow для всей сети 1.1.1.0/24. Может не там и не так прописываю? Пробовал и только в файле конфигурации и только в настройке модуля и вместе - ничего. |
Автор: | Amir [ 18 янв 2013, 20:49 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Как я писал ранее, в лог пишется весь пакет (до 30 записей flow) - сейчас невозможно записать flow отдельно. Т.е. если хотя бы одна flow попадает под запись - пишется весь пакет, все записи из него - может быть дело в этом? |
Автор: | nik247 [ 18 янв 2013, 21:31 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Amir писал(а): Как я писал ранее, в лог пишется весь пакет (до 30 записей flow) - сейчас невозможно записать flow отдельно. Т.е. если хотя бы одна flow попадает под запись - пишется весь пакет, все записи из него - может быть дело в этом? Я даже не знаю.... что ответить ... возможно и так. Что тогда делать? Но смысл тогда этого фильтра? Я уже на одном узле в разрыв поставил flow-fanout с фильтром на нужные сети - объем уменьшился на 50%. Но это костыль - лишнее слабое звено и его не должно быть в работе. Я думал, фильтр будет отфильтровывать и записывать только то, что попало под его работу. |
Автор: | Amir [ 19 янв 2013, 00:39 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Я писал сразу про это, что часть все равно будет попадать... В середине версии ломать запись/чтение логов вряд ли из-за этого будем. А можете попробовать взять большой лог файл, который сохранялся еще без сжатия и сжать его zlib сжатием 6 и lzma сжатием 6 и посмотреть, большая ли разница в размере (и на глаз - в скорости сжатия)? И сказать размер файла и за какой промежуток времени он. |
Автор: | Amir [ 19 янв 2013, 00:58 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
А откуда идут левые flow записи, напомните? Т.е. если 50% экономии, то все-таки должен быть хороший процент пакетов, в которых вообще нет нужных записей. Но это, конечно, и от алгоритма отправки netflow зависит. |
Автор: | nik247 [ 19 янв 2013, 01:04 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Amir писал(а): Я писал сразу про это, что часть все равно будет попадать... В середине версии ломать запись/чтение логов вряд ли из-за этого будем. А можете попробовать взять большой лог файл, который сохранялся еще без сжатия и сжать его zlib сжатием 6 и lzma сжатием 6 и посмотреть, большая ли разница в размере (и на глаз - в скорости сжатия)? И сказать размер файла и за какой промежуток времени он. Поищу несжатые - отпишусь... Сжатие давно установил - надо еще вспомнить когда. |
Автор: | nik247 [ 19 янв 2013, 01:19 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Amir писал(а): А откуда идут левые flow записи, напомните? Т.е. если 50% экономии, то все-таки должен быть хороший процент пакетов, в которых вообще нет нужных записей. Но это, конечно, и от алгоритма отправки netflow зависит. Есть трафика с/на серверы, транзитный - его мне не нужно хранить. Мне нужно хранить только трафик конечных клиентов, которым предоставляем Интернет, для разборок в спец.случаях. Ну и наверное еще точно зависит от алгоритма отправки netflow. Пока экономии вообще не получил ... тяжело сказать да или нет. Трафик плавающий. Сейчас в день получается около 20ГБ. В течении пару месяцев еще 2 узла переведу на BG и еще добавится около 15 ГБ в день (2 канала общей емкостью около 1Гб/с) - пошел запасаться HDD. |
Автор: | Dog [ 23 янв 2013, 02:01 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Цитата: 1059 16.01.2013 17:39:57 ДОБАВЛЕНО Inet: Дополнительные режимы (3-5) фильтрации flow пакетов перед сохранением. Новое название параметра flow.ipResourceFilter - flow.filter. а раскройте тему вопроса, что за 3-5? http://bgbilling.ru/v5.2/doc/ch18s13s05.html тут описана только старый параметр. |
Автор: | nik247 [ 23 янв 2013, 02:13 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Dog писал(а): Цитата: 1059 16.01.2013 17:39:57 ДОБАВЛЕНО Inet: Дополнительные режимы (3-5) фильтрации flow пакетов перед сохранением. Новое название параметра flow.ipResourceFilter - flow.filter. а раскройте тему вопроса, что за 3-5? http://bgbilling.ru/v5.2/doc/ch18s13s05.html тут описана только старый параметр. Посмотрите выше - там же все расписано. |
Автор: | nik247 [ 17 сен 2013, 23:29 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
Есть ли какие-то изменения/задумки по фильтру netflow в версии 6.0/6.1? |
Автор: | snark [ 14 фев 2014, 18:18 ] |
Заголовок сообщения: | Re: [feature request] Фильтр для netflow |
По несчастью ковыряясь в UTM обнаружил там одну замечательную штуку, а именно - галочку Не сохранять первичную информацию: ![]() netup.ru писал(а): Не сохранять первичную информацию – если отмечено, то детальная информация по трафику данного класса не будет сохраняться. Актуально для трафика, стоимость которого равна нулю или детализация по которому не может понадобиться (например, локальный трафик). Позволяет уменьшить размер файлов с первичной информацией. IMHO функционал, который позволял бы не сохранять определенные netflow пакеты был бы очень удачным дополнением к inet 6.1. |
Страница 1 из 2 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |