Blocking of BYE while Free Radius doing accounting
*------- BYE -----> OPenSIPs ------BYE------> FS* ON BYE request OpenSIPs do accounting using below configuration. async( radius_send_acct("set2"), DEFAULT_RELAY_ROUTE_0); When there are 100 cps, I am facing the issue in some calls while free-radius takes approx 1 sec to complete accounting but on that calls OpenSIPs block the BYE message until free-radius complete accounting. Aug 8 08:31:16 OS /usr/local/sbin/opensips[3977]: [ 793-30802@xx.xx.xx.xx ] Before Accounting : 1502181075000072 Aug 8 08:31:16 OS /usr/local/sbin/opensips[3977]: [ 793-30802@xx.xx.xx.xx ] After Accounting : 1502181076001483 OpenSIPs received BYE Time: 1502181075000072 OpenSIPs Relay BYE Time: 1502181076001483 Time Difference Between Relay BYE and Received BYE *1502181076001483 - 1502181075000072=1001411 usec.* How to prevent Blocking of BYE while Free Radius doing accounting? Free Radius is running on UDP protocol. It would be appreciable if any help. Thank You -- Regards, Suresh Talasaniya. Software Developer. Ecosmob Technologies Pvt. Ltd. Contact : +91-9724264776 Skype : suresh.ecosmob
On 10 Aug 2017, at 13:46, Sureshbhai Talasaniya <suresh.talasaniya@ecosmob.com> wrote:
How to prevent Blocking of BYE while Free Radius doing accounting?
If you want to prevent the behaviour you'll need to look at opensips and configure it not to wait (if that is even supported). If you want to mitigate the problem: * Make the accounting process run faster - 1 second is a really long time, and FreeRADIUS is not going to be the bottleneck. Fix your database, or your network, or give FreeRADIUS more hardware/threads/processes to work with. If you post a debug log with timestamps, someone on the list should be able to tell you where the bottleneck is. * Make the accounting asynchronous - look at sites-available/decoupled-accounting Regards, Adam Bishop gpg: E75B 1F92 6407 DFDF 9F1C BF10 C993 2504 6609 D460 jisc.ac.uk Jisc is a registered charity (number 1149740) and a company limited by guarantee which is registered in England under Company No. 5747339, VAT No. GB 197 0632 86. Jisc’s registered office is: One Castlepark, Tower Hill, Bristol, BS2 0JA. T 0203 697 5800. Jisc Services Limited is a wholly owned Jisc subsidiary and a company limited by guarantee which is registered in England under company number 2881024, VAT number GB 197 0632 86. The registered office is: One Castle Park, Tower Hill, Bristol BS2 0JA. T 0203 697 5800.
Hello Adam Bishop, Thank you for your support. I try with stop radius service and send calls but all calls are blocked, OpenSIPs does not relay any calls until request timeout occurs from the radius. I am looking a solution like if radius server service is stopped then calls (SIP Signaling must be work properly) should not stop (Only Accounting can stop). I am following the below link for OpenSIPs + Radius async: *http://www.opensips.org/html/docs/modules/2.2.x/aaa_radius.html <http://www.opensips.org/html/docs/modules/2.2.x/aaa_radius.html>* async( radius_send_acct("set2"), DEFAULT_RELAY_ROUTE_0); *[root@OS ~]# readelf -d /usr/local/lib64/opensips/modules/aaa_radius.so * Dynamic section at offset 0xbd58 contains 25 entries: Tag Type Name/Value 0x0000000000000001 (NEEDED) Shared library: [libfreeradius-client.so.2] 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] 0x000000000000000c (INIT) 0x1b20 0x000000000000000d (FINI) 0x92a4 0x0000000000000019 (INIT_ARRAY) 0x20bd38 0x000000000000001b (INIT_ARRAYSZ) 8 (bytes) 0x000000000000001a (FINI_ARRAY) 0x20bd40 0x000000000000001c (FINI_ARRAYSZ) 8 (bytes) 0x000000006ffffef5 (GNU_HASH) 0x1f0 0x0000000000000005 (STRTAB) 0xc10 0x0000000000000006 (SYMTAB) 0x3b8 0x000000000000000a (STRSZ) 1182 (bytes) 0x000000000000000b (SYMENT) 24 (bytes) 0x0000000000000003 (PLTGOT) 0x20c000 0x0000000000000002 (PLTRELSZ) 1008 (bytes) 0x0000000000000014 (PLTREL) RELA 0x0000000000000017 (JMPREL) 0x1730 0x0000000000000007 (RELA) 0x1190 0x0000000000000008 (RELASZ) 1440 (bytes) 0x0000000000000009 (RELAENT) 24 (bytes) 0x000000006ffffffe (VERNEED) 0x1160 0x000000006fffffff (VERNEEDNUM) 1 0x000000006ffffff0 (VERSYM) 0x10ae 0x000000006ffffff9 (RELACOUNT) 19 0x0000000000000000 (NULL) 0x0 Thank you for spending the time to reply. I sincerely appreciate the time you spent. Kindly please suggest me what can I do to resolve the issue? On Thu, Aug 10, 2017 at 6:28 PM, Adam Bishop <Adam.Bishop@jisc.ac.uk> wrote:
On 10 Aug 2017, at 13:46, Sureshbhai Talasaniya < suresh.talasaniya@ecosmob.com> wrote:
How to prevent Blocking of BYE while Free Radius doing accounting?
If you want to prevent the behaviour you'll need to look at opensips and configure it not to wait (if that is even supported).
If you want to mitigate the problem: * Make the accounting process run faster - 1 second is a really long time, and FreeRADIUS is not going to be the bottleneck. Fix your database, or your network, or give FreeRADIUS more hardware/threads/processes to work with. If you post a debug log with timestamps, someone on the list should be able to tell you where the bottleneck is. * Make the accounting asynchronous - look at sites-available/decoupled- accounting
Regards,
Adam Bishop
gpg: E75B 1F92 6407 DFDF 9F1C BF10 C993 2504 6609 D460
jisc.ac.uk
Jisc is a registered charity (number 1149740) and a company limited by guarantee which is registered in England under Company No. 5747339, VAT No. GB 197 0632 86. Jisc’s registered office is: One Castlepark, Tower Hill, Bristol, BS2 0JA. T 0203 697 5800.
Jisc Services Limited is a wholly owned Jisc subsidiary and a company limited by guarantee which is registered in England under company number 2881024, VAT number GB 197 0632 86. The registered office is: One Castle Park, Tower Hill, Bristol BS2 0JA. T 0203 697 5800.
- List info/subscribe/unsubscribe? See http://www.freeradius.org/ list/users.html
-- Regards, Suresh Talasaniya. Software Developer. Ecosmob Technologies Pvt. Ltd. Contact : +91-9724264776 Skype : suresh.ecosmob
On Aug 11, 2017, at 6:10 AM, Sureshbhai Talasaniya <suresh.talasaniya@ecosmob.com> wrote:
I try with stop radius service and send calls but all calls are blocked, OpenSIPs does not relay any calls until request timeout occurs from the radius.
I am looking a solution like if radius server service is stopped then calls (SIP Signaling must be work properly) should not stop (Only Accounting can stop).
This is a problem for SIP. No amount of poking FreeRADIUS will make SIP work differently.
I am following the below link for OpenSIPs + Radius async:
That is OpenSIP configuration. Ask them how their software works. Alan DeKok.
participants (3)
-
Adam Bishop -
Alan DeKok -
Sureshbhai Talasaniya