Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Ответить
vista
Сообщения: 10
Зарегистрирован: Пт фев 04, 2011 7:44 am

Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Сообщение vista »

Имею следующую ситуацию: Abills+RadiusServer+MPD5+NetFrow. Во время запуска вся система работает отлично: авторизация, подсчёт и остальные сервисы.
Начинаешь прогонять файл через NAS сервер - всё ок, посчиталось ровно столько, сколько передал. Далее устанавливаешь NAS сервер на "мясо", сидит на нём порядка 200-300 сессий, снова прогоняешь файл: считает правильно...
Проходит 1-2 недели uptime, прогоняешь файл: считает не весь. При том проанализировав ситуацию было выяснено, что при передаче ниже 9 Мбит/с всё посчитается 100%, но если передавать с более высокой скоростью, начинаются потери. При том потери довольно высокие, порой до 95%.
Было перепроверено все: логика подсчёта трафика, логика подсчёта трафика при загруженном сервере биллинга с большими пачками netflow трафика, пересмотрена не однократно конфигурация FreeRadius, MPD5, но всё в бестолку, потери всё-равно есть. Даже от бессилия, чтоб уж наверняка, была написана своя система подсчёта трафика, но ситуация не изменилась.
Изначально считали что проблема в шейпере, но подняли NAS сервер вообще без шейпера, ситуация не изменилась.
Стоят самые последние версии MPD5, netflow, freeradius, постоянно стараемся следить за обновлениями, ибо есть подозрение что всёже ошибка там.
Причём направление трафика не играет роли: либо передача файла идёт внутри НАСа, либо между НАСами.
По поводу железа: тест проводился на самых различных сетевых картах: гигабитные, 100Мбитные, с 1 интерфейсом, с 2-мя интерфейсами в 1 сетевой карте(Intel). Процессоры в основном используем 4-х ядерные.

Шаблоном *Название* зашифрованы адреса/пароли
Конфигурация mpd5:

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

startup:
	set global enable tcp-wrapper
	set console self *IP_NAS* 5005
	set user admin *Пароль* admin
	set console open
	#set web self 0.0.0.0 5006
	#set web open
	#Netflow options
	set netflow peer 127.0.0.1 9995
	set netflow self 127.0.0.1 9990
	set netflow timeouts 5 15
	set netflow hook 9000
	set ippool add pool1 *От* *До*

default:
	load pptp_server
	load pppoe_server
	load pppoe_server2
	load pppoe_server3

pptp_server:
	create bundle template B
	set iface enable tcpmssfix
	set iface disable proxy-arp
	set iface idle 3600
	set iface enable netflow-in netflow-out
	set iface up-script "/usr/abills/libexec/linkupdown mpd up"
	set iface down-script "/usr/abills/libexec/linkupdown mpd down"
	set ipcp yes vjcomp
	set iface enable netflow-once
	set ipcp ranges *IP_NAS*/32 ippool pool1
	set ipcp dns *От* *До*
	create link template L pptp
	set link action bundle B
	set link enable report-mac
	set link enable peer-as-calling
	set link enable multilink
	set link yes acfcomp protocomp
	set link no pap chap
	set link enable chap
	set link keep-alive 10 60
	set link mtu 1492
	set pptp self 0.0.0.0
	set pptp disable windowing
	set link enable incoming
	load radius

pppoe_server:
	create bundle template E
	set iface idle 3600
	set iface enable tcpmssfix
	set iface disable proxy-arp
	set ipcp no vjcomp
	set iface up-script "/usr/abills/libexec/linkupdown mpd up"
	set iface down-script "/usr/abills/libexec/linkupdown mpd down"
	set iface enable netflow-in
	set iface enable netflow-out
	set iface enable netflow-once
	set ipcp ranges *IP_NAS*/32 ippool pool1
	set ipcp dns *От* *До*
	create link template G pppoe
	set link action bundle E
	set pppoe acname "*Name*"
	set pppoe iface em0
	set pppoe service "*Name*"
	load server_common

