[asterisk-users] Letting rtp profiles be handled by rtpengine instead of Asterisk

Paul Belanger paul.belanger at polybeacon.com
Fri Aug 15 10:48:39 CDT 2014

On Fri, Aug 15, 2014 at 10:41 AM, Olli Heiskanen
<ohjelmistoarkkitehti at gmail.com> wrote:
> Hello,
> After having thought this through a bit I have some thoughts I'd like to
> share.
> In this case where the rtp profile is RTP/AVP Asterisk accepts and handles
> the call normally. If a webrtc client calls a sip client, or even another
> webrtc client, rtpengine is needed to step in (in my setup most of the
> clients would indeed be webrtc, but some of them might be sip). I think it
> would be better to use RTP/SAVPF throughout the process if both clients are
> webrtc (or otherwise speak RTP/SAVPF), but currently there is no way to
> accomplish this?
> Is it possible to configure Asterisk to only accept the RTP/SAVPF profile,
> and send 488 to all others? If it's not possible to force Asterisk to ignore
> rtp profiles (thus allowing the sdp be handled by rtpengine entirely), I'd
> prefer to use RTP/SAVPF or RTP/SAVP in the communication between Kamailio
> and Asterisk servers and use rtpengine to bridge to RTP/AVP and RTP/AVPF
> only if the client cannot speak securely.
> I'd very much like to hear opinions and thoughts on these.
Again, I'll only share my experiences, but we do the complete
opposite.  Traffic between kamailio and asterisk is only RTP/AVP since
the version of asterisk we are using does not support RTP/SAVPF (1.8).
However, if you want RTP/SAVPF then honestly, you should just
completely remove rtpengine from the picture since newer version of
asterisk support both RTP/AVP and RTP/SAVPF (asterisk 12+).

What I think you should do is go back to the basics, and document
everything you want to do.  Right now you have too many pieces in the
puzzle and making the setup complicated.  Like I said before, this is
a complex setup and you need to start some place.  Here is a diagram
of what we do.

webrtc (RTP/SAVPF) -> kamailio -> rtpengine  -> asterisk (RTP/AVP)

This way, only RTP/AVP is in the core of our network. Rtpengine is on
the edge (where it belongs), proxing rtp traffic.  And, for us, we
keep RTP/SAVPF outside of asterisk since support for it has been
recently added. I also believe there are some open issue with dtls +
srtp too.

Paul Belanger | PolyBeacon, Inc.
Jabber: paul.belanger at polybeacon.com | IRC: pabelanger (Freenode)
Github: https://github.com/pabelanger | Twitter: https://twitter.com/pabelanger

More information about the asterisk-users mailing list