Страница 1 из 1

Разница в подсчете Squid и trafd для порта 3128

Добавлено: 2008-02-13 13:30:26
vasilisc
сервер:
FreeBSD 6.2-RELEASE FreeBSD 6.2-RELEASE
squid-2.6.3 HTTP Caching Proxy
mysql-server-5.0.27 Multithreaded SQL database (server)
trafd-3.0.1_2 The BPF Traffic Collector

Хотелось бы выслушать ваше мнение по такому вопросу.
Squid2Mysql билинговая система, которая хранит в базе данных MySQL логи Squid. Побродил по инету через прокси-сервер и подсчитал в БД squid2mysql количество скаченных байт получилось
squid 837404 байт.
А в БД trafd у меня получилось так
sum(bytes) 962334 байт - расхождение +13% от сквида
sum(all_bytes) 1073550 байт - расхождение +22% от сквида
Я и не жду попадания в байт в байт, но хотелось бы знать ваши мысли по этому поводу.
Сервер пока не в строю, так как он еще в процессе наладки, поэтому у меня нету статистики провайдера, чтобы понять кому больше верить. И я знаю что сквид считает "чистые байты", без служебной инфы, но такое расхождение нормально ли оно и как обстоят у вас дела с этим?

Заранее спасибо.
Алексеенко Василий ака vasilisc

Re: Разница в подсчете Squid и trafd для порта 3128

Добавлено: 2008-02-13 13:34:09
princeps
сквид, как я понимаю, считает только тот трафик, который идет через него, то есть почту по pop3, скорее всего не считатет. Плюс у него кэш, эффективность которого в среднем 10-15%, из-за этого еще может расходиться.

Re: Разница в подсчете Squid и trafd для порта 3128

Добавлено: 2008-02-13 13:35:17
princeps
princeps писал(а):сквид, как я понимаю, считает только тот трафик, который идет через него, то есть почту по pop3, скорее всего не считатет.
А, извини, про порт сначала не заметил

Re: Разница в подсчете Squid и trafd для порта 3128

Добавлено: 2008-02-13 13:44:14
Alex Keda
а оно хиты тоже считает?
(попадения в кэш)

Re: Разница в подсчете Squid и trafd для порта 3128

Добавлено: 2008-02-13 14:11:51
vasilisc
чтобы исключить влияние кэша зашел на сайт на котором точно не был, на сайт http://www.microsoft.com
результаты таковы
squid 417133 байт
trafd bytes=266127
all_bytes=284535

цифры разнятся да еще и знак разницы поменялся
кашмар! =)
буду думать и с бубном шаманить.
просто раньше в конторах не требовалось подсчет почты (110 и 25 порт - ради которых и вышел на сайт лиссяры и стал трафд крутить)

вот такие пироги значит испеклись
буду признателен вашим идеям.

Re: Разница в подсчете Squid и trafd для порта 3128

Добавлено: 2008-02-13 14:29:08
vasilisc
в 14:21 сделал маленький тест
утянул со своего сайтика страницу, размер которой знаю, посчитал к ней CSS+3 маленькие картинки вышло 19,480 байт сквидом

trafd bytes = 133087 байт
all_bytes = 147631 байт

видно что что-то не так и причем серьезно. буду теперь смотреть не в базе, а в файлах трафд чтобы узнать на каком этапе ошибка происходит.

Re: Разница в подсчете Squid и trafd для порта 3128

Добавлено: 2008-02-13 14:30:10
Alex Keda
зайди куда не ходил и зацепи файл метров 10 =)

Re: Разница в подсчете Squid и trafd для порта 3128

Добавлено: 2008-02-13 14:52:19
vasilisc
это логика скрипта
--------------
# Сохраняем статистику по текущему интерфейсу
/usr/local/bin/trafsave ${iface}
# Преобразуем логи из двоичного в текстовый формат. Сохраняются они в
# папке /tmp в виде файлов summary.* c расширением по имени интерфейса
/usr/local/bin/traflog -i ${iface} -a -n -s > /tmp/summary.${iface} 2>/dev/null
# Очищаем файл с логами в двоичном формате
cat /dev/null > /usr/local/var/trafd/trafd.${iface}
# Дозаписываем логи в текстовый файл (пусть лежат на всякий случай...)
cat /tmp/summary.${iface} >> ${NewDir}/summary.${iface}
# Далее - загоняем траффик в БД
-------

Из того что я читал о трафд выяснил, что он счетчики держит в оперативной памяти, которые и нужно сохранять с помощью trafsave
Уважаемый Лиссяра а на каком этапе происходит обнуление этих счетчиков в памяти, после сохранения в файлах а потом в БД ??? ведь должно же происходить это обнуление ......

Re: Разница в подсчете Squid и trafd для порта 3128

Добавлено: 2008-02-13 14:53:58
Alex Keda
вкуривай, вкуривай.
если бы они не обнулялись - трафф бы рос в геометрической прогрессии =))

Re: Разница в подсчете Squid и trafd для порта 3128

Добавлено: 2008-02-14 10:33:30
vasilisc
я привел скрипт Лиссяры к следующему виду и стали совпадать счетчики Squid и Trafd

Код: Выделить всё

# Перекидываем траффик из временной таблицы в окончательную
${sql_preffix} --execute="INSERT INTO \`${iface}_${year}\`\
(\`date\`, \`time\`, \`from_IP\`, \`port_from_IP\`, \`to_IP\`,\
\`port_to_IP\`, \`protocol\`, \`bytes\`, \`all_bytes\`) \
SELECT \`date\`, \`time\`, \`from_IP\`, \`port_from_IP\`,\
\`to_IP\`, \`port_to_IP\`, \`protocol\`, \`bytes\`,\
\`all_bytes\` FROM \
\`traffic_tmp\`"
из оригинального скрипта я убрал групировку и просто из временной таблицы копирую в основную.
провел тест побегав по сайтам

Код: Выделить всё

squid  1.082.968 байт
trafd bytes 1.430.928 байт
trafd all_bytes 1.616.976 байт
возможно кому то это покажется полезным

хотелось бы услышать ответ на вопрос:
как соотносятся ваши показания Одной Считающей Системы (trafd/ipaccd/netams/ .....) и c Другой (squid)
многие же юзают кальмара хоть в обычном хоть в прозрачном прокси....
прошу высказатся =)

Re: Разница в подсчете Squid и trafd для порта 3128

Добавлено: 2008-02-14 11:03:20
kmb
две недели игрался с трафд и потом забил, нормально оно у меня не считало, выборку во времени сделать не получалось, вообщем в мусор это г...

Re: Разница в подсчете Squid и trafd для порта 3128

Добавлено: 2008-02-14 12:40:16
Alex Keda
И какого размера будет таблица на выходе? =)
думаю, чё-то не так у тя в выборках, группировать неправильно он не может.
иначе бы такая БД вообще никому не была нужна =)