Page 1 of 1

accel-ppp stops processing packets when RADIUS is unavailable

Posted: 06 Dec 2020, 07:59
by lbw
Hi

I've noticed accel-ppp stops processing packets for PPPoE and L2TP type services when RADIUS services become unresponsive or slow. My guess is that the request queue is overwhelmed with RADIUS requests and it stops or slows processing others to almost a halt as all threads become busy/overwhelmed. This is on a very busy server doing > 2Gbps.

[radius]
server=1.2.3.4,password,auth-port=1812,acct-port=1813,req-limit=50,fail-timeout=10,max-fail=10,weight=5,acct-interim-interval=900
acct-interim-interval=900
verbose=1
interim-verbose=300
max-try=3
acct-timeout=120

It's a major issue that a failure in the control plane can severely affect the data plane. Is there any suggestions on possible configuration solutions or otherwise, should the thread queues for data plane and control plane issues be separated?

Thanks

Re: accel-ppp stops processing packets when RADIUS is unavailable

Posted: 06 Dec 2020, 09:30
by dimka88
Hello @lbw, I see you using req-limit=50, maybe you need to increase this param?

Re: accel-ppp stops processing packets when RADIUS is unavailable

Posted: 07 Dec 2020, 03:40
by lbw
I'm not sure that I understand why increasing that make any discernible difference? Looking at the code, all that would do is merely delay the same problem from happening maybe 1 second later? The issue is if the RADIUS server is unavailable for let's say an hour, the entire accel-ppp stack stops working for existing sessions.