Fwd: Child is hung (max_request)

Iliya Peregoudov iperegudov at cboss.ru
Mon Nov 24 16:05:22 CET 2014


On 24.11.2014 16:14, Alan DeKok wrote:
> Iliya Peregoudov wrote:
>> Your radius-diameter-translator module should listen RADIUS protocol on
>> UDP/4013 port. Translator should implement RADIUS server (receive
>> requests, send responses) and Diameter client (send requests, receive
>> answers). Flow diagram is following:
>
>    i.e. he needs to implement a RADIUS proxy.  Just like FreeRADIUS.
>
>    Take it from me, that's a lot of work.  Anyone who asks for design
> diagrams on how to implement a RADIUS server has about 5 years of
> full-time work ahead of them.

There is nothing inherently sophisticated in the RADIUS protocol itself. 
Implementing a RADIUS-to-Diameter translator is not inherently harder 
than implementing anything-else-to-Diameter translator.

Topic starter has already implemented something-else-to-Diameter 
translator as a standalone process. To integrate it with RADIUS he has 
to implement RADIUS-to-something-else translator as a freeradius module, 
and this module does not work well.

The problem with freeradius is that it was not designed to be used as 
extensible protocol translator. One cannot write a freeradius module 
that will translate RADIUS to any other protocol in non-blocking manner 
because freeradius module interface is blocking. So mentioned earlier 
freeradius module *can not* work well.



More information about the Freeradius-Users mailing list