pppoe_server2:
	create bundle template R
	set iface idle 3600
	set iface enable tcpmssfix
	set iface disable proxy-arp
	set ipcp no vjcomp
	set iface up-script "/usr/abills/libexec/linkupdown mpd up"
	set iface down-script "/usr/abills/libexec/linkupdown mpd down"
	set iface enable netflow-in
	set iface enable netflow-out
	set iface enable netflow-once
	set ipcp ranges *IP_NAS*/32 ippool pool1
	set ipcp dns *От* *До*
	create link template H pppoe
	set link action bundle R
	set pppoe acname "*NAME*"
	set pppoe iface em0
	set pppoe service "*NAME*"
	load server_common

pppoe_server3:
	create bundle template W
	set iface idle 3600
	set iface enable tcpmssfix
	set iface disable proxy-arp
	set ipcp no vjcomp
	set iface up-script "/usr/abills/libexec/linkupdown mpd up"
	set iface down-script "/usr/abills/libexec/linkupdown mpd down"
	set iface enable netflow-in
	set iface enable netflow-out
	set iface enable netflow-once
	set ipcp ranges *IP_NAS*/32 ippool pool1
	set ipcp dns *От* *До*
	create link template J pppoe
	set link action bundle W
	set pppoe acname "*NAME"
	set pppoe iface em0
	set pppoe service "*"
	load server_common

server_common:
	set link no pap eap
	set link yes chap-md5
	set link keep-alive 30 120
	set link enable incoming
	set link no acfcomp protocomp
	load radius

radius:
	set radius server *IP_RADIUS* *PASS* 1812 1813
	set radius retries 3
	set radius timeout 10
	set auth acct-update 300
	set auth enable radius-auth
	set auth enable radius-acct
	set auth disable internal
Если потребуется дополнительная конфигурация какого либо сервиса, она будет предоставлена. Спасибо за помощь!

~AsmodeuS~
Site Admin
Сообщения: 5746
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Сообщение ~AsmodeuS~ »

вы учитываете трафик от начал сесси иди стоп пакета или как ?

трафик учитвается по одному тунелю или по всем ?

vista
Сообщения: 10
Зарегистрирован: Пт фев 04, 2011 7:44 am

Re: Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Сообщение vista »

~AsmodeuS~ писал(а):вы учитываете трафик от начал сесси иди стоп пакета или как ?

трафик учитвается по одному тунелю или по всем ?
Подскажите пожалуйста как это проверить.

~AsmodeuS~
Site Admin
Сообщения: 5746
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Сообщение ~AsmodeuS~ »

вісообщите как віпроверяете ?

если у Вас подсчёт ведётся внешним обработчиком то некоторые расхождения возможны но не больше 1-2%

vista
Сообщения: 10
Зарегистрирован: Пт фев 04, 2011 7:44 am

Re: Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Сообщение vista »

~AsmodeuS~ писал(а):вісообщите как віпроверяете ?

если у Вас подсчёт ведётся внешним обработчиком то некоторые расхождения возможны но не больше 1-2%
Проверяем очень просто: пропускаем некое количество трафика через NAS сервер после его включения, ждём пока на биллинге отобразится подсчитанный трафик, видим что весь трафик подсчитался полностью.
Далее, через неделю, проводим этот же тест с тем же количеством трафика и видим что трафик считается только частично.
Далее можем перезагрузить NAS сервер, снова провести этот трафик, и видим что трафик подсчитался на этот раз полностью.
Т.е. проблема в том, что после высокого аптайма сервера, трафик начинает считаться не полностью. Вот с чём эта проблема может быть связана, мы уже сломали мозг :)

~AsmodeuS~
Site Admin
Сообщения: 5746
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Сообщение ~AsmodeuS~ »

traffic2sql debug

режиме посмотрите

vista
Сообщения: 10
Зарегистрирован: Пт фев 04, 2011 7:44 am

Re: Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Сообщение vista »

