Brekeke Forum Index » Brekeke SIP Server Forum

Post new topic   Reply to topic
CFU INVITE is being change by BREKEKE SIP server
Author Message
dchang
Brekeke Newbie


Joined: 06 Feb 2013
Posts: 4
Location: Taiwan

PostPosted: Wed Feb 06, 2013 1:22 am    Post subject: CFU INVITE is being change by BREKEKE SIP server Reply with quote

1. Brekeke Product Name and Version: Brekeke SIP server Standar edition.

2. Java version:

3. OS type and the version:

4. UA (phone), gateway or other hardware/software involved:
Hitron MTA: CVE-30360 and BVW-3653

5. Your problem:
I have to Hitron MTA devices, MTA1 and MTA2, both can provision successfully on Brekeke server.

I have two line on each MTA device. On MTA1 Line1 I set CFU to transfer the call to Line2.
However when I call from MTA2 (either Line1 or Line2), after receiving "302 Moved Temporary",
MTA2 sends an INVITE to MTA1's Line2 but it is changed by the SIP server to an INVITE to MTA's Line1,
which sends "302 Moved Temporary" and both MTAs enter a Loop. and the call is never made nor forward.

PS: I have a packet capture from the SIP server, I'm new on this forum and I haven't find out how to upload it.
I'd appreciate if someone help me out here.

_________________
dChang27
Back to top
View user's profile
Laurie
Brekeke Master Guru


Joined: 07 Jan 2008
Posts: 245

PostPosted: Wed Feb 06, 2013 2:50 pm    Post subject: Reply with quote

Can you paste packets here?
Or, you can post the capture at http://www.pcapr.net/


and.. which version and edition of Brekeke SIP Server are you using?
Back to top
View user's profile
dchang
Brekeke Newbie


Joined: 06 Feb 2013
Posts: 4
Location: Taiwan

PostPosted: Thu Feb 07, 2013 1:32 am    Post subject: Reply with quote

My Server IP is 192.168.1.19. Caller IP: 10.10.20.12, Callee IP: 10.10.20.16.

*****************************************************
SIP Server Status
Status ACTIVE
server-product Brekeke SIP Server
server-ver 3.1.4.4/348
server-name your-sip-sv
server-description your SIP Server
server-location your-place
server-startup-time Mon Jan 28 09:27:25 CST 2013
server-current-time Thu Feb 07 17:01:22 CST 2013
server-life-length 10days 07:33:56
machine-name test-d70739b2fe
listen-port 5060
transport UDP, TCP
interface 192.168.1.19
startup-user SYSTEM
work-directory C:\Program Files\Brekeke\sip1
session-active 2
session-total 419
session-peak 9
sip-packet-total 7252
registered-record 5
os-name Windows 2003
os-ver 5.2
java-ver 1.6.0_18
admin-sip your-sip-url
admin-mail
*****************************************************


===============================================
INVITE from Caller to Server:

From: "3000"<sip:3000@192.168.1.19>;tag=39fca0-a0a140c-13c4-50029-2aa5-3179d6a1-2aa5
To: <sip:2000@192.168.1.19:5060>
Call-ID: 3a4e10-2190433-3462898@10.10.20.12
CSeq: 1 INVITE
Via: SIP/2.0/UDP 10.10.20.12:5060;branch=z9hG4bK-2aa5-a6964d-5391d716
Max-Forwards: 70
Supported: replaces,timer,100rel
Contact: <sip:3000@10.10.20.12:5060;transport=UDP>
Session-Expires: 1800
Min-SE: 90
Allow: INVITE,CANCEL,ACK,BYE,PRACK,NOTIFY,REFER,OPTIONS,INFO
Content-Type: application/sdp
Content-Length: 471

v=0
o=a0000 8664 6672 IN IP4 10.10.20.12
s=SIP Call
c=IN IP4 10.10.20.12
t=0 0
m=audio 10040 RTP/AVP 0 8 103 104 100 102 18 96 15 4 97
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:103 G726-32/8000
a=rtpmap:104 G726-40/8000
a=rtpmap:100 G726-16/8000
a=rtpmap:102 G726-24/8000
a=rtpmap:18 G729/8000
a=fmtp:18 annexb=no
a=rtpmap:96 G729E/8000
a=rtpmap:15 G728-16/8000
a=rtpmap:4 G723/8000
a=rtpmap:97 telephone-event/8000
a=fmtp:97 0-15
a=sendrecv

===============================================
100 trying from Server to Caller:

