forum.bitel.ru
http://forum.bitel.ru/

connection.start.fromAccess
http://forum.bitel.ru/viewtopic.php?f=44&t=12312
Страница 1 из 1

Автор:  mhollow [ 23 мар 2017, 12:17 ]
Заголовок сообщения:  connection.start.fromAccess

В руководстве на странице
https://docs.bitel.ru/pages/viewpage.ac ... d=73598092
написано про параметр connection.start.fromAccess=1
>>"При работе с RADIUS, если по Start-пакету нельзя определить в каком состоянии началась сессия или ни в Start-пакете, ни в Update от NASа не приходит IP-адрес."
Вопрос: При установке этого параметра сессия всегда будет создаваться по при отправке Access-сервером Access-Accept в ответ на Access-Request или только когда ни в Start-пакете, ни в Update от NASа не приходит IP-адрес?

И главный вопрос, почему сначала речь идет про название параметра connection.start.fromAccess=1, а потом ниже в примере параметр уже называется connection.start.fromAccept=0?
Так это одно и то же или два разных параметра? Если одно и тоже, какой таки верный, а если разные, почему не слова про второй?
Спасибо.

Автор:  Amir [ 23 мар 2017, 15:34 ]
Заголовок сообщения:  Re: connection.start.fromAccess

Поправили документацию. Работают оба параметра, правильным вариантом считается
connection.start.fromAccept=

Автор:  mhollow [ 24 мар 2017, 17:31 ]
Заголовок сообщения:  Re: connection.start.fromAccess

Пожалуйста, помогите понять что тут написано:
При работе с RADIUS, если по Start-пакету нельзя определить в каком состоянии началась сессия или ни в Start-пакете, ни в Update от NASа не приходит IP-адрес, в конфигурации устройства - NAS'а, или в конфигурации его типа устройства, или в одном из предков следует указать параметр connection.start.fromAccept=1. В этом режиме при отправке Access-сервером Access-Accept в ответ на Access-Request в базу будет добавлена запись по сессии в статусе ожидание (waiting), которую считает Accounting-сервер при получении Start-пакета. По умолчанию этот режим отключен.

1) Правильно ли я понимаю что обычно (connection.start.fromAccept=0) сессия создается по Start пакету? А при включении этого параметра сессия будет создана по отправке Accept?
2) Какие параметры в Start пакеты должны присутствовать чтобы по ним определить состояние сессии? И о каком состоянии или состояниях идет речь?
3) Что такое статус ожидания waiting? На что он влияет, где в руководстве это написано, какие еще статусы бывают, и как и на что они влияют?

Этот параметр имеет смысл только в Reject-to-Accept? А каких параметров при этом не будет в Start пакете чтобы по ним нельзя было определить состояние (какое?) сессии?
Спасибо.

Автор:  Amir [ 24 мар 2017, 17:49 ]
Заголовок сообщения:  Re: connection.start.fromAccess

1. При =1 сессия не создается, но добавляется запись в inet_connection, но в памяти приложений её нет и в отчетах её не будет.
2. При =1 состояние берется из записи. Состояние - "включено" - доступ не ограничен, "отключено" - доступ ограничен, например, только к ЛК.
https://docs.bitel.ru/pages/viewpage.action?pageId=1606506
https://docs.bitel.ru/pages/viewpage.action?pageId=1606513#id-Процессорru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor-Reject-To-Accept
3. status=0 (waiting) -просто запись в inet_connection, status=1 (alive) - живая, status=2 (suspended) - приостановлена по connection.suspend.timeout, status=3 - закрыта по стоп-пакету или по connection.close.timeout, status=4 - завершена (перенесена в inet_session_log_mid_yyyyMM).

Автор:  mhollow [ 24 мар 2017, 17:59 ]
Заголовок сообщения:  Re: connection.start.fromAccess

inet_connection это таблица с текущими сессиями? Я просто слегка не в курсе)
Так я правильно понял, что при =1 сессия создаться только если состояние "отключено"? А Start пакет уже не на что влиять не будет? Он же никуда не денется.
Просто опять же в руководстве написано "При работе с RADIUS, если по Start-пакету нельзя определить в каком состоянии началась сессия "
Что это значит вообще, я так и не догоню.. когда по Start пакету можно определить состояние и когда нельзя? Ключевое тут "по Start-пакету"...

Автор:  Amir [ 24 мар 2017, 19:21 ]
Заголовок сообщения:  Re: connection.start.fromAccess

Состояние - опять таки, включено (доступ включен), отключено (доступ ограничен).
В некоторых схемах можно определить что доступ ограничен по атрибутам в RADIUS-пакете.
В схемах ISG/SE - можно определить по сервисному аккаунтингу.

Смысл в том, что биллингу нужно знать, что у сессии доступ уже ограничен, чтобы он не пытался переключить доступ еще раз.

