URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 62530
[ Назад ]

Исходное сообщение
"flowscan+rrd"

Отправлено Igoryan , 08-Дек-05 13:55 
Значит так прочитал я статью о визуализации netflow.
Так вот мне надо строит два графика по отдельности , типа украина  и мир отдельно , для каждого клиента.Подскажите как это зделать.

Содержание

Сообщения в этом обсуждении
"flowscan+rrd"
Отправлено Den , 08-Дек-05 15:32 
>Значит так прочитал я статью о визуализации netflow.
>Так вот мне надо строит два графика по отдельности , типа украина
> и мир отдельно , для каждого клиента.Подскажите как это зделать.
>

посмотри http://netacad.kiev.ua/flowc/tc_diagram.png

В исходниках можо посмотреть как делаются запросы к бд для выборки.
Я например всю статистику от flow-tools ложу в postgres, также создаю таблицу где хранятся мне нужные сети по зонам, например, ua-ix - 1 зона, local-net - 2, peer - 3 и тд. А далее делаю запрос: выбрать sum() of bytes where src_addr_clienta = такой-то and dst_addr in (select нужную зону).

Проверку на вхождение ип в нужную зону можно сделать приблезительно так:

CREATE TABLE zone {
id serial primary key,
nets cidr[] not null
}

insert into zone(nets) values('{192.168.1.0/24,172.16.10.0/24,192.168.45.0/24'); -- peer1
insert into zone(nets) values('172.16.130.0/24'); -- peer2

SELECT * from zone where '192.168.1.1' << ANY(nets);

Если это использовать как подзапрос то можно делить траффик по направлениям


"flowscan+rrd"
Отправлено Igoryan , 08-Дек-05 18:24 
>>Значит так прочитал я статью о визуализации netflow.
>>Так вот мне надо строит два графика по отдельности , типа украина
>> и мир отдельно , для каждого клиента.Подскажите как это зделать.
>>
>
>посмотри http://netacad.kiev.ua/flowc/tc_diagram.png
>
>В исходниках можо посмотреть как делаются запросы к бд для выборки.
>Я например всю статистику от flow-tools ложу в postgres, также создаю таблицу
>где хранятся мне нужные сети по зонам, например, ua-ix - 1
>зона, local-net - 2, peer - 3 и тд. А далее
>делаю запрос: выбрать sum() of bytes where src_addr_clienta = такой-то and
>dst_addr in (select нужную зону).
>
>Проверку на вхождение ип в нужную зону можно сделать приблезительно так:
>
>CREATE TABLE zone {
>id serial primary key,
>nets cidr[] not null
>}
>
>insert into zone(nets) values('{192.168.1.0/24,172.16.10.0/24,192.168.45.0/24'); -- peer1
>insert into zone(nets) values('172.16.130.0/24'); -- peer2
>
>SELECT * from zone where '192.168.1.1' << ANY(nets);
>
>Если это использовать как подзапрос то можно делить траффик по направлениям


А можеш выслать мне пару примеров как делать базы rrd из данных которые хранятся в posgrese???
А хотелось бы это на лету обрабатывать....