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

Подвисают сессии
http://forum.bitel.ru/viewtopic.php?f=5&t=4890
Страница 1 из 1

Автор:  Магнитка.RU [ 09 дек 2010, 18:17 ]
Заголовок сообщения:  Подвисают сессии

Последнее время участились ситуации, когда на nas сессия висит а вот из биллинга она пропадает. Так же у многих сессий почему то не происходит апдейт, то есть пользователь висит в мониторе сессий, но время выхода может различаться с текущим в несколько часов. На NAS логин висит.

В логах нашел только такое Set status SUSPENDED on UpdateSuspendedSetter а вот, что сие означает ? Такая строка присутствует как раз у тех логинов на которые долго не приходил аккаунтинг, и висящие в мониторе как повисшие.

Автор:  Amir [ 09 дек 2010, 19:27 ]
Заголовок сообщения:  Re: Подвисают сессии

Похоже на то, что update пакеты не приходят. Они приходят?
Если update пакет не приходит, то в update режиме сессия перестает тарифицироваться, становится suspended, а через заданное в конфиге время сессия закрывается.

Автор:  Магнитка.RU [ 10 дек 2010, 09:38 ]
Заголовок сообщения:  Re: Подвисают сессии

Amir писал(а):
Похоже на то, что update пакеты не приходят. Они приходят?
Если update пакет не приходит, то в update режиме сессия перестает тарифицироваться, становится suspended, а через заданное в конфиге время сессия закрывается.

Ситуация такая происходит примерно на 500 клиентов таких 10 бывает. NAS один и тот же. Я не совсем понимаю как может по одним сессиям идти аккаунтинг, а по другим нет. В качестве NAS у нас выступает SmartEdge 100. Вот и сейчас нашел клиента висит со вчерашнего вечера.

И еще в сообщении Set status SUSPENDED on UpdateSuspendedSetter, time after last update: 121
121 это в секундах ? Просто вот по конкретному логину я вижу в connection.log такую строчку по конкретному логину с периодичностью 10 минут. 10 минут это время прихода update пакетов. Но почему то время выхода в мониторе для данного логина так и остается 09.12.2010 16:31:20

Еще обратил внимание на файл error.log в нем полно ошибок вида
Код:
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream - java.lang.ArrayIndexOutOfBoundsException: 0
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.RadiusUtils.checkChapPassword(RadiusUtils.java:261)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.RadiusUtils.checkPassword(RadiusUtils.java:462)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.RadiusSession.checkPassword(RadiusSession.java:119)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.AbstractRadiusProcessor.authenticationImpl(AbstractRadiusProcessor.java:357)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at ru.bitel.bgbilling.modules.dialup.radius.DialUpRadiusProcessor.authenticationImpl(DialUpRadiusProcessor.java:578)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at ru.bitel.bgbilling.modules.dialup.radius.DialUpRadiusProcessor.authenticationImpl(DialUpRadiusProcessor.java:1)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.AbstractRadiusProcessor.authentication(AbstractRadiusProcessor.java:177)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.RadiusSession.authentication(RadiusSession.java:114)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.RadiusSession.accessRequest(RadiusSession.java:92)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.RadiusProcessor.accessRequest(RadiusProcessor.java:316)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.RadiusListenerWorker.run(RadiusListenerWorker.java:172)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at java.lang.Thread.run(Thread.java:636)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-12] LoggingPrintStream -    at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:40)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream - java.lang.ArrayIndexOutOfBoundsException: 0
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.RadiusUtils.checkChapPassword(RadiusUtils.java:261)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.RadiusUtils.checkPassword(RadiusUtils.java:462)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.RadiusSession.checkPassword(RadiusSession.java:119)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.AbstractRadiusProcessor.authenticationImpl(AbstractRadiusProcessor.java:357)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at ru.bitel.bgbilling.modules.dialup.radius.DialUpRadiusProcessor.authenticationImpl(DialUpRadiusProcessor.java:578)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at ru.bitel.bgbilling.modules.dialup.radius.DialUpRadiusProcessor.authenticationImpl(DialUpRadiusProcessor.java:1)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.AbstractRadiusProcessor.authentication(AbstractRadiusProcessor.java:177)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.RadiusSession.authentication(RadiusSession.java:114)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.RadiusSession.accessRequest(RadiusSession.java:92)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.RadiusProcessor.accessRequest(RadiusProcessor.java:316)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at ru.bitel.bgbilling.kernel.network.radius.RadiusListenerWorker.run(RadiusListenerWorker.java:172)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at java.lang.Thread.run(Thread.java:636)
radius 12-10/09:01:30 ERROR [radiusListener-p-2-t-18] LoggingPrintStream -    at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:40)