Автор:  mhollow [ 24 мар 2017, 19:42 ]
Заголовок сообщения:  Re: connection.start.fromAccess

Давайте сейчас самый простой случай, когда нет никаких посервисных аккаунтингов. Обычный RADIUS.
У сервиса может быть два состояния включено и отключено, в зависимости от лимита или вручную установленного статуса, правильно?

Какая будет логика работы при connection.start.fromAccess=1? Когда я могу использовать эту опцию и для чего?
В каком случае при connection.start.fromAccess=1 перед выдачей Access-Accept InetAccess заносит запись в БД об этом соединении, во всех или только когда состояние сервиса отключено?

Я никак не могу понять, какая принципиальная разница кто занесет запись в БД, Accept или Start?
Почему при недостаточном балансе например, при connection.start.fromAccess=1 сессия заноситься с состоянием отключена и больше не пытается её скинуть(отрпавить PoD), а при connection.start.fromAccess=0 заносится в состоянии подключена и постоянно скидывает.
Объясните пожалуйста эту хитрую логику. Кто заносит, кто пытается сбросить, и в какой момент с какой периодичностью?
Очень хочется понять.

Автор:  Amir [ 27 мар 2017, 19:09 ]
Заголовок сообщения:  Re: connection.start.fromAccess

Access обрабатывает Access-Request, DHCP и на нем же работают ServiceActivator'ы - т.е. он же посылает CoA/PoD или выполняет команды.
Тарифицирует и проверяет Accounting - он при необходимости отправляет команду Access на сброс или переключении параметров сессии.

Как писал выше - при получении Start Accounting не может просто так взять и узнать, ограничен сейчас доступ у сессии или нет. Или не может узнать, какая скорость сейчас у соединения.
Поэтому в большинстве случаев нужен connection.start.fromAccept=1

Соответственно, когда не может определить - считает, что доступ не ограничен ("подключено"), поэтому пытается сбросить.
http://wiki.bitel.ru/index.php/Inet_FAQ#.D0.A1.D0.BE.D0.B5.D0.B4.D0.B8.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D1.81_.D0.BE.D0.B3.D1.80.D0.B0.D0.BD.D0.B8.D1.87.D0.B5.D0.BD.D0.BD.D1.8B.D0.BC_.D0.B4.D0.BE.D1.81.D1.82.D1.83.D0.BF.D0.BE.D0.BC_.28Reject-To-Accept.29_.D0.BF.D0.BE.D0.B4.D0.BA.D0.BB.D1.8E.D1.87.D0.B0.D0.B5.D1.82.D1.81.D1.8F.2C_.D0.BD.D0.BE_.D0.BF.D0.BE.D1.87.D1.82.D0.B8_.D1.81.D1.80.D0.B0.D0.B7.D1.83_.D0.BE.D1.82.D0.BA.D0.BB.D1.8E.D1.87.D0.B0.D0.B5.D1.82.D1.81.D1.8F_.D0.B8.D0.BB.D0.B8_.D0.BF.D0.BE.D1.81.D1.82.D0.BE.D1.8F.D0.BD.D0.BD.D0.BE_.D0.BC.D0.B5.D0.BD.D1.8F.D0.B5.D1.82.D1.81.D1.8F_.D0.BE.D0.B3.D1.80.D0.B0.D0.BD.D0.B8.D1.87.D0.B5.D0.BD.D0.B8.D0.B5_.D1.81.D0.BE.D0.B5.D0.B4.D0.B8.D0.BD.D0.B5.D0.BD.D0.B8.D1.8F

Другие варианты определения, есть ли ограничение у сессии (но не какая сейчас скорость):
по наличию определенных атрибутов (radius.disable.pattern.attributes=) - не рекомендуется
по наличию сервисных сессий ISG/Redback
Оба варианта также нормально работают с connection.start.fromAccept=1

Автор:  mhollow [ 27 мар 2017, 19:50 ]
Заголовок сообщения:  Re: connection.start.fromAccess

Если connection.start.fromAccept=0 кто добавит запись о сесси в базу Access по Access или Accouting по Start?

Если Accouting, то добавит ее как подключенную а только потом будет пытаться сбросить? Правильно?
А если connection.start.fromAccept=1 то запись добавит Access сразу как отключенную, и Accouting потом уже не будет ее сбрасывать?

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

Автор:  Amir [ 27 мар 2017, 20:10 ]
Заголовок сообщения:  Re: connection.start.fromAccess

Да, правильно.

В памяти - речь шла о добавленной записи, а не о сессии. И не будет в памяти и в отчетах ровно до того момента как придет Start.

Автор:  mhollow [ 27 мар 2017, 21:00 ]
Заголовок сообщения:  Re: connection.start.fromAccess

Ах вот оно как...Спасибо!
Ну вот, уже легче, так глядишь, мы составим тут настоящее полноценное руководство, как новый завет)

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/