[SR-Users] nathelper-module and sdp offer in 200 OK

Emil Kroymann emil.kroymann at isaco.de
Thu Feb 10 14:58:47 CET 2011


I already added the log statements for late offer and answer and checked
that the messages where present in the ser logs. Also, I checked the
communication between sip-router and rtpproxy with ngrep. For the
200 OK, sip-router sends the 'U' command to rtpproxy and for the ACK
sip-router sends the 'L' command to rtpproxy, but with from- and to-tag
in the other order, as described in the initial mail in this thread. If
there was something wrong with the calls to rtpproxy_offer() and
rtpproxy_answer() in the sip-router script, the sent command codes
should be different, right?

Also, I could fix the problem in our development environment by building
the nathelper module with the following patch applied:

--- a/modules_s/nathelper/nathelper.c
+++ b/modules_s/nathelper/nathelper.c
@@ -2140,7 +2140,7 @@
 		LOG(L_ERR, "ERROR: force_rtp_proxy2: can't get From tag\n");
 		FORCE_RTP_PROXY_RET (-1);
 	}
-	if (flookup != 0 || (msg->first_line.type == SIP_REPLY && offer != 0)) {
+	if (flookup != 0 || (msg->first_line.type == SIP_REPLY && offer != 0) || (msg->first_line.type == SIP_REQUEST && offer == 0)) {
 		if (to_tag.len == 0) {
 			FORCE_RTP_PROXY_RET (-1);
 		}

With this patch applied the order of arguments send to rtpproxy is the
same for 200 OK and for ACK.

Regards,

Emil

Am Thu, 10 Feb 2011 08:06:43 -0500
schrieb Ovidiu Sas <osas at voipembedded.com>:

> Add some logs (print the message that you are processing and the rtp
> command that you are issuing).
> That should help you in troubleshooting your scenario.
> 
> Regards,
> Ovidiu Sas
> 
> On Thu, Feb 10, 2011 at 4:55 AM, Emil Kroymann
> <emil.kroymann at isaco.de> wrote:
> > Hi,
> >
> > yeah, the script does call rtp_offer for 200 OK and rtp_answer for
> > ACK. So, no problem there.
> >
> > Emil
> >
> > Am Thu, 10 Feb 2011 09:46:04 +0100
> > schrieb Carsten Bock <lists at bock.info>:
> >
> >> Hi,
> >>
> >> just a hint: If you use rtpoffer/answer for SDP in 200ojk/ACK, the
> >> SDP-Offer is in the 200 OK, so you need to call "rtp_offer" for the
> >> 200 OK instead of the usual "rtp_answer" for the 200 OK. The
> >> ACK/SDP contains then the rtp_answer.
> >> Works like a charm for me....
> >>
> >> Carsten
> >>
> >> 2011/2/10 Emil Kroymann <emil.kroymann at isaco.de>:
> >> > When I checked the code of the nathelper module that we are
> >> > using, it didn't seem to be the case, that to and from tags are
> >> > switched for the ACK request. Maybe, something has been changed
> >> > after the point we checked out sip-router. When was this code
> >> > last changed?
> >> >
> >> > Am Wed, 9 Feb 2011 12:51:29 -0500
> >> > schrieb Ovidiu Sas <osas at voipembedded.com>:
> >> >
> >> >> The code seems to be correct.  The to and from tags are switched
> >> >> for:
> >> >>  - reply with offer (200ok with first SDP)
> >> >>  - request with answer (ACK with second SDP)
> >> >>
> >> >> Are you sure that you are properly invoking offer/answer
> >> >> rtpproxy functions?
> >> >>
> >> >>
> >> >> Regards,
> >> >> Ovidiu Sas
> >> >>
> >> >> On Wed, Feb 9, 2011 at 11:48 AM, Emil Kroymann
> >> >> <emil.kroymann at isaco.de> wrote:
> >> >> > Hi,
> >> >> >
> >> >> > We recently had a problem with the nathelper module and
> >> >> > rtpproxy in a scenario where the SDP offer is sent only in
> >> >> > the 200 OK. We use sip-router 3.1 and rtp-proxy from git
> >> >> > master. The sip-router configuration uses the
> >> >> > rtpproxy_offer() and rtpproxy_answer() functions in
> >> >> > appropriate places. The problem is, that the arguments sent
> >> >> > to the rtpproxy, when the ACK with the sdp answer arrives,
> >> >> > seems to be not in the order, that rtpproxy expects.
> >> >> >
> >> >> > On the 200 OK, the nathelper module sends callid, to-tag,
> >> >> > from-tag to rtpproxy. On the ACK, the nathelper module sends
> >> >> > callid, from-tag, to-tag (with different command prefixes, of
> >> >> > course, but I cannot remember them atm). The version of
> >> >> > rtpproxy that we are using seems to expect, that the order of
> >> >> > arguments sent on the ACK request is the same as on the 200
> >> >> > OK.
> >> >> >
> >> >> > My question: are there any module parameters, to correct this
> >> >> > behaviour?
> >> >> >
> >> >> > Regards,
> >> >> >
> >> >> > Emil
> >> >> > --
> >> >> > Emil Kroymann
> >> >> > VoIP Services Engineer
> >> >> >
> >> >> > Email: emil.kroymann at isaco.de
> >> >> > Tel: +49-30-203899885
> >> >> >
> >> >> > ISACO GmbH
> >> >> > Kurfürstenstraße 79
> >> >> > 10787 Berlin
> >> >> > Germany
> >> >> >
> >> >> > Amtsgericht Charlottenburg, HRB 112464B
> >> >> > Geschäftsführer: Daniel Frommherz
> >> >> >
> >> >> >
> >> >> > _______________________________________________
> >> >> > SIP Express Router (SER) and Kamailio (OpenSER) - sr-users
> >> >> > mailing list sr-users at lists.sip-router.org
> >> >> > http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
> >> >> >
> >> >> >
> >> >>
> >> >
> >> >
> >> >
> >> > --
> >> > Emil Kroymann
> >> > VoIP Services Engineer
> >> >
> >> > Email: emil.kroymann at isaco.de
> >> > Tel: +49-30-203899885
> >> > Mobile: +49-176-38389303
> >> >
> >> > ISACO GmbH
> >> > Kurfürstenstraße 79
> >> > 10787 Berlin
> >> > Germany
> >> >
> >> > Amtsgericht Charlottenburg, HRB 112464B
> >> > Geschäftsführer: Daniel Frommherz
> >> >
> >> >
> >> > _______________________________________________
> >> > SIP Express Router (SER) and Kamailio (OpenSER) - sr-users
> >> > mailing list sr-users at lists.sip-router.org
> >> > http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
> >> >
> >> >
> >>
> >>
> >>
> >
> >
> >
> > --
> > Emil Kroymann
> > VoIP Services Engineer
> >
> > Email: emil.kroymann at isaco.de
> > Tel: +49-30-203899885
> > Mobile: +49-176-38389303
> >
> > ISACO GmbH
> > Kurfürstenstraße 79
> > 10787 Berlin
> > Germany
> >
> > Amtsgericht Charlottenburg, HRB 112464B
> > Geschäftsführer: Daniel Frommherz
> >
> >
> 



-- 
Emil Kroymann
VoIP Services Engineer

Email: emil.kroymann at isaco.de
Tel: +49-30-203899885
Mobile: +49-176-38389303

ISACO GmbH
Kurfürstenstraße 79
10787 Berlin
Germany

Amtsgericht Charlottenburg, HRB 112464B
Geschäftsführer: Daniel Frommherz

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20110210/1f44fa1d/attachment.pgp>


More information about the sr-users mailing list