Дело в том, что мы написали даже свой подсчёт трафика, взамен traff2sql. Поэтому проблема 100% не в системе подсчёта, а проблема будет где-то на уровне NAS сервера(mpd5, netflow). Поэтому и спрашиваю, может кто нибудь сталкивался с такой проблемой.
Мы ставили альтернативу netflow, я точно не помню как она называется, расходжений в количестве трафика подсчитанного не нашли(если сравнивать пачки пакетов от netflow и той альтернативной программы), значит проблема будет где-то ниже самого netflow, в той программе, либо, возможно драйвере, который предоставляет эти данные самому netflow.
Скажу проще, в системе abills глюков с подсчётам нет, даю 100%, проблема в стороннем софте, который формирует эти netflow пачки трафика в виде файла.

~AsmodeuS~
Site Admin
Сообщения: 5746
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Сообщение ~AsmodeuS~ »

vista писал(а):Дело в том, что мы написали даже свой подсчёт трафика, взамен traff2sql. Поэтому проблема 100% не в системе подсчёта, а проблема будет где-то на уровне NAS сервера(mpd5, netflow). Поэтому и спрашиваю, может кто нибудь сталкивался с такой проблемой.
Мы ставили альтернативу netflow, я точно не помню как она называется, расходжений в количестве трафика подсчитанного не нашли(если сравнивать пачки пакетов от netflow и той альтернативной программы), значит проблема будет где-то ниже самого netflow, в той программе, либо, возможно драйвере, который предоставляет эти данные самому netflow.
Скажу проще, в системе abills глюков с подсчётам нет, даю 100%, проблема в стороннем софте, который формирует эти netflow пачки трафика в виде файла.

чем Вам не подошёл traff2sql ?

vista
Сообщения: 10
Зарегистрирован: Пт фев 04, 2011 7:44 am

Re: Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Сообщение vista »

~AsmodeuS~ писал(а):
vista писал(а):Дело в том, что мы написали даже свой подсчёт трафика, взамен traff2sql. Поэтому проблема 100% не в системе подсчёта, а проблема будет где-то на уровне NAS сервера(mpd5, netflow). Поэтому и спрашиваю, может кто нибудь сталкивался с такой проблемой.
Мы ставили альтернативу netflow, я точно не помню как она называется, расходжений в количестве трафика подсчитанного не нашли(если сравнивать пачки пакетов от netflow и той альтернативной программы), значит проблема будет где-то ниже самого netflow, в той программе, либо, возможно драйвере, который предоставляет эти данные самому netflow.
Скажу проще, в системе abills глюков с подсчётам нет, даю 100%, проблема в стороннем софте, который формирует эти netflow пачки трафика в виде файла.

чем Вам не подошёл traff2sql ?
Изначально мы считали, что проблема может крыться в коде, т.к. информации по интернету о нашем вопросе нигде не было. Были упоминания, но только в виде вопросов без ответов.
Переписав, начали использовать свою логику хранения детализации и статистики, что заставило перейти на своё подсчёт полностью. Но если сравнить подсчёты трафиков между скриптами: они ни чем не отличаются в качестве.

~AsmodeuS~
Site Admin
Сообщения: 5746
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Сообщение ~AsmodeuS~ »

гдето читал что при большой нагрузке ng_flow начинает терять трафик

vista
Сообщения: 10
Зарегистрирован: Пт фев 04, 2011 7:44 am

Re: Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Сообщение vista »

У нас именно и есть высокие нагрузки. Это можно как нибудь оптимизировать, кроме того, как добавлять большее количество серверов NAS?

vista
Сообщения: 10
Зарегистрирован: Пт фев 04, 2011 7:44 am

Re: Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Сообщение vista »

оп!

vista
Сообщения: 10
Зарегистрирован: Пт фев 04, 2011 7:44 am

Re: Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Сообщение vista »

vista писал(а):У нас именно и есть высокие нагрузки. Это можно как нибудь оптимизировать, кроме того, как добавлять большее количество серверов NAS?
Либо возможно помните где Вы читали эту статью про высокие нагрузки?

~AsmodeuS~
Site Admin
Сообщения: 5746
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Не полный подсчёт трафика на RadiusServer+MPD5+NetFrow

Сообщение ~AsmodeuS~ »

на наге была целая тема но это года 3 назад было

Ответить