IP/2.0 100 Trying
Via: SIP/2.0/UDP 10.10.20.12:5060;branch=z9hG4bK-2aa5-a6964d-5391d716
From: "3000"<sip:3000@192.168.1.19>;tag=39fca0-a0a140c-13c4-50029-2aa5-3179d6a1-2aa5
To: <sip:2000@192.168.1.19:5060>
Call-ID: 3a4e10-2190433-3462898@10.10.20.12
CSeq: 1 INVITE
Server: Brekeke SIP Server rev.348
Content-Length: 0

===============================================
INVITE from Server to Callee:

INVITE sip:2000@10.10.20.16:5060;transport=UDP SIP/2.0
From: "3000"<sip:3000@192.168.1.19>;tag=39fca0-a0a140c-13c4-50029-2aa5-3179d6a1-2aa5
To: <sip:2000@192.168.1.19>
Call-ID: 3a4e10-2190433-3462898@10.10.20.12
CSeq: 1 INVITE
Via: SIP/2.0/UDP 192.168.1.19:5060;branch=z9hG4bK1db789d63a680b-30-5c777403
Via: SIP/2.0/UDP 10.10.20.12:5060;branch=z9hG4bK-2aa5-a6964d-5391d716
Max-Forwards: 69
Supported: replaces,timer,100rel
Contact: <sip:3000@192.168.1.19:5060>
Session-Expires: 1800
Min-SE: 90
Allow: INVITE,CANCEL,ACK,BYE,PRACK,NOTIFY,REFER,OPTIONS,INFO
Record-Route: <sip:192.168.1.19:5060;lr>
Content-Type: application/sdp
Content-Length: 472

v=0
o=a0000 8664 6672 IN IP4 192.168.1.19
s=SIP Call
c=IN IP4 10.10.20.12
t=0 0
m=audio 10040 RTP/AVP 0 8 103 104 100 102 18 96 15 4 97
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:103 G726-32/8000
a=rtpmap:104 G726-40/8000
a=rtpmap:100 G726-16/8000
a=rtpmap:102 G726-24/8000
a=rtpmap:18 G729/8000
a=fmtp:18 annexb=no
a=rtpmap:96 G729E/8000
a=rtpmap:15 G728-16/8000
a=rtpmap:4 G723/8000
a=rtpmap:97 telephone-event/8000
a=fmtp:97 0-15
a=sendrecv
===============================================
100 trying from Calle to Server:

DSIP/2.0 100 Trying
From: "3000"<sip:3000@192.168.1.19>;tag=39fca0-a0a140c-13c4-50029-2aa5-3179d6a1-2aa5
To: <sip:2000@192.168.1.19>
Call-ID: 3a4e10-2190433-3462898@10.10.20.12
CSeq: 1 INVITE
Via: SIP/2.0/UDP 192.168.1.19:5060;branch=z9hG4bK1db789d63a680b-30-5c777403
Via: SIP/2.0/UDP 10.10.20.12:5060;branch=z9hG4bK-2aa5-a6964d-5391d716
Supported: replaces,timer,100rel
Contact: <sip:2000@10.10.20.16:5060;transport=UDP>
Content-Length: 0

===============================================
302 Moved Temporary from Callee to server:

SIP/2.0 302 Moved Temporarily
From: "3000"<sip:3000@192.168.1.19>;tag=39fca0-a0a140c-13c4-50029-2aa5-3179d6a1-2aa5
To: <sip:2000@192.168.1.19>;tag=399548-a0a1410-13c4-50029-cb9-7f02d87f-cb9
Call-ID: 3a4e10-2190433-3462898@10.10.20.12
CSeq: 1 INVITE
Via: SIP/2.0/UDP 192.168.1.19:5060;branch=z9hG4bK1db789d63a680b-30-5c777403
Via: SIP/2.0/UDP 10.10.20.12:5060;branch=z9hG4bK-2aa5-a6964d-5391d716
Supported: replaces,timer,100rel
Diversion: sip:2000@10.10.20.16:5060;transport=UDP;reason=unconditional
Contact: <sip:1000@192.168.1.19:5060>
Content-Length: 0
===============================================
Moved Temporary from Server to Caller:

SIP/2.0 302 Moved Temporarily
From: "3000"<sip:3000@192.168.1.19>;tag=39fca0-a0a140c-13c4-50029-2aa5-3179d6a1-2aa5
To: <sip:2000@192.168.1.19:5060>;tag=399548-a0a1410-13c4-50029-cb9-7f02d87f-cb9
Call-ID: 3a4e10-2190433-3462898@10.10.20.12
CSeq: 1 INVITE
Via: SIP/2.0/UDP 10.10.20.12:5060;branch=z9hG4bK-2aa5-a6964d-5391d716
Supported: replaces,timer,100rel
Diversion: sip:2000@10.10.20.16:5060;transport=UDP;reason=unconditional
Contact: <sip:1000@192.168.1.19:5060>
Content-Length: 0

