Prioritising RTP processing

I’d like to understand how to prioritise RTP flow through Asterisk.

We currently run Asterisk on a resource constrained linux box. I’d like to ensure that RTP flow through Asterisk is as deterministic as possible to reduce the amount of jitter in the system.

Have tried using the highpriority = yes flag in asterisk.conf but have not measured a noticable difference to jitter. Can you explain what change this flag performs underneath?

We use a custom channel driver to feed RTP packets into Asterisk and made a substantial improvement by increasing its thread priority and using FIFO kernel scheduling as below

param.sched_priority = sched_get_priority_max(SCHED_FIFO);
pthread_setschedparam(pthread_self(), SCHED_FIFO, &param);

I’d like to find out if there is more that can be done to improve core Asterisk RTP performance? If I could find out which threads are responsible for RTP processing I’d like to attempt to prioritise those as well using the method above.


This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.