Thank you Andrei and Jiri for your quick response on this issue, I really like SER
project, not only its apache like functions as a sip system, but also you always can get
help from so many good heart experts all over the world;
We tried the first suggestion from Andrei by adding syn_branch=no to ser.cfg, it did work
- adds the branch id into ACK Via header, but strange thing is it inserted an unknown
branch Id which is still not recognized by the termination gateway, and call disconnected
after "Recover on Timer Expiry" occur; here is the branch ID I captured ( this
time I use SIPURA 2000 as the UA ):
SIPURA -> SER INVITE branch=z9hG4bK-d5f36318
SIPURA <- SER 100 trying branch=z9hG4bK-d5f36318
SER -> TermGW INVITE branch=z9hG4bK193b.e50217463437115c3052e9a41f0a84b7.0 ( public
IP )
branch=z9hG4bK-d5f36318 ( private IP )
SER <- TermGW 100 trying branch=z9hG4bK193b.e50217463437115c3052e9a41f0a84b7.0
SER <- TermGW 183 Session Pro branch=z9hG4bK193b.e50217463437115c3052e9a41f0a84b7.0
SIPURA <- SER 183 Session Pro branch=z9hG4bK-d5f36318
SER <- TermGW 200 OK branch=z9hG4bK193b.e50217463437115c3052e9a41f0a84b7.0
SIPURA <- SER 200 OK branch=z9hG4bK-d5f36318
SIPURA -> SER ACK branch=z9hG4bK-3207bbd5 (why new branch id value here ???)
SER -> TermGW ACK branch=z9hG4bK193b.47867d49d7e7231dfc249720f8269f5d.0 ( public IP
) (where new branch id value here ???)
branch=z9hG4bK-3207bbd5 ( private IP )
We don't know what brand name of the SIP Gateway it's, but will notice the
termination partner ( a big carrier ) the valued suggestions all of you contribute,
thanks.
Regards,
----- Original Message -----
From: Jiri Kuthan <jiri(a)iptel.org>
Date: Sat, 17 Jul 2004 11:47:04 +0200
To: Andrei Pelinescu-Onciul <pelinescu-onciul(a)fokus.fraunhofer.de>,ks lf
<ksabc(a)lycos.com>
Subject: Re: [Serusers] ACK message Via field branch=0 problem
At 09:58 AM 7/17/2004, Andrei Pelinescu-Onciul wrote:
On Jul 16, 2004 at 19:09, ks lf
<ksabc(a)lycos.com> wrote:
> Use SER 0.8.12 stable release, enabled nathelper+rtpproxy for NAT traversal, forward
1(xxx)xxx-xxxx to SIp termiantion gateway, when the call was connected, PSTN gateway send
200 OK back, sip client ( behind NAT ) response with ACK ( which has branch value in Via
head ), but when SER forward the ACK back to PSTN gateway, in Via header it includes
branch=0, PSTN gateway refuse this ACk because it think the branch id is invalid,
I don't know if this is the reason why the gateway denies the ACK, but if so,
you should submit a trouble ticket to the gateway vendor. According to RFC3261,
ACK for positive replies is a separate transaction and there is no guarantee
that it would have the same branch id. People who have difficults to understand
that typically get the "aha" effect when they see a scenario with multiple
proxy
servers as follows:
UAC PROXY1 PROXY2 UAS
(record-routing) (no rr-ing)
INVITE -----------------> ----------------> -------------->
ACK -----------------> ------------------------------------->
in this scenario, only proxy 1 record routes, i.e., subsequent requests such
as ACK will not visit proxy2. Consequently, proxy2 cannot generate the same
branch ID as it did for proxy1. UAS will thus see proxy1's branch in the ACK,
which is different from proxy2's branch in the original INVITE.
Tell the vendor to match ACKs _DIALOG-WISE_.
-jiri
--
_______________________________________________
Find what you are looking for with the Lycos Yellow Pages
http://r.lycos.com/r/yp_emailfooter/http://yellowpages.lycos.com/default.as…