===============================================
ACK from Caller to Server:

ACK sip:2000@192.168.1.19:5060;transport=UDP SIP/2.0
From: <sip:3000@192.168.1.19>;tag=39fca0-a0a140c-13c4-50029-2aa5-3179d6a1-2aa5
To: <sip:2000@192.168.1.19:5060>;tag=399548-a0a1410-13c4-50029-cb9-7f02d87f-cb9
Call-ID: 3a4e10-2190433-3462898@10.10.20.12
CSeq: 1 ACK
Via: SIP/2.0/UDP 10.10.20.12:5060;branch=z9hG4bK-2aa5-a6964d-5391d716
Max-Forwards: 70
Contact: <sip:3000@10.10.20.12:5060;transport=UDP>
Content-Length: 0

===============================================
ACK from server to Callee:

ACK sip:2000@10.10.20.16:5060;transport=UDP SIP/2.0
From: <sip:3000@192.168.1.19>;tag=39fca0-a0a140c-13c4-50029-2aa5-3179d6a1-2aa5
To: <sip:2000@192.168.1.19>;tag=399548-a0a1410-13c4-50029-cb9-7f02d87f-cb9
Call-ID: 3a4e10-2190433-3462898@10.10.20.12
CSeq: 1 ACK
Via: SIP/2.0/UDP 192.168.1.19:5060;branch=z9hG4bK1db789d63a680b-30-5c777403
Via: SIP/2.0/UDP 10.10.20.12:5060;branch=z9hG4bK-2aa5-a6964d-5391d716
Max-Forwards: 69
Contact: <sip:3000@192.168.1.19:5060>
Record-Route: <sip:192.168.1.19:5060;lr>
Content-Length: 0

===============================================
INVITE from Caller to Server:

INVITE sip:1000@192.168.1.19:5060 SIP/2.0
From: "3000"<sip:3000@192.168.1.19>;tag=39fca0-a0a140c-13c4-50029-2aa5-3179d6a1-2aa5
To: <sip:2000@192.168.1.19:5060>
Call-ID: 3a4e10-2190433-3462898@10.10.20.12
CSeq: 2 INVITE
Via: SIP/2.0/UDP 10.10.20.12:5060;branch=z9hG4bK-2aa9-a6a737-471d0014
Diversion: sip:2000@10.10.20.16:5060;transport=UDP;reason=unconditional
Max-Forwards: 70
Supported: replaces,timer,100rel
Contact: <sip:3000@10.10.20.12:5060;transport=UDP>
Session-Expires: 1800
Min-SE: 90
Allow: INVITE,CANCEL,ACK,BYE,PRACK,NOTIFY,REFER,OPTIONS,INFO
Content-Type: application/sdp
Content-Length: 471

v=0
o=a0000 8664 6672 IN IP4 10.10.20.12
s=SIP Call
c=IN IP4 10.10.20.12
t=0 0
m=audio 10040 RTP/AVP 0 8 103 104 100 102 18 96 15 4 97
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:103 G726-32/8000
a=rtpmap:104 G726-40/8000
a=rtpmap:100 G726-16/8000
a=rtpmap:102 G726-24/8000
a=rtpmap:18 G729/8000
a=fmtp:18 annexb=no
a=rtpmap:96 G729E/8000
a=rtpmap:15 G728-16/8000
a=rtpmap:4 G723/8000
a=rtpmap:97 telephone-event/8000
a=fmtp:97 0-15
a=sendrecv
===============================================

HERE IS WHERE THE PROBLEM OCCURS, IT Changes from 1000 to 2000, and the cycle start again from the third packet above.

INVITE from Server to callee:

INVITE sip:2000@10.10.20.16:5060;transport=UDP SIP/2.0
From: "3000"<sip:3000@192.168.1.19>;tag=39fca0-a0a140c-13c4-50029-2aa5-3179d6a1-2aa5
To: <sip:2000@192.168.1.19>
Call-ID: 3a4e10-2190433-3462898@10.10.20.12
CSeq: 2 INVITE
Via: SIP/2.0/UDP 192.168.1.19:5060;branch=z9hG4bK878402793a680b-30-5c777403
Via: SIP/2.0/UDP 10.10.20.12:5060;branch=z9hG4bK-2aa9-a6a737-471d0014
Diversion: sip:2000@10.10.20.16:5060;transport=UDP;reason=unconditional
Max-Forwards: 69
Supported: replaces,timer,100rel
Contact: <sip:3000@192.168.1.19:5060>
Session-Expires: 1800
Min-SE: 90
Allow: INVITE,CANCEL,ACK,BYE,PRACK,NOTIFY,REFER,OPTIONS,INFO
Record-Route: <sip:192.168.1.19:5060;lr>
Content-Type: application/sdp
Content-Length: 472

v=0
o=a0000 8664 6672 IN IP4 192.168.1.19
s=SIP Call
c=IN IP4 10.10.20.12
t=0 0
m=audio 10040 RTP/AVP 0 8 103 104 100 102 18 96 15 4 97
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:103 G726-32/8000
a=rtpmap:104 G726-40/8000
a=rtpmap:100 G726-16/8000
a=rtpmap:102 G726-24/8000
a=rtpmap:18 G729/8000
a=fmtp:18 annexb=no
a=rtpmap:96 G729E/8000
a=rtpmap:15 G728-16/8000
a=rtpmap:4 G723/8000
a=rtpmap:97 telephone-event/8000
a=fmtp:97 0-15
a=sendrecv

Appreciate your replay Laurie.

_________________
dChang27
Back to top
View user's profile
lakeview
Brekeke Master Guru


Joined: 15 Nov 2007
Posts: 319
Location: Florida

PostPosted: Fri Feb 08, 2013 1:37 am    Post subject: Reply with quote

Hi dChang27,

It is a bug in Brekeke SIP Server v3.1.

if you are using Brekeke SIP Server Advanced Edition, you can avoid the issue with the following DialPlan rule.
Matching Patterns
$request = ^INVITE
Deploy Patterns
$session = failover
$continue = true

If you are developing the MTA, let you use a unique Call-ID for the redirecting INVITE.
Back to top
View user's profile
dchang
Brekeke Newbie


Joined: 06 Feb 2013
Posts: 4
Location: Taiwan

PostPosted: Mon Feb 18, 2013 11:10 pm    Post subject: Reply with quote

Hi lakeview,

Thanks for your reply.

I got two questions though:

1. by adding the dial plan rules, does it mean that the CFU is handle by the SIP server using dial plan rules, rather that being done by the MTA?

2. By looking at the captures packets. The difference between the SIP phone and the MTA is how they process the "302 response".
According to RFC3261 21.3.3 302 regarding to "Moved Temporarily", The client needs to use a new address (1000) in the "requestURI". Hitron MTA works as RFC3261 states.

The SIP phone however uses a new address in "requestURI" and in the "To header" field. Which is not exactly according to RFC3261.

Seems as brekeke SIP server uses the address request in "To header" field and not in requestURI.

My question is: Is this the bug you refer on your last comment?

_________________
dChang27
Back to top
View user's profile
lakeview
Brekeke Master Guru


Joined: 15 Nov 2007
Posts: 319
Location: Florida

PostPosted: Tue Feb 19, 2013 12:51 pm    Post subject: Reply with quote

> 1. by adding the dial plan rules, does it mean that the CFU is handle by the SIP server using dial plan rules, rather that being done by the MTA?

Yes.


> 2. By looking at the captures packets. The difference between the SIP phone and the MTA is how they process the "302 response".
According to RFC3261 21.3.3 302 regarding to "Moved Temporarily", The client needs to use a new address (1000) in the "requestURI". Hitron MTA works as RFC3261 states.


Which SIP phone product are you using?
Does it work well with 302 without any issues?

If Hitron MTA doesn't work but SIP phone works... can you tune the MTA?
Or, let you use the Brekeke SIP Server Advanced Edition.
Back to top
View user's profile
dchang
Brekeke Newbie


Joined: 06 Feb 2013
Posts: 4
Location: Taiwan

PostPosted: Thu Feb 21, 2013 12:40 am    Post subject: Reply with quote

The phone I use is GoldenNet Technology Inc IP phone ET-747S.

I just bought the Lincese for brekeke server, currently not thinking to upgrade it to SIP Server Advanced Edition.

Also the CFU on hitron MTA is done by adding proprietary MIBs to the SIP config file.

_________________
dChang27
Back to top
View user's profile
lakeview
Brekeke Master Guru


Joined: 15 Nov 2007
Posts: 319
Location: Florida

PostPosted: Thu Feb 21, 2013 1:42 am    Post subject: Reply with quote

Brekeke's developer team have tuned the Brekeke SIP Server to handle this kind of situation.

They will release new version within a week after some testings.
You can update your current installation and you can keep using your Standard Edition license.

I will post a comment again when the new version is available.
Back to top
View user's profile
Display posts from previous:   
Post new topic   Reply to topic    Brekeke Forum Index » Brekeke SIP Server Forum All times are GMT - 7 Hours
Page 1 of 1