Код:
   Клиент: вер. 5.1 сборка 433 от 07.12.2010 16:16:42
os:Windows Vista; java:Sun Microsystems Inc., v.1.6.0_07
   Сервер: вер. 5.1 сборка 545 от 07.12.2010 16:16:29
os:Linux; java:Sun Microsystems Inc., v.1.6.0_18

   bill вер. 5.1 сборка 221 от 06.12.2010 12:21:40
   card вер. 5.1 сборка 153 от 08.11.2010 11:30:50
   cerbercrypt вер. 5.1 сборка 177 от 30.11.2010 13:28:59
   dba вер. 5.1 сборка 134 от 29.09.2010 13:00:59
   dialup вер. 5.1 сборка 163 от 03.12.2010 17:27:16
   gorod вер. 5.1 сборка 133 от 26.11.2010 16:33:26
   ipn вер. 5.1 сборка 213 от 29.11.2010 19:07:45
   npay вер. 5.1 сборка 166 от 24.11.2010 19:21:13
   phone вер. 5.1 сборка 222 от 01.12.2010 11:46:09
   reports вер. 5.1 сборка 162 от 29.09.2010 13:00:39
   rscm вер. 5.1 сборка 146 от 29.09.2010 13:00:39
   ru.bitel.bgbilling.plugins.cladr вер. 5.1 сборка 97 от 29.09.2010 13:01:09
   ru.bitel.bgbilling.plugins.crm вер. 5.1 сборка 170 от 25.11.2010 20:16:16
   ru.bitel.bgbilling.plugins.documents вер. 5.1 сборка 116 от 29.09.2010 13:01:09
   ru.bitel.bgbilling.plugins.helpdesk вер. 5.1 сборка 142 от 08.11.2010 12:56:15
   ru.bitel.bgbilling.plugins.organizer вер. 5.1 сборка 49 от 29.09.2010 13:01:10
   trayinfo вер. 5.1 сборка 144 от 29.10.2010 15:23:24
   voiceip вер. 5.1 сборка 152 от 03.12.2010 17:27:32
   wm вер. 5.1 сборка 132 от 29.09.2010 13:00:59

Автор:  Администратор [ 24 янв 2011, 14:13 ]
Заголовок сообщения:  Re: Подвисают сессии

Цитата:
И еще в сообщении Set status SUSPENDED on UpdateSuspendedSetter, time after last update: 121
121 это в секундах ? Просто вот по конкретному логину я вижу в connection.log такую строчку по конкретному логину с периодичностью 10 минут. 10 минут это время прихода update пакетов. Но почему то время выхода в мониторе для данного логина так и остается 09.12.2010 16:31:20

Это в секундах. Вы посмотрите по radius.log апдейт пакеты сессии, выложите сюда.

Автор:  nur16 [ 27 мар 2011, 02:39 ]
Заголовок сообщения:  Re: Подвисают сессии

Amir писал(а):
Если update пакет не приходит, то в update режиме сессия перестает тарифицироваться, становится suspended, а через заданное в конфиге время сессия закрывается.


У нас тоже есть такие ошибки, но связанные с другим моментом,
на НАСе абонента нет, но в радиусе есть, помечены как suspended, и никаким
макаром удалить их оттудова не удается, команда ./radius.sh kill -nas xxx,
удаляет реально висящие на НАСе, а те, которых нет на НАСе,
но есть в радиусе как suspended - не удаляются. В мониторе сессий их тоже нет,
только по команде radius.sh ps видно.

Сессии suspended накапливаются, причем один логин может присутствовать
по 10-20 экземпляров сессий, IP адреса забираются, и потом билл начинает
слать сообщения о нехватке адресов в пулах.

Ребут радиуса, сервера - не помогает.

версия 5.1, все последние апдейты накручены. Началось все именно с
момента апдейта с 5.0 на 5.1

Автор:  snark [ 28 мар 2011, 11:52 ]
Заголовок сообщения:  Re: Подвисают сессии

Магнитка.RU писал(а):
В качестве NAS у нас выступает SmartEdge 100.

ЕМНИМС там меньше чем раз 5 минут вообще нельзя акаунтинг слать

Магнитка.RU писал(а):
121 это в секундах ?

да

Магнитка.RU писал(а):
10 минут это время прихода update пакетов.

ну так поправьте то самое время в секундах
Код:
#для режима UPDATE - время в секундах после последнего UPDATE пакета, по истечении которого сессия считается неактивной
#(не учитывается в подсчёте числа одновременных соединений)
max.update.timeout=120

под свой аккаунитнг, т.к. тут, похоже 120 сек. стоит из расчета на то что апдейты будут приходить раз в минуту, о чем говорит
Код:
realm.default=Acct-Interim-Interval=60

а раз у Вас апдейты идут раз в 10 минут то Вам надо как нить так:
Код:
max.update.timeout=1200

т.е.
Код:
считаем сессию не активной если апдейт не пришел за Acct-Interim-Interval * 2
(т.е. ждали апдейта аж 2 раза, а он не пришел - походу это висяк)

Автор:  Akhmat [ 16 май 2011, 22:43 ]
Заголовок сообщения:  Re: Подвисают сессии

У меня почти схожая проблема. Дело в том, что при разрыве соединения, либо через монитор, либо просто разорвать, сессии уже нет на радиусе, но в мониторе она висит как активная очень долго, минимум две минуты, т.е. радиус не помечает ее как завершенную(поле status в log_session).
Т.е. если сбросить сессию скажем из монитора, она корректно сбрасывается, в списке сессий радиуса(radius.sh ps | grep <mysess>) ее нет. Но помечает он сессию как завершенную только через несколько минут. у меня на всех логинах висит ограничение на один одновременный коннект. и чтобы переподключиться приходится ждать долго.
приложу скриншоты если надо.
А иногда он вообще "забывает" их пометить завершенными.

Автор:  Akhmat [ 18 май 2011, 14:19 ]
Заголовок сообщения:  Re: Подвисают сессии

up

Автор:  Администратор [ 24 май 2011, 17:19 ]
Заголовок сообщения:  Re: Подвисают сессии

Если сессия пропала из radius.sh ps, то подключению она мешать не должна.
Выкладывайте логи что ли. Как висела, ps. Потом как удалили и ошибку авторизации.

Автор:  Akhmat [ 07 июл 2011, 19:17 ]
Заголовок сообщения:  Re: Подвисают сессии

Администратор писал(а):
Если сессия пропала из radius.sh ps, то подключению она мешать не должна.
Выкладывайте логи что ли. Как висела, ps. Потом как удалили и ошибку авторизации.

подключению она и в правду не мешает. в чем логика? почему при сбросе сессии она СРАЗУ не помечается завершенной? если радиус перегрузить, то не завершенные сессии завершаются. тут видно при старте радиуса есть алгоритм который и завершает такие сессии, другое дело что рестарт НЕ ВСЕГДА ПОМОГАЕТ пометить не помеченную сессию завершенной. а у меня на логины ограничение - 1 логин 1 одновременный коннект. и в таком случае клиент уже НИКАК не сможет залогиниться. пока SQL запросом тупо не пометишь такие сессии завершенными.

СКРИНЫ ниже.
в общем сбросил свою сессию в мониторе, через пару секунд из radius.sh ps она пропадает, дисконект. все правильно. в мониторе она висела еще минут 20. пока не рестартнул радиус, сессия не пометилась как завершенная.
также лог команд радиуса
Код:
[root@bg BGRadiusDialup]# ./radius.sh ps | grep gabuev
|    bras-02    |  10.11.1.14   |       9987103-112-448        |07.07.2011 01:21:42 |  gabuev  |78.110.144.135 |0019DBC82997|10.11.1.29|2|     irto      |  active  |
[root@bg BGRadiusDialup]# ./radius.sh ps | grep gabuev //сразу после дисконекта. дисконект произошел в течении секунд, после команды на сброс сессии в мониторе
[root@bg BGRadiusDialup]# service bgradius_dialup restart //через примерно 20 минут
OK Stopping...


Убедительная просьба пояснить логику разрыва сессий, и пофиксить(помечать сразу при разрыве сессию неактивной)! . очень мешает в работе.

Вложения:
Комментарий к файлу: сбросил сессию с монитора. перелогинился автоматом через минуту. сессия висела как активная минут 20 пока не рестартнул радиус. в списке активных сессий ее не было через несколько секунд
sess.JPG
sess.JPG [ 56.02 КБ | Просмотров: 7378 ]

Автор:  Akhmat [ 08 июл 2011, 18:35 ]
Заголовок сообщения:  Re: Подвисают сессии

up

Автор:  Akhmat [ 11 июл 2011, 16:36 ]
Заголовок сообщения:  Re: Подвисают сессии

up

Автор:  Akhmat [ 11 июл 2011, 18:06 ]
Заголовок сообщения:  Re: Подвисают сессии

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

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