[OpenSIPS-Devel] Radius Async Support

Ionut Ionita ionutionita at opensips.org
Mon Jul 27 15:26:40 CEST 2015


Hello all,


I’m glad to announce that OpenSIPS 2.2 now has async support for RADIUS 
operations. This new extension allows you to do RADIUS authentication 
and accounting requests (against a RADIUS server) in an asynchronous way 
(by transparently using the OpenSIPS internal reactor).

A big problem we are trying to solve these days is trying to reduce the 
time we wait for the response from a remote server we are talking to. We 
definitely do not want to block one entire process while waiting for the 
response. This exact problem arises when doing RADIUS authentication and 
accounting, because we send a message to the radius server and wait for 
the response. In order to solve this problem, we implemented these two 
operations asynchronously - basically this translates into non-blocking 
waiting for the responses from the RADIUS server.

There are two new async functions that are now exposed by the RADIUS 
module:
***radius_send_auth(), authentication function [0]

*** *radius_send_acct(), accounting function [1]*

For the moment, freeradius-client[2] does not officially have any async 
support, so we developed a patch for the library. We also proposed the 
patch to freeradius-client team, and we hope it will reach future 
versions. For the moment, you have to apply the patch manually over the 
radius library. You can find a full tutorial on how to apply it here [3].

The patch has not been intensely tested in real life scenarios, so we 
are looking forward to receiving feedback about any bugs you may find 
and/or new functionalities that may be useful to you.

Best regards,

Ionut-Razvan Ionita


[0] 
http://www.opensips.org/html/docs/modules/2.2.x/aaa_radius.html#id293595
[1] 
http://www.opensips.org/html/docs/modules/2.2.x/aaa_radius.html#id293657
[2] https://github.com/FreeRADIUS/freeradius-client
[3] 
http://www.opensips.org/html/docs/modules/2.2.x/aaa_radius.html#id294274*



More information about the Devel mailing list