I'm implementing the scenario shown below.
___ ______ / 0 \ ---/ \ | /_\ | ATA1 |---| ____ _ _ _ _ _____ ______/ | / \ / / / / \ / \ |---| FW |---| IP Net |---| CCM | | ____/ _/_/_/_/ _____/ | | | | | | | | --- --- / \ / \ |NAT| |SER| |-T | | | ___/ ___/
When calling between the CCM (Cisco CallManager) and the ATA, SER simply ignores the call ACK. The ACK looks like:
ACK sip:5559853979*sip1.mcm.net.mx=X.X.71.2+17081@X.X.81.92:5063 SIP/2.0 Via: SIP/2.0/UDP X.X.67.218:5060;branch=z9hG4bK29b2c750 From: "5559852600" sip:5559852600@X.X.67.218;tag=16781758 To: sip:5559853979@mcm.net.mx;tag=2602576443 Date: Tue, 30 Nov 2004 23:53:15 GMT Call-ID: fef8ed00-1da1612d-24d-da4334c8@X.X.67.218 Route: sip:5559853979@X.X.81.94;ftag=16781758;lr Max-Forwards: 70 CSeq: 101 ACK Content-Length: 0
The call flow:
CallManager SIP Server ATA | | | |-- INVITE -------->| | |<-- trying --------| | | |-- INVITE -------->| | |<-- Trying --------| | |<-- Ringing -------| |<-- Ringing -------| | | |<-- OK ------------| |<-- OK ------------| | |-- ACK ----------->| | | |<-- OK ------------| |<-- OK ------------| | |-- ACK ----------->| | | |<-- OK ------------| |<-- OK ------------| | |-- ACK ----------->| | | |<-- OK ------------| |<-- OK ------------| | |-- ACK ----------->| | | |<-- OK ------------| ......
My guess is that SER does not accept the URI "5559853979*sip1.mcm.net.mx=X.X.71.2+17081@X.X.81.92:5063" because it contains "*+=" signs ore something similar. When calling from ATA - ATA there is no preoblem because ATAs construct the ACK message different (URI and Rote flipped).
Any ideas?
Thanks in advance,
Jesus
Are you sure that the ACK stops at ser? The ACKs should just flow through ser. I have seen a similar problem with XLite where Cisco drops the ACK because XLite there is a bug in XLIte's Via parsing. This is a Cisco gateway appending an x-route-tag to via. Turn on debugging (ALL) on Cisco and check if it drops the ACK due to wrong/no branch info in Via. g-)
Amozurrutia Jesus wrote:
I'm implementing the scenario shown below.
/ 0 \ ---/ \ | /_\ | ATA1 |---| ____ _ _ _ _ _____ ______/ | / \ / / / / \ / \ |---| FW |---| IP Net |---| CCM | | ____/ _/_/_/_/ _____/ | | | | | | | | --- --- / \ / \ |NAT| |SER| |-T | | | ___/ ___/
When calling between the CCM (Cisco CallManager) and the ATA, SER simply ignores the call ACK. The ACK looks like:
ACK sip:5559853979*sip1.mcm.net.mx=X.X.71.2+17081@X.X.81.92:5063 SIP/2.0 Via: SIP/2.0/UDP X.X.67.218:5060;branch=z9hG4bK29b2c750 From: "5559852600" sip:5559852600@X.X.67.218;tag=16781758 To: sip:5559853979@mcm.net.mx;tag=2602576443 Date: Tue, 30 Nov 2004 23:53:15 GMT Call-ID: fef8ed00-1da1612d-24d-da4334c8@X.X.67.218 Route: sip:5559853979@X.X.81.94;ftag=16781758;lr Max-Forwards: 70 CSeq: 101 ACK Content-Length: 0
The call flow:
CallManager SIP Server ATA | | | |-- INVITE -------->| | |<-- trying --------| | | |-- INVITE -------->| | |<-- Trying --------| | |<-- Ringing -------| |<-- Ringing -------| | | |<-- OK ------------| |<-- OK ------------| | |-- ACK ----------->| | | |<-- OK ------------| |<-- OK ------------| | |-- ACK ----------->| | | |<-- OK ------------| |<-- OK ------------| | |-- ACK ----------->| | | |<-- OK ------------| |<-- OK ------------| | |-- ACK ----------->| | | |<-- OK ------------| ......
My guess is that SER does not accept the URI "5559853979*sip1.mcm.net.mx=X.X.71.2+17081@X.X.81.92:5063" because it contains "*+=" signs ore something similar. When calling from ATA - ATA there is no preoblem because ATAs construct the ACK message different (URI and Rote flipped).
Any ideas?
Thanks in advance,
Jesus
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers