ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 

  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: Inet-Admins
Inet-Admins mailing list archive (inet-admins@info.east.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [inet-admins] сертификация биллинговой системы



Привет!

Thu Oct 21 13:25, Boris Tyshkiewitch <bvt@zenon.net> wrote:
> > Во-вторых, в этом вопросе пока также нет готового стандартного и красивого
> > решения, каждый изобретает свой велосипед по-новой. Или уже есть кстати?
> 
>   Нет. По идеология cisco - адрес выделяет NAS. 
> 
> > И кроме того, ничто не мешает acct-коллектору отрелеить/имитировать stop
> > пакет куда сказано.
> 
>   А чем это лучше ситуации, когда auth sending stop to acct?
> 
Ничем не лучше. А оно надо? Об том и речь.
Если выдавать адрес auth сервером, то впринципе можно продумать алгоритм
кеширования и без завершающего сессию маркера (в вашем случае acct-stop).
На вскидку -- признаком освобождения может быть и занятие этого же порта
следующим клиентом...

>   Ага, значит лог-файл все-таки есть и мы умеем его парсить? А ради чего
> тогда все? Этот лог файл и является буффером. Бери из него в максимальном
> темпе. Эффективная реализация tail описана много где. Зачем два механизма?
> Чтобы глюки потом искать?
> 
Ради реалтайма.

>   У тебя уже есть два надежных, простых, близких к NAS сервера, где ты
> предлагаешь вести авторизацию. Отдай туда эккаунтинг и забирай/передавай
> дальше. По любому протоколу.
> 
Можно.
Только вопрос -- зачем? Повысить надежность. Надежность _чего_?

> > В начале сессии клиента мы загружаем его текущий баланс, лучше если это
> > сразу время в секундах (деньги еще на стоимост поделить и округлить
> > придеться;), 
> 
>   Пойми, ситуация когда можно поделить и округлить пройдена нами 5 лет
> назад. Уже с вводом ночного тарифа все становиться веселее, а с nightsurf+
> еще веселее, а с weekend еще, а с multilink еще.  Описанный тобой
> алгоритм тарификации (ночью считаем 10 секунды за 5) не обеспечивает
> достаточной точности расчетов и требует бессмысленных прерываний,
> увеличивающих нагрузку на систему.
> 
В этом абзаце нет конкретики, ля-ля тополя ;)
Нагрузку на систему как раз оказывают всевозможные подпорки, которым нет
конца. Это не технология, это ее иммитация подручными средствами, об чем
я и говорил ранее.
Точность рассчетов равна кванту времени прерывания на одну сессию. Если
сделать прерыватель каждую секунду, то и точность расчетов будет ровно
1 секунда. Можно и каждую микросекунду сделать, если проц успеет, только
смысла в этом нет никакого.

>   Просто какой-то натуральный счет по пальцам. Чтобы сложить 8 и 7
> ты делаешь прибавление 7 единиц.
> 
>   Поэтому я и говорю про обратный тарификатор, который переводит деньги в
> секунды. Это сложный алгоритм. Но он есть и работает.
> 
Давай поконкретней тогда уж.
Чем занимается обратный тарификатор, и что там за алгоритм у него такой
сложный, что он не успевает отрабатывать за микросекунды процессорного
времени, т.е. почему его нельзя выполнять каждую 1сек, а не раз в 5мин.

> > взводим таймер чтоб прерывал нас каждые 10 сек, в каждом
> 
>   Какие 10сек? Что за маразм? Таймер ставиться на столько секунд сколько
> нужно для данного входа. И прерывает он нас - когда нужно. Опять-же
> классическая реализация таймеров по книжке.
> 
> > прерывании отнимаем от остатка времени клиента 10 сек. (5 сек., 20 сек),
> > попутно коллектим acct-пакеты, отрабатываем пропадания связи и пр.,
> > когда результат <= 0 то срубаем его сессию, сохраняем остаток...
> 
>   Что, вот так раз в 10 секунд, по всем 1000 линиям сравниваешь с 0?
> 
Блин. Что за вопрос?
Демонок распределяет у себя в памяти структурку длиной 200-300 байт, где
хранит все кишки от сессии одного клиента. Структурки формируются в 
цепочки. Распределить 1 000 000 сруктур по 200 байт и ходить по ним всем
с грубо говоря "if (timeleft -= quant <= 0)" раз в секунду является
большой проблемой??
Если это на перле делать тогда может быть...

> > Таким образом мы "растягиваем" время ночью, "ускоряем" в час пик, следим
> > за границами дозволенного времени, контроллируем мульти-логины, проверяем 
> > номер звонящего, "восстанавливаем" потеряные acct-пакеты и тд., и все это
> > в одном демоночке, вместо кучи подпорок по всей цепи тарификации.
> 
>    Я так и не понял какие там подпорки. Там все очень просто и легковесно.
> 
>  А описанный тобой алгоритм у нас давно работает. (с учетом различий
> алгоритма тарификации) Живет следящий демон, сшибающий по SNMP. Правда у 
> нас не 1000 линий, а 650, и не 10сек, а 5 мин., поэтому проблем пока нет. 
> Но будут. Именно поэтому мы подготовились к внедрению нормальных таймеров. 
> 
Вопрос только в том как это все делать в реальном времени. И только лишь.
И я утвердаю что это можно делать. Концептуально.
И опровержений пока что так и нет.

=============================================================================
"inet-admins" Internet access mailing list. Maintained by East Connection ISP.
Mail "unsubscribe inet-admins" to Majordomo@info.east.ru if you want to quit.
Archive is accessible on http://info.east.ru/rus/inetadm.html



 




Copyright © Lexa Software, 1996-2009.