SearchSearch  Log in to check your private messagesLog in to check your private messages  recent posts Recent Posts
Post new topic   Reply to topic
View previous topic Printable version Log in to check your private messages View next topic
Author Message
x-consoleAdministrator
Site Admin


Joined: Aug 01, 2006
Posts: 1133
Location: Leeds UK
Status: Online!
Posted: Aug 01, 2006 - 03:51 PM Reply with quote Back to top
Hi all,

I have OpenSER managing SIP singalling, registration, and authentication nicely, and both OpenSER and Asterisk (realtime architecture) are using the same database. OpenSER curently manages the NAT for all my UA's, and has a local rtp-proxy for managing the media stream once a session is established.

What I would like to do is pass the job of managing the RTP stream on to Asterisk, and take the load off the rtp-proxy instance running locally on my OpenSER server. I still want OpenSER to manage call signalling and UA registration.

Before rolling my sleeves up and getting to work on this, I was wondering if anyone had any comments/info/thoughts?

I cant find much documentation on this particular aspect of a Proxy<->B2BUA topology on the net, and was wondering if there were better options available? How do you go about replacing force_rtp_proxy()? Would i need to modify the headers for asterisk to be aware of the fact it needs to proxy the media stream?

Basically, I understand and am happy with the model where OpenSER is stateless and passes everything through to *, and also in the model I have currently, where all NAT and rtp-proxy is held at the SIP proxy server. When i start thinking of dividing the responsibilities, I am not sure where (and sometimes how) to draw the lines between the two (when NAT is involved).

TIA for any advice,
X-C
View user's profile Send private message Yahoo Messenger
x-consoleAdministrator
Site Admin


Joined: Aug 01, 2006
Posts: 1133
Location: Leeds UK
Status: Online!
Posted: Aug 02, 2006 - 10:04 AM Reply with quote Back to top
For anyone who is interested, i found the solution. A simple fix as well.

All you need do is set a flag within the route block in which you rewritehostport() for forward on to your B2BUA (i guess you could match on destination IP, but hey..)

Then in the section of your outbound routing, where you are checking for NAT, specifically in the section for the INVITE method, check to see if your flag is set, and if it is, unforce_rtp_proxy() (or whatever the media proxy equiv. is), and fix_nated_sdp("3");

Make sure you alter your on-reply route blocks as well, and btw this will require your UA's to support symmetric RTP (which 99% of them do these days anyway).

My Asterisk box now sets up the media session directly with the UA's, and OpenSER handles all call signalling and associated NAT.

Cheers,
X-C
View user's profile Send private message Yahoo Messenger
nualexanOffline



Joined: Mar 28, 2008
Posts: 7

Status: Offline
Posted: Apr 14, 2008 - 11:05 PM Reply with quote Back to top
Hi x-console,

I'm looking for information about how to implement openser + mediaproxy + asterisk. I've already put openser + mediaproxy working, but now i want to pass all the calls (RTP traffic) to asterisk so i can use a2billing. I saw a lot of threads about this theme but none of them was very usefull to me. I need to understand the architecture of the connection between Openser and * and it's very difficult to find good documentation...
I've notice that you're an expert in this matter (already answered some of my posts)... Could you advise me some good books so i can read? Or could you give me some ideas where to start, i feel a little lost...
Thanks in advance
View user's profile Send private message
x-consoleAdministrator
Site Admin


Joined: Aug 01, 2006
Posts: 1133
Location: Leeds UK
Status: Online!
Posted: Apr 15, 2008 - 08:43 AM Reply with quote Back to top
The best route is to really focus on learning the SIP (and SDP) protocol. This is how openser and asterisk talk to each other, as well as how your users will talk to your servers.

If the RFC's are a little dry to read, i would recommend Alan B Johnston's book on SIP (amazon.com link here)

Once you understand how the session is set up and how media is directed, you will know what you need to change to get media flowing via your asterisk box. The book i mentioned also lists typical architecture patterns for SIP networks that offer the kind of functionality you require.
View user's profile Send private message Yahoo Messenger


View previous topic Printable version Log in to check your private messages View next topic

Post new topic   Reply to topic
Forum Rules and Guidelines | About VoIP User | Privacy Policy


All logos and trademarks in this site are property of their respective owner.
Comments and posts are property of the poster, all the rest (c) 2003-2006 VoIP User.

No part of this site may be reproduced without our prior consent.